]> git.ipfire.org Git - thirdparty/psycopg.git/log
thirdparty/psycopg.git
6 months agodocs: document pre-commit usage 980/head
Daniele Varrazzo [Fri, 27 Dec 2024 02:34:00 +0000 (03:34 +0100)] 
docs: document pre-commit usage

6 months agolint: add typing annotations to pass pre-commit
Daniele Varrazzo [Fri, 27 Dec 2024 02:30:28 +0000 (03:30 +0100)] 
lint: add typing annotations to pass pre-commit

Pre-commit seems to run mypy in parallel batches, each with about 20
files. In this mode, certain tests that pass when running mypy all in
once or file-by-file, fail.

In the current state, both running mypy without arguments or running it
in pre-commit seem to work.

6 months agoci: configure lint step to run pre-commit
Daniele Varrazzo [Fri, 27 Dec 2024 01:55:16 +0000 (02:55 +0100)] 
ci: configure lint step to run pre-commit

6 months agoci: add pre-commit configuration
Daniele Varrazzo [Fri, 27 Dec 2024 01:48:20 +0000 (02:48 +0100)] 
ci: add pre-commit configuration

6 months agochore: ignore certain files from mypy linting
Daniele Varrazzo [Fri, 27 Dec 2024 01:44:43 +0000 (02:44 +0100)] 
chore: ignore certain files from mypy linting

Something weird happens. Certain files pass mypy lint on their own, but
not in combination. This is mostly related to `psycopg/pq/pq_ctypes.py`
and `psycopg/pq/_pq_ctypes.py`. This problem seems largely related to
incomplete ctypes definitions.

6 months agochore: drop annotation on empty lists, now unneeded
Daniele Varrazzo [Thu, 26 Dec 2024 18:46:32 +0000 (19:46 +0100)] 
chore: drop annotation on empty lists, now unneeded

If needed, it is considered wrong anyway, because it should be annotated
as class attribute.

6 months agodocs: restore some lost comments in pyproject.toml files
Daniele Varrazzo [Thu, 26 Dec 2024 16:58:16 +0000 (17:58 +0100)] 
docs: restore some lost comments in pyproject.toml files

6 months agoMerge branch 'dont-lose-notifies'
Daniele Varrazzo [Thu, 26 Dec 2024 16:37:46 +0000 (17:37 +0100)] 
Merge branch 'dont-lose-notifies'

6 months agofix: always gather the notifications received 975/head
Daniele Varrazzo [Sun, 22 Dec 2024 19:38:58 +0000 (20:38 +0100)] 
fix: always gather the notifications received

Starting to register them after the first call to notifies() is somewhat
weird. We also risk to lose notifications in a case such as:

    conn.execute("listen foo")
    conn.execute("listen bar")
    for n in conn.notifies():
        ...

6 months agofix: don't lose notifications between notifies() calls
Daniele Varrazzo [Sat, 21 Dec 2024 01:16:57 +0000 (02:16 +0100)] 
fix: don't lose notifications between notifies() calls

This allows to stop periodically the generator to run some queries (for
example to LISTEN/UNLISTEN certain channels) and start the generator
again without fearing to lose notification in the window.

Cloes #962.

6 months agoMerge pull request #977 from stankudrow/drop-py38
Daniele Varrazzo [Thu, 26 Dec 2024 16:35:38 +0000 (17:35 +0100)] 
Merge pull request #977 from stankudrow/drop-py38

Drop Py3.8 dependencies from `pyproject.toml`s and CI/CD workflows

6 months agochore: drop Python 3.8 support 977/head
stankudrow [Mon, 23 Dec 2024 16:52:26 +0000 (19:52 +0300)] 
chore: drop Python 3.8 support

Close #976.

6 months agochore: bump psycopg package version to 3.3.0.dev1
Daniele Varrazzo [Mon, 23 Dec 2024 16:27:58 +0000 (17:27 +0100)] 
chore: bump psycopg package version to 3.3.0.dev1

6 months agoMerge pull request #974 from psycopg/convert-to-toml
Daniele Varrazzo [Mon, 23 Dec 2024 16:38:25 +0000 (17:38 +0100)] 
Merge pull request #974 from psycopg/convert-to-toml

Convert setup.py/setup.cfg files to pyproject.toml

6 months agochore: drop Download links from metadata 974/head
Daniele Varrazzo [Mon, 23 Dec 2024 16:37:14 +0000 (17:37 +0100)] 
chore: drop Download links from metadata

