Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chore(deps): Update paho-mqtt requirement from <2 to <3 #4

Closed
wants to merge 2 commits into from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Apr 14, 2024

Updates the requirements on paho-mqtt to permit the latest version.

Release notes

Sourced from paho-mqtt's releases.

v2.0.0

This release include breaking change. See https://eclipse.dev/paho/files/paho.mqtt.python/html/migrations.html for more details on how to upgrade.

This release also introduce new documentation available online at https://eclipse.dev/paho/files/paho.mqtt.python/html/index.html

  • BREAKING Added callback_api_version. This break ALL users of paho-mqtt Client class. See migrations.rst for details on how to upgrade. tl; dr; add CallbackAPIVersion.VERSION1 to first argument of Client()
  • BREAKING Drop support for Python 2.7, Python 3.5 and Python 3.6 Minimum tested version is Python 3.7 Python version up to Python 3.12 are tested.
  • BREAKING connect_srv changed it signature to take an additional bind_port parameter. This is a breaking change, but in previous version connect_srv was broken anyway. Closes #493.
  • BREAKING Remove some deprecated argument and method:
    • max_packets argument in loop(), loop_write() and loop_forever() is removed
    • force argument in loop_stop() is removed
    • method message_retry_set() is removed
  • BREAKING Remove the base62, WebsocketWrapper and ConnectionState, as user shouldn't directly use them.
  • Possible breaking change: Add properties to access most Client attribute. Closes #764. Since this add new properties like logger, if a sub-class defined logger, the two logger will conflict.
  • Add version 2 of user-callback which allow to access MQTTv5 reason code & properties that were missing from on_publish callback. Also it's more consistent in parameter order or between MQTTv3 and MQTTv5.
  • Add types to Client class, which caused few change which should be compatible. Known risk of breaking changes:
    • Use enum for returned error code (like MQTT_ERR_SUCCESS). It use an IntEnum which should be a drop-in replacement. Excepted if someone is doing "rc is 0" instead of "rc == 0".
    • reason in on_connect callback when using MQTTv5 is now always a ReasonCode object. It used to possibly be an integer with the value 132.
    • MQTTMessage field "dup" and "retain" used to be integer with value 0 and 1. They are now boolean.
  • Add support for ALPN protocols on TLS connection. Closes #790 & #648.
  • Add on_pre_connect() callback, which is called immediately before a connection attempt is made.
  • Fix subscribe.simple with MQTTv5. Closes #707.
  • Use better name for thread started by loop_start. Closes #617.
  • Fix possible bug during disconnection where self._sock is unexpectedly None. Closes #686 & #505.
  • Fix loading too weak TLS CA file but setting allowed ciphers before loading CA. Closes #676.
  • Allow to manually ack QoS > 0 messages. Closes #753 & #348.
  • Improve tests & linters. Modernize build (drop setup.py, use pyproject.toml)
  • Fix is_connected property to correctly return False when connection is lost and loop_start/loop_forever isn't used. Closes #525.
  • Fix wait_for_publish that could hang with QoS == 0 message on reconnection or publish during connection. Closes #549.
  • Correctly mark connection as broken on SSL error and don't crash loop_forever. Closes #750.
  • Fix handling of MQTT v5.0 PUBREL messages with remaining length not equal to 2. Closes #696.
  • Raise error on subscribe() when topic is an empty list. Closes #690.

... (truncated)

Changelog

Sourced from paho-mqtt's changelog.

v2.0.0 - 2024-02-10

This release include breaking change. See migrations <https://eclipse.dev/paho/files/paho.mqtt.python/html/migrations.html>_ for more details on how to upgrade.

  • BREAKING Added callback_api_version. This break ALL users of paho-mqtt Client class. See migrations.md for details on how to upgrade. tl; dr; add CallbackAPIVersion.VERSION1 to first argument of Client()

  • BREAKING Drop support for Python 2.7, Python 3.5 and Python 3.6 Minimum tested version is Python 3.7 Python version up to Python 3.12 are tested.

  • BREAKING connect_srv changed it signature to take an additional bind_port parameter. This is a breaking change, but in previous version connect_srv was broken anyway. Closes #493.

  • BREAKING Remove some deprecated argument and method:

    • max_packets argument in loop(), loop_write() and loop_forever() is removed
    • force argument in loop_stop() is removed
    • method message_retry_set() is removed
  • BREAKING Remove the base62, WebsocketWrapper and ConnectionState, as user shouldn't directly use them.

  • Possible breaking change: Add properties to access most Client attribute. Closes #764. Since this add new properties like logger, if a sub-class defined logger, the two logger will conflict.

  • Add version 2 of user-callback which allow to access MQTTv5 reason code & properties that were missing from on_publish callback. Also it's more consistent in parameter order or between MQTTv3 and MQTTv5.

  • Add types to Client class, which caused few change which should be compatible. Known risk of breaking changes:

    • Use enum for returned error code (like MQTT_ERR_SUCCESS). It use an IntEnum which should be a drop-in replacement. Excepted if someone is doing "rc is 0" instead of "rc == 0".
    • reason in on_connect callback when using MQTTv5 is now always a ReasonCode object. It used to possibly be an integer with the value 132.
    • MQTTMessage field "dup" and "retain" used to be integer with value 0 and 1. They are now boolean.
  • Add support for ALPN protocols on TLS connection. Closes #790 & #648.

  • Add on_pre_connect() callback, which is called immediately before a connection attempt is made.

  • Fix subscribe.simple with MQTTv5. Closes #707.

  • Use better name for thread started by loop_start. Closes #617.

  • Fix possible bug during disconnection where self._sock is unexpectedly None. Closes #686 & #505.

  • Fix loading too weak TLS CA file but setting allowed ciphers before loading CA. Closes #676.

  • Allow to manually ack QoS > 0 messages. Closes #753 & #348.

  • Improve tests & linters. Modernize build (drop setup.py, use pyproject.toml)

  • Fix is_connected property to correctly return False when connection is lost and loop_start/loop_forever isn't used. Closes #525.

  • Fix wait_for_publish that could hang with QoS == 0 message on reconnection or publish during connection. Closes #549.

  • Correctly mark connection as broken on SSL error and don't crash loop_forever. Closes #750.

  • Fix handling of MQTT v5.0 PUBREL messages with remaining length not equal to

... (truncated)

Commits
  • ebffdc2 Bump version to 2.0.0
  • 70cc273 Add file py.typed
  • 8153db6 Catch connection reset in websocket handshake
  • 4c0d9aa Merge pull request #804 from eclipse/update-readme-and-example
  • 80667d2 Fix spelling
  • 8645d3b Add note that 2.0 is not yet released
  • 6f4ad37 Add links to online Sphinx documentation
  • a44e1c5 Include ChangeLog in Sphinx docs
  • a2d7534 Move migrations.md to docs (and convert to rst)
  • 87ce6f6 Drop markdown build from git repository
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

@dependabot dependabot bot added dependencies Pull requests that update a dependency file python Pull requests that update Python code labels Apr 14, 2024
@amotl
Copy link
Member

amotl commented Apr 14, 2024

Needs eclipse/paho.mqtt.python#831 to be converged into a release.

@amotl amotl marked this pull request as draft April 14, 2024 22:54
@bee-mois bee-mois marked this pull request as ready for review April 15, 2024 15:12
@bee-mois
Copy link
Collaborator

so we are looking forward here for paho-mqtt 2.1.0 or 2.0.1, right?

@amotl amotl marked this pull request as draft April 15, 2024 19:35
@amotl amotl force-pushed the dependabot/pip/paho-mqtt-lt-3 branch from 1231e1b to 6321076 Compare April 15, 2024 19:35
@amotl
Copy link
Member

amotl commented Apr 20, 2024

@dependabot rebase

Copy link
Contributor Author

dependabot bot commented on behalf of github Apr 20, 2024

Looks like this PR has been edited by someone other than Dependabot. That means Dependabot can't rebase it - sorry!

If you're happy for Dependabot to recreate it from scratch, overwriting any edits, you can request @dependabot recreate.

@amotl
Copy link
Member

amotl commented Apr 20, 2024

@dependabot recreate

Updates the requirements on [paho-mqtt](https://github.com/eclipse/paho.mqtt.python) to permit the latest version.
- [Release notes](https://github.com/eclipse/paho.mqtt.python/releases)
- [Changelog](https://github.com/eclipse/paho.mqtt.python/blob/master/ChangeLog.txt)
- [Commits](eclipse/paho.mqtt.python@v0.9...v2.0.0)

---
updated-dependencies:
- dependency-name: paho-mqtt
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot force-pushed the dependabot/pip/paho-mqtt-lt-3 branch from 6321076 to 0664e2d Compare April 20, 2024 14:43
@amotl
Copy link
Member

amotl commented Apr 22, 2024

It looks like paho-mqtt v2 is causing serious havoc throughout the community. However, sometimes, change is inevitable. Closing this for now.

@amotl amotl closed this Apr 22, 2024
Copy link
Contributor Author

dependabot bot commented on behalf of github Apr 22, 2024

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot dependabot bot deleted the dependabot/pip/paho-mqtt-lt-3 branch April 22, 2024 21:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file python Pull requests that update Python code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants