Build and packaging library
  • Python 66%
  • Makefile 24.6%
  • Shell 9.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jan Lindemann 0c732672ed
lib.FileContext: Add readdir() method
FileContext offers get(), put(), unlink(), mkdir(), and stat(), but no way
to list the entries of a directory, so consumers that need the names of the
entries under a path in a context have no portable means to obtain them.

Add readdir(), returning Iterable[str], following the _readdir() ->
readdir() pattern used by the other operations: the public method chroots
the path via _chroot() and delegates to the _readdir() hook, which raises
NotImplementedError by default.

Implement _readdir() in the context families:

- Local._readdir(): os.listdir()
- ExecContext._readdir(): runs ls -1A and splits the output into one entry
  per line; inherited by SSHClient and the other command-based contexts
- Curl._readdir(): raises OSError with errno.ENOSYS

Add unit tests covering Local (listing, hidden entries, missing directory)
and Curl (ENOSYS).

Assisted-by: unsloth/Qwen3.8-27B-GGUF:Q4_K_M with pi.dev v0.87.1
Signed-off-by: Jan Lindemann <jan@janware.com>
2026-09-29 15:29:19 +02:00
.github/workflows ci.yaml: test-packaging.yaml@{master-test -> master} 2026-06-08 19:43:15 +02:00
bin bin, make, scripts: Re-add files necessary for packaging jw-build 2025-11-14 11:22:50 +01:00
conf run-success.mk: Record last successful run 2026-09-16 18:16:17 +02:00
doc doc: Add subdir 2026-08-19 20:51:11 +02:00
make topdir.mk: Make target git-import idempotent 2026-09-28 10:45:48 +02:00
scripts pgit.sh: Stop looking for .git at regular file 2026-09-27 10:16:00 +02:00
src lib.FileContext: Add readdir() method 2026-09-29 15:29:19 +02:00
test lib.FileContext: Add readdir() method 2026-09-29 15:29:19 +02:00
.gitignore run-success.mk: Record last successful run 2026-09-16 18:16:17 +02:00
HASH Release 1.0.0-272@suse-tumbleweed/x86_64 2026-09-27 23:39:25 +00:00
Makefile .gitignore: Run make gitignore 2026-09-13 23:09:26 +02:00
RELEASES Release 1.0.0-272@suse-tumbleweed/x86_64 2026-09-27 23:39:25 +00:00
VERSION Start version: 1.0.0-272 2026-09-27 23:10:59 +00:00