6 months agochore: adapt development tools to toml files
Daniele Varrazzo [Sun, 22 Dec 2024 01:37:44 +0000 (02:37 +0100)] 
chore: adapt development tools to toml files

6 months agorefactor(pool): convert setup.cfg to pyproject.toml
Daniele Varrazzo [Sun, 22 Dec 2024 01:50:55 +0000 (02:50 +0100)] 
refactor(pool): convert setup.cfg to pyproject.toml

6 months agorefactor(c): convert setup.cfg to pyproject.toml
Daniele Varrazzo [Sun, 22 Dec 2024 01:43:43 +0000 (02:43 +0100)] 
refactor(c): convert setup.cfg to pyproject.toml

Drop setup.py: move the build configuration to a build backend module.

6 months agorefactor(psycopg): convert setup.cfg to pyproject.toml
Daniele Varrazzo [Sun, 22 Dec 2024 01:26:17 +0000 (02:26 +0100)] 
refactor(psycopg): convert setup.cfg to pyproject.toml

Drop unneeded setup.py. The end of an era.

6 months agoci: move Python packages used for test into before-build script
Daniele Varrazzo [Sun, 22 Dec 2024 00:05:16 +0000 (01:05 +0100)] 
ci: move Python packages used for test into before-build script

6 months agoci(windows): use bash as default shell
Daniele Varrazzo [Sat, 21 Dec 2024 03:50:45 +0000 (04:50 +0100)] 
ci(windows): use bash as default shell

Make packages-bin and tests workflow consistent.

6 months agochore(deps): bump pypa/cibuildwheel in the actions group
dependabot[bot] [Sun, 1 Dec 2024 07:11:57 +0000 (07:11 +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.21.3 to 2.22.0
- [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.21.3...v2.22.0)

---
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>
6 months agoMerge pull request #966 from trim21/try-vcpkg
Daniele Varrazzo [Sat, 21 Dec 2024 14:31:21 +0000 (15:31 +0100)] 
Merge pull request #966 from trim21/try-vcpkg

Use vcpkg to install libpq on windows

6 months agorefactor: rewrite the pg_config stub in a more idiomatic way 966/head
Daniele Varrazzo [Sat, 21 Dec 2024 02:21:43 +0000 (03:21 +0100)] 
refactor: rewrite the pg_config stub in a more idiomatic way

6 months agoci: use vcpkg to install libpq on windows
Trim21 [Sun, 15 Dec 2024 22:38:08 +0000 (06:38 +0800)] 
ci: use vcpkg to install libpq on windows

6 months agotest(windows): verify that the libpq used is what expected
Daniele Varrazzo [Mon, 16 Dec 2024 12:44:37 +0000 (13:44 +0100)] 
test(windows): verify that the libpq used is what expected

6 months agofix: call the notifies callback while the notifies generator is used
Daniele Varrazzo [Fri, 20 Dec 2024 12:12:54 +0000 (13:12 +0100)] 
fix: call the notifies callback while the notifies generator is used

Close #972

6 months agoci: bump runner to macOS 13 973/head
Daniele Varrazzo [Fri, 20 Dec 2024 13:57:37 +0000 (14:57 +0100)] 
ci: bump runner to macOS 13

macOS 12 runners are now deprecated.

6 months agochore: bump mypy version to 1.14
Daniele Varrazzo [Fri, 20 Dec 2024 17:55:19 +0000 (18:55 +0100)] 
chore: bump mypy version to 1.14

7 months agodocs: drop duplicate, out of place, statement
Daniele Varrazzo [Sat, 23 Nov 2024 23:26:57 +0000 (00:26 +0100)] 
docs: drop duplicate, out of place, statement

7 months agodocs(pool): fix ticket link in news page
Daniele Varrazzo [Sat, 16 Nov 2024 20:40:45 +0000 (21:40 +0100)] 
docs(pool): fix ticket link in news page

7 months agodocs: extend `libpq` install instructions for cross-platform use
Máté Gyöngyösi [Fri, 15 Nov 2024 13:58:02 +0000 (14:58 +0100)] 
docs: extend `libpq` install instructions for cross-platform use

See #950.

7 months agobuild_macos_arm64.sh: Upgrade to Python 3.13 production release
Christian Clauss [Tue, 15 Oct 2024 07:40:25 +0000 (09:40 +0200)] 
build_macos_arm64.sh: Upgrade to Python 3.13 production release

7 months agochore: bump psycopg_pool package version to 3.2.4
Daniele Varrazzo [Thu, 14 Nov 2024 13:56:03 +0000 (14:56 +0100)] 
chore: bump psycopg_pool package version to 3.2.4

7 months agofix(pool): print a warning if gather times out on del
Daniele Varrazzo [Wed, 13 Nov 2024 13:19:12 +0000 (14:19 +0100)] 
fix(pool): print a warning if gather times out on del

In Python 3.13 something changed on interpreter shutdown and now
stopping threads on __del__ fails.

See #930, #954.

7 months agodocs(pool): note compatibility with Python 3.13
Daniele Varrazzo [Sun, 15 Sep 2024 11:53:37 +0000 (13:53 +0200)] 
docs(pool): note compatibility with Python 3.13

7 months agochore: gitignore IntelliJ .idea file
Daniele Varrazzo [Thu, 14 Nov 2024 09:32:58 +0000 (10:32 +0100)] 
chore: gitignore IntelliJ .idea file

7 months agoci: bump SQLAlchemy test versions
Daniele Varrazzo [Wed, 13 Nov 2024 14:07:39 +0000 (15:07 +0100)] 
ci: bump SQLAlchemy test versions

7 months agodocs(pool): suggest closing the pool explicitly
Daniele Varrazzo [Wed, 13 Nov 2024 13:31:32 +0000 (14:31 +0100)] 
docs(pool): suggest closing the pool explicitly

On Python 3.13 threads may fail to stop.

See #930, #954.

8 months agotest(numpy): account for 32 bits systems in size checks
Stanley Kudrow [Thu, 31 Oct 2024 06:23:11 +0000 (09:23 +0300)] 
test(numpy): account for 32 bits systems in size checks

8 months agochore(deps): bump pypa/cibuildwheel in the actions group
dependabot[bot] [Fri, 1 Nov 2024 07:25:31 +0000 (07:25 +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.21.1 to 2.21.3
- [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.21.1...v2.21.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
8 months agorefactor: use StopIteration.value instead of args as return after waiting
Daniele Varrazzo [Wed, 30 Oct 2024 16:41:49 +0000 (17:41 +0100)] 
refactor: use StopIteration.value instead of args as return after waiting

Work around the issue reported in https://github.com/python/mypy/issues/18073

Thank you very much, @brianschubert, for pointing it out!

8 months agoMerge pull request #940 from 0xTiger/patch-1
Daniele Varrazzo [Wed, 30 Oct 2024 14:51:24 +0000 (15:51 +0100)] 
Merge pull request #940 from 0xTiger/patch-1

docs: ensure operator in text and code example matches

8 months agodocs: further wordsmith around IS/DISTINCT 940/head
Daniele Varrazzo [Wed, 30 Oct 2024 14:44:29 +0000 (15:44 +0100)] 
docs: further wordsmith around IS/DISTINCT

Also restore lost link reference.

8 months agodocs: explicit wording to clarify correspondence between `IS NOT DISTINCT FROM` ...
0xTiger [Fri, 25 Oct 2024 17:50:11 +0000 (18:50 +0100)] 
docs: explicit wording to clarify correspondence between `IS NOT DISTINCT FROM` & `IS`

8 months agochore: ignore type error reported by mypy 1.12, 1.13
Daniele Varrazzo [Wed, 30 Oct 2024 13:26:34 +0000 (14:26 +0100)] 
chore: ignore type error reported by mypy 1.12, 1.13

If a generator returns None, the StopIteration.args tuple is empty. The
fact we explicitly checks for it and in that case we return none looks
now an error for Mypy.

I don't see an obvious way around it.

Maybe related to https://github.com/python/mypy/issues/1933 which is an
historical issue (opened in 2016).

Reported in https://github.com/python/mypy/issues/18073

8 months agotest: avoid peer authentication in password change test
Daniele Varrazzo [Wed, 30 Oct 2024 13:12:09 +0000 (14:12 +0100)] 
test: avoid peer authentication in password change test

9 months agodocs: document the version when TransactionTimeout was added
Daniele Varrazzo [Fri, 11 Oct 2024 00:29:30 +0000 (02:29 +0200)] 
docs: document the version when TransactionTimeout was added

9 months agotest: mark more tests as 'timing'
Augustin Trancart [Thu, 26 Sep 2024 08:32:26 +0000 (10:32 +0200)] 
test: mark more tests as 'timing'

When the machine is under load, any tests relying on a timeout or a sleep is
subject to fail. Let's mark some of them as 'timing'.

9 months agochore: bump psycopg package version to 3.2.4.dev1
Daniele Varrazzo [Sun, 29 Sep 2024 21:22:20 +0000 (23:22 +0200)] 
chore: bump psycopg package version to 3.2.4.dev1

9 months agochore: bump psycopg package version to 3.2.3 3.2.3
Daniele Varrazzo [Sun, 29 Sep 2024 15:54:40 +0000 (17:54 +0200)] 
chore: bump psycopg package version to 3.2.3

9 months agoMerge pull request #917 from psycopg/pg17
Daniele Varrazzo [Sun, 29 Sep 2024 15:42:09 +0000 (17:42 +0200)] 
Merge pull request #917 from psycopg/pg17

Create binary packages with PostgreSQL 17 libpq

9 months agodocs: mention PostgreSQL 17 in binary packages in the news file 917/head
Daniele Varrazzo [Sun, 29 Sep 2024 15:38:56 +0000 (17:38 +0200)] 
docs: mention PostgreSQL 17 in binary packages in the news file

9 months agoci: install flex to build libpq
Daniele Varrazzo [Sat, 28 Sep 2024 22:43:29 +0000 (00:43 +0200)] 
ci: install flex to build libpq

Required from PostgreSQL 17

9 months agoci(macos): fix dylib path for postgres 17 from brew
Daniele Varrazzo [Sat, 28 Sep 2024 16:50:23 +0000 (18:50 +0200)] 
ci(macos): fix dylib path for postgres 17 from brew

Libraries are now installed under `lib/postgresql/` under the brew
package directory instead of just `lib`.

9 months agoci(macos): update brew to install PostgreSQL 17
Daniele Varrazzo [Sat, 28 Sep 2024 12:40:47 +0000 (14:40 +0200)] 
ci(macos): update brew to install PostgreSQL 17

At the moment CI failed with:

    No available formula with the name "postgresql@17". Did you mean
    postgresql@16, postgresql@15, postgresql@14, postgresql@13,
    postgresql@12, postgresql@11 or postgresql@10?

But the formula appears available at https://formulae.brew.sh/formula/postgresql@17

So probably it's a problem that will disappear in a few days.

9 months agoci: bump to PostgreSQL 17 in binary packages
Daniele Varrazzo [Sat, 28 Sep 2024 11:20:54 +0000 (13:20 +0200)] 
ci: bump to PostgreSQL 17 in binary packages

It is not possible at the moment to Upgrade OpenSSL to 3.3.2 because of
https://github.com/openssl/openssl/issues/25366

Close #852

9 months agochore: add PostgreSQL 17 TRANSACTION_TIMEOUT error
Daniele Varrazzo [Sat, 28 Sep 2024 11:22:54 +0000 (13:22 +0200)] 
chore: add PostgreSQL 17 TRANSACTION_TIMEOUT error

9 months agoci: Add PostgreSQL 17 to CI test grid, remove PostgreSQL 11
Daniele Varrazzo [Sat, 28 Sep 2024 11:51:16 +0000 (13:51 +0200)] 
ci: Add PostgreSQL 17 to CI test grid, remove PostgreSQL 11

9 months agofix(windows): resolve absolute path to libpq
Alessandro Della Villa [Sat, 28 Sep 2024 14:12:40 +0000 (16:12 +0200)] 
fix(windows): resolve absolute path to libpq

Might solve the problem mentioned in the comments in #912.

9 months agotest(crdb): fix or skip tests that now run because libpq 17 is available
Daniele Varrazzo [Sat, 28 Sep 2024 16:01:22 +0000 (18:01 +0200)] 
test(crdb): fix or skip tests that now run because libpq 17 is available

9 months agotest: fix compatibility of tests with Python 3.8
Daniele Varrazzo [Sat, 28 Sep 2024 11:52:57 +0000 (13:52 +0200)] 
test: fix compatibility of tests with Python 3.8

Avoid using the |= operator on dictionaries, which is unsupported on
Python 3.8.

The test started mysteriously to fail... Turned out that it hadn't run
so far on Python 3.8 because the "latest" libpq was v16, but when it
switched to v17 it started to be executed.

9 months agofix: fix typo in PGRES_PIPELINE_ABORTED enum
Daniele Varrazzo [Sat, 28 Sep 2024 11:32:12 +0000 (13:32 +0200)] 
fix: fix typo in PGRES_PIPELINE_ABORTED enum

Only in Cython and not explicitly used. Python had the right name already.

9 months agochore: test readme cleanup
Daniele Varrazzo [Sat, 28 Sep 2024 11:16:10 +0000 (13:16 +0200)] 
chore: test readme cleanup

9 months agodocs(install): reorganise install page disclaimer
Daniele Varrazzo [Sat, 21 Sep 2024 20:16:15 +0000 (22:16 +0200)] 
docs(install): reorganise install page disclaimer

Show first the happy path and a GOTO usage, then all the possible
reasons why you are unhappy.

(I just learned that this is referred to as the Anna Karenina
principle).

9 months agodocs: polish grammar in the install disclaimer
Daniele Varrazzo [Sat, 21 Sep 2024 20:11:10 +0000 (22:11 +0200)] 
docs: polish grammar in the install disclaimer

9 months agodoc: explain better that binary packages are on a best-effort basis
Daniele Varrazzo [Sat, 21 Sep 2024 18:29:58 +0000 (20:29 +0200)] 
doc: explain better that binary packages are on a best-effort basis

Close #912.

9 months agochore: bump psycopg package version to 3.2.3.dev1
Daniele Varrazzo [Sat, 21 Sep 2024 17:14:45 +0000 (19:14 +0200)] 
chore: bump psycopg package version to 3.2.3.dev1

9 months agoci: fix SQLAlchemy 3rd party test
Daniele Varrazzo [Sun, 15 Sep 2024 17:14:46 +0000 (19:14 +0200)] 
ci: fix SQLAlchemy 3rd party test

Something changed upstream? The package is not found in SQLAlchemy case,
needs sqlalchemy.

9 months agochore: bump psycopg package version to 3.2.2 3.2.2
Daniele Varrazzo [Sun, 15 Sep 2024 11:40:47 +0000 (13:40 +0200)] 
chore: bump psycopg package version to 3.2.2

9 months agoMerge pull request #890 from edgarrmondragon/build-cp313-wheels
Daniele Varrazzo [Sun, 15 Sep 2024 11:39:18 +0000 (13:39 +0200)] 
Merge pull request #890 from edgarrmondragon/build-cp313-wheels

Build Python 3.13 wheels

9 months agodocs: add update instructions for new major Python releases 890/head
Edgar Ramírez-Mondragón [Thu, 15 Aug 2024 00:21:18 +0000 (18:21 -0600)] 
docs: add update instructions for new major Python releases

9 months agodocs: add Python 3.13 support news entries
Edgar Ramírez-Mondragón [Thu, 15 Aug 2024 00:13:43 +0000 (18:13 -0600)] 
docs: add Python 3.13 support news entries

9 months agodocs: mention Python 3.13 supported in install docs
Edgar Ramírez-Mondragón [Thu, 15 Aug 2024 00:11:38 +0000 (18:11 -0600)] 
docs: mention Python 3.13 supported in install docs

9 months agochore: add Python 3.13 to trove classifiers
Edgar Ramírez-Mondragón [Thu, 15 Aug 2024 00:11:11 +0000 (18:11 -0600)] 
chore: add Python 3.13 to trove classifiers

9 months agoci: build Python 3.13 wheels
Edgar Ramírez-Mondragón [Thu, 8 Aug 2024 17:44:37 +0000 (11:44 -0600)] 
ci: build Python 3.13 wheels

Related: https://github.com/psycopg/psycopg/issues/889

9 months agodocs: replace fastapi events with lifespan
Vinz [Sat, 14 Sep 2024 13:31:04 +0000 (15:31 +0200)] 
docs: replace fastapi events with lifespan

10 months agochore(deps): bump pypa/cibuildwheel in the actions group
dependabot[bot] [Sun, 1 Sep 2024 07:59:50 +0000 (07:59 +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.19.2 to 2.20.0
- [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.19.2...v2.20.0)

---
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>
10 months agoFix typo in cursor table
Nils K [Sun, 25 Aug 2024 10:59:16 +0000 (12:59 +0200)] 
Fix typo in cursor table

10 months agodocs: fix typo in Basic module usage
Artemy Vakhrushev [Mon, 19 Aug 2024 13:59:12 +0000 (18:59 +0500)] 
docs: fix typo in Basic module usage

11 months agochore: drop debug logging in pq import attempts
Daniele Varrazzo [Thu, 8 Aug 2024 11:59:02 +0000 (13:59 +0200)] 
chore: drop debug logging in pq import attempts

It confuses people who enable logging too broadly. See #807.

11 months agochore(deps): bump pypa/cibuildwheel in the actions group
dependabot[bot] [Thu, 1 Aug 2024 07:26:42 +0000 (07:26 +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.19.1 to 2.19.2
- [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.19.1...v2.19.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
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.