Skip to content

Releases: ansible/pylibssh

v1.2.2

27 Jun 17:47
Compare
Choose a tag to compare

📝 Release notes

📦 PyPI page: https://pypi.org/project/ansible-pylibssh/1.2.2

🌱 v1.2.2 is marked as a stable release.

🔗 This release has been produced by the following workflow run: https://github.com/ansible/pylibssh/actions/runs/9700697462

v1.2.2

(2024-06-27)

Bug fixes

  • Downloading files larger than 64kB over SCP no longer fails -- by
    @Jakuje.

    Related issues and pull requests on GitHub: #621.


v1.2.1

27 Jun 15:35
Compare
Choose a tag to compare

📝 Release notes

📦 PyPI page: https://pypi.org/project/ansible-pylibssh/1.2.1

🌱 v1.2.1 is marked as a stable release.

🔗 This release has been produced by the following workflow run: https://github.com/ansible/pylibssh/actions/runs/9699128891

v1.2.1

(2024-06-27)

Bug fixes

  • Downloading non-existent remote files via SCP no longer crashes the
    program -- by @Jakuje.

    Related issues and pull requests on GitHub: #208, #325, #620.

Packaging updates and notes for downstreams

  • The RPM specification now opts out of demanding that the compiled
    C-extensions have a Build ID present under EL -- by @webknjaz.

    Related commits on GitHub:
    9053c10,
    aaa1215.

  • The RPM specification has been updated to pre-build the vendored
    copy of setuptools-scm with the isolation disabled, addressing the
    build problem in EL 9 -- by @webknjaz.

    Related commits on GitHub:
    dd85dde.

  • The RPM definition now runs import self-checks when it is built for
    Fedora Linux -- by @webknjaz.

    Related issues and pull requests on GitHub: #615.

Contributor-facing changes

  • RPM builds are now also tested against UBI 9.4 in CI -- by
    @webknjaz.

    Related commits on GitHub:
    e9ad0a7.


v1.2.0.post4

09 Jun 12:07
Compare
Choose a tag to compare

📝 Release notes

📦 PyPI page: https://pypi.org/project/ansible-pylibssh/1.2.0.post4

🌱 v1.2.0.post4 is marked as a stable release.

🔗 This release has been produced by the following workflow run: https://github.com/ansible/pylibssh/actions/runs/9433633704

v1.2.0.post4

(2024-06-09)

Packaging updates and notes for downstreams

  • Substituting the gh role in source distribution long description
    has been simplify to stop attempting to make URLs to arbitrary
    GitHub addresses -- by @webknjaz.

    Related commits on GitHub:
    f4ad1b76.

  • The in-tree 517 build backend's regular expression has been
    hotfixed to replace the "project" substitution correctly -- by
    @webknjaz.

    Previously, it was generating a lot of noise instead of a nice
    description. But not anymore.

    Related issues and pull requests on GitHub: 9275221.


v1.2.0.post2

08 Jun 23:25
Compare
Choose a tag to compare

📝 Release notes

📦 PyPI page: https://pypi.org/project/ansible-pylibssh/1.2.0.post2

🌱 v1.2.0.post2 is marked as a stable release.

🔗 This release has been produced by the following workflow run: https://github.com/ansible/pylibssh/actions/runs/9432056614

v1.2.0.post2

(2024-06-08)

Packaging updates and notes for downstreams

  • The automation now replaces the "project" RST substitution in the
    long description and GitHub Discussions/Releases -- by @webknjaz.

    Related commits on GitHub:
    13374a71.

  • The CI/CD automation has been fixed to include changelog updates
    into source distribution tarballs -- by @webknjaz.

    Related commits on GitHub:
    627f718d.


v1.2.0

07 Jun 21:31
Compare
Choose a tag to compare

📝 Release notes

📦 PyPI page: https://pypi.org/project/ansible-pylibssh/1.2.0

🌱 v1.2.0 is marked as a stable release.

🔗 This release has been produced by the following workflow run: https://github.com/ansible/pylibssh/actions/runs/9423162320

v1.2.0

(2024-06-07)

Bug fixes

  • no longer crashes when received EOF or when channel is not
    explicitly closed -- by @pbrezina.

    Previously, crashed if channel.recv was called and libssh
    returned SSH_EOF error. It also crashed on some special occasions
    where channel was not explicitly closed and the session object was
    garbage-collected first.

    Related issues and pull requests on GitHub: #576.

Features

  • Started exposing the SSH_OPTIONS_PUBLICKEY_ACCEPTED_TYPES and
    SSH_OPTIONS_HOSTKEYS options publicly -- by @Qalthos.

    Related issues and pull requests on GitHub: #527.

  • The request_exec() method was added to the Channel class. It
    exposes an interface for calling the respective low-level C-API of
    the underlying libssh library -- by @pbrezina.

    Additionally, the following calls to libssh are now available in
    the same class: request_exec(), send_eof(),
    request_send_signal() and is_eof which is exposed as a
    :pyproperty.

    Related issues and pull requests on GitHub: #576.

Improved documentation

  • Fixed spelling of "Connect" in the Session.connect() docstring --
    by @donnerhacke.

    Related issues and pull requests on GitHub: #474.

  • Added a tip to the installation guide <Installing |project|> on
    how to set compiler flags when installing from source -- @webknjaz.

    Related issues and pull requests on GitHub: #499.

  • Fixed the example of invoking remote commands by using
    Channel.exec_command() in snippets -- by @pbrezina.

    Its previously showcased version wasn't functional.

    Related issues and pull requests on GitHub: #576.

Packaging updates and notes for downstreams

  • A flaw in the logic for copying the project directory into a
    temporary folder that led to infinite recursion when TMPDIR was
    set to a project subdirectory path. This was happening in Fedora and
    its downstream due to the use of
    pyproject-rpm-macros.
    It was only reproducible with pip wheel and was not affecting the
    pyproject-build users.

    -- by @hroncok and @webknjaz

    Related commits on GitHub:
    89c9b3a.

  • From now on, the published distribution package artifacts for the
    new releases are signed via Sigstore -- by
    @webknjaz.

    This is happening as a part of the GitHub Actions CI/CD workflow
    automation and the signatures are uploaded to the corresponding
    GitHub Release pages.

    Related commits on GitHub:
    986988a.

  • The platform-specific macOS wheels are now built using the Python
    interpreter from https://python.org. They are tagged with
    macosx_10_9 -- by @webknjaz.

    Related issues and pull requests on GitHub: #333.

  • The toml build time dependency has been replaced with tomli --
    by @webknjaz.

    The tomli distribution is only pulled in under Python versions
    below 3.11. On 3.11 and higher, the standard library module
    :pytomllib is now used instead.

    Related issues and pull requests on GitHub: #501.

  • Started using the built-in setuptools-scm Git archive support
    under Python 3.7 and higher -- @webknjaz.

    Related issues and pull requests on GitHub: #502.

  • Added support for Python 3.12 -- by @Qalthos.

    It is now both tested in the CI and is advertised through the Trove
    classifiers.

    Related issues and pull requests on GitHub: #532.

  • The Cython build time dependency now has the minimum version of
    3.0 under Python 3.12 and higher -- by @webknjaz.

    The previous versions of Cython are still able to build the
    project under older Python versions.

    Related issues and pull requests on GitHub: #540.

  • 660 is now enabled -- @webknjaz.

    Previously, due to restrictive 517 hook reimports, our in-tree
    build backend was losing non-PEP 517 <517> hooks implemented in
    newer versions of setuptools but not the earlier ones. This is now
    addressed by reexporting everything that setuptools exposes with a
    wildcard.

    Related issues and pull requests on GitHub: #541.

  • The setuptools-scm build dependency CI pin was updated to 8.1.0 —
    this version fixes a date parsing incompatibility introduced by Git
    2.45.0 (pypa/setuptools_scm#1039 <pypa/setuptools_scm/issues/1038>, pypa/setuptools_scm#1038 <pypa/setuptools_scm/pull/1039>) -- by @webknjaz.

    Related issues and pull requests on GitHub: #601.

Contributor-facing changes

  • The changelog page for the tagged release builds on Read The Docs
    does not attempt showing the draft section anymore -- by @webknjaz.

    Related commits on GitHub:
    852d259.

  • Adjusted the publishing workflow automation to pre-configure Git
    before attempting to create a tag when building a source
    distribution -- by @webknjaz.

    Related commits on GitHub:
    f07296f.

  • The CI configuration for building the macOS platform-specific wheels
    switched to using cibuildwheel -- by @webknjaz.

    Related issues and pull requests on GitHub: #333.

  • The OS-level tox package was upgraded to v3.28.0 in the UBI9 CI
    runtime -- by @Qalthos.

    Related issues and pull requests on GitHub: #461, #473.

  • Fixed spelling of "Connect" in the Session.connect() docstring --
    by @donnerhacke.

    Related issues and pull requests on GitHub: #474.

  • The Packit CI access to the internet has been restored -- by
    @Qalthos.

    Related issues and pull requests on GitHub: #507.

  • Started building manylinux_2_28 base images for testing and
    packaging in the CI/CD infrastructure -- by @Qalthos.

    Related issues and pull requests on GitHub: #533.

  • Switched back to using Cython's native plugin for measuring code
    coverage -- by @webknjaz.

    Related issues and pull requests on GitHub: #538.

  • Added separate changelog fragment types for contributor-and
    downstream-facing patches -- by @webknjaz.

    Their corresponding identifiers are contrib and packaging
    respectively. They are meant to be used for more accurate
    classification, where one would resort to using misc otherwise.

    Related issues and pull requests on GitHub: #539.

  • 660 is now enabled -- @webknjaz.

    This effectively means that the ecosystem-native editable install
    mode started working properly.

    Related issues and pull requests on GitHub: #541.

  • The duplicated jobs matrices for building manylinux wheels now
    reside in a single GitHub Actions CI/CD reusable workflow
    definition.

    -- @webknjaz

    Related issues and pull requests on GitHub: #559.

  • The duplicated jobs matrices of the text jobs now reside in a single
    GitHub Actions CI/CD reusable workflow definition.

    -- @webknjaz

    Related issues and pull requests on GitHub: #560.

  • Fixed the location of release workflow in the Release Guide
    document -- by @Qalthos.

    Related issues and pull requests on GitHub: #565.

  • The setuptools-scm build dependency CI pin was updated to 8.1.0 —
    this version fixes a date parsing incompatibility introduced by Git
    2.45.0 (pypa/setuptools_scm#1039 <pypa/setuptools_scm/issues/1038>, pypa/setuptools_scm#1038 <pypa/setuptools_scm/pull/1039>) -- by @webknjaz.

    Related issues and pull requests on GitHub: #601.

  • The CI/CD configuration was fixed to allow publishing to PyPI and
    other targets disregarding the test stage outcome. This used to be a
    bug in the workflow definition that has now been fixed.

    -- by @pbrezina and @webknjaz

    Related issues and pull requests on GitHub: #602.


v1.2.0rc4

07 Jun 19:51
Compare
Choose a tag to compare
v1.2.0rc4 Pre-release
Pre-release

📝 Release notes

📦 PyPI page: https://pypi.org/project/ansible-pylibssh/1.2.0rc4

🚧 v1.2.0rc4 is marked as a pre-release.

🔗 This release has been produced by the following workflow run: https://github.com/ansible/pylibssh/actions/runs/9421619343

v1.2.0rc4

(2024-06-07)

Bug fixes

  • no longer crashes when received EOF or when channel is not
    explicitly closed -- by @pbrezina.

    Previously, crashed if channel.recv was called and libssh
    returned SSH_EOF error. It also crashed on some special occasions
    where channel was not explicitly closed and the session object was
    garbage-collected first.

    Related issues and pull requests on GitHub: #576.

Features

  • Started exposing the SSH_OPTIONS_PUBLICKEY_ACCEPTED_TYPES and
    SSH_OPTIONS_HOSTKEYS options publicly -- by @Qalthos.

    Related issues and pull requests on GitHub: #527.

  • The request_exec() method was added to the Channel class. It
    exposes an interface for calling the respective low-level C-API of
    the underlying libssh library -- by @pbrezina.

    Additionally, the following calls to libssh are now available in
    the same class: request_exec(), send_eof(),
    request_send_signal() and is_eof which is exposed as a
    :pyproperty.

    Related issues and pull requests on GitHub: #576.

Improved documentation

  • Fixed spelling of "Connect" in the Session.connect() docstring --
    by @donnerhacke.

    Related issues and pull requests on GitHub: #474.

  • Added a tip to the installation guide <Installing |project|> on
    how to set compiler flags when installing from source -- @webknjaz.

    Related issues and pull requests on GitHub: #499.

  • Fixed the example of invoking remote commands by using
    Channel.exec_command() in snippets -- by @pbrezina.

    Its previously showcased version wasn't functional.

    Related issues and pull requests on GitHub: #576.

Packaging updates and notes for downstreams

  • A flaw in the logic for copying the project directory into a
    temporary folder that led to infinite recursion when TMPDIR was
    set to a project subdirectory path. This was happening in Fedora and
    its downstream due to the use of
    pyproject-rpm-macros.
    It was only reproducible with pip wheel and was not affecting the
    pyproject-build users.

    -- by @hroncok and @webknjaz

    Related commits on GitHub:
    89c9b3a.

  • From now on, the published distribution package artifacts for the
    new releases are signed via Sigstore -- by
    @webknjaz.

    This is happening as a part of the GitHub Actions CI/CD workflow
    automation and the signatures are uploaded to the corresponding
    GitHub Release pages.

    Related commits on GitHub:
    986988a.

  • The platform-specific macOS wheels are now built using the Python
    interpreter from https://python.org. They are tagged with
    macosx_10_9 -- by @webknjaz.

    Related issues and pull requests on GitHub: #333.

  • The toml build time dependency has been replaced with tomli --
    by @webknjaz.

    The tomli distribution is only pulled in under Python versions
    below 3.11. On 3.11 and higher, the standard library module
    :pytomllib is now used instead.

    Related issues and pull requests on GitHub: #501.

  • Started using the built-in setuptools-scm Git archive support
    under Python 3.7 and higher -- @webknjaz.

    Related issues and pull requests on GitHub: #502.

  • Added support for Python 3.12 -- by @Qalthos.

    It is now both tested in the CI and is advertised through the Trove
    classifiers.

    Related issues and pull requests on GitHub: #532.

  • The Cython build time dependency now has the minimum version of
    3.0 under Python 3.12 and higher -- by @webknjaz.

    The previous versions of Cython are still able to build the
    project under older Python versions.

    Related issues and pull requests on GitHub: #540.

  • 660 is now enabled -- @webknjaz.

    Previously, due to restrictive 517 hook reimports, our in-tree
    build backend was losing non-PEP 517 <517> hooks implemented in
    newer versions of setuptools but not the earlier ones. This is now
    addressed by reexporting everything that setuptools exposes with a
    wildcard.

    Related issues and pull requests on GitHub: #541.

  • The setuptools-scm build dependency CI pin was updated to 8.1.0 —
    this version fixes a date parsing incompatibility introduced by Git
    2.45.0 (pypa/setuptools_scm#1039 <pypa/setuptools_scm/issues/1038>, pypa/setuptools_scm#1038 <pypa/setuptools_scm/pull/1039>) -- by @webknjaz.

    Related issues and pull requests on GitHub: #601.

Contributor-facing changes

  • The changelog page for the tagged release builds on Read The Docs
    does not attempt showing the draft section anymore -- by @webknjaz.

    Related commits on GitHub:
    852d259.

  • Adjusted the publishing workflow automation to pre-configure Git
    before attempting to create a tag when building a source
    distribution -- by @webknjaz.

    Related commits on GitHub:
    f07296f.

  • The CI configuration for building the macOS platform-specific wheels
    switched to using cibuildwheel -- by @webknjaz.

    Related issues and pull requests on GitHub: #333.

  • The OS-level tox package was upgraded to v3.28.0 in the UBI9 CI
    runtime -- by @Qalthos.

    Related issues and pull requests on GitHub: #461, #473.

  • Fixed spelling of "Connect" in the Session.connect() docstring --
    by @donnerhacke.

    Related issues and pull requests on GitHub: #474.

  • The Packit CI access to the internet has been restored -- by
    @Qalthos.

    Related issues and pull requests on GitHub: #507.

  • Started building manylinux_2_28 base images for testing and
    packaging in the CI/CD infrastructure -- by @Qalthos.

    Related issues and pull requests on GitHub: #533.

  • Switched back to using Cython's native plugin for measuring code
    coverage -- by @webknjaz.

    Related issues and pull requests on GitHub: #538.

  • Added separate changelog fragment types for contributor-and
    downstream-facing patches -- by @webknjaz.

    Their corresponding identifiers are contrib and packaging
    respectively. They are meant to be used for more accurate
    classification, where one would resort to using misc otherwise.

    Related issues and pull requests on GitHub: #539.

  • 660 is now enabled -- @webknjaz.

    This effectively means that the ecosystem-native editable install
    mode started working properly.

    Related issues and pull requests on GitHub: #541.

  • The duplicated jobs matrices for building manylinux wheels now
    reside in a single GitHub Actions CI/CD reusable workflow
    definition.

    -- @webknjaz

    Related issues and pull requests on GitHub: #559.

  • The duplicated jobs matrices of the text jobs now reside in a single
    GitHub Actions CI/CD reusable workflow definition.

    -- @webknjaz

    Related issues and pull requests on GitHub: #560.

  • Fixed the location of release workflow in the Release Guide
    document -- by @Qalthos.

    Related issues and pull requests on GitHub: #565.

  • The setuptools-scm build dependency CI pin was updated to 8.1.0 —
    this version fixes a date parsing incompatibility introduced by Git
    2.45.0 (pypa/setuptools_scm#1039 <pypa/setuptools_scm/issues/1038>, pypa/setuptools_scm#1038 <pypa/setuptools_scm/pull/1039>) -- by @webknjaz.

    Related issues and pull requests on GitHub: #601.

  • The CI/CD configuration was fixed to allow publishing to PyPI and
    other targets disregarding the test stage outcome. This used to be a
    bug in the workflow definition that has now been fixed.

    -- by @pbrezina and @webknjaz

    Related issues and pull requests on GitHub: #602.


v1.2.0rc3

07 Jun 17:53
Compare
Choose a tag to compare
v1.2.0rc3 Pre-release
Pre-release

📝 Release notes

📦 PyPI page: https://pypi.org/project/ansible-pylibssh/1.2.0rc3

🚧 v1.2.0rc3 is marked as a pre-release.

🔗 This release has been produced by the following workflow run: https://github.com/ansible/pylibssh/actions/runs/9420767746

v1.2.0rc3 (2024-06-07)

Bug fixes

  • no longer crashes when received EOF or when channel is not
    explicitly closed -- by @pbrezina.

    Previously, crashed if channel.recv was called and libssh
    returned SSH_EOF error. It also crashed on some special occasions
    where channel was not explicitly closed and the session object was
    garbage-collected first.

    Related issues and pull requests on GitHub: #576.

Features

  • Started exposing the SSH_OPTIONS_PUBLICKEY_ACCEPTED_TYPES and
    SSH_OPTIONS_HOSTKEYS options publicly -- by @Qalthos.

    Related issues and pull requests on GitHub: #527.

  • The request_exec() method was added to the Channel class. It
    exposes an interface for calling the respective low-level C-API of
    the underlying libssh library -- by @pbrezina.

    Additionally, the following calls to libssh are now available in
    the same class: request_exec(), send_eof(),
    request_send_signal() and is_eof which is exposed as a
    :pyproperty.

    Related issues and pull requests on GitHub: #576.

Improved documentation

  • Fixed spelling of "Connect" in the Session.connect() docstring --
    by @donnerhacke.

    Related issues and pull requests on GitHub: #474.

  • Added a tip to the installation guide <Installing |project|> on
    how to set compiler flags when installing from source -- @webknjaz.

    Related issues and pull requests on GitHub: #499.

  • Fixed the example of invoking remote commands by using
    Channel.exec_command() in snippets -- by @pbrezina.

    Its previously showcased version wasn't functional.

    Related issues and pull requests on GitHub: #576.

Packaging updates and notes for downstreams

  • A flaw in the logic for copying the project directory into a
    temporary folder that led to infinite recursion when TMPDIR was
    set to a project subdirectory path. This was happening in Fedora and
    its downstream due to the use of
    pyproject-rpm-macros.
    It was only reproducible with pip wheel and was not affecting the
    pyproject-build users.

    -- by @hroncok and @webknjaz

    Related commits on GitHub:
    89c9b3a.

  • From now on, the published distribution package artifacts for the
    new releases are signed via Sigstore -- by
    @webknjaz.

    This is happening as a part of the GitHub Actions CI/CD workflow
    automation and the signatures are uploaded to the corresponding
    GitHub Release pages.

    Related commits on GitHub:
    986988a.

  • The platform-specific macOS wheels are now built using the Python
    interpreter from https://python.org. They are tagged with
    macosx_10_9 -- by @webknjaz.

    Related issues and pull requests on GitHub: #333.

  • The toml build time dependency has been replaced with tomli --
    by @webknjaz.

    The tomli distribution is only pulled in under Python versions
    below 3.11. On 3.11 and higher, the standard library module
    :pytomllib is now used instead.

    Related issues and pull requests on GitHub: #501.

  • Started using the built-in setuptools-scm Git archive support
    under Python 3.7 and higher -- @webknjaz.

    Related issues and pull requests on GitHub: #502.

  • Added support for Python 3.12 -- by @Qalthos.

    It is now both tested in the CI and is advertised through the Trove
    classifiers.

    Related issues and pull requests on GitHub: #532.

  • The Cython build time dependency now has the minimum version of
    3.0 under Python 3.12 and higher -- by @webknjaz.

    The previous versions of Cython are still able to build the
    project under older Python versions.

    Related issues and pull requests on GitHub: #540.

  • 660 is now enabled -- @webknjaz.

    Previously, due to restrictive 517 hook reimports, our in-tree
    build backend was losing non-PEP 517 <517> hooks implemented in
    newer versions of setuptools but not the earlier ones. This is now
    addressed by reexporting everything that setuptools exposes with a
    wildcard.

    Related issues and pull requests on GitHub: #541.

  • The setuptools-scm build dependency CI pin was updated to 8.1.0 —
    this version fixes a date parsing incompatibility introduced by Git
    2.45.0 (pypa/setuptools_scm#1039 <pypa/setuptools_scm/issues/1038>, pypa/setuptools_scm#1038 <pypa/setuptools_scm/pull/1039>) -- by @webknjaz.

    Related issues and pull requests on GitHub: #601.

Contributor-facing changes

  • The changelog page for the tagged release builds on Read The Docs
    does not attempt showing the draft section anymore -- by @webknjaz.

    Related commits on GitHub:
    852d259.

  • Adjusted the publishing workflow automation to pre-configure Git
    before attempting to create a tag when building a source
    distribution -- by @webknjaz.

    Related commits on GitHub:
    f07296f.

  • The CI configuration for building the macOS platform-specific wheels
    switched to using cibuildwheel -- by @webknjaz.

    Related issues and pull requests on GitHub: #333.

  • The OS-level tox package was upgraded to v3.28.0 in the UBI9 CI
    runtime -- by @Qalthos.

    Related issues and pull requests on GitHub: #461, #473.

  • Fixed spelling of "Connect" in the Session.connect() docstring --
    by @donnerhacke.

    Related issues and pull requests on GitHub: #474.

  • The Packit CI access to the internet has been restored -- by
    @Qalthos.

    Related issues and pull requests on GitHub: #507.

  • Started building manylinux_2_28 base images for testing and
    packaging in the CI/CD infrastructure -- by @Qalthos.

    Related issues and pull requests on GitHub: #533.

  • Switched back to using Cython's native plugin for measuring code
    coverage -- by @webknjaz.

    Related issues and pull requests on GitHub: #538.

  • Added separate changelog fragment types for contributor-and
    downstream-facing patches -- by @webknjaz.

    Their corresponding identifiers are contrib and packaging
    respectively. They are meant to be used for more accurate
    classification, where one would resort to using misc otherwise.

    Related issues and pull requests on GitHub: #539.

  • 660 is now enabled -- @webknjaz.

    This effectively means that the ecosystem-native editable install
    mode started working properly.

    Related issues and pull requests on GitHub: #541.

  • The duplicated jobs matrices for building manylinux wheels now
    reside in a single GitHub Actions CI/CD reusable workflow
    definition.

    -- @webknjaz

    Related issues and pull requests on GitHub: #559.

  • The duplicated jobs matrices of the text jobs now reside in a single
    GitHub Actions CI/CD reusable workflow definition.

    -- @webknjaz

    Related issues and pull requests on GitHub: #560.

  • Fixed the location of release workflow in the Release Guide
    document -- by @Qalthos.

    Related issues and pull requests on GitHub: #565.

  • The setuptools-scm build dependency CI pin was updated to 8.1.0 —
    this version fixes a date parsing incompatibility introduced by Git
    2.45.0 (pypa/setuptools_scm#1039 <pypa/setuptools_scm/issues/1038>, pypa/setuptools_scm#1038 <pypa/setuptools_scm/pull/1039>) -- by @webknjaz.

    Related issues and pull requests on GitHub: #601.

  • The CI/CD configuration was fixed to allow publishing to PyPI and
    other targets disregarding the test stage outcome. This used to be a
    bug in the workflow definition that has now been fixed.

    -- by @pbrezina and @webknjaz

    Related issues and pull requests on GitHub: #602.


v1.2.0rc2

07 Jun 16:08
3c2c36a
Compare
Choose a tag to compare
v1.2.0rc2 Pre-release
Pre-release

📝 Release notes

📦 PyPI page: https://pypi.org/project/ansible-pylibssh/1.2.0rc2

🔗 This release has been produced by the following workflow run: https://github.com/ansible/pylibssh/actions/runs/9419572873

v1.2.0rc2 (2024-06-07)

Bug fixes

  • no longer crashes when received EOF or when channel is not
    explicitly closed -- by @pbrezina.

    Previously, crashed if channel.recv was called and libssh
    returned SSH_EOF error. It also crashed on some special occasions
    where channel was not explicitly closed and the session object was
    garbage-collected first.

    Related issues and pull requests on GitHub: #576.

Features

  • Started exposing the SSH_OPTIONS_PUBLICKEY_ACCEPTED_TYPES and
    SSH_OPTIONS_HOSTKEYS options publicly -- by @Qalthos.

    Related issues and pull requests on GitHub: #527.

  • The request_exec() method was added to the Channel class. It
    exposes an interface for calling the respective low-level C-API of
    the underlying libssh library -- by @pbrezina.

    Additionally, the following calls to libssh are now available in
    the same class: request_exec(), send_eof(),
    request_send_signal() and is_eof which is exposed as a
    :pyproperty.

    Related issues and pull requests on GitHub: #576.

Improved documentation

  • Fixed spelling of "Connect" in the Session.connect() docstring --
    by @donnerhacke.

    Related issues and pull requests on GitHub: #474.

  • Added a tip to the installation guide <Installing |project|> on
    how to set compiler flags when installing from source -- @webknjaz.

    Related issues and pull requests on GitHub: #499.

  • Fixed the example of invoking remote commands by using
    Channel.exec_command() in snippets -- by @pbrezina.

    Its previously showcased version wasn't functional.

    Related issues and pull requests on GitHub: #576.

Packaging updates and notes for downstreams

  • A flaw in the logic for copying the project directory into a
    temporary folder that led to infinite recursion when TMPDIR was
    set to a project subdirectory path. This was happening in Fedora and
    its downstream due to the use of
    pyproject-rpm-macros.
    It was only reproducible with pip wheel and was not affecting the
    pyproject-build users.

    -- by @hroncok and @webknjaz

    Related commits on GitHub:
    89c9b3a.

  • From now on, the published distribution package artifacts for the
    new releases are signed via Sigstore -- by
    @webknjaz.

    This is happening as a part of the GitHub Actions CI/CD workflow
    automation and the signatures are uploaded to the corresponding
    GitHub Release pages.

    Related commits on GitHub:
    986988a.

  • The platform-specific macOS wheels are now built using the Python
    interpreter from https://python.org. They are tagged with
    macosx_10_9 -- by @webknjaz.

    Related issues and pull requests on GitHub: #333.

  • The toml build time dependency has been replaced with tomli --
    by @webknjaz.

    The tomli distribution is only pulled in under Python versions
    below 3.11. On 3.11 and higher, the standard library module
    :pytomllib is now used instead.

    Related issues and pull requests on GitHub: #501.

  • Started using the built-in setuptools-scm Git archive support
    under Python 3.7 and higher -- @webknjaz.

    Related issues and pull requests on GitHub: #502.

  • Added support for Python 3.12 -- by @Qalthos.

    It is now both tested in the CI and is advertised through the Trove
    classifiers.

    Related issues and pull requests on GitHub: #532.

  • The Cython build time dependency now has the minimum version of
    3.0 under Python 3.12 and higher -- by @webknjaz.

    The previous versions of Cython are still able to build the
    project under older Python versions.

    Related issues and pull requests on GitHub: #540.

  • 660 is now enabled -- @webknjaz.

    Previously, due to restrictive 517 hook reimports, our in-tree
    build backend was losing non-PEP 517 <517> hooks implemented in
    newer versions of setuptools but not the earlier ones. This is now
    addressed by reexporting everything that setuptools exposes with a
    wildcard.

    Related issues and pull requests on GitHub: #541.

  • The setuptools-scm build dependency CI pin was updated to 8.1.0 —
    this version fixes a date parsing incompatibility introduced by Git
    2.45.0 (pypa/setuptools_scm#1039 <pypa/setuptools_scm/issues/1038>, pypa/setuptools_scm#1038 <pypa/setuptools_scm/pull/1039>) -- by @webknjaz.

    Related issues and pull requests on GitHub: #601.

Contributor-facing changes

  • The changelog page for the tagged release builds on Read The Docs
    does not attempt showing the draft section anymore -- by @webknjaz.

    Related commits on GitHub:
    852d259.

  • Adjusted the publishing workflow automation to pre-configure Git
    before attempting to create a tag when building a source
    distribution -- by @webknjaz.

    Related commits on GitHub:
    f07296f.

  • The CI configuration for building the macOS platform-specific wheels
    switched to using cibuildwheel -- by @webknjaz.

    Related issues and pull requests on GitHub: #333.

  • The OS-level tox package was upgraded to v3.28.0 in the UBI9 CI
    runtime -- by @Qalthos.

    Related issues and pull requests on GitHub: #461, #473.

  • Fixed spelling of "Connect" in the Session.connect() docstring --
    by @donnerhacke.

    Related issues and pull requests on GitHub: #474.

  • The Packit CI access to the internet has been restored -- by
    @Qalthos.

    Related issues and pull requests on GitHub: #507.

  • Started building manylinux_2_28 base images for testing and
    packaging in the CI/CD infrastructure -- by @Qalthos.

    Related issues and pull requests on GitHub: #533.

  • Switched back to using Cython's native plugin for measuring code
    coverage -- by @webknjaz.

    Related issues and pull requests on GitHub: #538.

  • Added separate changelog fragment types for contributor-and
    downstream-facing patches -- by @webknjaz.

    Their corresponding identifiers are contrib and packaging
    respectively. They are meant to be used for more accurate
    classification, where one would resort to using misc otherwise.

    Related issues and pull requests on GitHub: #539.

  • 660 is now enabled -- @webknjaz.

    This effectively means that the ecosystem-native editable install
    mode started working properly.

    Related issues and pull requests on GitHub: #541.

  • The duplicated jobs matrices for building manylinux wheels now
    reside in a single GitHub Actions CI/CD reusable workflow
    definition.

    -- @webknjaz

    Related issues and pull requests on GitHub: #559.

  • The duplicated jobs matrices of the text jobs now reside in a single
    GitHub Actions CI/CD reusable workflow definition.

    -- @webknjaz

    Related issues and pull requests on GitHub: #560.

  • Fixed the location of release workflow in the Release Guide
    document -- by @Qalthos.

    Related issues and pull requests on GitHub: #565.

  • The setuptools-scm build dependency CI pin was updated to 8.1.0 —
    this version fixes a date parsing incompatibility introduced by Git
    2.45.0 (pypa/setuptools_scm#1039 <pypa/setuptools_scm/issues/1038>, pypa/setuptools_scm#1038 <pypa/setuptools_scm/pull/1039>) -- by @webknjaz.

    Related issues and pull requests on GitHub: #601.

  • The CI/CD configuration was fixed to allow publishing to PyPI and
    other targets disregarding the test stage outcome. This used to be a
    bug in the workflow definition that has now been fixed.

    -- by @pbrezina and @webknjaz

    Related issues and pull requests on GitHub: #602.


v1.2.0rc1

26 Jan 19:26
Compare
Choose a tag to compare
v1.2.0rc1 Pre-release
Pre-release

📝 Release notes

📦 PyPI page: https://pypi.org/project/ansible-pylibssh/1.2.0rc1

🔗 This release has been produced by the following workflow run: https://github.com/ansible/pylibssh/actions/runs/7672240344

v1.2.0rc1 (2024-01-26)

Features

  • Started exposing the SSH_OPTIONS_PUBLICKEY_ACCEPTED_TYPES and
    SSH_OPTIONS_HOSTKEYS options publicly -- by @Qalthos.

    Related issues and pull requests on GitHub: #527.

Improved documentation

  • Fixed spelling of "Connect" in the Session.connect() docstring --
    by @donnerhacke.

    Related issues and pull requests on GitHub: #474.

  • Added a tip to the installation guide <Installing |project|> on
    how to set compiler flags when installing from source -- @webknjaz.

    Related issues and pull requests on GitHub: #499.

Packaging updates and notes for downstreams

  • From now on, the published distribution package artifacts for the
    new releases are signed via Sigstore -- by
    @webknjaz.

    This is happening as a part of the GitHub Actions CI/CD workflow
    automation and the signatures are uploaded to the corresponding
    GitHub Release pages.

    Related commits on GitHub:
    986988a.

  • The platform-specific macOS wheels are now built using the Python
    interpreter from https://python.org. They are tagged with
    macosx_10_9 -- by @webknjaz.

    Related issues and pull requests on GitHub: #333.

  • The toml build time dependency has been replaced with tomli --
    by @webknjaz.

    The tomli distribution is only pulled in under Python versions
    below 3.11. On 3.11 and higher, the standard library module
    :pytomllib is now used instead.

    Related issues and pull requests on GitHub: #501.

  • Started using the built-in setuptools-scm Git archive support
    under Python 3.7 and higher -- @webknjaz.

    Related issues and pull requests on GitHub: #502.

  • Added support for Python 3.12 -- by @Qalthos.

    It is now both tested in the CI and is advertised through the Trove
    classifiers.

    Related issues and pull requests on GitHub: #532.

  • The Cython build time dependency now has the minimum version of
    3.0 under Python 3.12 and higher -- by @webknjaz.

    The previous versions of Cython are still able to build the
    project under older Python versions.

    Related issues and pull requests on GitHub: #540.

  • 660 is now enabled -- @webknjaz.

    Previously, due to restrictive 517 hook reimports, our in-tree
    build backend was losing non-PEP 517 <517> hooks implemented in
    newer versions of setuptools but not the earlier ones. This is now
    addressed by reexporting everything that setuptools exposes with a
    wildcard.

    Related issues and pull requests on GitHub: #541.

Contributor-facing changes

  • The changelog page for the tagged release builds on Read The Docs
    does not attempt showing the draft section anymore -- by @webknjaz.

    Related commits on GitHub:
    852d259.

  • Adjusted the publishing workflow automation to pre-configure Git
    before attempting to create a tag when building a source
    distribution -- by @webknjaz.

    Related commits on GitHub:
    f07296f.

  • The CI configuration for building the macOS platform-specific wheels
    switched to using cibuildwheel -- by @webknjaz.

    Related issues and pull requests on GitHub: #333.

  • The OS-level tox package was upgraded to v3.28.0 in the UBI9 CI
    runtime -- by @Qalthos.

    Related issues and pull requests on GitHub: #461, #473.

  • Fixed spelling of "Connect" in the Session.connect() docstring --
    by @donnerhacke.

    Related issues and pull requests on GitHub: #474.

  • The Packit CI access to the internet has been restored -- by
    @Qalthos.

    Related issues and pull requests on GitHub: #507.

  • Started building manylinux_2_28 base images for testing and
    packaging in the CI/CD infrastructure -- by @Qalthos.

    Related issues and pull requests on GitHub: #533.

  • Switched back to using Cython's native plugin for measuring code
    coverage -- by @webknjaz.

    Related issues and pull requests on GitHub: #538.

  • Added separate changelog fragment types for contributor-and
    downstream-facing patches -- by @webknjaz.

    Their corresponding identifiers are contrib and packaging
    respectively. They are meant to be used for more accurate
    classification, where one would resort to using misc otherwise.

    Related issues and pull requests on GitHub: #539.

  • 660 is now enabled -- @webknjaz.

    This effectively means that the ecosystem-native editable install
    mode started working properly.

    Related issues and pull requests on GitHub: #541.

  • The duplicated jobs matrices for building manylinux wheels now
    reside in a single GitHub Actions CI/CD reusable workflow
    definition.

    -- @webknjaz

    Related issues and pull requests on GitHub: #559.

  • The duplicated jobs matrices of the text jobs now reside in a single
    GitHub Actions CI/CD reusable workflow definition.

    -- @webknjaz

    Related issues and pull requests on GitHub: #560.

  • Fixed the location of release workflow in the Release Guide
    document -- by @Qalthos.

    Related issues and pull requests on GitHub: #565.


v1.2.0rc0

26 Jan 18:15
Compare
Choose a tag to compare
v1.2.0rc0 Pre-release
Pre-release

v1.2.0rc0

📦 This release is published to
https://pypi.org/project/ansible-pylibssh/1.2.0rc0.

🔗 This release has been produced by the following workflow run: https://github.com/ansible/pylibssh/actions/runs/7671544822.

📝 Release notes

v[UNRELEASED DRAFT] (2024-01-26)

Features

  • Started exposing the SSH_OPTIONS_PUBLICKEY_ACCEPTED_TYPES and
    SSH_OPTIONS_HOSTKEYS options publicly -- by @Qalthos.

    Related issues and pull requests on GitHub: #527.

Improved documentation

  • Fixed spelling of "Connect" in the Session.connect() docstring --
    by @donnerhacke.

    Related issues and pull requests on GitHub: #474.

  • Added a tip to the installation guide <Installing |project|> on
    how to set compiler flags when installing from source -- @webknjaz.

    Related issues and pull requests on GitHub: #499.

Packaging updates and notes for downstreams

  • The platform-specific macOS wheels are now built using the Python
    interpreter from https://python.org. They are tagged with
    macosx_10_9 -- by @webknjaz.

    Related issues and pull requests on GitHub: #333.

  • The toml build time dependency has been replaced with tomli --
    by @webknjaz.

    The tomli distribution is only pulled in under Python versions
    below 3.11. On 3.11 and higher, the standard library module
    :pytomllib is now used instead.

    Related issues and pull requests on GitHub: #501.

  • Started using the built-in setuptools-scm Git archive support
    under Python 3.7 and higher -- @webknjaz.

    Related issues and pull requests on GitHub: #502.

  • Added support for Python 3.12 -- by @Qalthos.

    It is now both tested in the CI and is advertised through the Trove
    classifiers.

    Related issues and pull requests on GitHub: #532.

  • The Cython build time dependency now has the minimum version of
    3.0 under Python 3.12 and higher -- by @webknjaz.

    The previous versions of Cython are still able to build the
    project under older Python versions.

    Related issues and pull requests on GitHub: #540.

  • 660 is now enabled -- @webknjaz.

    Previously, due to restrictive 517 hook reimports, our in-tree
    build backend was losing non-PEP 517 <517> hooks implemented in
    newer versions of setuptools but not the earlier ones. This is now
    addressed by reexporting everything that setuptools exposes with a
    wildcard.

    Related issues and pull requests on GitHub: #541.

Contributor-facing changes

  • The changelog page for the tagged release builds on Read The Docs
    does not attempt showing the draft section anymore -- by @webknjaz.

    Related commits on GitHub:
    852d259.

  • Adjusted the publishing workflow automation to pre-configure Git
    before attempting to create a tag when building a source
    distribution -- by @webknjaz.

    Related commits on GitHub:
    f07296f.

  • The CI configuration for building the macOS platform-specific wheels
    switched to using cibuildwheel -- by @webknjaz.

    Related issues and pull requests on GitHub: #333.

  • The OS-level tox package was upgraded to v3.28.0 in the UBI9 CI
    runtime -- by @Qalthos.

    Related issues and pull requests on GitHub: #461, #473.

  • Fixed spelling of "Connect" in the Session.connect() docstring --
    by @donnerhacke.

    Related issues and pull requests on GitHub: #474.

  • The Packit CI access to the internet has been restored -- by
    @Qalthos.

    Related issues and pull requests on GitHub: #507.

  • Started building manylinux_2_28 base images for testing and
    packaging in the CI/CD infrastructure -- by @Qalthos.

    Related issues and pull requests on GitHub: #533.

  • Switched back to using Cython's native plugin for measuring code
    coverage -- by @webknjaz.

    Related issues and pull requests on GitHub: #538.

  • Added separate changelog fragment types for contributor-and
    downstream-facing patches -- by @webknjaz.

    Their corresponding identifiers are contrib and packaging
    respectively. They are meant to be used for more accurate
    classification, where one would resort to using misc otherwise.

    Related issues and pull requests on GitHub: #539.

  • 660 is now enabled -- @webknjaz.

    This effectively means that the ecosystem-native editable install
    mode started working properly.

    Related issues and pull requests on GitHub: #541.

  • The duplicated jobs matrices for building manylinux wheels now
    reside in a single GitHub Actions CI/CD reusable workflow
    definition.

    -- @webknjaz

    Related issues and pull requests on GitHub: #559.

  • The duplicated jobs matrices of the text jobs now reside in a single
    GitHub Actions CI/CD reusable workflow definition.

    -- @webknjaz

    Related issues and pull requests on GitHub: #560.

  • Fixed the location of release workflow in the Release Guide
    document -- by @Qalthos.

    Related issues and pull requests on GitHub: #565.