Difference between revisions of "New Features in EPrints 3.2"
DaveTarrant (talk | contribs) |
(→New and altered Config options) |
||
Line 166: | Line 166: | ||
These need documenting and noting which ones we recommend setting/altering when upgrading. | These need documenting and noting which ones we recommend setting/altering when upgrading. | ||
+ | * Set "hide_document_conversion" to hide the Convert link on the document workflow | ||
* Broke up SystemSettings into logically named files | * Broke up SystemSettings into logically named files | ||
* Can now disable a repository through a system configuration setting | * Can now disable a repository through a system configuration setting |
Revision as of 19:00, 10 February 2010
This page is now describing actual features, rather than planned.
The Planned Features may be useful to improve the quality of descriptions on this page.
Contents
- 1 NOTE
- 2 Database
- 3 API
- 4 Documents
- 5 Deposit Interface
- 6 Search & Indexing
- 7 Unicode
- 8 REST
- 9 WebDav
- 10 SWORD2
- 11 Linked Data Support
- 12 Collections Support
- 13 Semantic Web Support
- 14 Storage Layer
- 15 Speed
- 16 Import
- 17 EPC & EPrints Script
- 18 OAI
- 19 Unit Tests
- 20 Metadata Types
- 21 Administration Interface
- 22 Editorial Interface
- 23 User Defined Datasets
- 24 Command Line Tools
- 25 Export
- 26 Abstract Page
- 27 Phrases
- 28 Views
- 29 Misc. Changes
- 30 Key Bugfixes
- 31 New and altered Config options
NOTE
- We now recommend LibXML in preference to GDOME. It's less buggy, and easier to install.
- Upgrade may take several hours as it cleans up the unicode issues in the database.
Database
- In addition to MySQL, EPrints 3.2 now supports Oracle and Postgres
API
- This release features a formal API. Not all functionality is yet available via the API, but will be added slowly and carefully in future releases.
- The bugbear of EPrints internals, EPrints::Session has been merged into EPrints::Repository. All old code will still work.
Documents
- Thumbnails are now documents in their own right
- Built in document-format icons, as well as those you configure yourself
- Thumbnailing now happens in the background as part of the indexer process
Deposit Interface
- Edit Locking locks records reduces risk of 2 people editing a record at the same time.
- Option to extract metadata and images from OpenXML files (.docx and .pptx)
- Offers options to users and editors on the deposit screen if there are problems
- Document upload screen has been redesgined to be clearer.
- Split document uploading into adding a new document and editing existing documents
- The documents inside an EPrint may now be re-ordered
- Progress bar on file upload
- Document upload methods (file, url, zip etc.) are now plugin-based and can be extended
- When attempting to deposit an eprint with problems show Save button
- Made it an option to provide action buttons top and bottom in workflow
Search & Indexing
- The search library has been entirely re-written to reduce use of cache tables and to improve performance. Simple searches are now over ten times faster.
- The indexer now uses plugins, so you can schedule other tasks, like thumbnail conversion, to be done in the background.
- Added config option "cache_max" to limit the cachemap tables used
Unicode
- EPrints use of unicode has been significantly improved.
REST
- A "REST" style interface to objects, via /rest/eprint/23/title.txt, for example. This can also support "PUT" to alter fields!
WebDav
- ???
- (tdb: Too buggy for official release - no decent clients available on standard platforms)
SWORD2
- SWORD2 (1.3 Specification) is supported.
Linked Data Support
- Ability to establish arbitrary relations between objects or provide additional metadata in triple form.
Collections Support
- Collections can be built via use of linked data, object ids and relationships.
Semantic Web Support
- RDF+XML Format
- N3 Format
- URIs for all objects, including non dataobjs. eg. Authors, Events, Locations.
- BIBO Ontology
- Extendable
- URIs now use content negotiation to decide which export plugin to redirect to, based on mime-types supplied by plugins and the "accept" header.
- Relations between eprints and documents
Storage Layer
- Now uses plugins to store files
- Local Filesystem
- Amazon S3
- Sun Cloud Storage
Speed
- Search & Indexing much faster
- Import is faster
- Other parts of the code have been audited for speed, and optimised.
Import
- Modified Import UI to allow a per-plugin/single/bulk workflow
EPC & EPrints Script
- New EPC tag: epc:debug, which is like print but sends the XML to STDERR for debugging purposes.
- New EPC tag: epc:set which defines a variable inside it's scope.
- Improvements to the epc:foreach processing (better handling of multiple object types in lists)
- Added "limit" option to epc:foreach to limit the number
- Inside <epc:foreach> blocks an $index variable is set, allowing you to test which interation it's on.
- New EPScript methods: citation_link, dataset, related_objects, url, doc_size, is_public, thumbnail_url, preview_link, icon, human_filesize, control_url, contact_email, property, substr, filter_compound_list, to_data_array, pretty_list, array_concat, action_list, action_button, action_title, action_description, action_icon
- New Script methods:
- $data.property($key) which takes a string and returns a property from a hash or dataobj.
- $eprint.documents() which returns all the "real" (non-volatile) documents.
- New Script inline math functions: + - / * %
- New EPrints Script datatype: DATA_ARRAY: Represents a list of tuples of [$value, $epscript_type]
OAI
- Stateless OAI Interface means no timing-out
- Support for multiple constraints in custom OAI sets
Unit Tests
- We have introduced unit-tests to improve both the short and long term quality of our code.
Metadata Types
- Counter (incrementing value)
- Timestamp (defaults to the current time)
- UUID
- MetaField::Search now has two properties:
- "namedfields" which is an array ref of field names to search OR
- "namedfields_config" which is the name of a config variable
- MetaField::Search can now be used in any workflow (not hard-coded to editpermfields)
- A captcha pseudo-field based on http://recaptcha.net/
- added "repeat_secret" property to secret fields that will render a confirmation box which is checked with validate()
- Storable (store arbitrary Perl structures - internal use)
Administration Interface
- Converted Admin screen into several tabs.
- Improved the BatchEdit interface
- Show a progress bar while records are updated during batch edit
Editorial Interface
- Improved "Review" Screen
- The "Review buffer" can now be filtered for better management of large review buffers.
- When an editor provide the "Move to Review" button if there are problems
User Defined Datasets
- Allows 3rd party tools to create their own additional datasets
- Suite of interface screens to work with these new datasets
Command Line Tools
- Allow eprint ids to be specified for redo_thumbnails
Export
- Added support for OAI-ORE
- Added support for JSONP
- Added support for an 'n' argument to search exports
- Added arguments support to export plugins. Passed by CGI arguments on abstract search or by the --arg option in bin/export
Abstract Page
- Now generated with a citation
- Shows an "action list", so plugins can register to appear on this page
Phrases
- Primary method of editing phrases is now the web interface
- Added "ref" option to phrases, which will cause the referenced phrase to be used instead - Equivalent to calling the referenced phrase directly
Views
- Entire rendering of item lists and menus can be over-ridden by a function
Misc. Changes
- Can now disable a repository through a system configuration setting
- Refactoured DataObj::get_defaults so that you can now specify default values through a "default_value" property
- Most of get_defaults() can now be specified through the metafield spec.
- Can now apply multiple changes to the same field (???? I assume this means metafield?)
- Preference field for users (to store k/v pairs in)
Key Bugfixes
- Fixed login page not using phrase for title
- Fixed spurious history objects being created on document upload
- Fixed an HTML insertion bug in the <title> element [Brian D. Gregg]
- Fixed schema errors in uketd_dc and METS/MODS export plugins
- Fixed bug in Compound creation of Set types that squashed the set options
- Fixed order static directories are searched to: repository->theme->system
- Support long values in browse views by using the MD5 of the value,
- Subject inputform component can now be used with singular values
- Fixed bug that is_advertised property on export plugins was being ignored.
- Fixed bug in indexer which meant it didn't index in a round-robin fashion.
New and altered Config options
These need documenting and noting which ones we recommend setting/altering when upgrading.
- Set "hide_document_conversion" to hide the Convert link on the document workflow
- Broke up SystemSettings into logically named files
- Can now disable a repository through a system configuration setting
- Moved most of eprint_render.pl into a citation file: summary_page.xml
- Updated defaults views.pl to show current config.
- Improved document_upload.pl layout to make it easier to add/remove suffix to mimetype mappings.
- Added URI to EPrint Summary Page
- Added RDF+XML and N3 Document formats
- New metafield option: $defaults{render_max_search_values} = 5;
- Added "show_help" option to workflow component to disable collapsing Usage: show_help={always,toggle,never}
- Added config option "cache_max" to limit the cachemap tables used
- user defined datasets
- Made it an option to provide action buttons top and bottom in workflow
- $c->{locking}->{eprint}->{enable} = 1;
- $c->{locking}->{eprint}->{timeout} = 600;
- REST privs
- check registation email callback
- epc:debug,
- lots of eprints script functions
- views.pl
- "DEFAULT;render_fn=render_view_items_3col_boxes",
- render_menu => "render_view_menu_3col_boxes"
- ranges & variations were introduced in 3.1.? but need documenting.
- Storage plugins
- adding actions to absract page