![Page 1: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/1.jpg)
Richard Jones, July 2005
Integrating Local Developments to DSpace
![Page 2: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/2.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
Richard Jones
Edinburgh University LibraryEdinburgh Research Archive (ERA) (http://www.era.lib.ed.ac.uk)E-Theses tools for DSpace Tapir (http://sourceforge.net/projects/tapir-eul)
Bergen University LibraryBergen Open Research Archive (BORA) (http://bora.uib.no/)
![Page 3: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/3.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
What we're talking about
• A brief introduction to community development
• What is the Tapir?
• Tapir structure and installation
• Alternative Tapir structure and installation
• Are developments appropriate for the main codebase?
• Making and submitting patches
![Page 4: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/4.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
A brief introduction to community development
• Keep your source code up to date with the CVS
• Follow community coding standards
• Monitor the mailing lists– [email protected]
• Share early, share often
![Page 5: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/5.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
What is the Tapir
• E-Theses management tool for DSpace developed for
Edinburgh University Library
• Open Source since 2003
• Some parts now included in the DSpace 1.3 codebase
![Page 6: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/6.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
Tapir general structure
![Page 7: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/7.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
Tapir installation (current)
![Page 8: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/8.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
The choices we made
• Ease of development and local maintenance
• The need to diverge slightly from the original DSpace
code
• Hope that the installation would not be too technically
demanding
• Perhaps appropriate for the time, but not necessarily the
way to continue
![Page 9: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/9.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
Alternative structure for Tapir
![Page 10: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/10.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
Alternative installation of Tapir
![Page 11: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/11.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
Package design notes
• Patching may be a neater solution, but requires a degree of technical
knowledge, especially when things go wrong
• Not using a patch makes the install process very long
• Having a separate JAR for the module may be more desirable
• Building components into the same package
– increases the ease with which modules may utilise eachother's functionality
– makes it easier to extend existing core functionality
• Since dspace.cfg will always be localised, we shouldn't patch it
![Page 12: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/12.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
One you have developed
• Are you ready to submit contributions to the DSpace
codebase?
• Have you followed the coding standards?
• Are the licensing terms compatible?– Berkley Software Distribution (BSD)
– (Gnu) Lesser General Public Licence (LGPL)
– Apache Licence
• Are the developments appropriate for DSpace?
![Page 13: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/13.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
Is the development appropriate for DSpace?
• Developments not of use to the community– Local user interface modifications
Tapir dual fixed submission systems
MIT customisablesubmission formsfor each collection
VS
• Developments useful to some, but not fitting with the
direction of DSpace development– Dual submission process (superceded)
• Create patches for the rest
![Page 14: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/14.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
Making patches (1)
• Produce against the most recent CVS HEAD
• Bundle in small units– Individual files
– Individual units of functionality• supervisor administration tools
• end user supervisor interface
• statistics reporting system
![Page 15: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/15.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
Making patches (2)
• Include the administrative code– Database create and destroy scripts
– Database upgrade script
– Database sequence integrity script
• Allow functionality to be switched off (and done so by
default)
• Upload to SourceForge
![Page 16: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/16.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
Patch review and commit• Schema changing developments only included between
major versions (1.x – 1.y, not 1.x.a – 1.x.b)
• The committers– Testing patches
– Determine applicability to DSpace
– Liaise with contributor
– Commit the patch
• The contributors– Discuss the feature with the committers
– Keep patches up to date with CVS HEAD
– Apply required changes during testing process
![Page 17: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/17.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
Becoming part of the DSpace codebase
• Functionality description added to version history
• Contributors attributed in version history:
(Richard Jones)- Addition of Tapir workspace to MyDSpace pages: authoring and supervising itemlistings, a workspace for each item and a workspace item metadata viewer
![Page 18: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/18.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
References
• DSpace on SourceForge: http://sourceforge.net/projects/dspace
• DSpace Wiki: http://wiki.dspace.org/
• DSpace developing: http://wiki.dspace.org/DspaceDeveloping
• How to contribute: http://wiki.dspace.org/HowToContribute
• Submitting a patch: http://wiki.dspace.org/ContributionGuidelines
• Jones, R, (2004). The Tapir: Adding E-Theses functionality to DSpace. Ariadne. Issue 41. http://www.ariadne.ac.uk/issue41/jones or http://hdl.handle.net/1842/632
![Page 19: Richard Jones, July 2005 Integrating Local Developments to DSpace](https://reader035.vdocuments.net/reader035/viewer/2022070404/56649f355503460f94c52ce0/html5/thumbnails/19.jpg)
Integrating LocalDevelopments to
DSpace
DSpace User Group Meeting, Cambridge, July 2005. Richard Jones, Senior Engineer, University of Bergen Library
Thanks for listening
Richard Jones
Universitetsbiblioteket i BergenTilvekstavdelingNygårdsgaten 55015 BergenNorway
[email protected]://bora.uib.no/
This work is licensed under the Creative Commons Attribution-NonCommercial-
ShareAlike License. To view a copy of this license, visit
http://creativecommons.org/licenses/by-nc-sa/2.5/ or send a letter to Creative Commons,
559 Nathan Abbott Way, Stanford, California 94305, USA.
http://www.ub.uib.no/prosj/BORA/Presentasjoner/RJ-DSUG-2005.ppt