-
Notifications
You must be signed in to change notification settings - Fork 754
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
Public API: avoid name collisions #243
Conversation
Error when trying to build a new MQTTV5Client:
|
I had put my comments in #180: n the main C client, I prefixed all constants with either MQTTCLIENT_ or MQTTASYNC_, and the V5 reason codes with MQTTREASONCODE_ I'm not saying those are the best choices, but we could use the same convention for the sake of making the APIs similar. The other thought I had was to prefix them all with PAHO_ to distinguish between other APIs. But I would advocate following the main C client API convention, unless there's a specific objection, to get more of a family feel. If we're going for a significant renaming exercise, which I think we should for these enums/constants, then we'll need a major version change to signify that (2.0.0). |
I've recreated the mqttv5 branch and updated it match develop, so we can use that as a working branch for a V5 MQTTClient layer |
I agree as well:
I can re-use this PR to make all changes towards
Thank you! I will start submitting partial work, starting with the MQTTV5Client-C API surface PR there. |
@icraggs PTAL - I've included many other changes (unfortunately this might have brought the line-count > 1k) |
@MikhailNatalenko please let me know if this addresses all your concerns from #180. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me. Gets us closer to where we want to be. Under the 1000 lines too.
…recation warnings for tests to avoid build warnings.
Rebased on top of |
Repurposing to include fix for #180:
This is a public API breaking change which will result in a major version release.