kampfschlaefer / jackmix

Matrix-Mixer for the Jack-Audio-connection-Kit
http://www.arnoldarts.de/jackmix/
GNU General Public License v2.0
44 stars 13 forks source link

scons qt5muc.py error #8

Closed mxmilkiib closed 2 years ago

mxmilkiib commented 5 years ago

Building jackmix-git from the AUR, getting;

scons: Reading SConscript files ...
  File "/home/milk/.cache/yay/jackmix-git/src/jackmix/admin/qt5muc.py", line 93

    print "Configuring qt5muc..."

                                ^

SyntaxError: Missing parentheses in call to 'print'. Did you mean print("Configuring qt5muc...")?
dvzrv commented 4 years ago

This is because that script is not python3 compatible.

All scons related scripts should be ported to python3 asap, as python2 is basically EOL in a bit more than a month from now.

nickbailey commented 4 years ago

That's an oversight. You are right. They should all be python3ish. Unfortunately I've broken my kneecap quite badly and can't sit at a desk (typing this on my phone) so it's going to be a while. But thanks for reporting it.

dvzrv commented 4 years ago

@nickbailey If I find some time, I'll try and open a pull request for this. However, there are some parts in that script I don't quite understand...

dvzrv commented 4 years ago

also: I hope you recover quickly and fully!

nickbailey commented 4 years ago

I'm not sure I entirely understand scons either @dvzrv ! I'm definitely developer number 2. I use autoconf. It took me ages to learn it and now I think everybody else should have to ;) But the project creator gets to choose and I am just very happy he wrote the program in the first place.

Happy to look at any pull request. The code builds on my laptop most probably because I've got python 2 for octoprint and xpra. But you are absolutely right. I'll look into finding out how to make scons use python 3. I have found this:

https://stackoverflow.com/a/48212242/6002493

Thanks for your best wishes. I was hoping to get out of the leg brace today, but it's going to be two more weeks. At least the bone is the right shape now, which is cheerful.

DaarkWel commented 3 years ago

Is there any news about this?

nickbailey commented 3 years ago

Did I miss a PR? Sorry, been grading exam scripts :(

ibz commented 2 years ago

@nickbailey - did it work for you after all? If so, let's just have @kampfschlaefer merge that PR! Otherwise I'll have a look at it and make a PR.

Python 2 is completely obsolete by now. We should move on.

nickbailey commented 2 years ago

Yes, as far as I know. Which is to say that scons has #!/usr/bin/python3 at the top. I'm on the no-lash branch at the moment. I need to fix a depracted QTime thing (one is supposed to use QElapsedTimer instead apprarently).

I'd set a couple of student projects and they did OK, but I didn't get any CS students so the code needs serious review before I'd let any of it in. I've been off-air for a while for one reason or another, but let me have a look at the depraction issue and come back to you. no-lash won't compile right now.

nickbailey commented 2 years ago

c09fd7e3c7f225b7fb2afa6bc5687b4dd45bd785 should work with python 3 and addresses obsolete function issues. Build and running here on Debian 11. Thaks for the report: sorry it took so long!

You can invoke scons with python3 which scons to make sure python 3 is being used, but it's default now on my Debian 3 installation.

There is other functionality provided by https://github.com/zeyuan-song0204/JackMix-Maintenance-Release but it's just one massive upload to the git repo ─ not even a fork! ─ so I'll need to look at the differences carefully before incorporating them. There are some quite dodgy practices (the AUTHORS file was deleted, for example!). Since this branch actually compiles one (master won't), I'll go ahead and close this issue, then issue a pull request. I think this is more lack of understanding than a piracy attempt, as the user had no background in software development.

https://github.com/quboyue/jackmix has also added some more functionality. Better use of git this time.

In either case I'm not entirely sure all of the features should be incorporated as some are a bit specialised and should really be a different project IMHO.