Two data format changes, one not so significant another quite significant. And a bugfix.
Firstly, I added a field to each game showing the last change that was made to it's data. Then I allow the client to sort by change date. This isn't really meant for end users, more as a way for me to more easily audit when I mess up my own data and how to possibly fix it.
Second, and more important, I changed how bundling was stored. Sometimes when you buy a "game" from a store, you will get more than 1 game along with that bundle. GoG has many games that are bundled (although they are moving away from this system as they update for GoG Galaxy). For instance, you can buy a game called Alone in the Dark 1 - but it actually comes with Alone in the Dark 2 and 3 as bonus downloads. The humble store (and humble bundles obviously) also has this notion where one "purchase" is tied to a collection of games. My previous implementation of this concept was very fiddly, done totally different for GoG and humble, and would not scale well (fetching the list of games inside a bundle would have to look at the entire game list).
I've unified the 2 current systems, and of course it will work for other stores as well.
In fact - it is possible if you so wish to make your own "bundle" of games in the list. For instance, you could collect all of the Geneforge/Avernum games as your own "Avernum Collection". The options for displaying this information on the game list aren't great, as the game list is flat and you will see the bundles along with the items inside the bundle just laid out side by side. So currently there is no real reason to do this. However maybe somewhere down the line I make it show bundles as their own single item that you then drill down into, or something.
More importantly, I'm a little more confident in other people building collections with the more clear data format, rather than the confusing custom fields I used to have.
And the bugfix: Also realized my matching algorithm to see if a game you are adding is already in the database had a huge typo error that may have been preventing it from working properly. So my local database may be royally messed up without my knowledge. And with 1200 games in the list it is really hard to check that they are all correct. Possible errors would be duplicate entries for a game, which is BAD. I have enough games to try and manage without duplicates! It's possible that the error did not actually apply to my data set and the test operations I was running last night, and I caught it in time.
Next up: Take another look at tasks and how the game .exe location is stored. I realize that currently, if I just switch over from my pc to the mac and sync the database over there, all of my games with hardcoded exe paths are going to crash when I try to launch them. I need to be careful of where I am storing local platform information that shouldn't be synced and needs to be recreated.
Found out how to view my shader compile errors in Luxe today. Shader progress will greatly increase now that I'm not just guessing and checking where the errors in my GLSL programs are...
Wrote some quick shader that makes everything grayscale. No pictures, so you will have to imagine.
I had some time to do a few things in the car after all. I started to learn something I always wanted to: low level programming, and more precisely, gameboy programming.
I started looking at some documentation about the gameboy, and tried an assembler a friend of mine told me about: wla-dx.