Skip to content

remove DSS key references; upgrade paramiko dependency to version 4.0#307

Open
rawwar wants to merge 9 commits intopahaz:masterfrom
rawwar:kalyan/bump_paramiko
Open

remove DSS key references; upgrade paramiko dependency to version 4.0#307
rawwar wants to merge 9 commits intopahaz:masterfrom
rawwar:kalyan/bump_paramiko

Conversation

@rawwar
Copy link
Copy Markdown

@rawwar rawwar commented Oct 29, 2025

Raising this PR as Apache Airflow uses this package. We wanted to bump paramiko>=4.0.0(PR). But, found that sshtunnel uses DSS Key. I did see earlier PR's. But, they were failing tests. This is my attempt to try to fix them.

  • removed DSSKey usage
  • updated min. version of paramiko to 4.0
  • updated min. python version to 3.9
  • dropped support for python 2.x
  • fixed failures of docs tests in circleci
  • updated changelog, docs
  • updated appveyor config - This is still failing. Not sure how to fix

Note: I've used copilot

@coveralls
Copy link
Copy Markdown

coveralls commented Oct 29, 2025

Coverage Status

coverage: 91.704% (+0.04%) from 91.667%
when pulling b93a5e9 on rawwar:kalyan/bump_paramiko
into dc07328 on pahaz:master.

@rawwar rawwar force-pushed the kalyan/bump_paramiko branch from 53fea17 to dc269b8 Compare October 29, 2025 02:57
@rawwar
Copy link
Copy Markdown
Author

rawwar commented Oct 29, 2025

Looks like, its not possible to enable rolling build from appveyor.yml config. it needs to be done via UI - https://www.appveyor.com/docs/build-configuration/#rolling-builds

Appveyor builds are running for every commit. I think, we don't need the older builds running when the PR is updated .
CC: @pahaz

@rawwar rawwar force-pushed the kalyan/bump_paramiko branch 4 times, most recently from d856e37 to 2d5a41d Compare October 29, 2025 06:59
@rawwar rawwar force-pushed the kalyan/bump_paramiko branch from 2d5a41d to b93a5e9 Compare October 29, 2025 07:35
@rawwar rawwar marked this pull request as ready for review October 29, 2025 07:36
@rawwar
Copy link
Copy Markdown
Author

rawwar commented Oct 29, 2025

@pahaz , I did make a lot of changes in the PR assuming too many things. Appreciate your feedback and how we want to resolve this.

@rawwar
Copy link
Copy Markdown
Author

rawwar commented Oct 29, 2025

Also, for Appveyor config, do you know what will be the python path? I did some debugging and still was unable to figure it out. I did try adding more debug logs.

@wenderson-cmp
Copy link
Copy Markdown

any updates ? @pahaz

@lozik4
Copy link
Copy Markdown

lozik4 commented Dec 18, 2025

Maybe release 0.4.1 where bamp paramico <=3.5.1
After that, release 0.5.0 without support DSSkey
@pahaz ?

@akozlu
Copy link
Copy Markdown

akozlu commented Jan 29, 2026

Hi @pahaz, following up on this. The suggestion from @lozik4 about a phased release (0.4.1 with paramiko <=3.5.1, then 0.5.0 without DSS key support) seems like a reasonable path forward. Would that approach work?

@pahaz
Copy link
Copy Markdown
Owner

pahaz commented Feb 10, 2026

Thanks for your tremendous work — really appreciate it! 🙌

I’d like to keep basic compatibility with older Paramiko and Python 2 for now. The library is used in closed environments where upgrades are slow, so a softer transition would help. I agree with #309 it will be the best for now.

My proposal:

  • Ship an intermediate release that keeps support for older Paramiko.
  • In the next release, proceed with the backward-incompatible changes.

Happy to help with testing this path. I’ll revisit this PR a bit later.

@eladkal
Copy link
Copy Markdown

eladkal commented Mar 9, 2026

My proposal:
Ship an intermediate release that keeps support for older Paramiko.
In the next release, proceed with the backward-incompatible changes.

Is it reasonable to consider both in parallel?
You can set a branch for older version and keep master for new breaking change release
thus keep releasing 0.x.y from the old branch and releasing 1.a.b from master branch.
You can keep releasing both to PyPi.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants