Brad Warren
b7024352cc
Bump version to 5.7.0
2026-05-11 08:57:00 -07:00
Brad Warren
03b5cf3cb0
Release 5.6.0
2026-05-11 08:56:58 -07:00
c8ebcb49bd
Migrate certbot-dns-cloudflare to cloudflare 4.x SDK ( #10587 )
...
## Summary
- Migrate `certbot-dns-cloudflare` from the archived `python-cloudflare`
2.x library (`import CloudFlare`) to the actively maintained Cloudflare
Python SDK 4.x (`import cloudflare`)
- Update all API calls to the new SDK surface:
`dns.records.create/list/delete`, `zones.list`, typed response objects
instead of dicts
- Replace `CloudFlare.exceptions.CloudFlareAPIError` with
`cloudflare.APIStatusError` and extract CF error codes from
`response.json()`
- Bump dependency from `cloudflare>=2.19, <2.20` to `cloudflare>=4.0`
- Update oldest pinning from `cloudflare 2.19` to `4.0.0`
- Update all test mocks and assertions accordingly
Fixes #9938
## API Migration
| Operation | Old 2.x | New 4.x |
|---|---|---|
| Import | `import CloudFlare` | `import cloudflare` |
| Client (token) | `CloudFlare.CloudFlare(token=t)` |
`cloudflare.Cloudflare(api_token=t)` |
| Client (key) | `CloudFlare.CloudFlare(email, key)` |
`cloudflare.Cloudflare(api_email=e, api_key=k)` |
| List zones | `cf.zones.get(params={...})` → `list[dict]` |
`cf.zones.list(name=n)` → iterable of Zone objects |
| Create record | `cf.zones.dns_records.post(zone_id, data={...})` |
`cf.dns.records.create(zone_id=id, **data)` |
| List records | `cf.zones.dns_records.get(zone_id, params={...})` |
`cf.dns.records.list(zone_id=id, type=..., ...)` |
| Delete record | `cf.zones.dns_records.delete(zone_id, record_id)` |
`cf.dns.records.delete(dns_record_id=rid, zone_id=zid)` |
| Exceptions | `CloudFlare.exceptions.CloudFlareAPIError` |
`cloudflare.APIStatusError` |
## Test plan
- [x] All 20 existing tests pass with updated mocks
- [x] Credentials INI file format is unchanged — no user-facing config
changes
- [x] Live dry-run renewal tested successfully across 5 domains
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
Co-authored-by: Ember <BeigeBox@users.noreply.github.com >
Co-authored-by: Brad Warren <bmw@users.noreply.github.com >
2026-05-06 09:35:38 -07:00
Erica Portnoy
fc91823888
Bump version to 5.6.0
2026-04-07 09:38:18 -07:00
Erica Portnoy
82dda45352
Release 5.5.0
2026-04-07 09:38:17 -07:00
Will Greenberg
8ebbe24190
Bump version to 5.5.0
2026-03-10 10:47:29 -07:00
Will Greenberg
95c004cb96
Release 5.4.0
2026-03-10 10:47:28 -07:00
Erica Portnoy
1ee73eed10
Bump version to 5.4.0
2026-02-03 09:52:18 -08:00
Erica Portnoy
54a3078305
Release 5.3.0
2026-02-03 09:52:16 -08:00
Brad Warren
9a2e508348
Bump version to 5.3.0
2025-12-03 11:48:10 -08:00
Brad Warren
1127ac1cd7
Release 5.2.1
2025-12-03 11:48:09 -08:00
Erica Portnoy
3683eb6cf4
Bump version to 5.2.0
2025-10-07 09:42:29 -07:00
Erica Portnoy
d97f2aefc3
Release 5.1.0
2025-10-07 09:42:28 -07:00
Brad Warren
8ecd7fc23d
Bump version to 5.1.0
2025-09-02 08:47:05 -07:00
Brad Warren
c307f62114
Release 5.0.0
2025-09-02 08:47:04 -07:00
ohemorange and GitHub
407dc158f6
Set up dns plugins to use pyproject.toml ( #10425 )
...
Final part of https://github.com/certbot/certbot/issues/10403
I tested running `tools/snap/generate_dnsplugins_snapcraft.sh
certbot-dns-dnsimple` and it put the correct description in to the
`snapcraft.yaml` file.
2025-08-15 09:17:15 -07:00
5d05984dd9
remove python 3.9 support ( #10406 )
...
Fixes https://github.com/certbot/certbot/issues/10389 . you can compare
this to the PR that did this for python 3.8 at
https://github.com/certbot/certbot/pull/10077
additional changes:
- linux-py310 test is removed from extended tests, since it's now run in
standard tests. additionally, openssl will never be < 1.1.1 now, due to
https://peps.python.org/pep-0644/ .
- `letstest/scripts/test_openssl_version.py` was testing functionality
that was removed in https://github.com/certbot/certbot/pull/10373 so it
was deleted
---------
Co-authored-by: Brad Warren <bmw@users.noreply.github.com >
2025-08-12 17:49:02 +00:00
ohemorange and GitHub
5859e50e44
Run ruff to fix test errors ( #10398 )
...
This is mostly removing unused imports, plus one unused `import as`. Had
to put back imports being used with `eval` -- see the second commit.
2025-08-07 22:10:02 +00:00
Erica Portnoy
ffb2196e21
Bump version to 5.0.0
2025-08-05 08:58:17 -07:00
Erica Portnoy
832d11a63f
Release 4.2.0
2025-08-05 08:58:16 -07:00
Brad Warren and GitHub
ae2a00bbad
prep for 4.2.0 and fix changelog ( #10375 )
...
something weird happened to the changelog in
https://github.com/certbot/certbot/pull/10319 . a 4.2.0 entry was added
below the entry for `5.0.0 - main` despite 4.2.0 not having been
released. since it's sounding like we're expecting our next release to
be 4.2.0 and not 5.0, i merged these two changelog entries into one for
4.2.0
i also modified our setup.py files to use 4.2.0.dev0 instead of
5.0.0.dev0 altho this isn't strictly necessary because our release
script will automatically set all version numbers to whatever version we
give it on the command line before building the release
2025-07-29 14:44:39 -07:00
Erica Portnoy
4a1a136fcb
Bump version to 5.0.0
2025-06-10 14:43:36 -07:00
Erica Portnoy
6a72811a39
Release 4.1.0
2025-06-10 14:43:35 -07:00
Brad Warren and GitHub
cc08242abc
update pinned dependencies ( #10278 )
...
this fixes the security alerts those with access can see at
https://github.com/certbot/certbot/security/dependabot
i based what needed to be done to drop python < 3.9.2 support on
https://github.com/certbot/certbot/pull/10077 and concluded we only
really needed to update `python_requires`. we could do a deprecation
period for this, but i think it's not necessary. cryptography didn't
(it's not even in mentioned in [their
changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst ))
and none of the major LTS distros use python 3.9.0 or 3.9.1
2025-05-06 10:56:19 -07:00
ohemorange and GitHub
16f858547f
Add --use-pep517 flag to pip to silence warning in tools/venv.py, and switch codebase to src-layout ( #10249 )
...
Fixes #10252 .
See further discussion here: https://github.com/pypa/pip/issues/11457
We are doing option:
> Alternatively, enable the --use-pep517 pip option, possibly with
--no-build-isolation. The --use-pip517 flag will force pip to use the
modern mechanism for editable installs. --no-build-isolation may be
needed if your project has build-time requirements beyond setuptools and
wheel. By passing this flag, you are responsible for making sure your
environment already has the required dependencies to build your package.
Once the legacy mechanism is removed, --use-pep517 will have no effect
and will essentially be enabled by default in this context.
Major changes made here include:
- Add `--use-pep517` to use the modern mechanism, which will be the only
mechanism in future pip releases
- Change to `/src` layout to appease mypy, and because for editable
installs that really is the normal way these days.
- `cd acme && mkdir src && mv acme src/` etc.
- add `where='src'` argument to `find_packages` and add
`package_dir={'': 'src'},` in `setup.py`s
- update `MANIFEST.in` files with new path locations
- Update our many hardcoded filepaths
- Update `importlib-metadata` requirement to fix
double-plugin-entry-point problem in oldest tests
2025-04-11 19:30:33 +00:00
Will Greenberg
f822602fff
Bump version to 4.1.0
2025-04-07 15:04:01 -07:00
Will Greenberg
d95a389c3f
Release 4.0.0
2025-04-07 15:04:00 -07:00
Will Greenberg
8a2ded2d0e
psych, actually bump version to 4.0.0
2025-02-11 15:17:56 -08:00
Will Greenberg
77594d7300
Bump version to 3.3.0
2025-02-11 11:58:46 -08:00
Will Greenberg
a0e8b49057
Release 3.2.0
2025-02-11 11:58:44 -08:00
de48847af4
Require v2.19 of cloudflare's python library ( #10182 )
...
This is a stopgap measure until we upgrade to the newer (but
backwards-incompatible) versions of cloudflare's python library (see
#9938 )
---------
Co-authored-by: Brad Warren <bmw@users.noreply.github.com >
2025-02-06 19:29:07 +00:00
Brad Warren and GitHub
392467609f
add python 3.13 support ( #10164 )
...
fixes https://github.com/certbot/certbot/issues/10045 . this is based on
the PR that did this for 3.12 at
https://github.com/certbot/certbot/pull/9852
this PR also removes python 3.8 from our tox config which should have
been done as part of https://github.com/certbot/certbot/pull/10077
2025-01-29 12:53:56 -08:00
Erica Portnoy
1de966d637
Bump version to 3.2.0
2025-01-07 12:54:01 -08:00
Erica Portnoy
dcd52b0711
Release 3.1.0
2025-01-07 12:54:00 -08:00
Brad Warren and GitHub
087cb4d1f4
remove python 3.8 support ( #10077 )
...
fixes https://github.com/certbot/certbot/issues/10035 . you can compare
this to the PR that did this for python 3.7 at
https://github.com/certbot/certbot/pull/9792
i agree with erica's comment at
https://github.com/certbot/certbot/issues/10035#issuecomment-2452212686 ,
but felt this PR was already getting pretty large so i did that in a
second PR at https://github.com/certbot/certbot/pull/10076
2024-12-04 14:55:20 -08:00
Harlan Lieberman-Berg and Brad Warren
b0e389aad7
Drop setuptools as a runtime dependency
...
Because of the change from using setuptools.pkg_resources to using
importlib, we no longer need a runtime dependency on setuptools. It is
still required, however, for running setup.py.
2024-12-03 11:17:27 -08:00
Will Greenberg
798a61622c
Bump version to 3.1.0
2024-11-05 10:55:20 -08:00
Will Greenberg
c5a5d6f9a1
Release 3.0.0
2024-11-05 10:55:19 -08:00
Will Greenberg
9213154e44
Bump version to 2.12.0
2024-06-05 14:34:41 -07:00
Will Greenberg
8db8fcf26c
Release 2.11.0
2024-06-05 14:34:40 -07:00
Brad Warren and GitHub
443ec2200f
pin back cloudflare ( #9940 )
...
* pin back cloudflare
* update readme
2024-05-16 09:18:21 -07:00
Will Greenberg
9412ce9f05
Bump version to 2.11.0
2024-04-02 14:20:25 -07:00
Will Greenberg
4d7d0d6d04
Release 2.10.0
2024-04-02 14:20:24 -07:00
Erica Portnoy
3b183961a9
Bump version to 2.10.0
2024-02-08 11:46:08 -08:00
Erica Portnoy
725c64d581
Release 2.9.0
2024-02-08 11:46:07 -08:00
Brad Warren and GitHub
9d8eb6ccfd
Add Python 3.12 support ( #9852 )
...
* add py312 support
* sed -i "s/\( *'Pro.*3\.1\)1\(',\)/\11\2\n\12\2/" */setup.py
* update pytest.ini comment
* upgrade macos version
* fixup changelog
2023-12-13 10:02:38 -08:00
Will Greenberg
dccb92d57f
Bump version to 2.9.0
2023-12-05 11:14:39 -08:00
Will Greenberg
e9225d1cc2
Release 2.8.0
2023-12-05 11:14:38 -08:00
Adrien Ferrand and GitHub
8a95c030e6
Drop Python 3.7 support ( #9792 )
...
* Drop Python 3.7 support
* Fix lint and test
* Check for venv generation
* Update requirements
* Update oldest constaints and compatibility tests runtime
2023-10-13 06:57:42 -07:00
Will Greenberg
08d1979bcb
Bump version to 2.8.0
2023-10-03 11:22:04 -07:00