Package: filespooler
Source: rust-filespooler
Version: 1.2.4-1
Architecture: amd64
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
Installed-Size: 1628
Depends: libc6 (>= 2.39), libgcc-s1 (>= 4.2)
Built-Using: rust-nix (= 0.30.1-3)
Static-Built-Using: rust-addr2line (= 0.24.2-2), rust-adler (= 1.0.2-3), rust-anstyle (= 1.0.11-1), rust-anyhow (= 1.0.99-1), rust-backtrace (= 0.3.75-2), rust-bitflags (= 2.9.4-3), rust-byteorder (= 1.5.0-1), rust-bytes (= 1.10.1-1), rust-cfg-if (= 1.0.3-2), rust-chrono (= 0.4.42-1), rust-clap (= 4.5.48-4), rust-clap-builder (= 4.5.48-2), rust-clap-lex (= 0.7.4-1), rust-command-group (= 5.0.1-3), rust-crc32fast (= 1.4.2-1), rust-defaults (= 1.88.0ubuntu1), rust-fastrand (= 2.3.0-1), rust-fd-lock (= 3.0.13-2), rust-getrandom (= 0.2.15-4), rust-gimli (= 0.31.1-2), rust-iana-time-zone (= 0.1.63-1), rust-lazy-static (= 1.5.0-1), rust-libc (= 0.2.175-2), rust-linux-raw-sys (= 0.11.0-1), rust-memchr (= 2.7.5-2), rust-miniz-oxide (= 0.7.1-2), rust-nix (= 0.30.1-3), rust-num-traits (= 0.2.19-2), rust-object (= 0.36.5-4), rust-once-cell (= 1.21.3-1), rust-pin-project-lite (= 0.2.13-1), rust-rmp (= 0.8.14-1), rust-rmp-serde (= 1.3.0-1), rust-rustc-demangle (= 0.1.24-2), rust-rustix (= 1.1.2-1), rust-serde (= 1.0.219-1), rust-sharded-slab (= 0.1.4-2), rust-tempfile (= 3.23.0-1), rust-terminal-size (= 0.4.2-2), rust-thread-local (= 1.1.4-1), rust-tracing (= 0.1.40-1), rust-tracing-core (= 0.1.32-1), rust-tracing-subscriber (= 0.3.18-4), rust-uuid (= 1.18.1-1), rust-wait-timeout (= 0.2.0-1)
Section: utils
Priority: optional
Homepage: https://www.complete.org/filespooler/
Description: Sequential, distributed, POSIX-style job queue processing
 Filespooler is a Unix-style tool that facilitates local or remote command
 execution, complete with stdin capture, with easy integration with various
 tools.  Here's a brief Filespooler feature list:
 .
  - It can easily use tools such as S3, Dropbox, Syncthing, NNCP, ssh, UUCP, USB
   drives, CDs, etc. as transport.
 .
   - Translation: you can use basically anything that is a filesystem as a
     transport
 .
  - It can use arbitrary decoder command pipelines (eg, zcat, stdcat, gpg, age,
   etc) to pre-process stored packets.
 .
  - It can send and receive packets by pipes.
 .
  - Its storage format is simple on-disk files with locking.
 .
  - It supports one-to-one and one-to-many configurations.
 .
  - Locking is unnecessary when writing new jobs to the queue, and many arbitrary
   tools (eg, Syncthing, Dropbox, etc) can safely write directly to the queue
   without any assistance.
 .
  - Queue processing is strictly ordered based on the order on the creation
   machine, even if job files are delivered out of order to the destination.
 .
  - stdin can be piped into the job creation tool, and piped to a later executor
   at process time on a remote machine.
 .
  - The file format is lightweight; less than 100 bytes overhead unless large
   extra parameters are given.
 .
  - The queue format is lightweight; having 1000 different queues on a Raspberry
   Pi would be easy.
 .
  - Processing is stream-based throughout; arbitrarily-large packets are fine and
   sizes in the TB range are no problem.
 .
  - The Filespooler command, fspl, is extremely lightweight, consuming less than
   10MB of RAM on x86_64.
 .
  - Filespooler has extensive documentation.
 .
 Filespooler consists of a command-line tool (fspl) for interacting with queues.
 It also consists of a Rust library that is used by fspl.  main.rs for fspl is
 just a few lines long.
