Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

XP 5.9 as default branch #260

Closed
kiesel opened this issue Nov 5, 2012 · 6 comments
Closed

XP 5.9 as default branch #260

kiesel opened this issue Nov 5, 2012 · 6 comments

Comments

@kiesel
Copy link
Member

kiesel commented Nov 5, 2012

Scope of Change

The default branch for all XP repositories will be changed to the 5.9 "definition":

  • the XP language's compiler will have a separate version
  • the XP Framework's core & contrib modules will have separate versions
  • the contrib modules will be carved out of the current repository and hosted in separate independent repositories

Rationale

Separate release cycles for higher development velocity & easier developer involvement.

Functionality

XP compiler

$ git checkout master
$ git push origin xp5_8

From this point, the master branch will be evolved into a separate release cycle:

  1. A ChangeLog will be created
  2. The version will be aligned starting with 5.8.0 = 1.0.0
  3. A VERSION file will be created

XP Core

$ git checkout master
$ git push origin master:xp5_8
...
$ git merge xp5_9
...

After this ChangeLog-5.9 and ChangeLog will be merged on the now new master branch. Features in XP 5.9 will be manually and selectively backported to XP 5.8 as the case arises. We will concentrate on 5.9-SERIES, though.

XP Contrib

See RFC #210 - the remaining modules will be carved out into their own repositories using:

$ git checkout master
$ git push origin master:xp5_8
$ git clone git://github.com/xp-framework/xp-contrib.git
$ cd xp-contrib
[...Create a tar.gz here for reuse...]
$ git checkout xp5_9
$ git filter-branch --subdirectory-filter <module> xp5_9 -- --all
$ git reset --hard
$ git gc --aggressive
$ git prune
$ git remote rm origin
$ git remote add origin git@github.com:xp-forge/<module>.git
$ git push origin xp5_9:master

See

The xp-contrib repository will be cleaned up, modules will then be located at these URLs:

The following modules will not be migrated:

  • cvs
  • cyrus-admin
  • db-nagios
  • delicious
  • dia
  • dict
  • flickr
  • gnome
  • krokerdil
  • metaweblog
  • nedit-ide
  • simpy
  • soap-interop
  • swabian
  • webdav

Security considerations

n/a

Speed impact

n/a

Dependencies

Related documents

@thekid
Copy link
Member

thekid commented Nov 6, 2012

New repositories in xp-forge have been created. Got some unicorns while doing so :-)

@mrosoiu mrosoiu closed this as completed Nov 8, 2012
@mrosoiu mrosoiu reopened this Nov 8, 2012
@mrosoiu
Copy link
Member

mrosoiu commented Nov 8, 2012

I liked XP-Compiler and all XP-Contrib modules having the versions synced with XP-Core; you could easily detect dependencies.

It also kinda forced you to use the latest version of XP-Core if you needed a feature released in any of the latest XP-Contrib modules. I see this a a good thing, as it will make you fix your old/unmaintained code that rely on old versions of XP-Core.

Anyway, from the point of faster development cycles, this version decoupling makes perfect sense.

Also the individual modules versions will actually reflect changes on that specific module (E.g.: a version change from 1.1.0 to 1.2.0 would imply that some API calls are not backward compatible anymore)

@thekid
Copy link
Member

thekid commented Jan 3, 2013

https://github.com/xp-framework/xp-framework - master = 5.9.0-dev, xp5_8 = 5.8.11-dev, xp5_9 branch deleted.

thekid added a commit to xp-framework/xp-framework that referenced this issue Jan 3, 2013
@thekid
Copy link
Member

thekid commented Jan 3, 2013

https://github.com/xp-framework/xp-language/ - master = 1.9.0-dev, xp5_8 = 1.2.1-dev, ChangeLog and VERSION files have been created.

thekid added a commit to xp-lang/compiler that referenced this issue Jan 3, 2013
thekid added a commit to xp-forge/apidoc that referenced this issue Jan 3, 2013
thekid added a commit to xp-forge/google-search that referenced this issue Jan 3, 2013
thekid added a commit to xp-forge/isbn that referenced this issue Jan 3, 2013
thekid added a commit to xp-forge/jira-api that referenced this issue Jan 3, 2013
thekid added a commit to xp-forge/mp3 that referenced this issue Jan 3, 2013
thekid added a commit to xp-forge/nsca that referenced this issue Jan 3, 2013
thekid added a commit to xp-forge/opensearch that referenced this issue Jan 3, 2013
thekid added a commit to xp-forge/punycode that referenced this issue Jan 3, 2013
thekid added a commit to xp-forge/stomp that referenced this issue Jan 3, 2013
thekid added a commit to xp-forge/teamcall that referenced this issue Jan 3, 2013
thekid added a commit to xp-forge/gsa-xmlfeed that referenced this issue Jan 3, 2013
@thekid
Copy link
Member

thekid commented Jan 3, 2013

All of the modules mentioned in the above list have been carved out by cloning the repository and then calling this script for each of the modules' names.

#!/bin/sh

module=$1
if [ ! -e xp-contrib/$module ] ; then
  echo "*** No such module $module" >&2
  exit 1
fi

echo "---> Carving out $module"
cd xp-contrib
git checkout xp5_9
git filter-branch --subdirectory-filter $module xp5_9 -- --all
git reset --hard
git gc --aggressive
git prune
echo "$module ChangeLog" >> ChangeLog
echo "========================================================================" >> ChangeLog
git add ChangeLog
git ci -m '- Carve out module according to xp-framework/rfc#260' ChangeLog
git remote rm origin
git remote add origin git@github.com:xp-forge/$module.git
git push origin xp5_9:master
cd ..
echo "---> Done"
rm -rf xp-contrib
tar xfz xp-contrib.tar.gz
echo "---> Restored checkout to original state"

@thekid
Copy link
Member

thekid commented Jan 3, 2013

https://github.com/xp-framework/xp-contrib, modules carved out. master = (empty), xp5_8 contains the old directories, xp5_9 has been deleted.

@thekid thekid closed this as completed Jan 3, 2013
thekid added a commit to xp-framework/remote that referenced this issue Nov 10, 2013
thekid added a commit to xp-framework/doclet that referenced this issue Nov 10, 2013
thekid added a commit to xp-framework/zip that referenced this issue Nov 10, 2013
thekid added a commit to xp-framework/rdbms that referenced this issue Nov 11, 2013
thekid added a commit to xp-framework/csv that referenced this issue Nov 11, 2013
thekid added a commit to xp-framework/parser that referenced this issue Nov 11, 2013
thekid added a commit to xp-framework/rest that referenced this issue Nov 11, 2013
thekid added a commit to xp-framework/scriptlet that referenced this issue Nov 11, 2013
thekid added a commit to xp-framework/imaging that referenced this issue Nov 12, 2013
thekid added a commit to xp-framework/ftp that referenced this issue Nov 12, 2013
thekid added a commit to xp-framework/http that referenced this issue Nov 12, 2013
thekid added a commit to xp-framework/ldap that referenced this issue Nov 12, 2013
thekid added a commit to xp-framework/mail that referenced this issue Nov 12, 2013
thekid added a commit to xp-framework/news that referenced this issue Nov 12, 2013
thekid added a commit to xp-framework/irc that referenced this issue Nov 12, 2013
thekid added a commit to xp-framework/sieve that referenced this issue Nov 12, 2013
thekid added a commit to xp-framework/webdav that referenced this issue Nov 12, 2013
thekid added a commit to xp-framework/spelling that referenced this issue Nov 12, 2013
thekid added a commit to xp-framework/xml that referenced this issue Nov 12, 2013
thekid added a commit to xp-framework/telephony that referenced this issue Nov 12, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants