Giter Site home page Giter Site logo

kript / baton Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wtsi-npg/baton

0.0 2.0 0.0 1.29 MB

iRODS client programs and API

Home Page: http://wtsi-npg.github.io/baton

License: GNU General Public License v2.0

Makefile 0.93% M4 2.52% Shell 2.80% C 88.85% Perl 1.64% Objective-C 3.25%

baton's Introduction

baton |bəˈtän|

  noun, A short stick or staff or something resembling one.

Client programs and API for use with iRODS (Integrated Rule-Oriented
Data System).

baton is intended as a supplement to the command line client programs
(ils, imeta etc.) provided with a standard iRODS installation. Its
focus is metadata operations for iRODS collections and data objects.
baton is spelled with a lower case letter 'b'.

The features it provides are:

- A single JSON format for listing results, composing queries and
  performing updates.

- Listing of data objects and collections as JSON, including their
  metadata (AVUs), file size, access control lists (ACLs) and creation
  and modification timestamps.

- Queries on metadata, on access control lists (ACLs), creation and
  modification timestamps and timestamp ranges. The full range of
  iRODS query operators is supported.

- Optional unbuffered IO for IPC via pipes, with fine-grained error
  reporting for batch operations.

- Simplified API over the iRODS general query API to ease construction
  of new custom queries.

- Downloading data objects as files or embedded in JSON (if data
  object content is UTF-8).

For further details see the man pages or manual, which is available
online at http://wtsi-npg.github.io/baton/

iRODS compatibility:

- Compatible with iRODS 3.2, 3.3, 3.3.1 and 4.1.x

- Not compatible with iRODS 4.0.1 and 4.0.2 (which lack required API
  functions with C linkage).


Installation:

1. Install iRODS 3.3.x or 4.x and the baton dependencies (Jansson) as
   described in their documentation.

2. If you have cloned the baton git repository, run autoconf to
   generate the configure script:

   autoreconf -i

   If you have downloaded a release tarball, the configure script is
   included, so proceed to step 3.

3. For a run-in-place installation of iRODS 3.3.x or iRODS 4.x, run the
   configure script using a --with-irods argument to indicate the root
   directory of the iRODS source tree.

   ./configure --with-irods=/path/to/irods

   You may set the location of your preferred Boost installation by
   using a --with-boost argument.

   For a packaged (.deb) installation of iRODS 4.x, run the configure
   script with a bare --with-irods argument.

   ./configure --with-irods

   (The iRODS configuration options are implemented by a
   macro 'ax_with_irods' which is included in the m4 subdirectory).

4. Compile

   make

5. Optionally, run the test suite

   make check

6. If you have run configure with the optional --enable-coverage flag
   you can generate test coverage statistics with lcov.

   make check-coverage

7. Install, including HTML manual and manpage.

   make clean install


Synopsis:

For full details of the JSON accepted and returned by the programs in
baton, see the manual in the doc directory.


Dependencies:

iRODS   https://github.com/irods/irods-legacy

        Versions 3.2, 3.3, 3.3.1

        https://github.com/irods/irods

        Versions 4.1.x

Jansson https://github.com/akheron/jansson.git

        Versions >= 2.6

Optional dependencies:

Sphinx http://sphinx-doc.org/               (for the manual and manpages).
check  http://check.sourceforge.net/        (for unit tests).

       Versions >= 0.9.10

lcov   http://ltp.sourceforge.net/coverage/ (for test coverage analysis)

jq     http://stedolan.github.io/jq/        (for processing input and output)

baton's People

Contributors

kjsanger avatar dkj avatar jrandall avatar dozy avatar kript avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.