From 95dbb5abdbb746cf5da9f7926740d17205ac8d55 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sat, 6 Jun 2026 10:31:30 -0500 Subject: build: add Eask, test harness, and dev tooling I brought the skeleton up to a working package baseline (Phase 0 in the design spec). Eask defines the package and its dev deps. A root Makefile delegates test targets to tests/Makefile and adds compile, coverage, lint, doctor, and clean, matching the layout the other packages use. deps installs both halves DUET needs: the Emacs Lisp deps via eask, and the transport CLIs (rsync, rclone, lftp, unison) via the system package manager, so a contributor's environment is ready before the code that shells out to them. make complexity runs a small homegrown McCabe branch counter (scripts/duet-complexity.el). No off-the-shelf tool measures Emacs Lisp: lizard doesn't support it and codemetrics is an interactive overlay, so DUET owns one. The counting is pure and covered by Normal/Boundary/Error tests. The budget is soft and the target is advisory. The ERT harness (bootstrap, check-deps, per-file undercover coverage) and a smoke test prove the loop works end to end. --- Eask | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 Eask (limited to 'Eask') diff --git a/Eask b/Eask new file mode 100644 index 0000000..d7b8f52 --- /dev/null +++ b/Eask @@ -0,0 +1,26 @@ +;; -*- mode: eask; lexical-binding: t -*- + +(package "duet" + "0.1.0" + "Dual-pane file commander over dirvish/dired") + +(website-url "https://github.com/cjennings/duet") +(keywords "files" "tools" "convenience") + +(package-file "duet.el") + +(source 'gnu) +(source 'nongnu) +(source 'melpa) + +(depends-on "emacs" "29.1") + +;; dirvish is the recommended renderer but optional at runtime (DUET degrades +;; to plain dired), so it is not a hard package dependency. It is pulled in +;; as a development dependency once pane code lands (Phase 4); until then the +;; suite needs none of it. + +(development + (depends-on "elisp-lint") + (depends-on "package-lint") + (depends-on "undercover")) -- cgit v1.2.3