Difference between revisions of "EPrints 3.4.6"

From EPrints Documentation
Jump to: navigation, search
(Added 3.4.6 release page)
 
m (Known Issues)
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
This page contains information about the provisional EPrints v3.4.6 tag and release on GitHub.  A date for this release is yet to be scheduled.
+
{{releasenotes}}
  
== Planned Features and Improvements ==
+
This page contains information about the provisional EPrints v3.4.6 tag and release on GitHub.
See [https://github.com/eprints/eprints3.4/milestone/7 3.4.6 milestone on GitHub] for more details.
+
 
 +
== Release Notes ==
 +
EPrints 3.4.6 is now available on [https://github.com/eprints/eprints3.4/releases/tag/v3.4.6 GitHub].
 +
* '''Zero codename:''' Creme Brulee Cryoseism
 +
* '''Publications flavour codename:''' Affogato Snowmelt
 +
 
 +
=== New Dependencies ===
 +
Check earlier dependencies for [[EPrints 3.4.5]] and before.
 +
 
 +
=== Changes Since 3.4.5 ===
 +
 
 +
==== New Functionality ====
 +
* Adds <code>unlink_lib</code> option to <code>tools/epm</code>.
 +
* Adds <code>--to-link</code> flag to <code>unpack</code> option of <code>tools/epm</code> to allow an EPM file to be unpack so it can subsequently be deployed by <code>link_lib</code> option.
 +
* [https://github.com/eprints/eprints3.4/issues/340 Provide support for converting HEIC and WEBP thumbnails]
 +
* Adds support for setting default reply-to when separate <code>$c->{adminemail}</code> and <code>$c->{sendermail}</code>
 +
* [https://github.com/eprints/eprints3.4/issues/388 Allows certain URL paths to be blocked for certain IPs]
 +
* [https://github.com/eprints/eprints3.4/pull/387 Initial Signposting integration]
 +
 
 +
==== Security and Privacy Improvements ====
 +
* [https://github.com/eprints/eprints3.4/issues/347 Implement stronger password hashing]
 +
* [https://github.com/eprints/eprints3.4/issues/344 Creates and enables <code>export_privacy</code> setting to prevent export formats that include email addresses to be publicly accessible by default].
 +
* Ensure <code>ga.js</code> is always served on HTTPS
 +
* Makes sure <code>cache</code> parameter value provided by search form is a number to prevent URL injection.
 +
 
 +
==== General Improvements ====
 +
* [https://github.com/eprints/eprints3.4/issues/336 Implement Recaptcha field to work with Google ReCAPTCHA v3]
 +
* [https://github.com/eprints/eprints3.4/issues/339 Sets <code>ignore_login_ip = 1</code> by default if HTTPS is enabled.
 +
* [https://github.com/eprints/eprints3.4/issues/345 Improvements Accessibility based on issues raised by axe DevTools]
 +
* [https://github.com/eprints/eprints3.4/issues/348 Improves message when file retrieval fails]
 +
* Adds <code>.gitignore</code> for ingredients other than those included, so those deploying EPrints using Git do not see new ingredients as uncommitted.
 +
* Updates and tidies <code>SystemSettings.pm</code> and <code>SystemSettings.pm.in</code>
 +
* [https://github.com/eprints/eprints3.4/issues/355 Adds function to get local path on disk for file object]
 +
* [https://github.com/eprints/eprints3.4/pull/357 Overwrites media video stream if incoming stream is higher res]
 +
* Uses <code>export</code> version of citation if exists (rather than <code>default</code>) for HTML export of data objects
 +
* [https://github.com/eprints/eprints3.4/pull/359 Adds title attribute for preview images to display on hover]
 +
* Adds function to test if citation style file exists
 +
* Allows truncated URL linls to set a <code>target</code> attribute
 +
* Provide large icons to be printed by EPC <code>icon</code> function
 +
* Added EPC <code>text</code> function to print out phrases into HTML attributes values
 +
* [https://github.com/eprints/eprints3.4/issues/362 Allows certain HTML formatting tags in imports, (e.g. from PubMed)]
 +
* Adds title for action button image
 +
* Allows fields of various types to be more customisable in search forms
 +
* Reports useful error message if user tries to remove subject that has children
 +
* [https://github.com/eprints/eprints3.4/issues/353 Allows way to pass timeout to indexer daemon]
 +
* [https://github.com/eprints/eprints3.4/pull/351 Aligns headings when Itemref occurs within Compound Metafield]
 +
* Log failure if email attempts send with <code>to_email</code> or <code>to_list</code> set
 +
* Allows <code>EPrints::Repository::render_option_list</code> to render select box as disabled
 +
* Ensures more consistent use of space for results listings where div rather than table rows are now used for better Accessibility
 +
* Better margin for search results toolbar (e.g. Batch Edit)
 +
* [https://github.com/eprints/eprints3.4/issues/367 Organise fields under stage in EPrint::View screen by workflow rather than data object]
 +
* [https://github.com/eprints/eprints3.4/issues/370 Rewrite CitationCache code to use EPrints API rather than SQL query]
 +
* [https://github.com/eprints/eprints3.4/issues/360 Allow "make open access" on request copy responses a disable-able field]
 +
* [https://github.com/eprints/eprints3.4/issues/376 Allow signed in user to be logged in Apache access logs]
 +
* [https://github.com/eprints/eprints3.4/pull/382 Adds lastmod attributes to entries in sitemap]
 +
* [https://github.com/eprints/eprints3.4/issues/381 Add <code>threads</code> option to ffmpeg invocations]
 +
* [https://github.com/eprints/eprints3.4/issues/392 Stop unnecessarily generating list of user's eprints twice for Manage Deposits page load]
 +
* [https://github.com/eprints/eprints3.4/issues/374 Uses <code>Text::Unidecode</code> primarily to tokenize input for indexing] (rather than manually defining mappings)
 +
* [https://github.com/eprints/eprints3.4/issues/373 Rework cpan_modules.pl to install all required Perl modules]
 +
* Allows EPC to render icon without a link
 +
* Adds commented out config option <code>show_ids_in_log</code>
 +
* Removes long since deprecated pagehooks functionality
 +
* Removes irrelevant <code>dbsid</code> config setting
 +
* Improvements to simplify login monitoring configuration
 +
* Remove reference to defunct <code>quiet</code> config setting
 +
 
 +
==== Bug Fixes ====
 +
* Fixes [https://github.com/eprints/eprints3.4/issues/332 Downloading document from preview image does not work for some filenames]
 +
* Fixes [https://github.com/eprints/eprints3.4/issues/333 Do not add <code>requester_userid</code> by default as access table can take a long time to add new fields.  However, ensure if field exists it is set to current user ID, if set].
 +
* Fixes serialization of EPM for <code>build</code> option of <code>tools/epm</code>.
 +
* Fixes issues with <code>disable</code> and <code>unpack</code> options for <code>tools/epm</code>.
 +
* [https://github.com/eprints/eprints3.4/issues/342 Duplicated "_label" span id]
 +
* Fixes [https://github.com/eprints/eprints3.4/issues/341 Tab children deemed decorative]
 +
* Fixes bug preventing user password updates from command line.
 +
* Fixes intermittent issue with <code>xmlns:xsi</code> attribute being defined twice on some <code>/cgi/oai2/...</code> pages.
 +
* Check that <code>uri</code> of relation is set before comparing its value for <code>EPrints::DataObj::remove_dataobj_relations</code>
 +
* Check that <code>uri</code> of relation is set before comparing its value for <code>EPrints::MetaField::Relation::to_sax_basic</code>
 +
* Check URL is set before testing its length in <code>EPrints::Extras::render_url_truncate_end</code>
 +
* Fixes <code>EPrints::XML::SAX::Writer::escape</code> to make sure <code>$str</code> is set before applying regular expression
 +
* Export bar form should use <code>rel_cgipath</code> not <code>http_cgiroot</code>
 +
* Actually use <code>size</code> when calling <code>EPrints::DataObj::Document::render_icon_link</code>
 +
* Ensure lookup of keyname is set before using it in <code>EPrints::Database::get_dataobjs</code>
 +
* Testing an import should set the <code>filename</code> parameter like it would in a real import
 +
* Checks <code>$c->{oai}->{comments}</code> is set before iterating over it.
 +
* Prevents bin script from complaining about email-less users.
 +
* Fixed EPC <code>contains</code> function to return a boolean value rather than a TRUE/FALSE string.
 +
* [https://github.com/eprints/eprints3.4/pull/365 Allows documents to <code>redo_thumbnails</code> even if they have no parent eprint]
 +
* Fixes wrong optione name for loading external DTDs in XML
 +
* [https://github.com/eprints/eprints3.4/issues/366 Fixes overloading of etaField <code>render_quiet</code> attribute by introducing <code>render_column_quiet</code> attribute
 +
* [https://github.com/eprints/eprints3.4/issues/369 Fixes unsecure request when uploading file]
 +
* [https://github.com/eprints/eprints3.4/issues/371 Fix encoding issues for bespoke Export plugins]
 +
* [https://github.com/eprints/eprints3.4/issues/334 Using page_id pin in page templates breaks editing static pages in web interface]
 +
* Checks value is set before performing a regular expression replace in <code>EPrints::MetaField::Search::form_value_basi</code>
 +
* [https://github.com/eprints/eprints3.4/issues/375 Return more appropriate 500 rather than 404 HTTP code if document present but database query fails]
 +
* [https://github.com/eprints/eprints3.4/issues/377 Fixes drag 'n' drop issues leading to zero byte files
 +
* [https://github.com/eprints/eprints3.4/issues/378 Fixes "More input rows" button affecting layout of Compound field tables in workflow]
 +
* Ensures clicking tabs on abstract pages does not reload page
 +
* [https://github.com/eprints/eprints3.4/pull/380 Ensures fields sent in autocompleter requests are encoded]
 +
* [https://github.com/eprints/eprints3.4/issues/383 Allows phrase editor to add phrases for alternative languages]
 +
* [https://github.com/eprints/eprints3.4/issues/385 Fixes bug with edit subjects if ID field value is too long]
 +
* Fixes warnings produced when <code>readonly</code> or <code>show_help</code> MetaField attributes are not defined when expected
 +
* [https://github.com/eprints/eprints3.4/issues/48 Fixes further issue with <code>toform</code> attribute for <code>itemref</code> MetaField]
 +
* Fixes warnings when using <codeEPrints::UTils::compare_version function
 +
* [https://github.com/eprints/eprints3.4/issues/323 Fixes ancestor numbers (of items) in subject-based browse views]
 +
* [https://github.com/eprints/eprints3.4/issues/390 Fixes slow page loads when user has lots of items under Manage Deposits]
 +
* [https://github.com/eprints/eprints3.4/issues/249 Reverts changes to implement subject MetaField's <code>top</code> attribute as a function] (Best done through conditional in the workflow)
 +
* Fixes XSLT import/export plugins so they no longer prevent EPrints being run using Apache MPM Event (i.e. threaded)
 +
* [https://github.com/eprints/eprints3.4/issues/384 Ensure search pages respect <code>template</code> specified in their configuration]
 +
* Makes sure XML converted to string does not contain any control/non characters that might break if they attempt to be rendered within XML.
 +
* Fixes wrong config variable loads for <code>citation_default</code> for Dublin Core and simple export.
 +
* Extends sanitization invalid characters for values of ID metadata fields and their subclasses.
 +
* Fixes various typos
 +
* [https://github.com/eprints/eprints3.4/issues/395 Fixes broken <code>eprint_status</code> filters when <code>get_users_owned_eprints</code> configuration function is defined]
 +
* [https://github.com/eprints/eprints3.4/issues/394 Fixes incorrect white space in citations rendered in emails]
 +
 
 +
== Known Issues ==
 +
=== Running generate_apacheconf with an archive without a cfg/static/javascript/auto/ directory ===
 +
If you are upgrading an EPrints repository and your archive(s) do not have a <code>cfg/static/javascript/auto/</code> directory then <code>bin/generate_apacheconf</code> will fail.  This is because 3.4.6 [https://github.com/eprints/eprints3.4/issues/369 introduces] code that makes sure that the maximum upload limit is configured to be the same in the Apache configuration and in EPrints' JavaScript, which prevents you from trying to upload files larger than a certain size.  This is useful because if you just updated the JavaScript, EPrints would allow the upload to start but would then fail when the Apache limit was reached.  So not only would you not be able to upload the file but you would waste a load of time and possibly not understand why the upload failed.
 +
 
 +
To fix this issue for this version of EPrints, just make sure your archive (or archives) all have a <code>cfg/static/javascript/auto/</code> before running <code>bin/generate_apacheconf</code>.  Future versions of EPrints will automatically create this directory if it does not already exist.
 +
 
 +
=== Subject search does not work in workflows ===
 +
If you have a subject field which renders as a subject tree in a workflow, the search form will not work.  This is due to the [https://github.com/eprints/eprints3.4/issues/246 fix for ensuring Xapian respect a MetaField's <tt>text_index</tt> value].  This has the consequence of not indexing the <tt>ancestors</tt> field for subjects.  This is used by the search to filter out subjects that are not part of the subject sub-tree for a particular MetaField.  [https://github.com/eprints/eprints3.4/commit/3fbd47ccc0d9e66514455c693b62b902790e3326 This patch] fixes [https://github.com/eprints/eprints3.4/issues/411 the issue].  However, you will also need to re-index all subjects:
 +
EPRINTS_PATH/bin/epadmin reindex ARCHIVE_ID subject
 +
 
 +
=== Approved document requests still force user to login ===
 +
This issue was caused by setting the <code>samesite</code> attribute for the <code>eprints_doc_request</code> cookie to <code>Strict</code>, this cookie is intended to allow the user to access the restricted document for the remainder of their session.  Changing this attributes means some browsers (e.g. Firefox) still send the user to a login page even when clicking the approved request link in the email they received.  This is because the change made to the cookie prevents its from being stored because <code>/cgi/process_request</code> never fully serves a page.  [https://github.com/eprints/eprints3.4/commit/278b5e599dc9f6aa1e4a20f3b211afabb2a4ea9a This patch] fixes the [https://github.com/eprints/eprints3.4/issues/413 the issue].
 +
 
 +
== Further Planned Features and Improvements ==
 +
See [https://github.com/eprints/eprints3.4/milestone/8 3.4.7 milestone on GitHub] for more details.
  
 
[[Category:Eprints3.4]]
 
[[Category:Eprints3.4]]
[[Category:Planned Releases]]
+
[[Category:Releases]]

Latest revision as of 10:32, 13 November 2024

Release Notes

3.4 | 3.4.1 | 3.4.2 | 3.4.3 | 3.4.4 | 3.4.5 | 3.4.6


3.3 | 3.3.5 | 3.3.6 | 3.3.7 | 3.3.8 | 3.3.9 | 3.3.10 | 3.3.11 | 3.3.13 | 3.3.14 | 3.3.15 | 3.3.16


3.2.0 | 3.2.1 | 3.2.2 | 3.2.3 | 3.2.4 | 3.2.5 | 3.2.6 | 3.2.7 | 3.2.8 | 3.2.9


3.1.0

This page contains information about the provisional EPrints v3.4.6 tag and release on GitHub.

Release Notes

EPrints 3.4.6 is now available on GitHub.

  • Zero codename: Creme Brulee Cryoseism
  • Publications flavour codename: Affogato Snowmelt

New Dependencies

Check earlier dependencies for EPrints 3.4.5 and before.

Changes Since 3.4.5

New Functionality

Security and Privacy Improvements

General Improvements

Bug Fixes

Known Issues

Running generate_apacheconf with an archive without a cfg/static/javascript/auto/ directory

If you are upgrading an EPrints repository and your archive(s) do not have a cfg/static/javascript/auto/ directory then bin/generate_apacheconf will fail. This is because 3.4.6 introduces code that makes sure that the maximum upload limit is configured to be the same in the Apache configuration and in EPrints' JavaScript, which prevents you from trying to upload files larger than a certain size. This is useful because if you just updated the JavaScript, EPrints would allow the upload to start but would then fail when the Apache limit was reached. So not only would you not be able to upload the file but you would waste a load of time and possibly not understand why the upload failed.

To fix this issue for this version of EPrints, just make sure your archive (or archives) all have a cfg/static/javascript/auto/ before running bin/generate_apacheconf. Future versions of EPrints will automatically create this directory if it does not already exist.

Subject search does not work in workflows

If you have a subject field which renders as a subject tree in a workflow, the search form will not work. This is due to the fix for ensuring Xapian respect a MetaField's text_index value. This has the consequence of not indexing the ancestors field for subjects. This is used by the search to filter out subjects that are not part of the subject sub-tree for a particular MetaField. This patch fixes the issue. However, you will also need to re-index all subjects:

EPRINTS_PATH/bin/epadmin reindex ARCHIVE_ID subject

Approved document requests still force user to login

This issue was caused by setting the samesite attribute for the eprints_doc_request cookie to Strict, this cookie is intended to allow the user to access the restricted document for the remainder of their session. Changing this attributes means some browsers (e.g. Firefox) still send the user to a login page even when clicking the approved request link in the email they received. This is because the change made to the cookie prevents its from being stored because /cgi/process_request never fully serves a page. This patch fixes the the issue.

Further Planned Features and Improvements

See 3.4.7 milestone on GitHub for more details.