The iRODS Consortium and RENCI are pleased to announce iRODS 4.2.0.
Released live on stage from the iRODS Workshop at Supercomputing 2016
iRODS 4.2.0 is the product of over a year and a half of refactoring and significant reorganization of the rule engine framework into the seventh iRODS plugin interface.
All the code and current working issues are hosted at GitHub: https://github.com/irods/irods
APT and YUM Repositories are available at https://packages.irods.org.
- Pluggable Rule Engine – Seventh plugin interface now supports writing rule engines for any language. The iRODS Rule Language has been moved to a plugin, alongside a default policy C++ rule engine.
- First Class API Plugins – Enabling dynamic policy enforcement points (PEPs) and full parameter serialization for every plugin operation
- Refactored build system – CMake, Clang, APT/YUM repositories
- CMake – Now a standard CMake project, much more developer friendly
- Clang – All supported platforms now building the C++14 codebase
- Packages separated – Cleaner dependencies, dev and runtime ready for developers
- APT/YUM Repositories – Packages now hosted at RENCI, making installations and upgrades much easier
- All control scripts in Python – Reusable module, reduced codepaths
- New process model – Two long running processes to amortize dynamic linking startup cost
- Configuration schemas now included – Default setups will no longer need a public network connection for validation
- Run-In-Place now a first class citizen – Now called Non-Package Install
- Externalization of code into separate repositories
- iCommands client
- Fuse client
- Microservice objects (MSOs)
- idbug removed
- iphybun, ixmsg, irodsXmsgServer marked as deprecated
- Resource hierarchies refactored to use IDs – Upgrades will experience a one-time full table scan whereby all data objects are updated. A 10M data object lab test installation took 13 minutes to update. 100M data objects are estimated to take 2-3 hours to update.
- Distributing iCommands to users who do not have root is not yet supported for 4.2. It will be included again in a later release.
- Quieter rodsLog during normal operations