Skip to content

chore: upgrade click to ~8.3.0#1411

Open
svmhdvn wants to merge 1 commit intopython-semantic-release:masterfrom
svmhdvn:bump-click
Open

chore: upgrade click to ~8.3.0#1411
svmhdvn wants to merge 1 commit intopython-semantic-release:masterfrom
svmhdvn:bump-click

Conversation

@svmhdvn
Copy link

@svmhdvn svmhdvn commented Jan 4, 2026

Purpose

This patch upgrades click to latest upstream master ~8.3.0.

Necessary changes due to this upgrade:

  • Minimum python version has been bumped to oldest currently supported version 3.10. Versions 3.8 and 3.9 are officially EOL.
  • test_main_no_args_passes_w_help_text testcase fixed to reflect exit code of 2 as mentioned in https://github.com/pallets/click/releases/tag/8.2.0 release notes
  • tests/e2e/cmd_config/test_generate_config.py testcases fixed to use stdout for LHS vs RHS diffing
  • CliRunner construction fixed to reflect mix_stderr being removed in click 8.2.0 as mentioned in https://github.com/pallets/click/releases/tag/8.2.0 release notes

Rationale

Distributions with static package versions need to upgrade click to latest upstream version, but cannot do so without bringing this port's dependency on click to the latest upstream version.

How did you test?

tox -r
pytest -vv --comprehensive

How to Verify

N/A


PR Completion Checklist

  • Reviewed & followed the Contributor Guidelines
  • Changes Implemented & Validation pipeline succeeds
  • Commits follow the Conventional Commits standard
    and are separated into the proper commit type and scope (recommended order: test, build, feat/fix, docs)
  • Appropriate Unit tests added/updated
  • Appropriate End-to-End tests added/updated
  • Appropriate Documentation added/updated and syntax validated for sphinx build (see Contributor Guidelines)

@codejedi365
Copy link
Contributor

As mentioned in #1399 and #1245, this breaks our test code. You will need to work around this issue by isolating the install separately until it can be fixed. Unless you want to figure out how to fix the test code.

@codejedi365 codejedi365 added blocked Requires something else before merge or fix breaking Identifies breaking change awaiting-reply Waiting for response labels Jan 4, 2026
@svmhdvn
Copy link
Author

svmhdvn commented Jan 5, 2026

Yes, I can help figure out how to fix the tests. Other than pytest -vv --comprehensive, do you have any other repro intructions to hit the issues you faced in the tests?

@svmhdvn svmhdvn marked this pull request as draft January 5, 2026 16:36
@svmhdvn svmhdvn force-pushed the bump-click branch 5 times, most recently from b0dd183 to b7ad1fb Compare January 5, 2026 18:31
@svmhdvn svmhdvn marked this pull request as ready for review January 5, 2026 18:32
@svmhdvn
Copy link
Author

svmhdvn commented Jan 5, 2026

My latest changes should pass all tests as reflected by https://github.com/svmhdvn/python-semantic-release/actions/runs/20724583139.

@codejedi365 codejedi365 added confirmed Prevent from becoming stale and removed awaiting-reply Waiting for response unresponsive labels Jan 20, 2026
Necessary changes due to this upgrade:
* Minimum python version has been bumped to oldest currently supported version 3.10.
  Versions 3.8 and 3.9 are officially EOL.
* `test_main_no_args_passes_w_help_text` testcase fixed to reflect exit code of 2 as
  mentioned in https://github.com/pallets/click/releases/tag/8.2.0 release notes
* `tests/e2e/cmd_config/test_generate_config.py` testcases fixed to use `stdout`
  for LHS vs RHS diffing
* `CliRunner` construction fixed to reflect `mix_stderr` being removed in click
  8.2.0 as mentioned in https://github.com/pallets/click/releases/tag/8.2.0 release notes
@svmhdvn
Copy link
Author

svmhdvn commented Jan 20, 2026

Anything further to do in this review? This should be good to go.

@codejedi365
Copy link
Contributor

No, the changes make sense. Is there anyway to maintain support for 3.9?

@svmhdvn
Copy link
Author

svmhdvn commented Jan 26, 2026

No, because it seems that even click 8.2.0 doesn't support python 3.9: https://github.com/pallets/click/releases/tag/8.2.0

Since python 3.9 is already EOL, I think there's no harm in moving to python 3.10.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

blocked Requires something else before merge or fix breaking Identifies breaking change confirmed Prevent from becoming stale

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants