It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
o it wasn't just gog as well but ya gog had the galaxy installer it was even brought to steam
Attachments:
GOG Servers are overloaded by the sale (as per usual), so this is a bad time to do updates / downloads and I would recommend avoiding such until it's over.
avatar
Timboli: I've never understood making something redundant, just because you can. It should always be on a needs basis.
I'm still maintaining both 2/3 but support for 2 isn't zero cost, there's a reasonable divergence in syntax and functionality at this point. I'll probably provide a pure Python 2 branch when I decide to drop support for it, so someone else can fork / maintain Python 2 support if they want (and I can provide any needed major bug fixes).
Post edited March 24, 2021 by Kalanyr
avatar
Kalanyr: GOG Servers are overloaded by the sale (as per usual), so this is a bad time to do updates / downloads and I would recommend avoiding such until it's over.
My internet connection is apparently modest, but I downloaded ~50GB of games during the night on a concurrency of 2 and it was fine.

I think the only impact, if any, might be download speed.

avatar
Kalanyr: I'm still maintaining both 2/3 but support for 2 isn't zero cost, there's a reasonable divergence in syntax and functionality at this point. I'll probably provide a pure Python 2 branch when I decide to drop support for it, so someone else can fork / maintain Python 2 support if they want (and I can provide any needed major bug fixes).
You're a very nice person to maintain Python 2 compatibility. I wouldn't.
Post edited March 24, 2021 by Magnitus
avatar
Magnitus: You're a very nice person to maintain Python 2 compatibility. I wouldn't.
Why not?

If you made something for other people based solely on the fact that it might make their life easier would you then pull support for a significant portion of those people just because you felt it made you feel somehow better as a programmer?

Sorry, silly question, of course you haven't been in that situation because otherwise you wouldn't have made that comment.

When you get a job closer to your customers then come back and comment.
avatar
lupineshadow: Why not?

If you made something for other people based solely on the fact that it might make their life easier would you then pull support for a significant portion of those people just because you felt it made you feel somehow better as a programmer?

Sorry, silly question, of course you haven't been in that situation because otherwise you wouldn't have made that comment.

When you get a job closer to your customers then come back and comment.
Obviously, you're not maintaining a Python 2 codebase. Its obselete. Nobody is maintaining that ecosystem. Its like maintaining something for an EOL version of Windows. Nobody in their right mind is doing that.

There's what you'd like to do and then there's what you can feasibly do.

Otherwise, I'm devops/SRE. Among other things, it means I need to maintain sane internal tooling and workflows for a team of developers while at the same time provide a secure, stable platform for customers with minimal downtime (and sometimes, these two goals clash).

I'm well versed in these kinds of tradeoffs.
Post edited March 24, 2021 by Magnitus
avatar
lupineshadow: Why not?

If you made something for other people based solely on the fact that it might make their life easier would you then pull support for a significant portion of those people just because you felt it made you feel somehow better as a programmer?

Sorry, silly question, of course you haven't been in that situation because otherwise you wouldn't have made that comment.

When you get a job closer to your customers then come back and comment.
avatar
Magnitus: Obviously, you're not maintaining a Python 2 codebase. Its obselete. Nobody is maintaining that ecosystem. Its like maintaining something for an EOL version of Windows. Nobody in their right mind is doing that.

There's what you'd like to do and then there's what you can feasibly do.

Otherwise, I'm devops/SRE. Among other things, it means I need to maintain sane internal tooling and workflows for a team of developers while at the same time provide a secure, stable platform for customers with minimal downtime (and sometimes, these two goals clash).

I'm well versed in these kinds of tradeoffs.
Until recently I have worked in a large fotune-500 hi-tech company (tens of thousands of employees). Nobody was allowed to use or even install Python 3 (at least in R&D) and this was checked nightly by a sysadmin script. Every new script was written for Python 2 and never even checked against Python 3. And they were very much in their right mind.

There are indeed a lot of tradeoffs and things are done differently in different places. I am maintaining scripts written 15-20 years ago and my number one priority has and will always be backward compatibility for my users.
avatar
mrkgnao: Until recently I have worked in a large fotune-500 hi-tech company (tens of thousands of employees). Nobody was allowed to use or even install Python 3 (at least in R&D) and this was checked nightly by a sysadmin script. Every new script was written for Python 2 and never even checked against Python 3. And they were very much in their right mind.

There are indeed a lot of tradeoffs and things are done differently in different places. I am maintaining scripts written 15-20 years ago and my number one priority has and will always be backward compatibility for my users.
At this point, its literally not secure to use Python 2. There are no longer any security fixes done. Its not supported. It will no pass security audits for anything remotely sensitive.

The best thing you can do for Python 2 is what Kalanyr proposed, you lock the last supported Python 2 version.

Those who want to use it can use that. Those who want newer features and fixes have to use Python 3.

I worked for a company that had as customers banks and several institutional customers in the US and its what they were doing.

At some point, either you ask your users to upgrade their environment to something supported or you charge them a very high bill for what is a very costly demand. Correct me if I'm wrong, but I believe this project is getting maintained for free right?
Post edited March 24, 2021 by Magnitus
avatar
mrkgnao: Until recently I have worked in a large fotune-500 hi-tech company (tens of thousands of employees). Nobody was allowed to use or even install Python 3 (at least in R&D) and this was checked nightly by a sysadmin script. Every new script was written for Python 2 and never even checked against Python 3. And they were very much in their right mind.

There are indeed a lot of tradeoffs and things are done differently in different places. I am maintaining scripts written 15-20 years ago and my number one priority has and will always be backward compatibility for my users.
avatar
Magnitus: At this point, its literally not secure to use Python 2. There are no longer any security fixes done. Its not supported.

The best thing you can do for Python 2 is what Kalanyr proposed, you lock the last supported Python 2 version.

Those who want to use it can use that. Those who want newer features and fixes have to use Python 3.

I worked for a company that had as customers banks and several institutional customers in the US and its what they were doing.

At some point, either you ask your users to upgrade or you charge them a very high $$$ bill for what is a very costly demand. Correct me if I'm wrong, but I believe this projet is getting maintained for free right?
No. Not for free at all.

