Cavalary: Though I see that the regional pricing info didn't make it, though you were saying you were interested in adding it after GOG ended the FPP...
ariaspi: Are the games' files checksums from the Manifest IDs completely gone? I can't seem to find them.
I guess it's time to explain why certain features weren't implemented or even removed.
# Changelog search
Doing this properly would have required implementing a complex filtering engine that either translates a number of URL arguments into an SQL query or sanitizes an SQL query string to prevent attacks. I projected it would take me about 20 hours to program that, so I decided to not implement it for now. The required columns were added to the changelog index though, so anyone can write a simple script to run on their own PC.
# Regional prices
I spent a significant time researching how to do this. The general problem was that there are no strict pricing regions on GOG, every country could have its own regional price in theory. Figuring out how to pick the countries to monitor and how to display them in a nice way turned out to be too challenging.
# Checksums
GOG introduced SHA256 checksums in newer builds. These checksums either are in addition to the MD5 values or replace them. Making them machine readable would require two files, one for SHA256 and one for MD5. I considered this too bad of a solution to implement. The old manifest view was also bad because it was limited to a certain number of files, which made searching difficult. I decided a locally run script or program would be the only sensible choice to verify file integrity, so I didn't bother to implement a new checksum view. People manually verifying checksums never appeared to me as a possibility, which is an assumption I now regret.
# Writing bad code
Now there are probably a few of you wondering why I didn't just write a shitty solution to improve on later. The most obvious point is that I don't enjoy making shitty things. I also would rather not show data than show incorrect or misleading data. It undermines my credibility and leads to a lot of annoying support requests and complaints. There's also the problem that once a feature is implemented, no matter how badly done it is, users are going to expect it to be continuously improved and maintained. If you don't believe me, just look at how GOG does things (winking smiley). In all the time I've been running GOG DB, the number of bug reports was negligible and the number of feature requests high. This is in my opinion the best way a software project can be run, because users will always want more features.
# Personal thoughts
Something I've talked about before is my lack of interest in GOG. My last purchase was in December 2018, that's the year Valve released Proton. I buy my games on Steam, Humblebundle or itch.io now. I started developing the current update because I felt like it would make me happy to finally fix and improve a project that has brought value to so many people. But over the months I began to realize that getting there took much longer and was much less fun than anticipated. I started to hate working on GOG DB, because I knew I could instead work on something much more personally fulfilling, but I kept going to not lose all the progress. So all non essential features got cut and I just tried to get a functional product as soon as possible. And once again the future of GOG DB is unclear, because I remembered how frustrating it is to develop.
Thanks for reading another one of my hopefully insightful technical personal posts.