Skip to content

v3.17.0

Choose a tag to compare

@github-actions github-actions released this 07 Oct 11:00
· 15 commits to main since this release
08f0b93

fastf 3.17.0: what a project is, when it was last alive, and what happened lately

Nothing about an existing project changes. Every PROJECT_INFO.md,
config.toml and template works untouched, and no command, flag or file format
was removed. A project nobody describes writes the same bytes it always did.

The description

Every project can now carry one line saying what it is — for whom, what
for, where it stands — and every list shows it.

  • fastf desc ID0047 "Music video for Lullaby, Indie, due in May" sets it,
    fastf desc ID0047 prints it, --clear removes it.
  • fastf new --description="…" writes it at creation, and so does fastf register --description="…" for one folder. In the app, the wizard asks it
    as its last question, after the template's own; the register form asks it
    for one folder and not for a whole base.
  • In the pane it is the row under the name: Enter or F2 opens the line in
    place, emptied and Enter removes it. It wraps like a note; nothing is cut.
  • fastf recent --plain and fastf search --plain print it on a row of its
    own under the project, fastf show under the name, and the JSON carries it
    as description. Free-text search matches it, and description=*fiverr*
    addresses it by name.

It is one line and at most 200 characters, and a refusal names the rule, on
the command line and in the pane alike. It lives in the frontmatter as
description: and rides in the base's index like the tags, so a list never
opens a file for it; show, desc and the pane read the file, and a line
typed into the file by hand shows in the list once the project is opened or
the base reindexed.

A template that declares a variable called description keeps
--description for that variable, as it has always been, and says so: a
script written before this release goes on working.

Touched

Beside created, every project now says when it was last written:
touched, the newer of its PROJECT_INFO.md and its folder. It is in the
plain list, in fastf show, in the pane's facts and in the JSON, as the same
fixed-width stamp as created, so the two compare as text. It is never
stored: every write fastf makes moves it, and so does a file dropped into or
taken out of the folder's top level; an edit deeper in the folder does not,
which is why a note is still how work is said to have happened. fastf show --json also carries last_note, the newest dated note.

The journal

fastf journal is every project's notes as one timeline, newest first:
the day and time, the project's id, the note. --since is about the note's
own date, so a new note on an old project is in this month's journal;
--template, --tag and --base choose the projects; --grep keeps the
notes whose text contains a word, which is how a note written to be found
later — lesson: ask for the stems first — is found; -n sets how many, and
--json prints them for a script.

docs/projects.md now has a section on a project as memory: the three kinds
of note that outlive a project and where each is promoted to, and the two
edits that close a project.

What's Changed

  • packaging: bump both AUR packages to 3.16.0-1 by @cristocola in #116
  • A project's one-line description, and when it was last touched by @cristocola in #118
  • fastf journal: every project's notes as one timeline by @cristocola in #120
  • fastf 3.17.0: the version, and the release notes by @cristocola in #121

Full Changelog: v3.16.0...v3.17.0