Skip to content

Releases: DICE-UNC/jargon

Jargon 4.0.2.4-RC1

09 Nov 19:48
Compare
Choose a tag to compare
Jargon 4.0.2.4-RC1 Pre-release
Pre-release

Jargon Core API

Project: Jargon-core API

Date: 11/09/2015

Release Version: 4.0.2.4-RC1

git tag: 4.0.2.4-RC1

Developer: Mike Conway - DICE

News

Maintenance release of Jargon work in progress, focused on bug fixes, more 4.1.7 compatability, and stream performance for i/o and put/get

Release https://github.com/DICE-UNC/jargon/milestones/Minor%20changes%20and%20compatibility%20-%204.0.2.4

Please go to [[https://github.com/DICE-UNC/jargon]] for the latest news and info.

Jargon-core consists of the following libraries

  • jargon-core - base libraries, implementation of the iRODS protocol
  • jargon-data-utils - additional functionality for dealing with iRODS data, such as building trees, storing information in iRODS on behalf of applications, and doing diffs between local and iRODS
  • jargon-user-tagging - code for using free tagging and other metadata metaphors on top of iRODS
  • jargon-user-profile - allows management of user profile and related configuration data in a user home directory
  • jargon-ticket - support for ticket processing
  • jargon-httpstream - stream http content into iRODS via Jargon
  • jargon-ruleservice - support for running and managing rules from interfaces
  • jargon-workflow - support for iRODS workflows

Requirements

  • Jargon depends on Java 1.8+
  • Jargon is built using Apache Maven2, see POM for dependencies
  • Jargon supports iRODS 3.0 through iRODS 3.3.1 community, as well as iRODS 4.1.7 consortium

Libraries

Jargon-core uses Maven for dependency management. See the pom.xml file for references to various dependencies.

Note that the following bug and feature requests are logged in GForge with related commit information [[https://github.com/DICE-UNC/jargon/issues]]

Changes

move semantics error in cloud browser moving a/path/a to a/path/b with collection already exists #140

Updated semantics of move collection to avoid 'collection already exists errors' by adding the source collection as the child of the target collection name

across federation browsing under strict acls doesn't interpolate home/ and find subdirs viewable #39

More gracefully handle path guessing heuristics cross-federation browsing when drilling down and stict ACLs is on.

CI integration with iRODS 4 #18

Changes in build automation and testing to integrate Jargon testing into iRODS Consortium Continuous integration

copy of file to itself recursively endlessly copies until path gets too large #151

Added checks to not copy a collection recursively under itself. Revealed in cloud browser testing.

-832000 in cloud browser clicking on file in fed zone #152

Removed resource group name from DataObject selects when querying for domain object. That is no longer useful with new resource domain hierarchy and was causing GenQuery exceptions with later iRODS versions
Update cross-zone path heuristic guessing so one can reasonably browse 'down' to home dirs in federated zones

CI integration with iRODS 4 #18

Enhancements to testing setup to integrate Jargon into Consortium CI services

PEP on output stream #144

Fixes and tests for firing postProcForPut after certain streaming i/o operations

PackingIrodsInputStream and PackingIrodsOutputStream

Major enhancements to the performance of streaming i/o though simple read-ahead and write-behind buffering streams, see:

https://github.com/DICE-UNC/jargon/blob/master/jargon-core/src/main/java/org/irods/jargon/core/pub/io/PackingIrodsInputStream.java

and

https://github.com/DICE-UNC/jargon/blob/master/jargon-core/src/main/java/org/irods/jargon/core/pub/io/PackingIrodsOutputStream.java

These enhancements are used in the ModeShape, WebDav, REST, and cloud browser code

PEP on output stream #144

Fixed open flags on WRITE and WRITE_TRUNCATE in output stream code to fire postProcForPut policy enforcement point. This also required an iRODS fix 4.1.6+

Jargon breaking GSI by zapping list of CAs #137

Added check of empty CA since the default value of the certificateAuthority in GSIIRODSAccount is blank versus null. User submitted patch.

Trailing slash on path to CollectionAO.getPermissionForCollection() throws FileNotFoundException #37

Enhanced collection-related methods to tolerate trailing slashes on collections in various operations

enhancements to transfer operations for add'l checking and path handling. #31

For put/get to a directory, do a permission check and create any necessary subdirs as specified

SSL cert check bypass option #155

Added a jargon.properties setting to turn off SSL cert chain checking by using a custom 'trust all' trust manager. This is suitable for testing, not for production. Also, IRODSSession now supports a setter method to inject a custom X509TrustManager class.

TLS v1 being used in SSL pam auth #154

Fixes for SSL protocol selection to address some SSL/PAM handshake issues. In addition, JDK1.8 is favored on most platforms to support later versions of TLS.

Misc

Lots of small fixes, pull requests, iRODS compatability tests and fixes through work with consortium

Jargon 4.0.2.3 Release

12 Jun 14:36
Compare
Choose a tag to compare

Jargon Core API

Project: Jargon-core API

Date:

Release Version: 4.0.2.3-RELEASE

git tag: 4.0.2.3-RELEASE

Developer: Mike Conway - DICE

News

Release with misc fixes and features for iRODS 4.1 certification

Release milestone https://github.com/DICE-UNC/jargon/milestones/4.0.2.3%20with%20iRODS%204.1

Please go to [[https://github.com/DICE-UNC/jargon]] for the latest news and info.

Jargon-core consists of the following libraries

  • jargon-core - base libraries, implementation of the iRODS protocol
  • jargon-data-utils - additional functionality for dealing with iRODS data, such as building trees, storing information in iRODS on behalf of applications, and doing diffs between local and iRODS
  • jargon-user-tagging - code for using free tagging and other metadata metaphors on top of iRODS
  • jargon-user-profile - allows management of user profile and related configuration data in a user home directory
  • jargon-ticket - support for ticket processing
  • jargon-httpstream - stream http content into iRODS via Jargon
  • jargon-ruleservice - support for running and managing rules from interfaces
  • jargon-workflow - support for iRODS workflows

Requirements

  • Jargon depends on Java 1.7+
  • Jargon is built using Apache Maven2, see POM for dependencies
  • Jargon supports iRODS 3.0 through iRODS 3.3.1 community, as well as iRODS 4.0.3 consortium

Libraries

Jargon-core uses Maven for dependency management. See the pom.xml file for references to various dependencies.

Note that the following bug and feature requests are logged in GForge with related commit information [[https://github.com/DICE-UNC/jargon/issues]]

Changes

apparent new resource oriented error messages #105

Added new exceptions in iRODS 4.1, especially for resource hierarchies, and did some organization of the exception tree by introducing new super-classes.

resource avu queries failing #104

Moved resource queries away from old string building approach to the composition by builder approach, enhanced the unit testing. This fixed some errors in resource AVU queries with 4.1.

Read length set to zero on replication with iRODS 4.1 #106

Added backwards-compatible processing for new replicate API number.

Read length set to zero on copy with iRODS 4.1 #107

Added backwards-compatible processing for copy API number and improved overwrite logic

Error listing replicas in a resource group (cat unknown table) #108

Resource groups are no longer a concept, so some operations using resource groups now throw an UnsupportedOperationException when ussued against a 4.1+ iRODS host. These operations continue to be supported pre 4.1. Unit test code was adjusted.

testTrimReplicasForDataObjectByResourceNameInvalid fails with uncaught -78000 #109

Added a ResourceNotFoundException in the hierarchy. For prior to 4.1, will maintain current behavior of silently ignoring, which in retrospect might be a bit odd. But no surprises! From 4.1+ will throw a DataNotFoundException. It's a little messy, may rethink that later.

Read length set to 0 on phymove, likely protocol change #111

Fixed phymove api numbers, maintains backwards compatability

Potential federation error 4.1 iRODS query across zones getting objStat #126

Added heruistic creation of ObjStats in certain occasions where strict ACLs would otherwise cause an error. This is meant to assist interfaces that need to 'navigate' down from the root, to give these interfaces a chance to get to viewable directories. This can be turned off with jargon properties.

Stream performance enhancements #87

Added PackingInputStream and PackingOutputStream that do read-ahead and write-behind caching so that reads and writes using small buffer sizes from the perspective of a client (e.g. WebDav implemenation)
so that more performant buffer sizes can be used in protocol operations with irods.

Jargon 4.0.2.3-RC1

01 Jun 15:46
Compare
Choose a tag to compare
Jargon 4.0.2.3-RC1 Pre-release
Pre-release

Jargon Core API

Project: Jargon-core API

Date:

Release Version: 4.0.2.3-RC1

git tag: 4.0.2.3-RC1

Developer: Mike Conway - DICE

News

Releae candidate for misc fixes and features for iRODS 4.1 certification

Release milestone https://github.com/DICE-UNC/jargon/milestones/4.0.2.3%20with%20iRODS%204.1

Please go to [[https://github.com/DICE-UNC/jargon]] for the latest news and info.

Jargon-core consists of the following libraries

  • jargon-core - base libraries, implementation of the iRODS protocol
  • jargon-data-utils - additional functionality for dealing with iRODS data, such as building trees, storing information in iRODS on behalf of applications, and doing diffs between local and iRODS
  • jargon-user-tagging - code for using free tagging and other metadata metaphors on top of iRODS
  • jargon-user-profile - allows management of user profile and related configuration data in a user home directory
  • jargon-ticket - support for ticket processing
  • jargon-httpstream - stream http content into iRODS via Jargon
  • jargon-ruleservice - support for running and managing rules from interfaces
  • jargon-workflow - support for iRODS workflows

Requirements

*Jargon depends on Java 1.7+
*Jargon is built using Apache Maven2, see POM for dependencies
*Jargon supports iRODS 3.0 through iRODS 3.3.1 community, as well as iRODS 4.0.3 consortium

Libraries

Jargon-core uses Maven for dependency management. See the pom.xml file for references to various dependencies.

Note that the following bug and feature requests are logged in GForge with related commit information [[https://github.com/DICE-UNC/jargon/issues]]

Changes

apparent new resource oriented error messages #105

Added new exceptions in iRODS 4.1, especially for resource hierarchies, and did some organization of the exception tree by introducing new super-classes.

resource avu queries failing #104

Moved resource queries away from old string building approach to the composition by builder approach, enhanced the unit testing. This fixed some errors in resource AVU queries with 4.1.

Read length set to zero on replication with iRODS 4.1 #106

Added backwards-compatible processing for new replicate API number.

Read length set to zero on copy with iRODS 4.1 #107

Added backwards-compatible processing for copy API number and improved overwrite logic

Error listing replicas in a resource group (cat unknown table) #108

Resource groups are no longer a concept, so some operations using resource groups now throw an UnsupportedOperationException when ussued against a 4.1+ iRODS host. These operations continue to be supported pre 4.1. Unit test code was adjusted.

testTrimReplicasForDataObjectByResourceNameInvalid fails with uncaught -78000 #109

Added a ResourceNotFoundException in the hierarchy. For prior to 4.1, will maintain current behavior of silently ignoring, which in retrospect might be a bit odd. But no surprises! From 4.1+ will throw a DataNotFoundException. It's a little messy, may rethink that later.

Read length set to 0 on phymove, likely protocol change #111

Fixed phymove api numbers, maintains backwards compatability

Jargon 4.0.2.2-RELEASE

22 May 18:40
Compare
Choose a tag to compare

The following is a minor Jargon release. This is essentially minor housekeeping to clear the way for the upcoming 4.0.2.3 release, which provides compatibility with the upcoming iRODS 4.1 server.

Project: Jargon-core API

Date: 05/22/2015

Release Version: 4.0.2.2-RELEASE

git tag: 4.0.2.2-RELEASE

Developer: Mike Conway - DICE

News

Misc fixes and features for Cyberduck integration, other minor fixes

Release milestone https://github.com/DICE-UNC/jargon/milestones/Maintenance%20release%204.0.2.2%20with%20misc%20Cyberduck%20integration

Please go to [[https://github.com/DICE-UNC/jargon]] for the latest news and info.

Jargon-core consists of the following libraries

  • jargon-core - base libraries, implementation of the iRODS protocol
  • jargon-data-utils - additional functionality for dealing with iRODS data, such as building trees, storing information in iRODS on behalf of applications, and doing diffs between local and iRODS
  • jargon-user-tagging - code for using free tagging and other metadata metaphors on top of iRODS
  • jargon-user-profile - allows management of user profile and related configuration data in a user home directory
  • jargon-ticket - support for ticket processing
  • jargon-httpstream - stream http content into iRODS via Jargon
  • jargon-ruleservice - support for running and managing rules from interfaces
  • jargon-workflow - support for iRODS workflows

Requirements

*Jargon depends on Java 1.7+
*Jargon is built using Apache Maven2, see POM for dependencies
*Jargon supports iRODS 3.0 through iRODS 3.3.1 community, as well as iRODS 4.0.3 consortium

Libraries

Jargon-core uses Maven for dependency management. See the pom.xml file for references to various dependencies.

Note that the following bug and feature requests are logged in GForge with related commit information [[https://github.com/DICE-UNC/jargon/issues]]

Changes

Integration misc with CyberDuck #101

Misc small changes as we test Cyberduck integration with iRODS. This is a catch-all issue for many minor changes.

Authenticates as the proxy instead of client #100

Handle authentication with proxy user, per a patch supplied by Tony Edgin at iPlant (Thanks!)

Option to obtain MD5 from server after upload is complete #89

Breaking out checksum utilities to its own service object (DataObjectChecksumUtilitiesAO) and beginning to add richer hooks for
various checksum management scenarios. This was originally done to have simpler hooks for CyberDuck. Eventually checksum code in various places will be deprecated and will point to these consolidated services.

jargon-conveyor migration to idrop #120

Took jargon-conveyor out of this project to clarify roles. Conveyor is tied to iDrop, and we are making jargon core libs focused on iRODS interactions and protocols. This also helps with the move to integrate jargon testing into CI at the consortium

stand in entries for unviewable dirs in strictacl code need to set last entry #121

Fake stand-in dirs when doing listings need to set 'last entry' so that looping code with results can use it in for() loops properly. Was causing an infininite loop in the irods-webdav code.

Jargon 4.0.2.1 Release

23 Apr 15:12
Compare
Choose a tag to compare

See the readme.md file for details.

This is the the release for Jargon 4.0.2.1, which is primarily a bug-fix, compatibility, and performance enhancement release of the core iRODS Java API.

This version is backwards compatible with iRODS 3.3.1, and certified against iRODS 4.0 versions up to 4.0.3. Binary versions are available in the DICE-Maven repo on GitHub.

4.0.2.1-RC1

21 Feb 15:30
Compare
Choose a tag to compare
4.0.2.1-RC1 Pre-release
Pre-release

Jargon 4.0.2.1 Release Canddiate 1

See the readme.md file for details.

This is the first candidate for Jargon 4.0.2.1, which is primarily a bug-fix, compatibility, and performance enhancement release of the core iRODS Java API.

This version is backwards compatible with iRODS 3.3.1, and certified against iRODS 4.0 versions up to 4.0.3. Binary versions are available in the DICE-Maven repo on GitHub.

4.0.2-RELEASE

17 Sep 18:56
Compare
Choose a tag to compare

Jargon Core API

work on milestone: https://github.com/DICE-UNC/jargon/issues?milestone=4&state=open

Project: Jargon-core API

Date: 09/16/2014

Release Version: 4.0.2

git tag: 4.0.2-RELEASE

Developer: Mike Conway - DICE

News

This release marks compatability with iRODS 4.0.3, integration work with the iRODS Consortium CI infrastructure, and a large number of accumulated fixes
and features marking the transition to the iRODS consortium model.

Please go to [[https://github.com/DICE-UNC/jargon]] for the latest news and info.

Jargon-core consists of the following libraries

  • jargon-core - base libraries, implementation of the iRODS protocol
  • jargon-data-utils - additional functionality for dealing with iRODS data, such as building trees, storing information in iRODS on behalf of applications, and doing diffs between local and iRODS
  • jargon-user-tagging - code for using free tagging and other metadata metaphors on top of iRODS
  • jargon-user-profile - allows management of user profile and related configuration data in a user home directory
  • jargon-conveyor - transfer manager for managing and synchronizing data with iRODS
  • jargon-ticket - support for ticket processing
  • jargon-httpstream - stream http content into iRODS via Jargon
  • jargon-ruleservice - support for running and managing rules from interfaces
  • jargon-workflow - support for iRODS workflows

Requirements

*Jargon depends on Java 1.6+
*Jargon is built using Apache Maven2, see POM for dependencies
*Jargon supports iRODS 3.0 through iRODS 3.3.1 community, as well as iRODS 4.0.3 consortium

Libraries

Jargon-core uses Maven for dependency management. See the pom.xml file for references to various dependencies.

Note that the following bug and feature requests are logged in GForge with related commit information [[https://github.com/DICE-UNC/jargon/issues]]

Bug Fixes

PAM/SSL issues and slowness in workflow processing #27

Fixed PAM flush behavior for versions of iRODS > 3.2, avoiding those flushes when not necessary. This can cause significant response time issues and was only needed to work around a bug in earlier versions of iRODS PAM processing.

gen query error with IN statement #17

Fix IN statenent in GenQuery processing

improvements to efficiency of stream io transfers #16

Additional buffering and paremeter adjustments to improve file i/o streaming

Features

implement checksum variants #24

implement pluggable checksum generation/validation (#24)

remove cache of objStat for IRODSFile operations #34

IRODSFile uses a scheme to cache information to respond to exists, isFile, length, and other requests.

As these sorts of requests are made multiple times in client scenarios, it was originally coded to cache that information once (it obtains an objStat in the background), rather than calling iRODS each time a file.xxx() method was called.

That can save a good deal of traffic, but requires calling reset() to clear the cache on the client side.

The cache semantics were removed and reset() now is deprecated and has no effect.

Significant development of new transfer framework (conveyor) to replace older transfer engine.

Conveyor is a drop-in framework to manage a persistent queue of transfers with file-by-file accounting. This will be extended in later releases to provide a client-side rule
engine that can manage pre and post transfer and pre and post file operation workflows on the client side. Conveyor is embedded within iDrop and can also be easily incorporated
into other interfaces and tools.

Add flow manager to conveyor #11

Add flow manager support to conveyor framework. This is a client side rule engine to interact with conveyor. FlowManager allows definition of Java based microservices and chaining into workflows using a Groovy based DSL

Mounted collection support

Support has been added to interact with iRODS mounted collections, including list/read/write operations

Support for rule editing and execution from interfaces

Support for interactive rule editing, with extended methods and classes to assist in interactive editing and running of iRODS rules, has been added
in the jargon-ruleservice project

iRODS Workflow support

Basic workflow support has been added in the jargon-workflow subproject to be able to parse and execute iRODS workflows

CI integration with iRODS 4 #18

Additional code and adjustments to support CI integration at iRODS Consortium. Testing now possible, with a likely second round of changes in 3.0.3 to fully automate Jargon testing in CI

Other Changes

Added capability to compute a SHA1 checksum via streaming to support ModeShape