Skip to content

TapQueue server and station 0.17.0

Choose a tag to compare

@github-actions github-actions released this 12 Oct 20:50
· 8 commits to main since this release

Added

  • Released jobs are followed at the printer. "Released" used to mean the printer accepted the
    job; what happened to it afterwards was never looked at, and the document was already gone. Now
    the server asks the printer about each job until it's finished and keeps the document that
    long. A job the printer aborts is held again, counts against no page limit, and can be released
    at another printer. A job stopped at the printer's panel gives back the pages that didn't print
    when the printer says how many did. The console, tapqueue-admin jobs and the API's printState
    say printing, printed or stopped, and printedPages is the printer's own count
    where it gives one. Printers that can't be asked about a job behave as before. Database schema 19.
  • Queues offer what the printers can do. A queue used to tell every PC the same thing: four
    paper sizes, 600 dpi, one tray, no finishing, whatever the printers behind it were. It now
    offers the paper sizes, trays, paper types, finishing and resolutions the printers report, the
    document formats every printer takes, and colour and two-sided only if some printer can do them
    (and the queue's settings allow). A job that asks for a paper size is released only at a printer
    that has it; elsewhere the release is refused with the reason and the job stays held. A colour or
    two-sided job released at a printer that can't prints in black and white or on one side, the
    release result says so (note), and the job is recorded as it came out. See
    docs/how-it-works.md.
  • A screen at the station. A tap that found nothing waiting, one that was refused (over a
    page limit, a printer that can't print, not allowed there) and a card nobody has all looked the
    same at the printer: nothing happened. Each station now has a screen page that any browser
    next to the reader can show, on a tablet, an old phone or a monitor: green with a tick for
    printing, amber for nothing waiting, red with the reason for a refusal or an unknown card, and
    between taps whether the printer is ready. Screen link on a station in the console, or
    tapqueue-admin stations screen <id>, makes its address. The station program isn't involved,
    so it works with stations on any version. Database schema 20. See
    docs/release-station.md.
  • A tap that printed nothing is explained on the person's PC. With a 0.17 client, the tray
    says "You tapped at Office printer, but nothing was waiting to print", or why a release was
    refused, or that a printer gave up on a job and it's waiting again (GET /api/v1/me/notices).
  • Downgrade. The Server page has a Downgrade section (tapqueue-admin server downgrade) that
    takes the whole site back to an older release when an update turned out badly: it hands out that
    release's clients and station build, then installs that release of the server. The running
    server steps its database back first, after making a backup. 0.17.0 is the oldest release that
    can be gone back to. See docs/install-server.md.

Changed

  • Client and station builds only come from GitHub releases. Uploading a build is gone: the
    upload forms on the Updates page, tapqueue-admin clients publish, and POST to
    /api/v1/admin/client-builds and /station-builds. Nobody with access to the console can hand
    PCs and stations a program of their own any more. Use Check for updates (or
    tapqueue-admin clients update and stations update), which needs the server to reach GitHub.
  • Stations check an update against GitHub before installing it. A station used to install
    whatever build its server handed out. It now fetches the release's list of programs
    (SHA256SUMS.programs) from GitHub itself and installs the build only if it's on it, so a
    server that was taken over can't run a program of its own on the stations. Stations need to
    reach github.com to update. releases_url in station.toml is for sites that build their own.
  • The clients share this version number from now on (see the clients' changelog).