Skip to content

Releases: procrastinate-org/procrastinate

0.8.0: Concurrent tasks and administration shell

29 May 12:02
82e923a
Compare
Choose a tag to compare

Breaking changes

  • None \o/ (that we know of)

Migrations

Features

  • Refactor builtin tasks to use pass_context #205
  • Real concurrent asynchronous tasks #206
  • Implement an administration prompt #204

Fixes

  • Worker should instantiate Event lazily, and should use wait_for, not wait #202
  • Insert event after defer job #184

Tests

  • Activate test_lock #210
  • Add a schema migration test #209
  • Instrument test_lock in case it fails again #214
  • Simplify migration tests #215

Docs

  • Fix connector doc & worker doc (& probably other docs too) #208
  • Add migration tests to contributing doc #211
  • Fix typo in locks howto #216

Misc

  • Remove extraneous spaces in license file #218

0.7.1: Fix migration script

29 Apr 15:38
e2ec16c
Compare
Choose a tag to compare

Fixes

Change CREATE FUNCTION to CREATE OR REPLACE FUNCTION in the delta_0.6.0_001_fix_procrastinate_fetch_job.sql migration script.

0.7.0: Cleaning Postgres Connector

27 Apr 17:53
9aacfee
Compare
Choose a tag to compare

Migrations

Features

Postgres Connector

Breaking compatibility ⚠️

Now, to setup your postgres connector you can do:

connector = procrastinate.PostgresConnector(
    dsn="postgres://user:password@host:port/dbname"
)
# or if you already have an aiopg pool:
connector = procrastinate.PostgresConnector()
connector.set_pool(my_pool)

Associated PRs:

  • Remove PostgresJobStore (compatibility layer) #188
  • Create aiopg pool lazily #185
  • Use a pool instead of a single connection, and reorganize the worker around that #173

Docker

  • Adding a first version of dockerized development environment. #144
  • add POSTGRES_PASSWORD to docker-compose.yml and in contributing documentation #177

Logs

  • add log formatting when deffering a task #117
  • Small second pass on logs #159

Migrations

  • Renaming Migrator as SchemaManager #161
  • Derive schema version from migration scripts #162
  • Improve our migration story #167

Documentation

  • Reword migration section of contributing guide #168
  • Add a "Set database schema" how-to #169
  • Add a "Use Pum for migrations" how-to #170

Misc., including process changes

  • Fix setup.py #174
  • Fix builds 164 #165
  • Fix mypy errors #172
  • Rewrite travis.yml file #179
  • Closes instead of Cf. in PR template #180
  • Remove the procrastinate_jobs.started_at column #145
  • Add official support for Python 3.8 #178

0.6.0: Migrations

27 Mar 14:16
5131440
Compare
Choose a tag to compare

Migrations

  • Add a "Use Pum for migrations" how-to #170
  • Add a "Set database schema" how-to #169
  • Reword migration section of contributing guide #168
  • Improve our migration story #167
  • Fix builds 164 #165
  • Derive schema version from migration scripts #162
  • (internal) Renaming Migrator as SchemaManager #161

The rest

  • Remove the procrastinate_jobs.started_at column #145
  • Small second pass on logs #159
  • 102: add log formatting when deffering a task #117

0.5.0: Handling connection

17 Feb 19:18
401734b
Compare
Choose a tag to compare
  • Automated release process #146
  • Call close_connection from procrastinate_demo main #158
  • Acquire lock for connecting and executing queries #156

0.4.0: From Job Store to Connector

14 Feb 17:34
Compare
Choose a tag to compare

Breaking changes

App is now initialized with a PostgresConnector object instead of a PostgresJobStore.

Change your code from:

app = procrastinate.App(job_store=procrastinate.PostgresJobStore(dsn="..."))

to

app = procrastinate.App(connector=procrastinate.PostgresConnector(dsn="..."))

⚠️ We're going to change a few details around that in the next versions, if you want to avoid frequent changes and you don't need this release, it might be worth waiting for the next ones. We'll advertise when we thing the App API is likely stable.

Changelog

  • Change PostgresJobStore to Pos #147
  • Retry on specific exception type 84 #135
  • Add name attribute to workers and print it in the logs #132
  • New main contributors #138
  • First monitor and corresponding cli command #129
  • Custom JSON encoders and decoders #131
  • Typo fix and a missing sentance in the doc. #136
  • Set enable_uuid to False when calling aiopg.connect #134
  • Fix bug in get_connection #130
  • Make two tests in test_testing async #128
  • Use asyncio.TimeoutError #125
  • Quick improvement of logic flow #121
  • Remove the Task name/full_path warning #123
  • Fix/improve quickstart #120
  • Fix "docker-compose" in contributing doc #122
  • Add @sophie-ulti to the codeowners #116
  • add *.pyc to gitignore #115

0.3.0: We're going async !

29 Nov 14:06
Compare
Choose a tag to compare
  • Don't overwrite psycopg2 adapters when creating the connection (#113)
  • A pass on the contributing doc (#109)
  • Procrastinate's core has become async, and it's now quite easier to support sync and async projects (#96)
  • Documentation spell checker integrated in the project (#77)
  • Fix race conditions (#104)
  • Improve SQL schema (#107)

0.2.1: Metadata update

07 Feb 23:34
Compare
Choose a tag to compare
  • Fixing long description on PyPI (#97)

0.2.0: Ground work

07 Feb 23:48
Compare
Choose a tag to compare
  • Launch tasks when they're corountines (but still sequentially) (#93)
  • Make it possible to launch tasks not defined in the project (#91)
  • Add apt install of postgresql-client in the contributing page (#90)
  • Fix multiple doc issues (#89)
  • Query system. Now the connector is agnostic of the queries it runs (#83)
  • Renaming things (#81)
  • All sql queries in an SQL file, and a system to turn a query into a function (#71)
  • Add Codeowners and PR template (#73)
  • Add more granular tests to cli, and fix tests that actually didn't test anything (#69)
  • Save job events in the DB (#70)
  • Add linear and exponential backoff (#64)
  • Merge pull request #63 from peopledoc/split-howto
  • Wording, documentation & doc review, typos (#58, #72, #74, #75, #76, #78)

0.1.1: Documentation, packaging, licensing

18 Aug 09:40
c4ff11d
Compare
Choose a tag to compare
  • Documentation, packaging, licensing