Forum OpenACS Development: How the new tagging scheme works

Collapse
Posted by Joel Aufrecht on
Now that core is much smaller than it used to be and also explicitly decoupled from everything else, the tagging scheme has changed and may be confusing.  Here's a forum response to an email question:

<blockquote> When we release a .LRN release, does the OpenACS code get tagged with
the .LRN release as well or are the two separate tagging systems totally
independent?
</blockquote>

Answer: they are seperate.

Example:

January 1, 2000

OpenACS is at version 5.0.2.  .LRN is at version 2.0.0, which is
compatible with OpenACS 5.0.

Then every file in OpenACS core, 5.0 branch has these tags:
openacs-5-0-2-final
openacs-5-0-compat

The same files on HEAD have no tags.

And every file in .LRN has these tags:
dotlrn-2-0-0-final
openacs-5-0-compat

Example 2: April 2000

OpenACS is at version 5.0.4, and version 5.1.0 is also out.  .LRN is
at version 2.0.3, which is compatible with both.

Then every file in OpenACS core, 5.0 branch has:
openacs-5-0-4-final
openacs-5-0-compat

Every file in OpenACS core, 5.1 branch has:
openacs-5-1-0-final
openacs-5-0-compat

Every file in OpenACS core HEAD has:
no special tags

Every file in .LRN has:
dotlrn-2-0-3-final
openacs-5-0-compat
openacs-5-1-compat

Every other package works the same way as dotlrn.

Example 3:
Photo album 7.0 is compatible with OpenACS 5.1 but not 5.0.  Every
file in photo-album has these tags:
photo-album-7-0-0-final
openacs-5-1-compat

Note that OpenACS and .LRN have major-minor-dot versions.  However, dot releases are never supposed to threaten compatibility, so compat tags have only major-minor.

Note also that install/upgrade-from-repository sees only packages that are tagged with the compat flag matching the kernel version.  So a 5.0 site will only see packages tagged openacs-5-0-compat.

Collapse
Posted by Randy O'Meara on
Joel,

I noticed yesterday when I attempted to checkout the openacs-5-0 *branch* that no files were retrieved. I saw a listing of the directories (not sure if all dirs were returned). So, I'm thinking that each file in the 5-0 branch should also have the openacs-5-0 tag. That way, to get the latest 5-0 release, you simply checkout with the openacs-5-0 tag.

Does this make sense? I'm fairly certain that it *used* to work this way.

Randy

Collapse
Posted by Joel Aufrecht on
There is no openacs-5-0 branch.  It's called oacs-5-0.

The tags and branches all used to be oacs instead of openacs until I screwed up and started using openacs in the 5.0 alphas.  Now we have a fair number of both tags but the openacs- tags are more recent, so I'm just going to keep using openacs- unless someone complains.  Which means that we'll branch 5.1 as openacs-5-1.

Collapse
Posted by Randy O'Meara on
Oops. My mistake. I can't say how many times my brain has translated "oacs" into "openacs" without my knowledge.

It is odd though that I watched the directories scroll by when I checked out using "openacs-5-0"...don't know what that's about.