And while Python 2 might not be secure (I wouldn't know; last update of Python 2 was April 2020), there are like you said tradeoffs, so sometimes (e.g. in a system that is entirely closed off and disconnected from any external network) security is not the primary consideration.

But, your approach is as valid as mine. Or so at least I believe.
Post edited March 24, 2021 by mrkgnao
avatar
Magnitus: At this point, its literally not secure to use Python 2. There are no longer any security fixes done. Its not supported. It will no pass security audits for anything remotely sensitive.
Are you aware Python 2 is a programming language?

It is not a program.

There are no longer any security fixes done but it is a very mature programming language. Much more mature than Python 3. Please elaborate...what kind of security flaws do you concieve in a ...programming language... that is built on grammar, and has been for 15+ years.

If you have so much free time please lecture NASA on how they shouldn't use old hardware or lecture real banks (not the ones that employ you) on why they still use ancient algorithms.
avatar
Magnitus: At this point, its literally not secure to use Python 2. There are no longer any security fixes done. Its not supported. It will no pass security audits for anything remotely sensitive.
GOG.

Not

DOD.

lol
Post edited March 24, 2021 by lupineshadow
avatar
lupineshadow: Are you aware Python 2 is a programming language?

It is not a program.

There are no longer any security fixes done but it is a very mature programming language. Much more mature than Python 3. Please elaborate...what kind of security flaws do you concieve in a ...programming language... that is built on grammar, and has been for 15+ years.

If you have so much free time please lecture NASA on how they shouldn't use old hardware or lecture real banks (not the ones that employ you) on why they still use ancient algorithms.
I assure you that security flaws are found in programming languages (there was one found in Javascript not so long ago). The Python runtime is a program. For compiled languages, compilers are program.

Anyways, I was speaking more about a Fortune 500 context for security. Doesn't really matter for this tool. However, it will be a growing pain to work with Python 2 regardless.

Also, I'll be frank, I'm not very comfortable with your tone. You are making this very personal, attacking my credibility and all that. Obviously, this is a very personal issue for you. I don't see much gain in continuing to argue in that direction. You're welcome to look at my Github anytime and who I'm working for. I was a software architect in the past as well btw in a company with 200+ developers. Its on my linkedin. I won't claim to have all the answers to everything software related, but I know a thing or two about my craft.

It was not my goal to offend you, but I stand by what I said.
Post edited March 24, 2021 by Magnitus
avatar
Kalanyr: I'm still maintaining both 2/3 but support for 2 isn't zero cost, there's a reasonable divergence in syntax and functionality at this point. I'll probably provide a pure Python 2 branch when I decide to drop support for it, so someone else can fork / maintain Python 2 support if they want (and I can provide any needed major bug fixes).
As has been said, very good of you.

Mine was a fairly simple statement without much qualification.

If maintaining two versions in one gives you too many headaches, then of course you should make a choice.

My only dispute then, could be over the choice.

I'm not one for updating for the sake of updating. There nearly always has to be a good reason for me.

So from a kind of philosophical perspective, if you are still managing to do everything okay in Python 2, why did you migrate to Python 3, thus giving yourself more work. That's mostly a rhetorical question, as I can think of a few reasons why you might.

Personally, I would have just stuck with the old, unless there is some great benefit to the new.

But if going to the new, then as you suggest, a fork could be provided for others to pursue the continuation of the old.
avatar
Magnitus: Anyways, I was speaking more about a Fortune 500 context for security. Doesn't really matter for this tool.
My point exactly.

Also, I'll be frank, I'm not very comfortable with your tone. You are making this very personal, attacking my credibility and all that. Obviously, this is a very personal issue for you. I don't see much gain in continuing to argue in that direction. You're welcome to look at my Github anytime and who I'm working for. I was a software architect in the past as well btw in a company with 200+ developers. Its on my linkedin. I won't claim to have all the answers to everything software related, but I know a thing or two about my craft.

It was not my goal to offend you, but I stand by what I said.
Sorry that I attacked your credibility. I'm sure you'll live.

However you used your credibility to support dropping Python 2 support for a tool which downloads OLD GAMES.

Did it never occur to you that people might be running this tool on old hardware?

And that they might not care that much about Python 2 vs Python 3 as you do?

I don't care that much personally as I am running Python 3.

But I don't understand the crusade suddenly to enforce the EOL of Python 2 so soon.

Especially as it is not your project and you very publicly explored the possibility of updating it and decided not to as it was too much work for you.
Post edited March 24, 2021 by lupineshadow
high rated
avatar
lupineshadow: I attacked your credibility. I'm sure you'll live.
Its not about that. I can feel your anger and contempt halfway across the world and I don't think its healthy.

Plus, it doesn't make for a comfortable read for other posters. They're probably just looking at this and rolling their eyes. I know I would.

avatar
lupineshadow: However you used your credibility to support dropping Python 2 support for a tool which downloads OLD GAMES.

Did it never occur to you that people might be running this tool on old hardware?

And that they might not care that much about Python 2 vs Python 3 as you do?

I don't care that much personally as I am running Python 3.

But I don't understand the crusade suddenly to enforce the EOL of Python 2 so soon.
I'm just empathising with poor Kalanyr here who has the unenviable task of keeping Python 2 support with whatever changes he makes. Its not nice work.

And he's doing it for free. And the only thing people are seeing is "Ah, it will no longer work for me...". There is the other side of the coin too which is that somebody is maintaining this project.

avatar
lupineshadow: Especially as it is not your project and you very publicly explored the possibility of updating it and decided not to as it was too much work for you.
Yeah, I didn't like the codebase. Doesn't mean I don't care. I'm a software guy and big on open-source and this is a project that it trying to solve the same problem that I am using a programming language I know very well.

Of course its of incredible interest to me even though I'm not involved with this particular project.

Otherwise, I wouldn't say too much. Just, the quality of the work involved mostly I guess. It is a selfish thing I'll admit.
Post edited March 24, 2021 by Magnitus
avatar
lupineshadow: I attacked your credibility. I'm sure you'll live.
avatar
Magnitus: Its not about that. I can feel your anger and contempt halfway across the world and I don't think its healthy.

Plus, it doesn't make for a comfortable read for other posters. They're probably just looking at this and rolling their eyes. I know I would.

avatar
lupineshadow: However you used your credibility to support dropping Python 2 support for a tool which downloads OLD GAMES.

Did it never occur to you that people might be running this tool on old hardware?

And that they might not care that much about Python 2 vs Python 3 as you do?

I don't care that much personally as I am running Python 3.

But I don't understand the crusade suddenly to enforce the EOL of Python 2 so soon.
avatar
Magnitus: I'm just empathising with poor Kalanyr here who has the unenviable task of keeping Python 2 support with whatever changes he makes. Its not nice work.

And he's doing it for free. And the only thing people are seeing is "Ah, it will no longer work for me...". There is the other side of the coin too which is that somebody is maintaining this project.

avatar
lupineshadow: Especially as it is not your project and you very publicly explored the possibility of updating it and decided not to as it was too much work for you.
avatar
Magnitus: Yeah, I didn't like the codebase. Doesn't mean I don't care. I'm a software guy and big on open-source and this is a project that it trying to solve the same problem that I am using a programming language I know very well.

Of course its of incredible interest to me even though I'm not involved with this particular project.

Otherwise, I wouldn't say too much. Just, the quality of the work involved mostly I guess. It is a selfish thing I'll admit.
A little late jumping in here, but this is why i switched from C++ to C: While i loose fancy things like operator overloading, and this, i gain alot more in knowing the code i wrote won't be broken due to deprecation of language features (it's coming, thanks to Google, and the failure of their language GO to really catch as much as they wanted). Another thing I do is homebrew what I can or pull in FOSS sources that aren't likely to need frequent updates (i think the LZMA libs are pretty well established, for example). Unfortunately, that might be a bit much for gogrepo, however.
avatar
kohlrak: A little late jumping in here, but this is why i switched from C++ to C: While i loose fancy things like operator overloading, and this, i gain alot more in knowing the code i wrote won't be broken due to deprecation of language features (it's coming, thanks to Google, and the failure of their language GO to really catch as much as they wanted). Another thing I do is homebrew what I can or pull in FOSS sources that aren't likely to need frequent updates (i think the LZMA libs are pretty well established, for example). Unfortunately, that might be a bit much for gogrepo, however.
Thing is, C++ is mostly a superset of C (or was a decade ago when I was doing a lot of C++ anyways). Python 3 is not a superset of Python 2. They didn't just add stuff on top of Python 2. They broke things with Python 2.

You have to put a lot of "if" and "catch" statements to support both versions and equally importantly, you have to validate what you are doing across both python versions (unless you have automated pipelines which themselves will require time to implement, that's a lot of manual overhead).

I remember about 6 years ago when I was working on the Insomnia Sale script with phoeniixz. I believe she was using Python 3 and I was using Python 2 at the time. We were breaking each other's stuff a lot.

Otherwise, for Golang, I don't think its the end-all solution for everything (what is?). Its too low level to get things done yesterday (Python and Javascript still shine for that), but for portable binaries and operational cloud solutions (where it carved itself as the dominant player), it really shines.

I mean, right now, I have a self-contained binary in Golang that is less than 20mb, that will run by itself cross-platform on Windows (both 32 bits and 64 bits), MacOS, and Linux. The only way I could approach that with Python/Javascript is with Docker and even some of the developers struggle with that, nevermind non-technical users.
Post edited March 24, 2021 by Magnitus