Hello,
My name is Andrei - Marius Dincu and I am a Romanian student who loves Drupal. I study Computer Science at Politehnica University of Bucharest and I heard about Drupal about one year ago.
During the GSoC 2014 coding period I will try to port XMLSitemap module to Drupal 8. XMLSitemap module is one of the most used Drupal modules and I think it is a requirement to make it compatible with Drupal 8.
I talk every day with my mentors (penyaskito - https://drupal.org/user/959536 and cYu - https://drupal.org/user/202205) and they try to help me to take the best decisions. We have already done some consistent contributions to the project and you can find all commits at: https://drupal.org/sandbox/andreimariusdincu/2222965).
Feel free to contact me on IRC at #drupal-google, #drupal-contribute, #drupal-seo, #drupal-i18n.
Comments
Similarities to Search API
Andrei Marius, awesome you started this work.
I already provided some inputs about the need to have multiple XMLSitemap entries per entity - namely for multilingual reasons. We realised that right this problem was solved within scope of Search API already.
After some more thoughts and discussions with my team, we came up with some crazy proposal:
Search API (recently D8 ported with a sprint we initiated, quite ready, ongoing activity) is a generalised tool to build indexes of "sources". The backend is pluggable - you might use DB or solr. Elasticsearch is upcoming, other kinds of backends are possible. With Drupal 8, an index can contain multiple source types.
Search API provides the framework to track sources, incrementally updates indexes, build indexing through batch and a lot of base tools.
We realised that XMLSitemap needs all of this stuff too!
What would happen, if you take Search API, implement an "XMLSitemap" Search API backend, and write the xmlsitemap with this framework?! Search API might need a few improvements regarding extensibility, but - in my opinion - would be a very nice fit - and possibly less duplicated work.
I'm open to discuss this suggestion, side effects, benefits and stupidity anytime in IRC. We should just not forget to think twice about what we are doing. :-)
This sounds like an ambitious
This sounds like an ambitious undertaking. If it turns out that the cleanest and most efficient way to build the XMLSitemap module is to leverage Search API, I'd suggest this be the approach of an 8.x-2.x branch. Because this is being done as a GSOC project I'd like to avoid such a major divergence from both the proposed solution and the work already accomplished.
For the large majority of sites using XMLSitemap module, I believe the straight port that was proposed should be a usable solution for those in D8, so I'd prefer to keep momentum towards that goal. One great side effect of this is that it should give us a nice set of tests so that if there is a major refactoring as proposed here, the written tests should still apply and bring some comfort for those looking to switch from a 1.x to 2.x branch.