I sat down this morning and jotted down some notes as to what I want GPNL to cover. One thing I realized is that one reason development has stalled is because my original goals of what it should do has always shifted. The more features I want to pile on, the more it spins out of control, and makes it harder to do any one thing effectively.
So, I decided I want to keep it simple — I’m going to focus on having it just analyze the contents of ebuilds, and nothing else. I’m not going to try and do anything fancy like dependency trees to see what’s puling in what. I’ll let someone else figure that out. I’m just going to import all relevant information about an ebuild, plus the actual contents itself to make it easy to search for strings across the board, and then display everything.
That, in itself, is actually really easy to accomplish. Everything is already in the metadata cache, so I just have to parse it all which is also incredibly simple. One of the things that made me go off on a tangent last time was that I realized that the metadata would tell what eclasses were inherited, which was one of the few things I hadn’t coded to figure out on my own. With that, I kind of got dreams of all this cool stuff I could do, and instead didn’t really go anywhere. And then I end up with stupid bugs like the database not even pulling in local use flags. Gah.
So, that’s what I’m going to refocus on and *then* go from there once all that is taken care of. I can’t remember off the top of my head any QA issues that could be checked for when you just have just the ebuild statistics, but then again, I can’t remember *any* of the QA stuff I originally wanted to check for when I started writing this thing, it’s been so long.