Commit Graph
2125 Commits
Author SHA1 Message Date
James BalazsandGitHub 0fb5094250 Add subproblems to errors (#7046) (#9258)
* Add subproblems to errors (#7046)

* Fix can't assign attribute

* Tidy up string representations of errors and add decoders for subproblems / identifiers

* Add missing attributes to docstring

* Move change to 1.27.0 in changelog
2022-04-06 09:34:26 -07:00
Brad Warren b9a7d771bc Bump version to 1.27.0 2022-04-05 10:43:01 -07:00
Brad Warren 3f8fde4270 Add contents to certbot/CHANGELOG.md for next version 2022-04-05 10:43:01 -07:00
Brad Warren 5b8cc18456 Release 1.26.0 2022-04-05 10:43:00 -07:00
Brad Warren e8a1e6deb1 Update changelog for 1.26.0 release 2022-04-05 10:41:26 -07:00
alexzorinandGitHub d45a702649 changelog: clarify --new-key entry (#9259)
@osirisinferi pointed out [in chat](https://opensource.eff.org/eff-open-source/pl/y5whp5ny378wuedi8gd7995qbo) that the way this entry was written, suggested that `--new-key` might affect whether `--reuse-key` is set or not.

I think the second sentence was the main culprit, so I've nixed it and replaced it with a reminder about our other flags.

This maybe calls out more for a documentation section but let's fix this quickly before the release.
2022-04-01 13:27:11 -07:00
alexzorinandGitHub fe0b637e4d display acme.Errors less verbosely (#9255)
* display acme.Errors less verbosely

* remove superfluous import
2022-03-31 13:48:47 -07:00
alexzorinandGitHub 284023a1b7 Add --new-key (#9252)
* add --new-key

* add tests
2022-03-31 11:40:21 -07:00
osirisinferiandGitHub 4456a6ba0b Add error message to account registration error (#9233)
* Add  message to account reg. error

* Changelog

* Remove forced lowercase first char

* Catch errors raised by acme library

* Fix mypy and add some comments

* Add some tests

* Move changelog entry to current version

* Address comments

* Address additional comments

Put everything in this commit instead of using the "Commit suggestion"
feat on Github, which would resolve in 4 different tiny commits.
2022-03-31 07:36:15 +11:00
Mads JensenandGitHub 142fcad28b Update various references to draft RFC to published versions. (#9250) 2022-03-28 17:26:06 -07:00
1d45939cab Skip ToS agreement question if ToS value is None (#9245)
* Skip ToS agreement question if ToS value is None

* Add changelog entry

* Typo in CHANGELOG

Co-authored-by: ohemorange <ebportnoy@gmail.com>

* Typo in CHANGELOG

Co-authored-by: ohemorange <ebportnoy@gmail.com>

Co-authored-by: ohemorange <ebportnoy@gmail.com>
2022-03-24 15:42:47 -07:00
alexzorinandGitHub 690f62bae2 dns-ovh: increase default propagation timeout to 120s (#9244) 2022-03-23 15:07:29 -07:00
alexzorinandGitHub 5404701111 windows: upgrade Python to 3.9.11 (#9241) 2022-03-18 10:03:49 +11:00
Erica Portnoy 429bc553a0 Bump version to 1.26.0 2022-03-16 11:17:55 -07:00
Erica Portnoy 690c35530f Add contents to certbot/CHANGELOG.md for next version 2022-03-16 11:17:55 -07:00
Erica Portnoy 44c097fc05 Release 1.25.0 2022-03-16 11:17:54 -07:00
Erica Portnoy cf6c511e91 Update changelog for 1.25.0 release 2022-03-16 11:16:28 -07:00
ohemorangeandGitHub f58e3c5e92 Run repin.sh to pull in new version of cryptography, using OpenSSL 1.1.1n (#9237) 2022-03-15 16:46:58 -07:00
Mads JensenandGitHub ae41832f7c Update ACME spec links to point to RFC 8555. (#9232) 2022-03-13 07:53:45 +11:00
Mads JensenandGitHub 2b51661430 Remove cast for jose.fields. (#9228)
* Remove cast for jose.fields.

https://github.com/certbot/certbot/pull/9073 references this.

* Some of them can't be removed, though.

* Fix josepy type hints of json

* Increase josepy pinning version.

Note that the repin scripts have not been used.

* Run repin scripts.

* Fix constraints
2022-03-12 20:31:54 +11:00
osirisinferiandGitHub a513b57e5e Must staple: check for OCSP support (#9226)
* Must staple: check for OCSP support

* Expand error message

* s/Must Staple/Must-Staple

* Broaden the term webserver

* Improve error message
2022-03-08 15:00:12 -08:00
Will GreenbergandGitHub f251a13f32 Remove Windows 2016 environment, generate 64 bit installer (#9202)
* Remove Windows 2016 environment, generate 64 bit installer

* Add note to changelog

* Use win_amd64 as installer suffix

* Bump PYTHON_BITNESS to 64

* Require 64 bit Windows for the installer_build job

* Update certbot install path

* update windows test name

* Base installer suffix on PYTHON_BITNESS again

* Update changelog to request users uninstall old version
2022-03-03 19:31:03 +01:00
Mads JensenandGitHub 92de543fe7 Use f-strings in many places in acme and certbot. (#9225) 2022-03-03 07:12:34 -08:00
5d493ca53c storage: always save key_type to renewal .conf (#9217)
* storage: always save key_type to renewal .conf

* fix typo in comment

Co-authored-by: DasSkelett <dasskelett@gmail.com>
2022-03-02 13:55:20 -08:00
alexzorinandGitHub 6e8f58e3f6 improve handling and ux of unexpected key type migration (#9200)
* improve handling and ux of unexpected key type migration

* update unit tests

* update integration tests

* if --cert-name and --key-type are set, dont prompt
2022-03-02 08:55:17 -08:00
Erica Portnoy 9d312af32a Bump version to 1.25.0 2022-03-01 12:34:54 -08:00
Erica Portnoy 430d383e47 Add contents to certbot/CHANGELOG.md for next version 2022-03-01 12:34:54 -08:00
Erica Portnoy 3d3077e1f1 Release 1.24.0 2022-03-01 12:34:21 -08:00
Erica Portnoy 88c0e4c6fa Update changelog for 1.24.0 release 2022-03-01 12:23:44 -08:00
Brad WarrenandGitHub c1030c0d40 Drop Python 3.6 support (#9216)
* Remove deprecation warnings

* update ci

* update setup.py files

* update changelog

* update pinnings

* update requests and friends

* update setuptools pin

* update setuptools pin pt2

* update pytz

* upgrade pyparsing

* upgrade boto deps

* update deps and docs

* update pyproject.toml comment

* remove trailets pin

* remove explicit PYTHON_VERSION
2022-02-28 15:23:30 -08:00
alexzorinandGitHub 3c9e690e19 snap_config: set a timeout when talking to snapd (#9218) 2022-02-28 11:16:58 -08:00
Brad WarrenandGitHub 37e4f5735a update changelog (#9219) 2022-02-28 09:51:44 -08:00
96847ba779 Add extra challenge info to --debug-challenges (#9208)
* Add challenge info to `--debug-challenges`

* Expand/add tests

* Add changelog entry

* Make tests Python 3.6 and 3.7 compatible

* Don't use `config.namespace`

* And don't use `config.namespace` in tests too

* Expand tests to check for token/thumbprint

* Add test for the DNS-01 challenge

Changed the Apache authenticator to the manual authenticator. Doesn't
seem to make a difference to the tests, but makes more sense if the
DNS-01 challenge is being used.

* Reword changelog entry

* Mention feature in --help output

* Better variable assignment in test

Co-authored-by: alexzorin <alex@zor.io>

* Better variable assignment in test

Co-authored-by: alexzorin <alex@zor.io>

* Remove unnecessary `verbose_count` assignment

Co-authored-by: alexzorin <alex@zor.io>

* Use terminology from RFC 8555

* Compress the two new tests into one

* s/world wide web/internet

* Move new code into separate function

* Remove superfluous newline with mixed challs

Co-authored-by: alexzorin <alex@zor.io>
2022-02-28 07:25:49 +11:00
Brad WarrenandGitHub c96420dbe0 remove outdated setup.cfg files (#9201) 2022-02-17 22:17:21 +11:00
Mads JensenandGitHub 6f85eb928c Use literals wherever possible. (#9194)
* Use literals wherever possible.

These were found with flake8-comprehensions.
2022-02-14 14:54:03 -08:00
a1b2e973c0 Search included files for nginx server_names_hash_bucket_size directive (#9198)
* Search all included files for bucket directive

* Add tests for mod_config

* Update changelog

* Move changelog entry to the new release's section

* Break immediately once we've found the `http` block

Co-authored-by: alexzorin <alex@zorin.id.au>

* Add parallel descriptive comment about updating bucket directive

Co-authored-by: alexzorin <alex@zorin.id.au>

* remove github-inserted trailing whitespace

Co-authored-by: alexzorin <alex@zorin.id.au>
2022-02-11 15:40:14 +11:00
Brad Warren d73c6f44c5 Bump version to 1.24.0 2022-02-08 07:50:45 -08:00
Brad Warren d655ab6913 Add contents to certbot/CHANGELOG.md for next version 2022-02-08 07:50:45 -08:00
Brad Warren 719f3ac577 Release 1.23.0 2022-02-08 07:50:44 -08:00
Brad Warren 69461bc15a Update changelog for 1.23.0 release 2022-02-08 07:49:47 -08:00
Mads JensenandGitHub 6c278c3352 Inline dict creation in _assert_valid_call. (#9190)
PyCharm has this check, and it's the only one it could find. It'll cut off valuable nanoseconds off the test suite run 😄
2022-02-04 09:57:21 -08:00
Patrik HagaraandGitHub d1608f8f2d include py.typed marker files in distribution (#9187) 2022-02-04 18:29:26 +01:00
fe0c0dc3ae Add support for revoking ecdsa keys without --cert-name. (#8725)
* Add support for revoking ecdsa keys without --cert-name.

Co-Authored-By: commonism <commonism@users.noreply.github.com>

* Move alg to acme_client.ClientNetwork instantiating in acme_from_config_key

* Fix argument for RS256/ES256

* Support also ES384 and ES512 signing algorithms.
2022-02-03 17:34:04 -08:00
0181a0b07f Fully type certbot apache (#9177)
* Work in progress

* Work in progress

* Work in progress

* Work in progress

* Fix issues around nullability of VirtualHost.path, may discuss that during review

* Work in progress

* Fix remaining types

* Various lint fixes

* Reconfigure tox and mypy to disallow untyped defs globally

* Cleanup compatibility tests

* Use cast for unused v2 logic

* Improve types

* Remove unused comment

* Fix coverage

* Better types

* Fix another type

* Update certbot-apache/certbot_apache/_internal/apacheparser.py

Co-authored-by: alexzorin <alex@zor.io>

* Update certbot-apache/certbot_apache/_internal/assertions.py

Co-authored-by: alexzorin <alex@zor.io>

* Fix type

* Various fixes

* Refactor imports

* Keep naming convention consistent on TypeVars

* Improve types

* Improve types

* Remove remaining Sequence[str] in the project

Co-authored-by: alexzorin <alex@zor.io>
2022-01-31 19:17:40 +11:00
RickandGitHub fb1b105ba2 dns-digitalocean: Ignore SOA TTL in favor of explicit TTL argument (#9149)
* Ignore SOA TTL in favor of explicit TTL argument

`domain.ttl` should be `None` so that the `self.ttl` argument in 
`add_txt_record()` is not ignored (`domain.ttl` takes precedence).

* Document mitigation for dns-digitalocean ignoring the 30 second TTL.
2022-01-25 21:34:38 +11:00
dac0b2c187 Typed jose fields (#9073)
* Add generic methods to save some casts, and fix lint

* Update current and oldest pinning

* Fix classes

* Remove some todos thanks to josepy 1.11.0

* Cleanup some useless pylint disable

* Finish complete typing

* Better TypeVar names

* Upgrade pinning and fix some typing errors

* Use protocol

* Fix types in apache

Co-authored-by: Brad Warren <bmw@users.noreply.github.com>
2022-01-24 15:16:19 -08:00
tJouveandGitHub fb564cddd9 Dns-google: update permissions needed in documentation (#9094)
* dns-google : Update account permission needed

Add permission for transaction creation => dns.managedZones.get
Add permission for RR removal transaction => dns.changes.list

* Add fix GCP Permission Changelog

* Update CHANGELOG.md
2022-01-24 18:17:43 +11:00
Adrien FerrandandGitHub 3d5defe28a Deprecate Python 3.6 support (#9160)
Fixes https://github.com/certbot/certbot/issues/8983

Python 3.6 is now EOL: https://endoflife.date/python

This is normally a good time to create warnings about Python 3.6 deprecation the Certbot upcoming release 1.23.0 so that its support is removed in 1.24.0.

We have to say here that EPEL maintainers asked us to keep maintaining support of Python 3.6 because Python 3.7 will never be shipped to CentOS 7. This support would be needed in theory up to 2 more years, basically until CentOS 7 EOL in 2024-06-30. It has been said that we could support as a best effort until a reasonable need on Certbot side requires to drop Python 3.6. See https://github.com/certbot/certbot/issues/8983 for more information.

However some of us (including me) consider that there is already a reasonable need right now. Indeed, keeping the support on Python 3.6 while the Python community globally moves away from it will pin implicitly some Certbot dependencies to the last version of these dependencies supporting Python 3.6 as the upstream maintainers decide to make the move. At any point in a future time, one of these dependencies could require an urgent upgrade (typically a critical uncovered vulnerability): then we would require to drop Python 3.6 immediately without further notice instead of following an organized deprecation path.

This reason motivates to proactively deprecate then drop the Python versions once they are EOL. You can see the discussion in Mattermost starting from [this post](https://opensource.eff.org/eff-open-source/pl/ntzs9zy1fprjmkso3xrqspnoce) to get more elements about the reasoning.

* Deprecate Python 3.6 support.

* Ignore our own PendingDeprecationWarning
2022-01-21 12:42:05 -08:00
7d9e9a4900 Add typing to certbot.apache (#9071)
* Add typing to certbot.apache

Co-authored-by: Adrien Ferrand <ferrand.ad@gmail.com>
2022-01-21 10:15:48 +01:00
16aad35d31 Fully type certbot-nginx module (#9124)
* Work in progress

* Fix type

* Work in progress

* Work in progress

* Work in progress

* Work in progress

* Work in progress

* Oups.

* Fix typing in UnspacedList

* Fix logic

* Finish typing

* List certbot-nginx as fully typed in tox

* Fix lint

* Fix checks

* Organize imports

* Fix typing for Python 3.6

* Fix checks

* Fix lint

* Update certbot-nginx/certbot_nginx/_internal/configurator.py

Co-authored-by: alexzorin <alex@zor.io>

* Update certbot-nginx/certbot_nginx/_internal/configurator.py

Co-authored-by: alexzorin <alex@zor.io>

* Fix signature of deploy_cert regarding the installer interface

* Update certbot-nginx/certbot_nginx/_internal/obj.py

Co-authored-by: alexzorin <alex@zor.io>

* Fix types

* Update certbot-nginx/certbot_nginx/_internal/parser.py

Co-authored-by: alexzorin <alex@zor.io>

* Precise type

* Precise _coerce possible inputs/outputs

* Fix type

* Update certbot-nginx/certbot_nginx/_internal/http_01.py

Co-authored-by: ohemorange <ebportnoy@gmail.com>

* Fix type

* Remove an undesirable implementation.

* Fix type

Co-authored-by: alexzorin <alex@zor.io>
Co-authored-by: ohemorange <ebportnoy@gmail.com>
2022-01-12 16:36:51 -08:00