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

PR or Fork? #5

Open
jkoplo opened this issue Oct 14, 2020 · 3 comments
Open

PR or Fork? #5

jkoplo opened this issue Oct 14, 2020 · 3 comments

Comments

@jkoplo
Copy link

jkoplo commented Oct 14, 2020

I stumbled upon this project after having some headaches connecting C implementations of the MQTT client with LabVIEW Realtime. I forked it intending to PR my changes, but honestly I've refactored a lot of the code and I'm not sure if you'll want it or not. It would definitely be a breaking change to any existing installs you have.

Highlights:

  • All messages (datagrams) inherit from a base message class
  • A lot of reorganization in terms of when the datagram is actually turned into a binary packet
  • Mostly removed the notifier - most user functions are now async (may add synchronous calls back in)
  • Removed the LV2 globals that were being used for configuration - now holding config in the private data for the MQTT class (necessary for multiple instances)
  • Made most class VIs private instead of public
  • Message ID moved to non-user code
  • All user functions (Send/Subscribe) now require a class instance
  • The connection is auto-reconnected if it's broken

A lot of this was to make MQTT suitable to match up with some other internal communications libraries (TCP/UDP/UDP Multicast). There's actually some other wrappers I've built above this library that I'm not sure if I should include or not around JSON formatted messages and multiple queues receiving a copy of a message.

Let me know if you want me to PR all this back to you or if it would be better to rename my fork and carry it forward as it's own implementation.

@jkoplo
Copy link
Author

jkoplo commented Oct 14, 2020

Oh and it's in LV2020, because implementing TLS is high on my requirements list - though I haven't finished that up yet.

@jkoplo
Copy link
Author

jkoplo commented Oct 15, 2020

Also I apologize for the PR on your origin. Github keeps defaulting to want to merge back to your master instead of my branched master. I'm not used to the workflow on a repo I don't have commit privileges.

@cowen71
Copy link
Owner

cowen71 commented Nov 1, 2020

Hi jkoplo,
Unfortunately, I am not getting the time to support this development further. However, I am very happy that you are progressing and improving this.

No apologies needed.
Kind Regards

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

No branches or pull requests

2 participants