Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Primary DSpace Codebase - Migrate (perform final sync) Main Trunk/Branches/Tags to https://github.com/DSpace/DSpace.
    • WARNING - WILL NOT PERFORM AUTHOR MAPPING: At this time, we do not plan to perform the "SVN author mapping" (See #Author File) for this primary codebase. The reason why is that it can only be performed by essentially "destroying" the existing GitHub repository and rebuilding/recreating it. If we were to recreate this codebase, it would be detrimental to all people/institutions who have already forked it. Since "recreating this repository with author mappings" doesn't seem to give us much benefit in GitHub, the attendees of the Developers Meeting on March 14,2 012 decided it doesn't seem worth the hassle.
  • (tick)  dspace-api-lang - migrated to GitHub:DSpace/dspace-api-lang 
    • perhaps migrate to a single 'dspace-lang' GitHub project?  (Mark: I think move back into DSpace API and use minor releases to update languages.)
  • (tick)  dspace-xmlui-lang - migrated to GitHub:DSpace/dspace-xmlui-lang
    • perhaps migrate to a single 'dspace-lang' GitHub project? (Mark: I think move back into DSpace-xmlui and use minor releases to manage.)

(question) QUESTION: The following codebases are also standalone. Do we want to keep them that way? Do they all merit their own repository in GitHub?

  • dspace-services - migrate to 'dspace-services' GitHub Project? (Mark: yes, keep it a separate repo for now with its own release numbering.)
  • dspace-pom (parent POM of 'dspace-parent' & other DSpace maven projects) - migrate to a 'dspace-pom' GitHub project? (Mark: separate repo)
  • The License/License Header files (used by 'dspace-pom') - This License/License Header may just need to be moved into the same location as 'dspace-pom' (as that is where it is used) ( mark: yes)
  • dspace-assembly-plugin (used by 'dspace-parent' to assembly DSpace) - migrate to ??? (Mark: We started to shift to putting these assembly files into the parent src directory, maybe that's the best place and will eliminate the need for the plugin.)

Dependency Codebases

The following codebases are strictly releases of DSpace dependencies. Some of these dependencies just needed to be pushed to Maven Central (i.e. we don't "own" any of the code – all we did was release it to Maven Central because we needed it available there). Others need minor tweaks for DSpace.

...

  • dspace-solr (dependency of 'modules/solr') - migrate to 'dspace-dependencies' GitHub project???
  • dspace-geoip (dependency of 'dspace-stats') - migrate to a general 'dspace-dependencies' GitHub project???
  • dspace-tm-extractors (used by dspace-api to do text extraction of Word docs?) - Can we just replace this with POI (http://poi.apache.org/), which is used for PPT text extraction (but also looks to work for Word docs)? See DS-1140
  • dspace-jmockit (dependency of dspace-parent) - migrate to a general 'dspace-dependencies' GitHub project???
  • dspace-cocoon-servlet-service-impl (dependency of dspace-xmlui-wing) - migrate to a general 'dspace-dependencies' GitHub project???

Mark: I think all these should get separate repos becauseeach has a separate release cycle.

Additional Active DSpace projects

Mark: separate repo because they have separate releases cycles, though it might be time to put rest into the main DSpace repo.

Inactive projects (won't be moved to GitHub)

...

Mark: Some of these can be considered for future, I want to take back those that I put considerable work into and will put these up in my repo or in our atmire repo. DSpace-imscp was an example of a crosswalk/packager addon, it could stand to be in the DSpace repo. Stats and discovery can remain behind.

Archive old SVN (for posterity)

...

  • Turn off any syncing between SVN and GitHub
    • Notify the Committers before making this change!!
  • Ensure Maven 'License Header' check still works when running 'mvn install' (this is setup in 'dspace-pom')
    • Likely will need to move LICENSE_HEADER to GitHub, maybe into same project as 'dspace-pom'?
    • Also will likely require a new release of 'dspace-pom'
  • Ensure Maven Release Procedure still works - likely will require a POM update or two.

Mark: I've run a few releases via sonatype and github, it might be good to run a test release or two just to verify.  We just need to update the source management section of the maven parent Pom. I have examplespf these settings in my repo.

Final Steps

  • Notify community when development has moved completely to GitHub.
  • Redirect old SVN URLs:
    • Redirect scm.dspace.org to svn.duraspace.org (if possible, setup this redirect so that old URLs just go directly to that SVN archive)
  • Contact OSUOSL and let them know we no longer need to use the old SVN server.
  • Build some "GitHub Best Practices" documentation:

...