]> git.ipfire.org Git - thirdparty/psycopg.git/log
thirdparty/psycopg.git
17 months agofix: use the simple query protocol to execute BEGIN/COMMIT out of pipeline
Daniele Varrazzo [Tue, 14 May 2024 11:18:40 +0000 (13:18 +0200)] 
fix: use the simple query protocol to execute BEGIN/COMMIT out of pipeline

We started using the extended protocol in e5079184 to fix #350, but,
probably to keep symmetry, we also changed the behaviour out of the
pipeline.

This turns out to be a problem for people connecting to the PgBouncer
admin console. They can use the `ClientCursor`, which tries to use the
simple protocol as much as it can, but they currently have to use
autocommit. With this changeset autocommit shouldn't be needed anymore.
See #808.

17 months agochore: don't codespell html files
Daniele Varrazzo [Tue, 14 May 2024 11:29:50 +0000 (13:29 +0200)] 
chore: don't codespell html files

17 months agochore: bump psycopg package version to 3.1.20.dev1
Daniele Varrazzo [Sat, 11 May 2024 15:32:17 +0000 (17:32 +0200)] 
chore: bump psycopg package version to 3.1.20.dev1

17 months agochore: bump psycopg package version to 3.1.19 3.1.19
Daniele Varrazzo [Fri, 10 May 2024 00:01:14 +0000 (02:01 +0200)] 
chore: bump psycopg package version to 3.1.19

17 months agochore(crdb): upgrade types to v23.1
Daniele Varrazzo [Thu, 9 May 2024 00:33:34 +0000 (02:33 +0200)] 
chore(crdb): upgrade types to v23.1

17 months agoci(macos): test and build macOS packages on M1 runners
Daniele Varrazzo [Tue, 9 Apr 2024 23:57:50 +0000 (01:57 +0200)] 
ci(macos): test and build macOS packages on M1 runners

Separate macos runners because:

The macos-14 runner can build amd64 images, but doesn't have Python <
3.10.

The macos-12 runner can only build x86_64 images.

Run Postgres from CI rather than from cibuildwheel, as cibw won't use a
docker image on macOS anyway. It makes it more uniform w.r.t. other
runners and doesn't require a "before" script.

17 months agoMerge branch 'fix-745' into maint-3.1
Daniele Varrazzo [Wed, 8 May 2024 09:55:26 +0000 (11:55 +0200)] 
Merge branch 'fix-745' into maint-3.1

17 months agoperf(copy): only flush at every row on copy on macOS
Daniele Varrazzo [Mon, 6 May 2024 16:43:10 +0000 (18:43 +0200)] 
perf(copy): only flush at every row on copy on macOS

Using some benchmark, it seems on Linux performances are worse.

Must look into how Windows behave.

17 months agoImprove performance of copy
Andrew Kane [Mon, 4 Mar 2024 22:34:56 +0000 (14:34 -0800)] 
Improve performance of copy

17 months agotest(copy): add minimal copy benchmark framework
Daniele Varrazzo [Fri, 3 May 2024 11:08:11 +0000 (13:08 +0200)] 
test(copy): add minimal copy benchmark framework

18 months agoMerge branch 'fix-734' into maint-3.1
Daniele Varrazzo [Sun, 21 Apr 2024 01:29:06 +0000 (03:29 +0200)] 
Merge branch 'fix-734' into maint-3.1

18 months agofix(c): solve undefined behaviour caused by unaligned access
Daniele Varrazzo [Sun, 11 Feb 2024 01:34:20 +0000 (02:34 +0100)] 
fix(c): solve undefined behaviour caused by unaligned access

Close #734

18 months agoci: add test to check for misaligned memory access
Daniele Varrazzo [Wed, 10 Apr 2024 23:24:02 +0000 (01:24 +0200)] 
ci: add test to check for misaligned memory access

18 months agofix: fix handling of floating point values for connect_timeout
Daniele Varrazzo [Thu, 18 Apr 2024 01:38:17 +0000 (03:38 +0200)] 
fix: fix handling of floating point values for connect_timeout

18 months agoMerge pull request #758 from psycopg/fix-752
Daniele Varrazzo [Mon, 1 Apr 2024 22:43:16 +0000 (23:43 +0100)] 
Merge pull request #758 from psycopg/fix-752

More careful stripping of error prefixes

18 months agochore: move codespell configuration to pyproject.toml 758/head
Daniele Varrazzo [Sun, 31 Mar 2024 22:13:20 +0000 (22:13 +0000)] 
chore: move codespell configuration to pyproject.toml

Configuration updated to ignore false positives in the errors l10n regexp.

18 months agofix: more careful stripping of error prefixes
Daniele Varrazzo [Sun, 31 Mar 2024 20:57:42 +0000 (20:57 +0000)] 
fix: more careful stripping of error prefixes

Only strip the known prefixes, both in English and in the currently
known localizations.

Added script to generate regexp to match every backend localization. The
script was executed on PostgreSQL commit f4ad0021af (on master branch,
before v17).

Close #752.

18 months agotest: add pool package to django tests
Daniele Varrazzo [Sun, 31 Mar 2024 22:22:07 +0000 (22:22 +0000)] 
test: add pool package to django tests

It seems needed in the current main branch.

18 months agodocs: fix a typo in FinishedPGconn docstring
Denis Laxalde [Fri, 8 Mar 2024 10:00:34 +0000 (11:00 +0100)] 
docs: fix a typo in FinishedPGconn docstring

20 months agofix: avoid to create reference loops in datetime adapters
Daniele Varrazzo [Wed, 7 Feb 2024 01:16:06 +0000 (01:16 +0000)] 
fix: avoid to create reference loops in datetime adapters

Setting the reference to a bound method in the state creates a reference
loop.

The issue is minimal because the gc will be able to break these loops
anyway and because it mostly happens with exotic or unsupported
date/interval styles.

20 months agochore: bump psycopg package version to 3.1.19.dev1
Daniele Varrazzo [Sun, 4 Feb 2024 21:12:19 +0000 (21:12 +0000)] 
chore: bump psycopg package version to 3.1.19.dev1

20 months agochore: bump psycopg package version to 3.1.18 3.1.18
Daniele Varrazzo [Sun, 4 Feb 2024 17:42:54 +0000 (17:42 +0000)] 
chore: bump psycopg package version to 3.1.18

20 months agofix(c): drop spurious loop break in pipeline_communicate
Daniele Varrazzo [Fri, 4 Nov 2022 22:17:13 +0000 (23:17 +0100)] 
fix(c): drop spurious loop break in pipeline_communicate

This makes the Python and the C implementation more similar. The
difference was unexpected but apparently harmless. See #431

20 months agochore: bump cibuildwheel version
Daniele Varrazzo [Sun, 4 Feb 2024 12:14:46 +0000 (12:14 +0000)] 
chore: bump cibuildwheel version

It should fix an error building Windows wheel
https://github.com/pypa/cibuildwheel/issues/1740

20 months agochore: bump checkout action to v4
Daniele Varrazzo [Sun, 4 Feb 2024 12:00:47 +0000 (12:00 +0000)] 
chore: bump checkout action to v4

20 months agodocs: fix tickets format
Daniele Varrazzo [Mon, 29 Jan 2024 02:23:28 +0000 (02:23 +0000)] 
docs: fix tickets format

20 months agoMerge branch 'musl-ctypes' into maint-3.1
Daniele Varrazzo [Mon, 29 Jan 2024 02:24:24 +0000 (02:24 +0000)] 
Merge branch 'musl-ctypes' into maint-3.1

20 months agodocs: mention musl-ctypes workaround in news file
Daniele Varrazzo [Mon, 29 Jan 2024 00:24:05 +0000 (00:24 +0000)] 
docs: mention musl-ctypes workaround in news file

20 months agofix: add `libc.so` fallback for musl systems to the ctypes impl
Michał Górny [Sat, 27 Jan 2024 14:28:34 +0000 (15:28 +0100)] 
fix: add `libc.so` fallback for musl systems to the ctypes impl

Add a fallback to `libc.so` library name to fix loading the ctypes
implementation on musl systems.  On musl, `find_library("c")` does
not work (the problem has been reported to CPython in 2014, and has not
been resolved yet), causing the module to fail on `assert libcname`.
Instead, add a fallback to using `libc.so` and let ctypes raise
an exception if such a library does not exist.

20 months agotest: drop ineffective marker on fixture
Daniele Varrazzo [Mon, 29 Jan 2024 00:08:47 +0000 (00:08 +0000)] 
test: drop ineffective marker on fixture

Previously ignored, it has become an error in PyTest 8.

20 months agoMerge branch 'fix-interval-overflow' into maint-3.1
Daniele Varrazzo [Sat, 27 Jan 2024 02:11:36 +0000 (02:11 +0000)] 
Merge branch 'fix-interval-overflow' into maint-3.1

20 months agodocs: add release note about interval overflow fix
Daniele Varrazzo [Sat, 27 Jan 2024 01:29:32 +0000 (01:29 +0000)] 
docs: add release note about interval overflow fix

20 months agofix(c): don't overflow intervals on windows either
Daniele Varrazzo [Sat, 27 Jan 2024 01:09:11 +0000 (01:09 +0000)] 
fix(c): don't overflow intervals on windows either

In MSVC, long is 4 bytes. Should use long long instead. int64_t is more
understandable.

20 months agofix(c): use long for seconds to prevent IntervalLoader from overflowing
Iacami Gevaerd [Tue, 16 Jan 2024 15:13:01 +0000 (12:13 -0300)] 
fix(c): use long for seconds to prevent IntervalLoader from overflowing

if the given interval is too long for a regular int it will become
negative an cause inconsistencies with the regular python implementation

20 months agochore: bump black to 24.1.0
Daniele Varrazzo [Fri, 26 Jan 2024 12:18:58 +0000 (12:18 +0000)] 
chore: bump black to 24.1.0

20 months agoMerge pull request #722 from psycopg/fix-deadlock-on-pipeline-exit
Daniele Varrazzo [Fri, 26 Jan 2024 09:45:14 +0000 (09:45 +0000)] 
Merge pull request #722 from psycopg/fix-deadlock-on-pipeline-exit

Fix deadline on pipeline exit

20 months agofix: force a sync exiting the pipeline mode 722/head
Daniele Varrazzo [Fri, 26 Jan 2024 00:29:29 +0000 (00:29 +0000)] 
fix: force a sync exiting the pipeline mode

Without it there may be a deadlock and we would be waiting to fetch a
result that will never come.

Close #685.

21 months agochore: bump psycopg package version to 3.1.18.dev1
Daniele Varrazzo [Sun, 7 Jan 2024 14:47:30 +0000 (15:47 +0100)] 
chore: bump psycopg package version to 3.1.18.dev1

21 months agoci: revert upload action to v3
Daniele Varrazzo [Sun, 7 Jan 2024 11:49:41 +0000 (12:49 +0100)] 
ci: revert upload action to v3

v4 requires to have every uploaded artifact in a separate directory.

- https://github.com/actions/upload-artifact/issues/478
- https://github.com/actions/upload-artifact/blob/main/docs/MIGRATION.md

21 months agochore: bump psycopg package version to 3.1.17 3.1.17
Daniele Varrazzo [Sun, 7 Jan 2024 01:41:20 +0000 (02:41 +0100)] 
chore: bump psycopg package version to 3.1.17

21 months agochore(c): add missing enum entries
Daniele Varrazzo [Sat, 6 Jan 2024 19:37:37 +0000 (20:37 +0100)] 
chore(c): add missing enum entries

21 months agodocs: add note about checking enums and docs on PostgreSQL update
Daniele Varrazzo [Sat, 6 Jan 2024 19:36:56 +0000 (20:36 +0100)] 
docs: add note about checking enums and docs on PostgreSQL update

21 months agoMerge branch 'fix-699' into maint-3.1
Daniele Varrazzo [Sat, 6 Jan 2024 19:35:26 +0000 (20:35 +0100)] 
Merge branch 'fix-699' into maint-3.1

21 months agofix: perform multiple attemps if a host name resolve to multiple hosts
Daniele Varrazzo [Sat, 6 Jan 2024 16:24:48 +0000 (17:24 +0100)] 
fix: perform multiple attemps if a host name resolve to multiple hosts

We now perform DNS resolution in Python both in the sync and async code.
Because the two code paths are now very similar, make sure they pass the
same tests.

Close #699.

21 months agorefactor(test): make resolution monkeypatching common fixtures
Daniele Varrazzo [Sat, 6 Jan 2024 16:10:58 +0000 (17:10 +0100)] 
refactor(test): make resolution monkeypatching common fixtures

21 months agorefactor: separate ConnectionInfo object from conninfo module
Daniele Varrazzo [Sat, 6 Jan 2024 14:50:14 +0000 (15:50 +0100)] 
refactor: separate ConnectionInfo object from conninfo module

It was there just because the name is similar, but its purpose is
entirely different.

21 months agochore: upload github actions dependencies
Daniele Varrazzo [Tue, 2 Jan 2024 03:29:48 +0000 (04:29 +0100)] 
chore: upload github actions dependencies

21 months agorefactor: use Self to represent the return from `BaseConnection._connect_gen()`
Daniele Varrazzo [Wed, 3 Jan 2024 02:38:19 +0000 (03:38 +0100)] 
refactor: use Self to represent the return from `BaseConnection._connect_gen()`

21 months agochore: drop unneeded type annotations on self
Daniele Varrazzo [Wed, 3 Jan 2024 02:07:27 +0000 (03:07 +0100)] 
chore: drop unneeded type annotations on self

21 months agorefactor: use typing.Self 710/head
Daniele Varrazzo [Sat, 30 Dec 2023 00:30:39 +0000 (01:30 +0100)] 
refactor: use typing.Self

The object seems available for all the supported Python version and
should avoid problems with PyRight (see #708).

It is not a solution for #308 because we cannot use `Self[Row]`.

22 months agotest: add async driver to sqlalchemy pipeline
Federico Caselli [Mon, 18 Dec 2023 20:31:22 +0000 (21:31 +0100)] 
test: add async driver to sqlalchemy pipeline

22 months agochore: bump psycopg package version to 3.1.17.dev1
Daniele Varrazzo [Tue, 19 Dec 2023 01:27:19 +0000 (02:27 +0100)] 
chore: bump psycopg package version to 3.1.17.dev1

22 months agochore: bump psycopg package version to 3.1.16 3.1.16
Daniele Varrazzo [Tue, 19 Dec 2023 01:07:54 +0000 (02:07 +0100)] 
chore: bump psycopg package version to 3.1.16

22 months agofix: fix empty ports handling in async multiple connection attempts
Daniele Varrazzo [Mon, 18 Dec 2023 23:58:35 +0000 (00:58 +0100)] 
fix: fix empty ports handling in async multiple connection attempts

Close #703.

22 months agochore: bump psycopg package version to 3.1.16.dev1
Daniele Varrazzo [Tue, 19 Dec 2023 00:01:26 +0000 (01:01 +0100)] 
chore: bump psycopg package version to 3.1.16.dev1

22 months agochore: include codespell in dev dependencies
Daniele Varrazzo [Mon, 18 Dec 2023 01:54:26 +0000 (02:54 +0100)] 
chore: include codespell in dev dependencies

22 months agochore: bump psycopg package version to 3.1.15 3.1.15
Daniele Varrazzo [Thu, 14 Dec 2023 03:26:56 +0000 (04:26 +0100)] 
chore: bump psycopg package version to 3.1.15

22 months agoMerge pull request #700 from psycopg/fix-service-file
Daniele Varrazzo [Thu, 14 Dec 2023 03:25:23 +0000 (03:25 +0000)] 
Merge pull request #700 from psycopg/fix-service-file

22 months agorefactor: add compiled_default option to _get_params 700/head
Daniele Varrazzo [Wed, 13 Dec 2023 13:20:49 +0000 (14:20 +0100)] 
refactor: add compiled_default option to _get_params

Make it less awkward to come out with a 5432 when we really want a port
number (in name resolution) but still allow to leave it unspecified to
avoid mangling the conninfo.

22 months agofix: honour the PGLOADBALANCEHOSTS env var
Daniele Varrazzo [Wed, 13 Dec 2023 11:31:13 +0000 (12:31 +0100)] 
fix: honour the PGLOADBALANCEHOSTS env var

22 months agofix: honour the PGCONNECT_TIMEOUT env var
Daniele Varrazzo [Wed, 13 Dec 2023 03:55:51 +0000 (04:55 +0100)] 
fix: honour the PGCONNECT_TIMEOUT env var

22 months agofix: set minimum timeout to 2s
Daniele Varrazzo [Wed, 13 Dec 2023 03:35:48 +0000 (04:35 +0100)] 
fix: set minimum timeout to 2s

This is consistent with what the libpq does.

Move timeout calculation to a function in conninfo module and don't
change the connect_timeout parameter explicitly in the connection
string.

Drop awful drop_default_args_from_conninfo() from tests.

22 months agofix: add debug logging when a connection attempt is discarded
Daniele Varrazzo [Wed, 13 Dec 2023 03:34:40 +0000 (04:34 +0100)] 
fix: add debug logging when a connection attempt is discarded

22 months agorefactor: return lists from conninfo attempt functions
Daniele Varrazzo [Wed, 13 Dec 2023 00:33:04 +0000 (01:33 +0100)] 
refactor: return lists from conninfo attempt functions

22 months agofix: shuffle attempts when one host resolves to more than one IP
Daniele Varrazzo [Wed, 13 Dec 2023 00:03:55 +0000 (01:03 +0100)] 
fix: shuffle attempts when one host resolves to more than one IP

This behaviour (first resolve all the hosts, then shuffle the IPs) mimics
better what the libpq does in non-async mode.

22 months agofix: don't add defaults to connection strings
Daniele Varrazzo [Tue, 12 Dec 2023 19:33:20 +0000 (20:33 +0100)] 
fix: don't add defaults to connection strings

A default such as empty string for host may may shadow values defined in
a service file.

Fix #694.

22 months agofix: fix iteration resolving hosts with multiple IP addresses in async mode
Daniele Varrazzo [Tue, 12 Dec 2023 16:56:37 +0000 (17:56 +0100)] 
fix: fix iteration resolving hosts with multiple IP addresses in async mode

Fix #695 (not 100% sure, but probably).

22 months agotest: mark a couple of test slow
Daniele Varrazzo [Tue, 12 Dec 2023 17:02:22 +0000 (18:02 +0100)] 
test: mark a couple of test slow

Sub-second, but noticeable glitches in my stream of green dots.

22 months agotest: mark flaky ref count tests
nialov [Mon, 4 Dec 2023 17:33:46 +0000 (19:33 +0200)] 
test: mark flaky ref count tests

All tests that have the 'gc' fixture are now marked with the refcount mark. The
reasoning is that they demonstrate flaky behaviour and disabling them in
certain CI is necessary to ensure reliable testing. See #692

22 months agodocs: fix doc about the module gevent needs to patch
Daniele Varrazzo [Mon, 4 Dec 2023 09:35:40 +0000 (10:35 +0100)] 
docs: fix doc about the module gevent needs to patch

22 months agochore: bump psycopg package version to 3.1.15.dev1
Daniele Varrazzo [Sat, 2 Dec 2023 09:32:54 +0000 (10:32 +0100)] 
chore: bump psycopg package version to 3.1.15.dev1

22 months agochore: bump psycopg package version to 3.1.14 3.1.14
Daniele Varrazzo [Sat, 2 Dec 2023 02:20:04 +0000 (03:20 +0100)] 
chore: bump psycopg package version to 3.1.14

22 months agoMerge branch 'pypy-3.1' into maint-3.1
Daniele Varrazzo [Sat, 2 Dec 2023 02:19:45 +0000 (03:19 +0100)] 
Merge branch 'pypy-3.1' into maint-3.1

22 months agotest: skip some tests that raise an error on pypy 3.9
Daniele Varrazzo [Sat, 2 Dec 2023 01:56:35 +0000 (02:56 +0100)] 
test: skip some tests that raise an error on pypy 3.9

The error is:

    anyio/_backends/_asyncio.py:2039: in _cancel_all_tasks
        raise cast(BaseException, task.exception())
    ...
    >               result = coro.throw(exc)
    E               RuntimeError: can't do async_generator.athrow().throw()

The error only happens on Pypy 3.9, and doesn't happen on master, only
in the maint 3.1 branch. 3.1 uses anyio < 4, master uses anyio >= 4, so
I would say that the error is limited to only this combination and that
it is an anyio bug.

The problem affects just two tests, so let's just skip them. Whatever.

22 months agochore: add support for PyPy.
Nick Pope [Tue, 28 Nov 2023 12:46:59 +0000 (12:46 +0000)] 
chore: add support for PyPy.

22 months agoMerge branch 'fix-gevent' into maint-3.1
Daniele Varrazzo [Fri, 1 Dec 2023 23:40:56 +0000 (00:40 +0100)] 
Merge branch 'fix-gevent' into maint-3.1

22 months agorefactor: use `yield from` in connections attempts
Daniele Varrazzo [Thu, 30 Nov 2023 09:11:46 +0000 (10:11 +0100)] 
refactor: use `yield from` in connections attempts

22 months agoci: test gevent integration
Daniele Varrazzo [Thu, 30 Nov 2023 10:23:27 +0000 (11:23 +0100)] 
ci: test gevent integration

22 months agofix: ensure gevent collaboration
Daniele Varrazzo [Thu, 30 Nov 2023 09:05:33 +0000 (10:05 +0100)] 
fix: ensure gevent collaboration

Close #527

22 months agotest: let pytest show more info in summary
Denis Laxalde [Thu, 30 Nov 2023 20:01:01 +0000 (21:01 +0100)] 
test: let pytest show more info in summary

We add '-ra' to pytest options so as to get report about "(a)ll except
passed" tests. This is in particular useful to get the detailed message
about why some tests got skipped (especially useful in CI).

23 months agoMerge pull request #683 from mweinelt/connect-env-maint-3.1
Daniele Varrazzo [Tue, 21 Nov 2023 12:19:47 +0000 (12:19 +0000)] 
Merge pull request #683 from mweinelt/connect-env-maint-3.1

23 months agotest: fix test failing to connect if env vars are cleaned 683/head
Daniele Varrazzo [Tue, 21 Nov 2023 08:49:24 +0000 (09:49 +0100)] 
test: fix test failing to connect if env vars are cleaned

Add `dsn_env` fixture returning the `dsn` merged with the values in the
PG* env vars. This way the env can be cleaned but a working connection
string is still available.

23 months agofix: flush PG environment variables in test_connect{,_args}
Martin Weinelt [Tue, 21 Nov 2023 02:00:36 +0000 (03:00 +0100)] 
fix: flush PG environment variables in test_connect{,_args}

These tests were previously affected by environment variables, that can
be used to configure a postgresql instance.

Closes: #681
23 months agochore(ci): use existing macos11 packages in macOS arm build
Daniele Varrazzo [Fri, 17 Nov 2023 16:00:08 +0000 (17:00 +0100)] 
chore(ci): use existing macos11 packages in macOS arm build

23 months agochore: bump psycopg package version to 3.1.13 3.1.13
Daniele Varrazzo [Fri, 17 Nov 2023 15:36:57 +0000 (16:36 +0100)] 
chore: bump psycopg package version to 3.1.13

23 months agofix: plug memory leak receiving notifications in python libpq wrapper
Daniele Varrazzo [Thu, 16 Nov 2023 01:27:14 +0000 (02:27 +0100)] 
fix: plug memory leak receiving notifications in python libpq wrapper

Close #679.

23 months agoMerge branch 'fix-multiple-hosts-3.1' into maint-3.1
Daniele Varrazzo [Tue, 14 Nov 2023 00:24:17 +0000 (01:24 +0100)] 
Merge branch 'fix-multiple-hosts-3.1' into maint-3.1

23 months agochore: drop conninfo.resolve_hostaddr_async
Daniele Varrazzo [Mon, 13 Nov 2023 22:56:46 +0000 (23:56 +0100)] 
chore: drop conninfo.resolve_hostaddr_async

The function is no more used internally and only exposed from the _dns
module with a warning. Its implementation is now an application of a few
internal functions exposed internally by the conninfo module. Move the
whole implementation into _dns.

23 months agofix: add support for the 'load_balance_hosts' connection parameter
Daniele Varrazzo [Mon, 13 Nov 2023 20:12:45 +0000 (20:12 +0000)] 
fix: add support for the 'load_balance_hosts' connection parameter

23 months agotest: test conninfo attempts functions and multiple host support in connection
Daniele Varrazzo [Mon, 13 Nov 2023 18:08:51 +0000 (18:08 +0000)] 
test: test conninfo attempts functions and multiple host support in connection

23 months agofeat: explicitly iterate on multiple hosts on connections
Daniele Varrazzo [Thu, 26 Oct 2023 21:16:01 +0000 (23:16 +0200)] 
feat: explicitly iterate on multiple hosts on connections

The libpq async connection path doesn't iterate on the attempts, so we
need to do it ourselves.

23 months agorefactor: introduce support function to split connection attempts
Daniele Varrazzo [Thu, 26 Oct 2023 16:28:17 +0000 (18:28 +0200)] 
refactor: introduce support function to split connection attempts

Refactor the `resolve_hostaddr_async()` function to make use of such
facilities.

23 months agorefactor: move setting autocommit on connection out of _connect_gen
Daniele Varrazzo [Wed, 25 Oct 2023 18:23:08 +0000 (20:23 +0200)] 
refactor: move setting autocommit on connection out of _connect_gen

23 months agochore: bump min Python version tested with SQLAlchemy to 3.8
Daniele Varrazzo [Sat, 11 Nov 2023 19:49:24 +0000 (19:49 +0000)] 
chore: bump min Python version tested with SQLAlchemy to 3.8

23 months agochore: refresh 3rd party tests
Daniele Varrazzo [Sat, 11 Nov 2023 15:32:07 +0000 (15:32 +0000)] 
chore: refresh 3rd party tests

- upgrade Python to 3.12
- test stable version of SQLAlchemy 2
- add missing SQLAlchemy test dependency

Testing Django with Python 3.12 not enabled yet as it requires pylibmc wheel
packages for Python 3.12 (https://github.com/lericson/pylibmc/issues/288).

23 months agochore: bump psycopg_pool package version to 3.1.10.dev1
Daniele Varrazzo [Sat, 11 Nov 2023 19:10:28 +0000 (19:10 +0000)] 
chore: bump psycopg_pool package version to 3.1.10.dev1

23 months agochore: bump psycopg_pool package version to 3.1.9 pool-3.1.9
Daniele Varrazzo [Sat, 11 Nov 2023 19:04:30 +0000 (19:04 +0000)] 
chore: bump psycopg_pool package version to 3.1.9

23 months agofix(bump_version): fix bumping minor version with dev releases
Daniele Varrazzo [Sat, 11 Nov 2023 14:59:09 +0000 (14:59 +0000)] 
fix(bump_version): fix bumping minor version with dev releases

23 months agochore(macos): build images with more recent Python versions
Daniele Varrazzo [Thu, 2 Nov 2023 09:25:18 +0000 (10:25 +0100)] 
chore(macos): build images with more recent Python versions

23 months agoMerge branch 'fix-667-3.1' into maint-3.1
Daniele Varrazzo [Tue, 24 Oct 2023 18:15:18 +0000 (20:15 +0200)] 
Merge branch 'fix-667-3.1' into maint-3.1