daisy / pipeline-mod-braille

!! NOTE: This project is now part of the pipeline-modules project !! | Braille Production Modules for the DAISY Pipeline 2
1 stars 4 forks source link

pipeline-mod-braille

NOTE: This project is deprecated, its content have been integrated in the pipeline-modules project

Build Status

This repository contains a library of utility modules for braille production for the DAISY Pipeline 2. The top-level "*-to-pef" scripts that are build on these braille modules live in the pipeline-scripts repository.

Project layout

Because of the very modular nature of DAISY Pipeline 2, browsing the code is not always easy. In order to make it more obvious where to find a particular piece of code, I've tried to organize the modules into subdirectories in a logical and consistent way.

The braille modules are divided into logical groups:

Each of these utility modules collect all the XSLT/XPath functions and XProc steps of that group into one library.xsl and one library.xpl, so that they can be made available with a single import. These library files make up the interface between the scripts and the utils, scripts should not have to use any lower-level parts directly.

The implementation of the functions and steps can either be found in the utils module itself (which is mostly the case when they are written in XSLT/XProc), or otherwise in a submodule. Submodules are grouped in a directory with the same name as the utils module minus the -utils. They typically contain Java code. Some recurring types of modules are modules for Saxon XPath extension functions (ending in -saxon) and modules for custom Calabash steps (-calabash). Generally, the XPath and XProc bindings are separated from the core functionality (-core modules). Precompiled native binaries are bundled in -native modules.

Building

Build and run the unit tests with:

mvn clean install

The required version of Java is 8.

Semantic versioning

Individual modules are versioned according to SemVer. In order to ease the release process, the correct version must be set whenever a change is made to a module (in both maven/bom/pom.xml and module's own POM).

Release procedure

This project should be released via the super-project: see http://daisy.github.io/pipeline/Contribute/Developer-Guide/Releasing/#release-procedure.

Authors

License

Copyright 2012-2014 DAISY Consortium

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.