<commit_before># Certbot change log

Certbot adheres to [Semantic Versioning](https://semver.org/).

## 0.32.0 - master

### Added

*

### Changed

* Certbot and its acme module now depend on josepy>=1.1.0 to avoid printing the
  warnings described at https://github.com/certbot/josepy/issues/13.
* Apache plugin now respects CERTBOT_DOCS environment variable when adding
  command line defaults.
* The running of manual plugin hooks is now always included in Certbot's log
  output.
* Tests execution for certbot, certbot-apache and certbot-nginx packages now relies on pytest.
* An ACME CA server may return a "Retry-After" HTTP header on authorization polling, as
  specified in the ACME protocol, to indicate when the next polling should occur. Certbot now
  reads this header if set and respect its value.
* The `acme` module avoids sending the `keyAuthorization` field in the JWS
  payload when responding to a challenge as the field is not included in the
  current ACME protocol. To ease the migration path for ACME CA servers,
  Certbot and its `acme` module will first try the request without the
  `keyAuthorization` field but will temporarily retry the request with the
  field included if a `malformed` error is received. This fallback will be
  removed in version 0.34.0.

### Fixed

*

Despite us having broken lockstep, we are continuing to release new versions of
all Certbot components during releases for the time being, however, the only
package with changes other than its version number was:

* acme
* certbot
* certbot-apache
* certbot-nginx

More details about these changes can be found on our GitHub repo.

## 0.31.0 - 2019-02-07

### Added

* Avoid reprocessing challenges that are already validated
  when a certificate is issued.
* If possible, Certbot uses built-in support for OCSP from recent cryptography
  versions instead of the OpenSSL binary: as a consequence Certbot does not need
  the OpenSSL binary to be installed anymore if cryptography>=2.5 is installed.
* Support for initiating (but not solving end-to-end) TLS-ALPN-01 challenges<commit_msg>Move the OCSP change to the right section. (#6818)<commit_after># Certbot change log

Certbot adheres to [Semantic Versioning](https://semver.org/).

## 0.32.0 - master

### Added

* If possible, Certbot uses built-in support for OCSP from recent cryptography
  versions instead of the OpenSSL binary: as a consequence Certbot does not need
  the OpenSSL binary to be installed anymore if cryptography>=2.5 is installed.

### Changed

* Certbot and its acme module now depend on josepy>=1.1.0 to avoid printing the
  warnings described at https://github.com/certbot/josepy/issues/13.
* Apache plugin now respects CERTBOT_DOCS environment variable when adding
  command line defaults.
* The running of manual plugin hooks is now always included in Certbot's log
  output.
* Tests execution for certbot, certbot-apache and certbot-nginx packages now relies on pytest.
* An ACME CA server may return a "Retry-After" HTTP header on authorization polling, as
  specified in the ACME protocol, to indicate when the next polling should occur. Certbot now
  reads this header if set and respect its value.
* The `acme` module avoids sending the `keyAuthorization` field in the JWS
  payload when responding to a challenge as the field is not included in the
  current ACME protocol. To ease the migration path for ACME CA servers,
  Certbot and its `acme` module will first try the request without the
  `keyAuthorization` field but will temporarily retry the request with the
  field included if a `malformed` error is received. This fallback will be
  removed in version 0.34.0.

### Fixed

*

Despite us having broken lockstep, we are continuing to release new versions of
all Certbot components during releases for the time being, however, the only
package with changes other than its version number was:

* acme
* certbot
* certbot-apache
* certbot-nginx

More details about these changes can be found on our GitHub repo.

## 0.31.0 - 2019-02-07

### Added

* Avoid reprocessing challenges that are already validated
  when a certificate is issued.
* Support for initiating (but not solving end-to-end) TLS-ALPN-01 challenges
{'fraction_non_alphanumeric': 0.05630791161796151, 'fraction_numerical': 0.014730339748158707, 'mean_word_length': 4.178351783517835, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6382216', 'n_tokens_mistral': 1176, 'n_tokens_neox': 1120, 'n_words': 589}