Skip to content

Docs/readme basic setup - #1

Merged
d3flex merged 5 commits into
mainfrom
docs/readme-basic-setup
Aug 13, 2026
Merged

d3flex merged 5 commits into
mainfrom
docs/readme-basic-setup

Conversation

@d3flex

@d3flex d3flex commented Aug 13, 2026

Copy link
Copy Markdown
Owner

No description provided.

d3flex and others added 5 commits August 13, 2026 16:10
Signed-off-by: Ioannis Bonatakis <ybonatakis@suse.com>
The README explained what oqa does and how to drive it, but never said
what it needs or how to load it — a new user had to infer both from
Package-Requires and the source tree.

Add a Requirements section (Emacs 27.1 floor, the three runtime deps,
and the optional openQA CLI tools for the state-changing actions) and an
Installation section with load-path and use-package snippets. Rename
"Getting started" to "Usage" now that setup precedes it.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Signed-off-by: Ioannis Bonatakis <ybonatakis@suse.com>
CI was fully red. Two independent causes:

MELPA serves only the newest transient snapshot, with no version
pinning. Current transient declares (emacs "28.1"), so `keg install`
could not resolve dependencies on Emacs 27.x and every 27.x job plus
lint died with "Package 'emacs-28.1' is unavailable". The declared 27.1
floor was no longer achievable, so raise it to 28.1 in Package-Requires,
drop 27.1/27.2 from the matrix, and move the lint job off 27.2.

Separately, the Keg test script passed -L . but not -L test, so
(require 'oqa-fixture) failed on every job that got far enough to run
the suite. Files load alphabetically, so oqa-actions-test.el ran before
oqa-fixture.el and aborted the run. Add -L test to match the batch
invocation documented for running the suite without Keg.

Two macOS-only failures remain and are not addressed here: setup-keg
fails with spawn ENOEXEC on the arm64 runners, and nix-emacs-ci has no
aarch64-darwin builds for old Emacs.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Signed-off-by: Ioannis Bonatakis <ybonatakis@suse.com>
Two remaining CI failures, one per platform.

test/fixtures/autoinst-log.txt was never committed: a global gitignore
rule for autoinst-log.txt matched it, so it existed locally but not in
the repo, and oqa-log-job-fixture-renders failed on every Linux job with
file-missing. Force-add it past the ignore rule, as the other fixtures
already are. The content is a recorded public openQA build log — asset
names, a worker hostname, and public URLs, nothing credentialed.

conao3/setup-keg is a node12 action. Node 12 is gone from the runners
and has no arm64 macOS build, so every macOS job died with spawn ENOEXEC
before running any code. Replace it in both jobs with the upstream
install method (git clone + PATH); bin/keg is a portable shell/elisp
polyglot with no node dependency.

Verified locally against the real Keg: `keg install` resolves the 28.1
dependency set, `keg run test-all` exits 0 with 57/57 tests passing both
before and after byte-compilation, and `keg lint` exits 0 clean.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Signed-off-by: Ioannis Bonatakis <ybonatakis@suse.com>
29.1 was the only remaining red job, failing identically on Linux and
macOS during `keg install`:

  (file-missing "Cannot open load file" "No such file or directory" "seq-25")

transient requires seq 2.24, so package.el upgrades the built-in seq
from ELPA. ELPA seq guards its load with
(if (version< emacs-version "25") (require 'seq-24) (require 'seq-25)),
which only resolves when loaded fresh; 29.1's broken
package--reload-previously-loaded reloads it over the built-in and the
require fails. Fixed upstream in 29.2, which is why 28.x, 29.2 and
snapshot are green.

Not workaroundable in package code, and users on 29.1 hit it installing
oqa themselves, so drop it from the matrix and note it in the README
requirements rather than papering over it.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Signed-off-by: Ioannis Bonatakis <ybonatakis@suse.com>
@d3flex
d3flex merged commit 9cc0a02 into main Aug 13, 2026
19 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant