OpenLightingProject / ola

The Open Lighting Architecture - The Travel Adaptor for the Lighting Industry
https://www.openlighting.org/ola/
Other
648 stars 206 forks source link

New release? #1792

Closed aroffringa closed 1 year ago

aroffringa commented 2 years ago

It's 2 years ago since the last release (0.10.8) of ola. It would be useful to release a new version, so that packagers can also get the latest features and fixes of ola since 2 years ago. This would also be helpful for e.g. the Debian package, as unfortunately the 0.10.8 version of ola got removed from debian. Is there a plan for releasing the next version?

peternewman commented 2 years ago

Hi @aroffringa ,

I've been having a chat with @yoe so should get something out so it can be packaged in the next Debian soon.

There's a few, mostly Python, based changes I'm hoping to get in before the release: https://github.com/OpenLightingProject/ola/pulls?q=is%3Aopen+is%3Apr+milestone%3A0.10.9

Sadly the reason we got removed was just due to a buggy version of libusb, various people have confirmed that 1.0.26 fixes it, so it wasn't even something in our control: https://github.com/OpenLightingProject/ola/issues/1771

aroffringa commented 2 years ago

Great, thanks for the reply Peter, good to hear. I was already wondering why it got removed, I couldn't find the reason.

Is there also a plan to bring out 0.11 ? There are lots of pull requests merged to that branch, and I'm in particular eager to have PR 1292 in released packages, which if I understand correctly wouldn't be part of 0.10 releases, is it?

DaAwesomeP commented 2 years ago

It sounds like 0.9 is a patch release and 0.11 is the next major release? Would #1787 make it into 0.11?

yoe commented 2 years ago

Great, thanks for the reply Peter, good to hear. I was already wondering why it got removed, I couldn't find the reason.

The reason why it got removed is https://bugs.debian.org/1005447 -- as soon as I'm able to close that one, it can go into testing again.

peternewman commented 2 years ago

Is there also a plan to bring out 0.11 ?

Yeah eventually, there seems to be a never-ending flood of small fixes which I keep shipping in 0.10 releases, I'd really like to get the Python stuff wrapped up so there's a 0.10 stable which works on Python 3 before the big hit of new stuff in master/0.11.

I'm in particular eager to have PR 1292 in released packages, which if I understand correctly wouldn't be part of 0.10 releases, is it?

Correct, 0.11 will be branched from the current master when it's created.

It sounds like 0.9 is a patch release and 0.11 is the next major release?

The vague idea was cut 0.10.0, do patch releases, cut 0.11.0 etc, but the latter bit hasn't quite happened.

Would #1787 make it into 0.11?

Yes, again that, being in master, would go in 0.11

The reason why it got removed is https://bugs.debian.org/1005447 -- as soon as I'm able to close that one, it can go into testing again.

@yoe as discussed by email I think we've fixed that particular bug, there's some new Python tests failing I think you said, but maybe getting ola back into Debian would be good in the short term, even if ola-python needs to come a bit later (and ola-rdm-tests later still). I think we've fixed all the Python bugs causing tests to fail, but they might not all be merged and certainly aren't all currently released.

yoe commented 2 years ago

@yoe as discussed by email I think we've fixed that particular bug, there's some new Python tests failing I think you said, but maybe getting ola back into Debian would be good in the short term, even if ola-python needs to come a bit later (and ola-rdm-tests later still). I think we've fixed all the Python bugs causing tests to fail, but they might not all be merged and certainly aren't all currently released.

So, to clarify, what I meant is that I'm waiting for this new version so I can upload it to Debian, and that upload will allow me to close that bug.

We still do have a bit of time, but the window is closing, so I would need that new version fairly soon. If you don't have the time to cut a new release any time soon, let me know so I can upload current git HEAD at the very least (which we can then still polish into shape later if needs be).

peternewman commented 2 years ago

So, to clarify, what I meant is that I'm waiting for this new version so I can upload it to Debian, and that upload will allow me to close that bug.

We still do have a bit of time, but the window is closing, so I would need that new version fairly soon. If you don't have the time to cut a new release any time soon, let me know so I can upload current git HEAD at the very least (which we can then still polish into shape later if needs be).

It rather depends on how long "a bit of time" and "fairly soon" are (if we're talking about January here https://release.debian.org/testing/freeze_policy.html then I guess it depends how long you need), but uploading the HEAD of 0.10 might be good safety measure in the interim, as it would be a huge shame if I get delayed or tied up with other stuff and all of OLA falls out of Debian too, especially when the failure wasn't even in our code!

peternewman commented 2 years ago

So some advice needed please @yoe .

Firstly the good news, the fix for Python tests on Big Endian is now in 0.10, so I think it would currently build cleanly.

I've still got #1761 ~which currently has a few general Python fixes which I'll pull in regardless~(now merged), however it also has an improvement to the Python CI tests around our RDM test suite (in the ola-rdm-tests package). Those tests correctly flag up the fact that we've got an outstanding bug in our Python 3 behaviour of the RDM tests, specifically the RDM responder test class selection stuff in GetTestClasses doesn't work, apparently due to them not being loaded.

As you can see from the CI, make distcheck fails on Python 3 (because the test now flags the bug, rather than it failing silently): https://app.travis-ci.com/github/OpenLightingProject/ola/builds/257963856

I believe the rdm_model_collector.py would still function, although it's fairly niche, so perhaps not worth bothering with on it's own.

In theory you should be able to skip all this by adding --disable-rdm-tests or removing --enable-rdm-tests from the configure options, but I've not really tested that bit.

So should I merge a PR which might make our build process harder, or keep it unmerged until I've fixed the linked bug and the test passes again? Separately there's some changes to the command line tools so they at least tell you they didn't find any tests.

peternewman commented 2 years ago

I'm pleased to say I've got to the bottom of the RDM test selection stuff, so now there are just a few more hopefully relatively trivial Python 3 compatibility issues there and then hopefully the whole of OLA will hopefully finally be clean on Python 3 too! Watch this space...

peternewman commented 2 years ago

See #1761 and any testing is appreciated, I think there's only the odd very minor Python 3 issue remaining now which I should be able to workaround.

DaAwesomeP commented 1 year ago

@peternewman Any updates?

peternewman commented 1 year ago

0.10.9 is now out, thanks for everyone who helped to get it over the line! https://github.com/OpenLightingProject/ola/releases/tag/0.10.9