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

Version 1.0 Hit List #146

Open
4 tasks
sdwilsh opened this issue May 14, 2023 · 6 comments
Open
4 tasks

Version 1.0 Hit List #146

sdwilsh opened this issue May 14, 2023 · 6 comments

Comments

@sdwilsh
Copy link
Owner

sdwilsh commented May 14, 2023

This exists to track the work we need to do in order to set the version to 1.0

  • Update Development Status :: 4 - Beta classifier in setup.cfg
  • Fix import paths for gem for things that are not gem-dependent
  • Consider changing the default value for BidirectionalProtocol's send_packet_delay parameter to False after gaining some experience with how it behaves in the wild
  • Fix typo in README.md: "This library is a collection of protcols" should read "protocols"
@sdwilsh
Copy link
Owner Author

sdwilsh commented May 14, 2023

@jkeljo, I think there was a thing or two you mentioned that I'm drawing a blank on here as well (and I know we talked about it, but I also can't find that conversation).

@jkeljo
Copy link
Collaborator

jkeljo commented May 14, 2023

Yeah, added. Convo was in #127

@jkeljo
Copy link
Collaborator

jkeljo commented Oct 21, 2023

Ok so with #205 landed we need to either decide that it's OK for that small breaking change to happen in 0.13, or do these things and cut 1.0. Thoughts?

If you think we should go for 1.0 now, do you have any thoughts on the right code organization? At a quick glance I see four categories of code in siobrultech_protocols.gem today:
1 - low-level stuff that is used by both GEM and ECM code, e.g. fields.py, the Packet and PacketFormat classes
2 & 3 - GEM or ECM-specific stuff, like the packet format definitions in packets.py or the API configurations in api.py; all the stuff in const.py looks GEM-specific
4 - the high-level interface to the library, which can handle both GEM and ECM (protocol.py, most of api.py

One way to do this might be:

  • Everything in 1 & 4 moves to siobrultech_protocols
  • 2 moves to siobrultech_protocols/gem.py
  • 3 moves to siobrultech_protocols/ecm.py

wdyt?

@jkeljo
Copy link
Collaborator

jkeljo commented Oct 21, 2023

I suppose another question is do we want to keep the siobrultech_protocols base package, or should we move both this and greeneye_monitor to using namespace packages and root them at a common base like brultech? That might be too much bikeshedding.

@sdwilsh
Copy link
Owner Author

sdwilsh commented Oct 22, 2023

Ok so with #205 landed we need to either decide that it's OK for that small breaking change to happen in 0.13, or do these things and cut 1.0. Thoughts?

Technically, we're pre-1.0, so I think breaking changes are okay. I think you and I are the only ones using this right now, anyway!

One way to do this might be:

Everything in 1 & 4 moves to siobrultech_protocols
2 moves to siobrultech_protocols/gem.py
3 moves to siobrultech_protocols/ecm.py

wdyt?

This is what I had in mind as well!

I suppose another question is do we want to keep the siobrultech_protocols base package, or should we move both this and greeneye_monitor to using namespace packages and root them at a common base like brultech? That might be too much bikeshedding.

Oh interesting. I think it might be nice for us to merge all this, but we could also do that post 1.0. It might even be nice to consolidate some repositories so we can share some common things as well.

@jkeljo
Copy link
Collaborator

jkeljo commented Oct 22, 2023

Ok, I'll cut 0.13 so I can get that bugfix into HACS, and we can work on the code organization for 1.0.

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