]> git.ipfire.org Git - thirdparty/psycopg.git/log
thirdparty/psycopg.git
11 months agorefactor(c): avoid violating strict aliasing rule in interval binary loader 879/head
Daniele Varrazzo [Thu, 25 Jul 2024 09:57:02 +0000 (11:57 +0200)] 
refactor(c): avoid violating strict aliasing rule in interval binary loader

See conversation in #877

11 months agoMerge pull request #877 from psycopg/fix-warnings
Daniele Varrazzo [Wed, 24 Jul 2024 19:56:12 +0000 (21:56 +0200)] 
Merge pull request #877 from psycopg/fix-warnings

Fix warnings

11 months agorefactor(c): more idiomatic type-punned pointer warning workaround 877/head
Daniele Varrazzo [Wed, 24 Jul 2024 08:37:30 +0000 (10:37 +0200)] 
refactor(c): more idiomatic type-punned pointer warning workaround

We are using memcpy in all the other cases.

11 months agochore(c): drop warnings related to breaking strict-aliasing rules
Daniele Varrazzo [Wed, 24 Jul 2024 08:32:32 +0000 (10:32 +0200)] 
chore(c): drop warnings related to breaking strict-aliasing rules

11 months agochore(c): drop warnings related to discarding const qualifiers
Daniele Varrazzo [Wed, 24 Jul 2024 08:31:00 +0000 (10:31 +0200)] 
chore(c): drop warnings related to discarding const qualifiers

11 months agochore(c): declare notice_receiver as not raising exceptions
Daniele Varrazzo [Wed, 24 Jul 2024 08:29:06 +0000 (10:29 +0200)] 
chore(c): declare notice_receiver as not raising exceptions

The function indeed doesn't raise exceptions, as the possible one is
handled internally. Avoid a Cython compiler warning.

11 months agoci: add test on strict aliasing warnings
Daniele Varrazzo [Wed, 24 Jul 2024 08:44:46 +0000 (10:44 +0200)] 
ci: add test on strict aliasing warnings

11 months agochore: bump typing-extension version
Daniele Varrazzo [Wed, 24 Jul 2024 09:52:46 +0000 (11:52 +0200)] 
chore: bump typing-extension version

Previously requested 4.4 is not compatible with the now requested mypy
version 1.11

11 months agochore: bump mypy
Daniele Varrazzo [Wed, 24 Jul 2024 09:10:10 +0000 (11:10 +0200)] 
chore: bump mypy

12 months agodocs: reword to remove a typo
Daniele Varrazzo [Tue, 9 Jul 2024 20:36:32 +0000 (22:36 +0200)] 
docs: reword to remove a typo

12 months agodocs: document drop of support for macOS < 14 arm64 packages
Daniele Varrazzo [Tue, 9 Jul 2024 12:12:11 +0000 (14:12 +0200)] 
docs: document drop of support for macOS < 14 arm64 packages

See ticket #858.

12 months agodocs: fix sentence in async notification docs
Daniele Varrazzo [Tue, 9 Jul 2024 11:39:43 +0000 (13:39 +0200)] 
docs: fix sentence in async notification docs

12 months agodocs(sql): fix Composite/Composed imprecision
Daniele Varrazzo [Wed, 3 Jul 2024 12:57:33 +0000 (14:57 +0200)] 
docs(sql): fix Composite/Composed imprecision

Close #862.

12 months agoMerge pull request #774 from dlax/doc-libpq-cancelconn
Daniele Varrazzo [Tue, 2 Jul 2024 09:13:51 +0000 (11:13 +0200)] 
Merge pull request #774 from dlax/doc-libpq-cancelconn

document libpq 17 features

12 months agodocs: document PGconn.change_password() 774/head
Denis Laxalde [Mon, 1 Jul 2024 06:28:15 +0000 (08:28 +0200)] 
docs: document PGconn.change_password()

12 months agodocs: document libpq 17 cancellation API
Denis Laxalde [Tue, 2 Apr 2024 09:41:42 +0000 (11:41 +0200)] 
docs: document libpq 17 cancellation API

12 months agodocs: set libpq version to '17'
Denis Laxalde [Mon, 1 Jul 2024 06:21:42 +0000 (08:21 +0200)] 
docs: set libpq version to '17'

Branch REL_17_STABLE is now available in Postgres repository.

Using this version is needed to build the documentation with the next
commit.

12 months agofix: drop string TypeAlias definitions from public modules
Daniele Varrazzo [Mon, 1 Jul 2024 22:10:54 +0000 (00:10 +0200)] 
fix: drop string TypeAlias definitions from public modules

The definition of the aliases as strings breaks composition with other
types. For instance `DictRow | tuple` is not valid. We could ask people
to use strings on their own, but this is a regression anyway.

In this changesets only the types reasonably exposed to the public are
fixed. Others are internal and I don't think would affect anyone (or, at
least, we can ditch the blame and put it on the user...) Modules
considered to clean from string typedefs are:

- psycopg
- psycopg.abc
- psycopg.pq
- psycopg.pq.abc
- psycopg.rows
- psycopg_pool
- psycopg_pool.abc

Close #860.

12 months agofix(bump_version): take requirement suffix into account
Daniele Varrazzo [Tue, 2 Jul 2024 09:03:35 +0000 (11:03 +0200)] 
fix(bump_version): take requirement suffix into account

It caused #853 and made so that version 3.2.0 had a lifetime shorter
than a fruit fly.

12 months agochore: bump psycopg package version to 3.2.2.dev1
Daniele Varrazzo [Tue, 2 Jul 2024 09:03:11 +0000 (11:03 +0200)] 
chore: bump psycopg package version to 3.2.2.dev1

12 months agochore: make typing-extension conditional to Pyton < 3.13
Daniele Varrazzo [Mon, 1 Jul 2024 21:50:56 +0000 (23:50 +0200)] 
chore: make typing-extension conditional to Pyton < 3.13

12 months agochore: bump psycopg package version to 3.2.1 3.2.1
Daniele Varrazzo [Mon, 1 Jul 2024 02:45:15 +0000 (04:45 +0200)] 
chore: bump psycopg package version to 3.2.1

12 months agofix: fix versions in packaging metadata
Daniele Varrazzo [Mon, 1 Jul 2024 02:40:17 +0000 (04:40 +0200)] 
fix: fix versions in packaging metadata

Close #853.

12 months agodocs: fix title level of major releases
Daniele Varrazzo [Mon, 1 Jul 2024 02:15:58 +0000 (04:15 +0200)] 
docs: fix title level of major releases

12 months agodocs: mention dropping Python 3.7 in psycopg 3.2 release
Daniele Varrazzo [Sun, 30 Jun 2024 23:13:10 +0000 (01:13 +0200)] 
docs: mention dropping Python 3.7 in psycopg 3.2 release

12 months agodocs: better organization of the 3.2 release notes
Daniele Varrazzo [Sun, 30 Jun 2024 17:57:35 +0000 (19:57 +0200)] 
docs: better organization of the 3.2 release notes

12 months agochore: bump psycopg package version to 3.2.0 3.2.0
Daniele Varrazzo [Sat, 29 Jun 2024 18:35:40 +0000 (20:35 +0200)] 
chore: bump psycopg package version to 3.2.0

12 months agochore: bump psycopg package version to 3.1.20
Daniele Varrazzo [Sat, 29 Jun 2024 18:20:26 +0000 (20:20 +0200)] 
chore: bump psycopg package version to 3.1.20

12 months agoMerge pull request #846 from eli-schwartz/tomllib
Daniele Varrazzo [Fri, 28 Jun 2024 16:37:51 +0000 (18:37 +0200)] 
Merge pull request #846 from eli-schwartz/tomllib

build: avoid installing tomli on recent python

12 months agostyle: shorter line in pyproject.toml 846/head
Daniele Varrazzo [Fri, 28 Jun 2024 16:35:26 +0000 (17:35 +0100)] 
style: shorter line in pyproject.toml

12 months agobuild: avoid installing tomli on recent python
Eli Schwartz [Wed, 26 Jun 2024 03:22:17 +0000 (23:22 -0400)] 
build: avoid installing tomli on recent python

It is in the stdlib. No need to have wheel building require downloading
yet another build dependency.

12 months agofix: avoid to dump [multi]range as text when binary is requested
Daniele Varrazzo [Sun, 23 Jun 2024 23:53:26 +0000 (01:53 +0200)] 
fix: avoid to dump [multi]range as text when binary is requested

If a range has no type information (e.g. is empty and it is a base
class, not a specific range subtype), `upgrade()` would have returned a
text dumper. This would have resulted in protocol violation, such as
requesting unhealthy amount of memory to the backend... and it was
tested too!

Restoring sanity has a drawback. If we have an array of ranges, none of
which has type information, we now fail binary dumping. Previously this
worked, provided that a cast `::int8range[]` was provided, but I think
with an extreme stretch of the protocol: we were producing binary arrays
containing text representation of the ranges.

I don't think the latter is quite valid. So I have a preference for
dropping the feature in exchange of not violating the protocol. We trade
a better dumping of the basic type (an xfail less there) in exchange of
losing the ability of dumping an array of ranges, all empty, using a
cast, in binary format. Binary dump works using a subclass such as
`Int8Range` instead of `Range`.

The lost use case is so marginal that I don't feel the need to document
it. We don't even have documentation for the `Range` subclasses.

12 months agoMerge pull request #847 from psycopg/update-libs
Daniele Varrazzo [Fri, 28 Jun 2024 16:06:01 +0000 (18:06 +0200)] 
Merge pull request #847 from psycopg/update-libs

Update openssl to 3.3.1

12 months agodocs: add release note about OpenSSL 3.3.x 847/head
Daniele Varrazzo [Wed, 26 Jun 2024 13:35:19 +0000 (15:35 +0200)] 
docs: add release note about OpenSSL 3.3.x

12 months agochore: bump ldap version to 2.6.8
Daniele Varrazzo [Sun, 23 Jun 2024 21:46:43 +0000 (23:46 +0200)] 
chore: bump ldap version to 2.6.8

12 months agochore: bump openssl to 3.3.1
Daniele Varrazzo [Sun, 23 Jun 2024 21:45:51 +0000 (23:45 +0200)] 
chore: bump openssl to 3.3.1

Drop fallback version in build_libpq.sh script. It was useful to save
some typing in development but now it is confusing to have two versions.

12 months agoci: more robust libpq build script
Daniele Varrazzo [Sun, 23 Jun 2024 21:46:24 +0000 (23:46 +0200)] 
ci: more robust libpq build script

12 months agotest: add missing fixture to multirange test
Daniele Varrazzo [Tue, 25 Jun 2024 05:56:18 +0000 (07:56 +0200)] 
test: add missing fixture to multirange test

12 months agoMerge branch 'ci-binary-build-fix'
Daniele Varrazzo [Mon, 24 Jun 2024 09:34:35 +0000 (11:34 +0200)] 
Merge branch 'ci-binary-build-fix'

12 months agoci: set macOS deployment target env vars
Daniele Varrazzo [Sun, 23 Jun 2024 21:00:23 +0000 (23:00 +0200)] 
ci: set macOS deployment target env vars

Seems required moving from cibuildwheel 2.16.5 to maybe 2.18.1.

12 months agochore: bump libpq to 16.3
Daniele Varrazzo [Sun, 23 Jun 2024 20:44:52 +0000 (22:44 +0200)] 
chore: bump libpq to 16.3

Mostly with the intent to zap the cache.

12 months agoci: add openssl-dev dependency to build musllinux packages
Daniele Varrazzo [Sun, 23 Jun 2024 20:39:00 +0000 (22:39 +0200)] 
ci: add openssl-dev dependency to build musllinux packages

12 months agochore: bump cibuildwheel version
Daniele Varrazzo [Sun, 23 Jun 2024 14:03:02 +0000 (16:03 +0200)] 
chore: bump cibuildwheel version

12 months agotest: use numpy 1.18 for real in minimal versions tests
Daniele Varrazzo [Sun, 23 Jun 2024 20:51:13 +0000 (22:51 +0200)] 
test: use numpy 1.18 for real in minimal versions tests

12 months agoMerge pull request #839 from psycopg/raw-server-cursors
Daniele Varrazzo [Sun, 23 Jun 2024 14:04:48 +0000 (16:04 +0200)] 
Merge pull request #839 from psycopg/raw-server-cursors

Add RawServerCursor class

12 months agofeat: add RawServerCursor class 839/head
Daniele Varrazzo [Mon, 18 Dec 2023 01:43:18 +0000 (02:43 +0100)] 
feat: add RawServerCursor class

12 months agofix: fix compatibility with numpy 2.0
Daniele Varrazzo [Sun, 23 Jun 2024 11:12:34 +0000 (13:12 +0200)] 
fix: fix compatibility with numpy 2.0

The only meaningful code change is with the bool class, whose type name
changed from `numpy.bool_` to `numpy.bool`. Note that using `bool`
causes a FutureWarning on import for numpy > 1.20, therefore we avoid
testing it (we still successfully test the `bool_` alias).

Other changes are related to tests: certain constant aliases are no more
available, so we skip those tests conditionally to numpy version.

Pin a minimum numpy version, to make sure we test also a numpy v1.
Picking 1.18,  released back in Dec 2019, as it's the first minor
version offering binary packages for Python 3.8. This min dependency will
need to be updated when dropping Python 3.8 support.

12 months agodocs(rows): add examples showing the rows returned by basic factories
Daniele Varrazzo [Sun, 23 Jun 2024 09:55:57 +0000 (11:55 +0200)] 
docs(rows): add examples showing the rows returned by basic factories

12 months agoMerge pull request #835 from psycopg/capabilities-has-closed-prepared
Daniele Varrazzo [Mon, 17 Jun 2024 15:04:05 +0000 (17:04 +0200)] 
Merge pull request #835 from psycopg/capabilities-has-closed-prepared

feat(capabilities): add has_send_close_prepared()

12 months agochore(capability): drop has_pgbouncer_prepared() 835/head
Daniele Varrazzo [Thu, 13 Jun 2024 21:09:20 +0000 (23:09 +0200)] 
chore(capability): drop has_pgbouncer_prepared()

Document to use the `has_send_closed_prepared()` capability instead,
which is a necessary condition for PgBouncer support, and doesn't give
the impression to be sufficient.

12 months agofeat(capabilities): add has_send_close_prepared()
Daniele Varrazzo [Mon, 10 Jun 2024 14:40:27 +0000 (16:40 +0200)] 
feat(capabilities): add has_send_close_prepared()

12 months agoMerge pull request #760 from psycopg/blocking-notifies
Daniele Varrazzo [Thu, 13 Jun 2024 21:03:27 +0000 (23:03 +0200)] 
Merge pull request #760 from psycopg/blocking-notifies

12 months agofix: lock the connection during a 'notifies()' call 760/head
Daniele Varrazzo [Mon, 1 Apr 2024 23:18:50 +0000 (23:18 +0000)] 
fix: lock the connection during a 'notifies()' call

With the previous implementation, it was possible to sneak an execute()
while the generator is consumed. This gives the false impression that
it's possible to use the connection while listening (see #756), which is
false for reason better explored in #757.

Therefore, lock the connection while listening to notifications. If
someone wants to mix commands with listening on the same connection,
they should do it collaboratively with an adequately short notifies()
timeout.

12 months agochore: drop pq enums aliases on connection and cursor
Daniele Varrazzo [Mon, 10 Jun 2024 14:50:43 +0000 (16:50 +0200)] 
chore: drop pq enums aliases on connection and cursor

Unused in the codebase, and not documented. Only used in the test suite.

12 months agoMerge pull request #794 from dlax/cursor-stream-chunks
Daniele Varrazzo [Thu, 13 Jun 2024 14:06:23 +0000 (16:06 +0200)] 
Merge pull request #794 from dlax/cursor-stream-chunks

12 months agofeat: add a size parameter to Cursor.stream() 794/head
Denis Laxalde [Wed, 17 Apr 2024 09:38:43 +0000 (11:38 +0200)] 
feat: add a size parameter to Cursor.stream()

This triggers results retrieval by chunks from the server, if > 1,
leveraging the "chunked rows mode" from libpq 17.

A new has_stream_chunked() capability is added.

12 months agoMerge pull request #834 from psycopg/cancel-conn-encoding
Daniele Varrazzo [Thu, 13 Jun 2024 14:04:49 +0000 (16:04 +0200)] 
Merge pull request #834 from psycopg/cancel-conn-encoding

12 months agofix: typo 834/head
Daniele Varrazzo [Thu, 13 Jun 2024 09:09:44 +0000 (10:09 +0100)] 
fix: typo

Co-authored-by: Denis Laxalde <denis.laxalde@dalibo.com>
12 months agofeat: add get_error_message() methods
Daniele Varrazzo [Wed, 12 Jun 2024 10:38:04 +0000 (12:38 +0200)] 
feat: add get_error_message() methods

The method is available on PGconn, PGconnCancel, PGresult.

The generic function error_message() is retained only because it was
documented so we don't want to drop it. Internally only the
get_error_message() method is used.

12 months agorefactor: make PGcancelConn.error_message return bytes
Daniele Varrazzo [Mon, 10 Jun 2024 15:42:17 +0000 (17:42 +0200)] 
refactor: make PGcancelConn.error_message return bytes

This is more consistent with PGconn and PGresult.

There doesn't seem to be the need of extending pq.misc.error_message as
we never pass it a PGcancelConn object.

Close #781

12 months agofix: fix PQclosePortal not supported error message
Daniele Varrazzo [Wed, 12 Jun 2024 17:02:58 +0000 (19:02 +0200)] 
fix: fix PQclosePortal not supported error message

12 months agorefactor(tests/crdb): generate sync from async
Daniele Varrazzo [Mon, 10 Jun 2024 14:24:21 +0000 (16:24 +0200)] 
refactor(tests/crdb): generate sync from async

13 months agoMerge branch 'pyupgrade'
Daniele Varrazzo [Tue, 4 Jun 2024 19:05:43 +0000 (21:05 +0200)] 
Merge branch 'pyupgrade'

13 months agorefactor: remove more types as strings
Denis Laxalde [Tue, 4 Jun 2024 07:39:14 +0000 (09:39 +0200)] 
refactor: remove more types as strings

I.e. all those suggested by pyupgrade --py38-plus.

13 months agorefactor: use set literals
Denis Laxalde [Tue, 4 Jun 2024 07:40:30 +0000 (09:40 +0200)] 
refactor: use set literals

As suggested by pyupgrade --py38-plus.

13 months agochore: upgrade usage lru_cache decorator for Python 3.8+
Denis Laxalde [Tue, 4 Jun 2024 07:33:34 +0000 (09:33 +0200)] 
chore: upgrade usage lru_cache decorator for Python 3.8+

13 months agoMerge pull request #832 from psycopg/uniform-annotations
Daniele Varrazzo [Tue, 4 Jun 2024 19:03:28 +0000 (21:03 +0200)] 
Merge pull request #832 from psycopg/uniform-annotations

Upgrade annotation syntax to Python 3.8

13 months agofix: fix type annotation for Python 3.8 832/head
Daniele Varrazzo [Thu, 30 May 2024 03:28:59 +0000 (05:28 +0200)] 
fix: fix type annotation for Python 3.8

13 months agorefactor: avoid using types as strings where possible
Daniele Varrazzo [Thu, 30 May 2024 02:14:17 +0000 (04:14 +0200)] 
refactor: avoid using types as strings where possible

13 months agochore: drop unused import
Daniele Varrazzo [Thu, 30 May 2024 01:36:33 +0000 (03:36 +0200)] 
chore: drop unused import

13 months agorefactor: drop use of typing.Set
Daniele Varrazzo [Thu, 30 May 2024 01:35:10 +0000 (03:35 +0200)] 
refactor: drop use of typing.Set

13 months agorefactor: drop use of typing.Tuple
Daniele Varrazzo [Thu, 30 May 2024 01:34:17 +0000 (03:34 +0200)] 
refactor: drop use of typing.Tuple

13 months agorefactor: drop use of typing.Type
Daniele Varrazzo [Thu, 30 May 2024 01:23:56 +0000 (03:23 +0200)] 
refactor: drop use of typing.Type

13 months agorefactor: drop use of typing.Dict
Daniele Varrazzo [Thu, 30 May 2024 01:14:03 +0000 (03:14 +0200)] 
refactor: drop use of typing.Dict

13 months agorefactor: drop use of typing.List
Daniele Varrazzo [Thu, 30 May 2024 01:03:57 +0000 (03:03 +0200)] 
refactor: drop use of typing.List

13 months agorefactor: drop use of typing.Union
Daniele Varrazzo [Thu, 30 May 2024 00:40:30 +0000 (02:40 +0200)] 
refactor: drop use of typing.Union

13 months agorefactor: drop use of typing.Optional
Daniele Varrazzo [Wed, 29 May 2024 23:58:04 +0000 (01:58 +0200)] 
refactor: drop use of typing.Optional

13 months agochore: drop vim syntax marker for interface files
Daniele Varrazzo [Thu, 30 May 2024 00:03:44 +0000 (02:03 +0200)] 
chore: drop vim syntax marker for interface files

13 months agoMerge pull request #642 from psycopg/none-returning-dumper
Daniele Varrazzo [Mon, 3 Jun 2024 16:43:28 +0000 (18:43 +0200)] 
Merge pull request #642 from psycopg/none-returning-dumper

Allow dumpers to return None

13 months agodocs: add documentation about none-returning dumpers 642/head
Daniele Varrazzo [Sat, 1 Jun 2024 11:06:38 +0000 (13:06 +0200)] 
docs: add documentation about none-returning dumpers

13 months agodocs: add news entry about none support in dumpers
Daniele Varrazzo [Wed, 4 Jan 2023 16:06:35 +0000 (16:06 +0000)] 
docs: add news entry about none support in dumpers

13 months agofix(c): allow dumpers to return none in copy
Daniele Varrazzo [Wed, 29 May 2024 19:43:09 +0000 (21:43 +0200)] 
fix(c): allow dumpers to return none in copy

13 months agotest: verify that dumpers returning None are used correctly in copy
Daniele Varrazzo [Mon, 19 Sep 2022 10:47:23 +0000 (11:47 +0100)] 
test: verify that dumpers returning None are used correctly in copy

13 months agofix: manage dumpers returning None in nested dumpers
Daniele Varrazzo [Mon, 19 Sep 2022 01:20:38 +0000 (02:20 +0100)] 
fix: manage dumpers returning None in nested dumpers

13 months agotest: verify that dumpers returning None are used correctly in queries
Daniele Varrazzo [Mon, 19 Sep 2022 00:54:44 +0000 (01:54 +0100)] 
test: verify that dumpers returning None are used correctly in queries

13 months agofix: annotate every dumper to return Optional[Buffer]
Daniele Varrazzo [Mon, 19 Sep 2022 00:42:34 +0000 (01:42 +0100)] 
fix: annotate every dumper to return Optional[Buffer]

Even if these classes never return None, this allows to create
subclasses returning None without making Mypy unhappy.

Similarly, annotate quote() methods as returning Buffer to allow
subclasses to return other types.

13 months agofix: manage None as return value of Dumper.dump()
Daniele Varrazzo [Mon, 19 Sep 2022 00:08:19 +0000 (01:08 +0100)] 
fix: manage None as return value of Dumper.dump()

These are only the changes suggested by Mypy; no test added to verify
that the code paths actually work.

Only Python test fixed, no C yet.

13 months agofeat: extend signature of Dumper.dump() to allow returning None
Daniele Varrazzo [Sun, 18 Sep 2022 23:36:35 +0000 (00:36 +0100)] 
feat: extend signature of Dumper.dump() to allow returning None

13 months agodocs: extend on the type info note
Daniele Varrazzo [Sat, 1 Jun 2024 11:05:54 +0000 (13:05 +0200)] 
docs: extend on the type info note

13 months agofeat: add libpq interface to change a password
Denis Laxalde [Wed, 17 Apr 2024 08:35:45 +0000 (10:35 +0200)] 
feat: add libpq interface to change a password

See https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=a7be2a6c262d5352756d909b29c419ea5e5fa1d9:
> drivers built on top of libpq should expose this function and its
> use should be generally encouraged over doing ALTER USER directly for
> password changes.

The test case assumes that the role connected to postgres has CREATEROLE
rights. If this is not true, the test is skipped.

13 months agofix(copy): fix count of chars to escape
Daniele Varrazzo [Wed, 29 May 2024 19:45:57 +0000 (21:45 +0200)] 
fix(copy): fix count of chars to escape

We missed to reset the number of chars to escape at every field. As a
consequence, we end up resizing and scanning all the fields after the
first one requiring an escape and allocating a bit more memory than
needed.

13 months agochore(deps): bump pypa/cibuildwheel in the actions group
dependabot[bot] [Thu, 30 May 2024 20:33:57 +0000 (20:33 +0000)] 
chore(deps): bump pypa/cibuildwheel in the actions group

Bumps the actions group with 1 update: [pypa/cibuildwheel](https://github.com/pypa/cibuildwheel).

Updates `pypa/cibuildwheel` from 2.17.0 to 2.18.1
- [Release notes](https://github.com/pypa/cibuildwheel/releases)
- [Changelog](https://github.com/pypa/cibuildwheel/blob/main/docs/changelog.md)
- [Commits](https://github.com/pypa/cibuildwheel/compare/v2.17.0...v2.18.1)

---
updated-dependencies:
- dependency-name: pypa/cibuildwheel
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
13 months agoMerge pull request #824
Daniele Varrazzo [Thu, 30 May 2024 20:33:15 +0000 (22:33 +0200)] 
Merge pull request #824

Updates action versions and add dependabot to check monthly for updates

13 months agoci: merge all produced artifacts into a single artifact for ease of downloading 824/head
Trenton Holmes [Sat, 18 May 2024 20:21:04 +0000 (13:21 -0700)] 
ci: merge all produced artifacts into a single artifact for ease of downloading

13 months agoci: updates action versions and add dependabot to check monthly for updates
Trenton Holmes [Sat, 18 May 2024 01:41:51 +0000 (18:41 -0700)] 
ci: updates action versions and add dependabot to check monthly for updates

13 months agochore: fix typo in comment
Daniele Varrazzo [Mon, 27 May 2024 14:20:38 +0000 (16:20 +0200)] 
chore: fix typo in comment

13 months agodocs: improve docs about query protocols and PgBouncer
Daniele Varrazzo [Fri, 17 May 2024 00:42:32 +0000 (02:42 +0200)] 
docs: improve docs about query protocols and PgBouncer

13 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.

13 months agoMerge pull request #811 from psycopg/refactor-typeinfo
Daniele Varrazzo [Wed, 15 May 2024 16:29:30 +0000 (18:29 +0200)] 
Merge pull request #811 from psycopg/refactor-typeinfo

Remove type modifier decoding from Column object

13 months agotest: adapt type representation tests to crdb and postgres < 15 811/head
Daniele Varrazzo [Thu, 9 May 2024 01:49:24 +0000 (03:49 +0200)] 
test: adapt type representation tests to crdb and postgres < 15