• v0.2.1 0db8ad07d6

    Postulo 0.2.1
    Some checks failed
    CI / test (3.12) (push) Successful in 1m29s
    CI / test (3.13) (push) Successful in 1m34s
    CI / security (push) Successful in 34s
    CI / styles (push) Successful in 10s
    CI / test (3.14) (push) Successful in 1m30s
    CI / browser (push) Successful in 2m41s
    Release / image (push) Failing after 0s
    Release / release (push) Successful in 10s
    Stable

    tiagoagueda released this 2026-09-07 13:29:19 +00:00 | 295 commits to main since this release

    🐛 Fixed

    • The release run never finished. release.yml's image job says runs-on: docker and
      is guarded by if: vars.BUILD_IMAGE == 'true' — but Forgejo queues a job before it
      evaluates the condition, so with no runner advertising that label the job waited for ever
      and the run never completed. v0.2.0 was published, attached and correct, and its run still
      looked unfinished hours later. The comment at the top of ci.yml had warned about this
      exact behaviour, about a different file. The destination follows the switch now: with
      image building off the job lands on a runner that exists and is skipped at once, and the
      run completes. (#81)

    • Server settings → Overview returned 500 as soon as a backup existed. The view worked
      out the newest backup's age as a span and the template handed that span to timesince,
      which wants a moment and reads .year off it straight away. The line below it asks
      age.days >= 7, which is the right question about a span — both readings sat in the same
      six lines of template and only one matched what the view returned. It returns made_at
      and age now, and each is used for the thing it answers. Nothing caught it because no
      test had ever rendered that page with a backup on disk
      : with an empty directory the
      template takes the "none yet" branch and never touches the filter, so the unit tests, the
      page-coverage check and the accessibility suite were all looking at the empty state. It
      had been broken for as long as the feature existed, and reachable by anybody who had run
      manage.py backup once. Three tests come with the fix — a backup present, one older than
      a week, and an empty directory — so the branch that used to be the only one tested stays
      tested. (#83)

    Downloads