Changeset - 3ddbe2a5f406
[Not reviewed]
master
0 7 0
Branko Majic (branko) - 3 months ago 2025-09-07 12:18:36
branko@majic.rs
GC-47: Add support for Python 3.13:

- Simplify the option presence checks in functional tests to avoid
having to deal with differences in output between Python 3.13 and
older versions (similar checks are already in place for things like
key specification anyway). For more details, see this commit:

https://github.com/python/cpython/commit/c4a2e8a2c5188c3288d57b80852e92c83f46f6f3
7 files changed with 14 insertions and 10 deletions:
0 comments (0 inline, 0 general)
README.rst
Show inline comments
 
@@ -33,6 +33,7 @@ Python versions:
 
- *Python 3.10*
 
- *Python 3.11*
 
- *Python 3.12*
 
- *Python 3.13*
 

	
 

	
 
Why was this tool created?
docs/releasenotes.rst
Show inline comments
 
@@ -29,6 +29,7 @@ Resolved issues:
 

	
 
  - `GC-50: Drop support for Python 3.8 <https://projects.majic.rs/gimmecert/issues/GC-50>`_
 
  - `GC-48: Update all requirements <https://projects.majic.rs/gimmecert/issues/GC-48>`_
 
  - `GC-47: Support for Python 3.13 <https://projects.majic.rs/gimmecert/issues/GC-47>`_
 

	
 

	
 
1.0.0
functional_tests/test_csr.py
Show inline comments
 
@@ -37,22 +37,22 @@ def test_commands_report_csr_option_as_available():
 
    stdout, stderr, exit_code = run_command("gimmecert", "server", "-h")
 

	
 
    # John notcies the option for passing-in a CSR.
 
    assert " --csr " in stdout
 
    assert " -c " in stdout
 
    assert " --csr" in stdout
 
    assert " -c" in stdout
 

	
 
    # He checks help for the client command.
 
    stdout, stderr, exit_code = run_command("gimmecert", "client", "-h")
 

	
 
    # John notcies the option for passing-in a CSR.
 
    assert " --csr " in stdout
 
    assert " -c " in stdout
 
    assert " --csr" in stdout
 
    assert " -c" in stdout
 

	
 
    # He checks help for the renew command.
 
    stdout, stderr, exit_code = run_command("gimmecert", "renew", "-h")
 

	
 
    # John notcies the option for passing-in a CSR.
 
    assert " --csr " in stdout
 
    assert " -c " in stdout
 
    assert " --csr" in stdout
 
    assert " -c" in stdout
 

	
 

	
 
def test_client_certificate_issuance_by_passing_csr_as_file_rsa(tmpdir):
functional_tests/test_renew.py
Show inline comments
 
@@ -317,8 +317,8 @@ def test_renew_update_dns_option(tmpdir):
 

	
 
    # He notices there is an option for updating DNS subject
 
    # alternative names.
 
    assert " --update-dns-names DNS_NAMES" in stdout
 
    assert " -u DNS_NAMES\n" in stdout
 
    assert " --update-dns-names" in stdout
 
    assert " -u" in stdout
 

	
 
    # Based on help description, this seems to be exactly what he
 
    # needs.He goes ahead and runs the renewal command, specifying
provision.sh
Show inline comments
 
@@ -44,7 +44,7 @@ apt-get install -qq -y make build-essential libssl-dev zlib1g-dev libbz2-dev lib
 
sudo -i -u vagrant gpg -q --import /vagrant/provision/python_releases_signing_keys.pub
 

	
 
# Download and build additional Python versions.
 
python_versions=("3.9.18" "3.10.13" "3.11.8" "3.12.2")
 
python_versions=("3.9.18" "3.10.13" "3.11.8" "3.12.2" "3.13.7")
 
work_directory="/home/vagrant/src"
 

	
 
echo "Setting-up work directory."
setup.py
Show inline comments
 
@@ -24,7 +24,7 @@ from setuptools import setup, find_packages
 

	
 
README = open(os.path.join(os.path.dirname(__file__), 'README.rst')).read()
 

	
 
python_requirements = ">=3.9,<3.13"
 
python_requirements = ">=3.9,<3.14"
 

	
 
install_requirements = [
 
    'cryptography>=45.0,<45.1',
 
@@ -92,6 +92,7 @@ setup(
 
        'Programming Language :: Python :: 3.10',
 
        'Programming Language :: Python :: 3.11',
 
        'Programming Language :: Python :: 3.12',
 
        'Programming Language :: Python :: 3.13',
 
        'Topic :: Internet :: WWW/HTTP',
 
        'Topic :: Internet :: WWW/HTTP :: Site Management',
 
        'Topic :: Security',
tox.ini
Show inline comments
 
@@ -31,6 +31,7 @@ basepython =
 
  py310: python3.10
 
  py311: python3.11
 
  py312: python3.12
 
  py313: python3.13
 

	
 
deps =
 
  .[test]
0 comments (0 inline, 0 general)