Some MODs are quick and easy. Others take time to develop, and therefore evolve over time. Which begs the question: what responsibility does a MOD author have to provide updates from one BETA version to another?
I have in the past attempted to provide upgrade instructions for BETA releases. Meaning when I release version BETA 0.8.2 of a MOD I will provide a list of changes from BETA 0.8.0 so folks can apply the changes rather than removing and reinstalling the MOD. Then again with 0.8.4. And 0.8.6. And then 0.9.0.
First, a confession. I don’t currently use any sort of source control. I keep backups of changed files, but I don’t use any sort of repository where code changes are kept. (The phpBBDoctor MOD Managerâ„¢ only keeps the most current release.) I do keep a copy of the MOD install script as a text file, and I can use it to review what the changes are from one version to another, but it’s really a difference in the MOD install script, rather than the resulting files.
So the work involved in identifying the changes from 0.8.0 to 0.8.2 is a bit of effort. The amount of effort, of course, is based on the number and complexity of the changes from one version to the next. But it does take time.
One of the most involved project I’m working on now is the Topic Points. It allows people to “vote” for a topic using one of three choices. So far (it’s not finished yet) the code alters 21 different phpBB files – seven template files and 14 php files. And as there are still new features being added, it’s likely that I will be going back and reworking some of the existing changes.
Which means that in order to upgrade from one version to another you might be removing some edits, altering others, and adding new ones, all at the same time. And that brings me back to the original question: do I need to provide a list of changes from one version to another?
At this point I have decided not to do that until I reach Release Candidate (RC) status. Any BETA code will be provided “As-Is” and it will be the responsibility of the user to take on any updates. I have done this in order to save me some time… time being the critical element as far as actually getting something completed, of course. I realize that this will likely prove to be inconvenient to users, and I regret that, but after providing regular version-to-version updates for other MODs and seeing how much time it takes I have decided that this is the best route for me.