Alright, mvnregistry.com, it was once an index of the Maven 2 repository. It was a Rails application, it was something I put together in my own spare time, and it was a tool that filled a personal requirement. It was also an attempt to prove to myself that the idea was worth pursuing. It was a simple Ruby script that traversed all of the POM files and populated a MySQL database. It worked well for a while, but the downfall came when I tried to put a comment form on the front page.
Conclusion, don’t home comment forms unless it is you full time job to maintain them. There are solutions like Akismet, but because it was a super part-time effort, I just didn’t have the time or patience to bother playing catch up with Romanian porn spammers. In the end, someone hijacked the site via the comments, putting a JS redirect to a really terrible porn site. I had no choice but to turn that particular application off.
Parsing Repository was a PITA
To me, it pointed to some problems with the Maven Repository, for starters, POM interpolation might be an interesting fancy feature in Maven 2, but it made parsing metadata a chore. The decision to allow for variable substitution in a pom.xml file reduces the portability of the format, it becomes less of a description and more a descriptive templating language. The pom.xml should be complete, and the interpolation should be a convenience. A variable reference should never show up in the repository. Maybe they’ve addressed this, I’m not sure because I haven’t really paid too much attention to Maven in the past few months – I’ve had other priorities (and that was another reason for shutting down mvnregistry.com)
The other reason that parsing was problematic was because there were a lot of projects with such a bare minimum of information in the pom.xml it wasn’t useful. There were more than a few projects out there that didn’t even bother with a description. To me, this is a failure to really deliver on the promise of the technology. Maven could be creating this interesting semantic picture of software as components, it is and it isn’t. Maven’s a mixed bag in many respects. Two years on from the Dev Notebook, and I’m still very much on the fence about the quality of the tool.
Lastly, there were a large number of duplicated groups – a mixture of approaches. Some groups continue to not use group ids that follow domain names, others do.
Maven registry.com might come back shortly, but it’s low on my priority list. In the meantime go check out http://www.mvnrepository.com