Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: certifi/python-certifi
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 2021.05.30
Choose a base ref
...
head repository: certifi/python-certifi
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 2023.07.22
Choose a head ref

Commits on Jul 30, 2021

  1. Copy the full SHA
    9a2fda9 View commit details
  2. Merge pull request #156 from milos-korenciak/master

    License file to be included into metadata dir
    sigmavirus24 authored Jul 30, 2021
    Copy the full SHA
    109a6d7 View commit details

Commits on Oct 8, 2021

  1. 2021.10.08

    Lukasa committed Oct 8, 2021
    Copy the full SHA
    8effc0d View commit details

Commits on Oct 26, 2021

  1. Fix homepage link (#145)

    * Fix homepage link
    
    And remove broken docs link
    
    * Remove broken link
    hugovk authored Oct 26, 2021
    Copy the full SHA
    b99a23f View commit details

Commits on Oct 27, 2021

  1. Added Required Python Version (#152)

    * Added Required Python Version
    
    Added python_requires to specify the required python version for the library.
    
    * Updated required python version
    
    * Removed Classifiers for unsupported python versions
    
    * Updated
    
    Co-authored-by: Nirjas Jakilim <Nirzak@users.noreply.github.com>
    Nirzak and Nirzak authored Oct 27, 2021
    Copy the full SHA
    1c8485c View commit details
  2. Add type annotations to package

    Adding type annotations will allow packages consuming certifi to have
    access to its typing information. The py.typed data file is include for
    PEP 561 compliance.
    
    If the API is ever expanded, the mypy type checker will ensure it is
    also typed. For example, right now, typeshed is incomplete after
    certifi.contents() was added:
    
    https://github.com/python/typeshed/blob/ac2ef6e8c963a45841ad91e068e06748caa1fce6/stubs/certifi/certifi.pyi
    jdufresne committed Oct 27, 2021
    Copy the full SHA
    5f09ea8 View commit details
  3. Merge pull request #180 from jdufresne/mypy

    Add type annotations to package
    sigmavirus24 authored Oct 27, 2021
    Copy the full SHA
    ff23c47 View commit details

Commits on Mar 11, 2022

  1. Copy the full SHA
    1c2dd6f View commit details

Commits on Mar 12, 2022

  1. Automatically lock github issues after they've been closed for 90 days (

    #189)
    
    This will help ensure issues are not ressurected long after they're closed.
    alex authored Mar 12, 2022
    Copy the full SHA
    51c3f2a View commit details

Commits on May 18, 2022

  1. 2022.05.18

    Lukasa committed May 18, 2022
    Copy the full SHA
    e713282 View commit details

Commits on May 19, 2022

  1. Add support for Python 3.10 and drop EOL 3.5 (#167)

    * Add support for Python 3.10
    
    * Remove Trove classifiers for dropped versions
    
    * Remove redundant setup.cfg: no need for universal wheels for Python 3-only, setuptools and wheel auto-find LICENSE files
    
    * Added Required Python Version
    
    Added python_requires to specify the required python version for the library.
    
    * Updated required python version
    
    * Drop support for EOL Python 3.5
    
    * Upgrade Python syntax with pyupgrade --py36-plus
    
    Co-authored-by: Nirjas Jakilim <Nirzak@users.noreply.github.com>
    hugovk and Nirzak authored May 19, 2022
    Copy the full SHA
    04b7480 View commit details
  2. 2022.05.18.1

    Lukasa committed May 19, 2022
    Copy the full SHA
    75cc94d View commit details

Commits on May 21, 2022

  1. Copy the full SHA
    4151e88 View commit details

Commits on Jun 15, 2022

  1. 2022.06.15

    Lukasa committed Jun 15, 2022
    Copy the full SHA
    9d514b4 View commit details

Commits on Jul 6, 2022

  1. 1
    Copy the full SHA
    b0b48e0 View commit details

Commits on Jul 15, 2022

  1. Fix deprecation warning on Python 3.11 (#199)

    * Fix deprecation warning on Python 3.11
    
    Fixes #192.
    
    * Retain support for Python 3.6
    
    Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
    
    * Bump actions versions
    
    * Use same 'where' for 3.6 and 3.7-3.10
    
    Co-authored-by: Adam Johnson <me@adamj.eu>
    Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
    3 people authored Jul 15, 2022
    Copy the full SHA
    47fb7ab View commit details

Commits on Sep 9, 2022

  1. 2022.06.15.1

    Lukasa committed Sep 9, 2022
    Copy the full SHA
    b8eb5e9 View commit details

Commits on Sep 13, 2022

  1. Only use importlib.resources's new files() / Traversable API on Pytho…

    …n ≥3.11 (#204)
    
    Using importlib.resource's files() API on 3.9 and 3.10 causes a
    TypeError on 3.9 and a ValueError on 3.10 when running under a
    third-party meta path importer (like PyOxidizer's OxidizedImporter) that
    doesn't support the relatively-new API.  This is because the full
    adapter layer (importlib.resources._adapters) for the older importlib
    resources API doesn't exist until Python 3.11.
    
    The older resources API is now used by 3.7–3.10, as it was prior to the
    certifi 2022.06.15.1 release.  This codepath has existed in certifi
    since April 2020 (3fc8fec).
    
    An alternative to this change would be testing the actual importer in
    use at runtime (e.g. certifi.__loader__) for files() support, but that
    seemed more complex than reverting to the previous codepath here.
    
    Resolves: #203
    Related-to: #199
    Related-to: #123
    tsibley authored Sep 13, 2022
    Copy the full SHA
    de0eae1 View commit details
  2. 2022.06.15.2

    Lukasa committed Sep 13, 2022
    Copy the full SHA
    aca828a View commit details

Commits on Sep 14, 2022

  1. 2022.09.14

    Lukasa committed Sep 14, 2022
    Copy the full SHA
    939a28f View commit details

Commits on Sep 24, 2022

  1. 2022.09.24

    Lukasa committed Sep 24, 2022
    Copy the full SHA
    b81bdb2 View commit details

Commits on Dec 7, 2022

  1. 2022.12.07

    Lukasa committed Dec 7, 2022
    3
    Copy the full SHA
    9e9e840 View commit details
  2. get CI passing again

    alex authored Dec 7, 2022
    Copy the full SHA
    fed4048 View commit details
  3. fix CI

    alex authored Dec 7, 2022
    Copy the full SHA
    9427a5a View commit details

Commits on Jan 13, 2023

  1. remove paragraphs about 1024-bit roots from README

    they haven't been relevant for a long time
    alex authored Jan 13, 2023
    Copy the full SHA
    e0b9fc5 View commit details

Commits on Feb 23, 2023

  1. Copy the full SHA
    2087de5 View commit details

Commits on Feb 24, 2023

  1. Set up permissions to github workflows (#218)

    * feat: update lock.yml permissions
    
    Signed-off-by: Joyce <joycebrum@google.com>
    
    * feat: set up permissions to ci.yml
    
    Signed-off-by: Joyce <joycebrum@google.com>
    
    ---------
    
    Signed-off-by: Joyce <joycebrum@google.com>
    joycebrum authored Feb 24, 2023
    Copy the full SHA
    c211ef4 View commit details

Commits on Mar 20, 2023

  1. Create a Security Policy (#222)

    * Create SECURITY.md
    
    * Update SECURITY.md to add email
    
    * Disclose vulnerability on Github
    joycebrum authored Mar 20, 2023
    Copy the full SHA
    c2fc3b1 View commit details

Commits on Apr 26, 2023

  1. Copy the full SHA
    53da240 View commit details

Commits on May 7, 2023

  1. 2023.05.07

    Lukasa committed May 7, 2023
    Copy the full SHA
    8b3d7ba View commit details

Commits on Jul 7, 2023

  1. Hash pin Actions and enable dependabot (#228)

    * Update ci.yml
    
    * Update lock.yml
    
    * Create dependabot.yml
    joycebrum authored Jul 7, 2023
    Copy the full SHA
    44df761 View commit details
  2. Bump dessant/lock-threads from 3.0.0 to 4.0.1 (#229)

    Bumps [dessant/lock-threads](https://github.com/dessant/lock-threads) from 3.0.0 to 4.0.1.
    - [Release notes](https://github.com/dessant/lock-threads/releases)
    - [Changelog](https://github.com/dessant/lock-threads/blob/main/CHANGELOG.md)
    - [Commits](dessant/lock-threads@e460dfe...be8aa5b)
    
    ---
    updated-dependencies:
    - dependency-name: dessant/lock-threads
      dependency-type: direct:production
      update-type: version-update:semver-major
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Jul 7, 2023
    Copy the full SHA
    2038739 View commit details

Commits on Jul 17, 2023

  1. Bump actions/setup-python from 4.6.1 to 4.7.0 (#230)

    Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.6.1 to 4.7.0.
    - [Release notes](https://github.com/actions/setup-python/releases)
    - [Commits](actions/setup-python@bd6b4b6...61a6322)
    
    ---
    updated-dependencies:
    - dependency-name: actions/setup-python
      dependency-type: direct:production
      update-type: version-update:semver-minor
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Jul 17, 2023
    Copy the full SHA
    afe7722 View commit details

Commits on Jul 22, 2023

  1. 2023.07.22

    Lukasa committed Jul 22, 2023
    1
    Copy the full SHA
    8fb96ed View commit details
Showing with 1,075 additions and 609 deletions.
  1. +8 −0 .github/dependabot.yml
  2. +28 −7 .github/workflows/ci.yml
  3. +20 −0 .github/workflows/lock.yml
  4. +1 −1 LICENSE
  5. +2 −2 MANIFEST.in
  6. +1 −16 README.rst
  7. +6 −0 SECURITY.md
  8. +2 −1 certifi/__init__.py
  9. +932 −554 certifi/cacert.pem
  10. +61 −13 certifi/core.py
  11. 0 certifi/py.typed
  12. +7 −4 certifi/tests/test_certify.py
  13. +0 −2 setup.cfg
  14. +7 −9 setup.py
8 changes: 8 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
version: 2
updates:
- package-ecosystem: "github-actions" # Necessary to update action hashes
directory: "/"
schedule:
interval: "weekly"
# Allow up to 3 opened pull requests for github-actions versions
open-pull-requests-limit: 3
35 changes: 28 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -4,24 +4,45 @@ on:
push:
branches: [master]
pull_request: {}

permissions:
contents: read

jobs:
mypy:
runs-on: ubuntu-20.04

steps:
- uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
- name: Set up Python
uses: actions/setup-python@61a6322f88396a6271a6ee3565807d608ecaddd1 # v4.7.0
- name: Install dependencies
run: pip install mypy
- name: Run mypy
run: mypy --strict certifi

test:
runs-on: ubuntu-latest
runs-on: ubuntu-20.04
strategy:
matrix:
python-version: [3.5, 3.6, 3.7, 3.8, 3.9]

python-version:
- "3.6"
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
- "3.12-dev"
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
uses: actions/setup-python@61a6322f88396a6271a6ee3565807d608ecaddd1 # v4.7.0
with:
python-version: ${{ matrix.python-version }}
- name: Install test dependencies
run: |
python -m pip install --upgrade pip
pip install pytest
python -m pip install pytest
- name: Test with pytest
run: |
pytest
python -W error -W 'ignore:Running attrs on Python 3.6' -m pytest
20 changes: 20 additions & 0 deletions .github/workflows/lock.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Lock Issues
on:
workflow_dispatch:
schedule:
- cron: '0 0 * * *'

permissions: {}

jobs:
lock:
if: github.repository_owner == 'certifi'
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- uses: dessant/lock-threads@be8aa5be94131386884a6da4189effda9b14aa21 # v4.0.1
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
issue-inactive-days: 90
pr-inactive-days: 90
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@ Certificate data from Mozilla as of: Thu Nov 3 19:04:19 2011#
This is a bundle of X.509 certificates of public Certificate Authorities
(CA). These were automatically extracted from Mozilla's root certificates
file (certdata.txt). This file can be found in the mozilla source tree:
http://mxr.mozilla.org/mozilla/source/security/nss/lib/ckfw/builtins/certdata.txt?raw=1#
https://hg.mozilla.org/mozilla-central/file/tip/security/nss/lib/ckfw/builtins/certdata.txt
It contains the certificates in PEM format and therefore
can be directly used with curl / libcurl / php_curl, or with
an Apache+mod_ssl webserver for SSL client authentication.
4 changes: 2 additions & 2 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
include MANIFEST.in README.rst LICENSE certifi/cacert.pem
include MANIFEST.in README.rst LICENSE certifi/cacert.pem certifi/py.typed

exclude .github/
recursive-exclude .github
recursive-exclude .github
17 changes: 1 addition & 16 deletions README.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Certifi: Python SSL Certificates
================================

`Certifi`_ provides Mozilla's carefully curated collection of Root Certificates for
Certifi provides Mozilla's carefully curated collection of Root Certificates for
validating the trustworthiness of SSL certificates while verifying the identity
of TLS hosts. It has been extracted from the `Requests`_ project.

@@ -30,21 +30,6 @@ Or from the command line::

Enjoy!

1024-bit Root Certificates
~~~~~~~~~~~~~~~~~~~~~~~~~~

Browsers and certificate authorities have concluded that 1024-bit keys are
unacceptably weak for certificates, particularly root certificates. For this
reason, Mozilla has removed any weak (i.e. 1024-bit key) certificate from its
bundle, replacing it with an equivalent strong (i.e. 2048-bit or greater key)
certificate from the same CA. Because Mozilla removed these certificates from
its bundle, ``certifi`` removed them as well.

In previous versions, ``certifi`` provided the ``certifi.old_where()`` function
to intentionally re-add the 1024-bit roots back into your bundle. This was not
recommended in production and therefore was removed at the end of 2018.

.. _`Certifi`: https://certifiio.readthedocs.io/en/latest/
.. _`Requests`: https://requests.readthedocs.io/en/master/

Addition/Removal of Certificates
6 changes: 6 additions & 0 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Reporting Security Issues

To report a security issue, please disclose it at [security advisory](https://github.com/certifi/python-certifi/security/advisories/new).

We will respond within 7 working days of your submission. If the issue is confirmed as a vulnerability, we will open a Security Advisory and acknowledge your contributions as part of it. This project follows a 90 day disclosure timeline.

3 changes: 2 additions & 1 deletion certifi/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
from .core import contents, where

__version__ = "2021.05.30"
__all__ = ["contents", "where"]
__version__ = "2023.07.22"
Loading