Skip to content

Releases: procrastinate-org/procrastinate

0.17.0: Make migrations simpler & safer

13 Nov 13:30
3c376dd
Compare
Choose a tag to compare

Migrations

This version didn't actually add new migrations (but existing migrations were renamed)

A consequence of this, if you're using Django Migrations and ran migrations pre-0.17 is that one of the Django migrations was renamed, which confuses Django. Before running the Migrations for 0.17.0, you're invited to run the following Django code in the Django shell (manage.py shell):

>>> from django.db.migrations.recorder import MigrationRecorder
>>> MigrationRecorder.Migration.objects.filter(app="procrastinate", name="0001_baseline").update(name="0001_initial")

Starting at this release, migrations can be run while the system runs, provided certain conditions are met.
See the migrations doc for more information.

Work on migrations:

  • Use underscores in migration script names (#345)
  • Document new rules for database migrations (#342)
  • Rename SQL migrations (#347)
  • Rename migration: wrong index number (#350)
  • Django migrations: generate on the fly via import hooks (#340)

Breaking Changes

  • Django migrations, see above.
  • procrastinate healthchecks now doesn't report the number of jobs anymore. Use procrastinate shell for that.

Miscellaneous

  • Adjust badges (#337)
  • Rename Job Store > Job Manager (#335)
  • Report test workflow success in Check API (#322)
  • Don't test the PRs, just test the branches (#348)
  • Ignore aiopg warnings that we can't do anything about (#338)
  • Remove HealthCheckRunner, simplify healthchecks (#339)

Kudos:

@elemoine, @ewjoachim and @thomasperrot

0.16.0: Avoid Postgres deadlocks when deferring periodic jobs

06 Oct 09:41
a8a7a50
Compare
Choose a tag to compare

Migrations

Features

  • Auto-generating Django migrations using Django's own machinery (#298)

Bug Fixes

  • Fix the procrastinate_defer_periodic_job SQL function (#329)
  • Change name of short option for --listen-notifiy (#325)
  • Fix the AppNotOpen exception message (#327)

Documentation

  • Document how to make remove_old_jobs periodic (#326)

Miscellaneous

  • Use setuptools-scm to get migration from Git (#319)
  • Make test_run_log_current_job_when_stopping more robust (#317)
  • Use postgres:12 image for faster tests (#315)
  • Use migra instead of pum for the db migration tests (#308)
  • Run the main workflow for other branches than master (#311)
  • GitHub actions (#302)
  • Simplify release-drafter PR process (#324)

Kudos:

@elemoine, @ewjoachim, @mgu and @thomasperrot

0.15.2: Fixing the release process again

25 Aug 10:15
92f0fa6
Compare
Choose a tag to compare

Once again, this release is just a way for us to test the release process. Nothing changed in the code.

Migrations

None

Bugfixes

  • Fix deployment in CI (#301)

Kudos:

@thomasperrot

0.15.1: Fixing the release process

25 Aug 10:01
6ad7f04
Compare
Choose a tag to compare

OK, this release is just a way for us to test the release process. Nothing changed in the code.

Migrations

None

Bugfixes

  • Trigger CI when publishing a new release (#300)

Kudos:

@thomasperrot

0.15.0: Improve periodic tasks

25 Aug 08:12
c11ae01
Compare
Choose a tag to compare

Migrations

Breaking changes

  • It is now expected that connections are explicitly opened (and close): see documentation for the various ways of doing that. (#270)

Features

  • You can now have a single periodic task be deferred multiple times on multiple queues (doc) (#296)
  • Tasks (including periodic tasks) now accept default locks and queueing locks in the same way as it was accepting default queues (doc) (#296)

Bugfix

  • Periodic tasks deferring won't be interrupted by long synchronous tasks (#296)

Miscellaneous

  • Add github actions (#290)
  • Badges (#299)
  • Additional doc on periodic tasks - forgotten wording fix (#294)

Kudos:

@ewjoachim and @thomasperrot

0.14.0: Add Django support

20 Aug 08:11
dec0749
Compare
Choose a tag to compare

Migrations

None

Features

  • Django contrib app (#283)

Bug Fixes

  • Fix the "every second periodic task" bug (#293)

Miscellaneous

  • Fix quickstart documentation (#285)
  • Additional doc on periodic tasks (#291)
  • Dev env script (#284)

Kudos:

Agate (ping @EliotBerriot), @t-eckert, @elemoine, @ewjoachim

0.13.0: Remove pendulum dependency

17 Jul 17:05
d0bb83f
Compare
Choose a tag to compare

Migrations

None

Breaking changes

Miscellaneous

  • Use python-dateutil to parse date (#279)

Kudos:

@EliotBerriot

0.12.1: Add missing SQL index

17 Jul 09:38
e691ea7
Compare
Choose a tag to compare

Migrations

Bug Fixes

  • Add missing index to procrastinate_periodic_defers (#277)

Miscellaneous

  • Adapt to new isort 5 (#275)

Kudos:

@ewjoachim, @anayrat

0.12.0: Periodic tasks

06 Jul 07:34
e2af2c1
Compare
Choose a tag to compare

Migrations

Features

Miscellaneous

  • Add py.typed to package (#272)
  • Add missing documentation on arguement retry_exceptions (#271)

Kudos:

@SBillion, @elemoine, @ewjoachim and @tmartinfr

0.11.0: Fix race condition, improve resource usage

23 Jun 11:38
645cc40
Compare
Choose a tag to compare

Migrations

Breaking changes

  • If you created an AiopgConnector with maxsize=0 or 1, it used to change it to 2. Now it won't. 0 should really be avoided. 1 will disable the listen/notify feature. See doc.

Features

  • Synchronous programs can now define a Psycopg2Connector() and have real synchronous I/Os, likely to work better with multithreaded programs. See doc. (#237)
  • Default log message contains task result. This means you can return <something> in your task to make this <something> appear in your logs (#252)
  • Make listen/notify optional, through listen_notify=False in your worker configuration (#258)

Bug Fixes

  • Close race condition in procrastinate_fetch_job (#231)
  • Retry on "server closed connection unexpectedly" errors (#259)
  • Synchronous closing for AiopgConnector (#263)
  • Add task.defer as an explicit sync method (#257)

Miscellaneous

  • Documentation "Quickstart" section was full of imprecisions (#254)
  • Display test results & simplify Tox setup (#253)
  • Add function procrastinate_defer_job (#232)
  • CONTRIBUTING.rst: more precise wording on release automated steps (#248)
  • Update release-drafter.yml (#245)

Kudos:

@elemoine and @ewjoachim