Difference between revisions of "EPrints 3.4.5"

From EPrints Documentation
Jump to: navigation, search
(Added EPrints 3.4.5 page)
 
(Release Notes: Known issues should be own section)
 
(21 intermediate revisions by 3 users not shown)
Line 1: Line 1:
This page contains information about the provisional EPrints v3.4.5 tag and release on GitHub.  A date for this release is yet to be scheduled.
+
{{releasenotes}}
  
== Planned Features and Improvements ==
+
== Release Notes ==
* ''To be decided''
+
EPrints 3.4.5 is now available on [https://github.com/eprints/eprints3.4/releases/tag/v3.4.5  GitHub] and [https://files.eprints.org/2789/ files.eprints.org].
 +
* '''Zero codename:''' Smoothie Squall
 +
* '''Publications flavour codename:''' Kombucha Hypercane (1.5)
 +
 
 +
=== New Dependencies ===
 +
<tt>html2text</tt> RPM / DEB required instead of <tt>elinks</tt>.
 +
 
 +
Check earlier dependencies for [[EPrints 3.4.4]] and before.
 +
 
 +
=== Changes Since 3.4.4 ===
 +
 
 +
==== New Functionality ====
 +
* Adds [[:API:tools/console|console-based REPL tool]]
 +
* [https://github.com/eprints/eprints3.4/issues/290 Adds <code>staged</code> status for indexer tasks so they can be run outside the EPrints indexer.  E.g. using a cron job].
 +
 
 +
==== Security and Privacy Improvements ====
 +
* [https://github.com/eprints/eprints3.4/issues/245 Adds PIN based security for documents].
 +
* [https://github.com/eprints/eprints3.4/issues/246 Makes Xapian index obey <tt>text_index</tt> attribute for fields].
 +
* [https://github.com/eprints/eprints3.4/issues/276 Allows restricted documents to not have their full texts indexed].
 +
* Uses HTTPS for CrossRef lookup of DOIs.
 +
* [https://github.com/eprints/eprints3.4/issues/278 Removes (HTTP only) <code>eprints_session</code> if HTTPS is enabled].
 +
* Improves target URL validation so only local URLs are allowed and not just paths.
 +
* [https://github.com/eprints/eprints3.4/issues/281 Explicitly disables password field autocomplete].
 +
* [https://github.com/eprints/eprints3.4/issues/237 Improves "request copy" security].
 +
* [https://github.com/eprints/eprints3.4/issues/311 Ensures <code>SameSite=Strict</code> for all cookies].
 +
* Better force HTTPS when generating repository URLs.
 +
 
 +
==== General Improvements ====
 +
* Updates and makes consistent list of software contributors.
 +
* Adds get_search_conditions_not_ex for float fields.
 +
* [https://github.com/eprints/eprints3.4/issues/240 Updates DOCTYPE to be more standards compliant].
 +
* Updates <tt>pub_lib</tt> homepage links for browse views.
 +
* [https://github.com/eprints/eprints3.4/issues/242 Allows MetaField::Subject to have user-defined render_value].
 +
* [https://github.com/eprints/eprints3.4/issues/238 Improves OAI-PMH representation of records that once were live].
 +
* [https://github.com/eprints/eprints3.4/issues/195 Allows <tt>userid</tt> to be logged in Access data objects when user is logged in].
 +
* [https://github.com/eprints/eprints3.4/pull/239 Adds ability to manipulate element attributes].
 +
* [https://github.com/eprints/eprints3.4/pull/244 Updates latest_tool to use filters].
 +
* [https://github.com/eprints/eprints3.4/pull/250 Adds id and classes for individual styling of "Manage records" page].
 +
* [https://github.com/eprints/eprints3.4/pull/252 Adds class attributes for "View details" table].
 +
* [https://github.com/eprints/eprints3.4/pull/254 Adds classnames to navigation items and links].
 +
* [https://github.com/eprints/eprints3.4/issues/256 Splits off <tt>senderemail</tt> from <tt>adminemail</tt> if this need to be different for DMARC reasons].
 +
* [https://github.com/eprints/eprints3.4/issues/261 Adds the optional attributes of resumptionToken in OAI-PMH].
 +
* [https://github.com/eprints/eprints3.4/pull/257 Table class for screens; Status, DatabaseSchema and MetaFieldListing].
 +
* [https://github.com/eprints/eprints3.4/issues/271 Adds <code>--prune</code> option to <code>generate_views</code>].
 +
* Various improvements to <code>check_xapian</code> script including <code>--facets</code> automatically using <code>xapian.facet</code> directory rathe than needing to specify in <code>--path</code>.
 +
* Adds verbose debug to <code>send_alerts</code> to advise when email is not sent as saved search notifications are only required when results are found.
 +
* [https://github.com/eprints/eprints3.4/issues/287 Set canonical URLs for abstract pages for better Google indexing].
 +
* Ensures sitemaps always uses HTTPS URLs if <code>securehost</code> is defined.
 +
* Breaks up show/hide help phrases to make them more compatible with Bootstrap.
 +
* [https://github.com/eprints/eprints3.4/issues/291 Makes task timeout for EPrints' indexer configurable].  Along with making other indexer settings configurable.
 +
* [https://github.com/eprints/eprints3.4/issues/296 Replaces <code>elinks</code> with <code>html2text</code> as application to extract text from HTML/XML files for indexing].
 +
* [https://github.com/eprints/eprints3.4/issues/299 Allows staff search to find results where <code>metadata_visibility</code> is not set to <code>show</code>].
 +
* [https://github.com/eprints/eprints3.4/issues/298 Allows XSL files to be viewed using <code>Config::View::XML</code> plugin].
 +
* [https://github.com/eprints/eprints3.4/issues/249 Allows <code>MetaField::Subject</code>'s <code>top</code> attribute to be set to a configurable function].
 +
* [https://github.com/eprints/eprints3.4/issues/286 Provides overarching setting for maximum file upload size].
 +
* [https://github.com/eprints/eprints3.4/pull/297 Significant phrase changes to facilitate better internationalisation].
 +
* [https://github.com/eprints/eprints3.4/issues/294 Allows screen plugins to use a bespoke page template].
 +
* [https://github.com/eprints/eprints3.4/issues/210 Removes implicit commit when reordering <code>multiple</code> fields].
 +
* [https://github.com/eprints/eprints3.4/issues/304 Adds separate CSS classes to top and bottom action buttons in workflow].
 +
* [https://github.com/eprints/eprints3.4/issues/306 Adds <code>$c->{retain_embargo_dates}</code> settings so dates can be retained when embargoes are lifted without causing any validation warnings or need to perpetually check old embargo dates].
 +
* [https://github.com/eprints/eprints3.4/issues/310 Prevent indexer.log filling up with errors from <code>pdftotext</code>].
 +
* [https://github.com/eprints/eprints3.4/pull/312 Additional CSS classes and IDs added for parts of input forms].
 +
* [https://github.com/eprints/eprints3.4/pull/317 Improvements to phrases used for icons in input forms and views].
 +
* [https://github.com/eprints/eprints3.4/issues/318 Render paragraphs from <code>reason</code>s in emails].
 +
* [https://github.com/eprints/eprints3.4/issues/321 Allow indexcodes to be regenerated as part of <code>epadmin reindex</code> when <code>--force</code> flag is used].
 +
* [https://github.com/eprints/eprints3.4/issues/322 Allow different phrases to be used for field names dependent on eprint's type].
 +
* [https://github.com/eprints/eprints3.4/issues/326 Allows date input fields to be rendered shorter].
 +
* Improves rendering/hiding of missing subjects depending on <code>render_quiet</code>.
 +
* Adds data-row... attributes to compound/multiple field renders.
 +
* Various improvements to POD documentation.
 +
 
 +
==== Bug Fixes ====
 +
* Fixes typo for <tt>_epname</tt> in RPM spec file.
 +
* [https://github.com/eprints/eprints3.4/issues/243 Adds properly referenced ARIA labels for sets and fields with bespoke <tt>search_input_style</tt>].
 +
* Gets EPrints install script to create <tt>EPRINTS_PATH/tmp</tt> directory with appropriate permissions.
 +
* [https://github.com/eprints/eprints3.4/issues/241 Stops including ARIA <tt>describedby</tt> if help text is empty].
 +
* [https://github.com/eprints/eprints3.4/issues/247 Fixes "Data too long for column 'word'" indexing errors].
 +
* [https://github.com/eprints/eprints3.4/issues/233 Now returns "410 Gone" HTTP code when item has been retired].
 +
* [https://github.com/eprints/eprints3.4/issues/255 Adds missing <code><help></code> and <code><title></code> elements used in phrases for 2nd+ document fields in eprint workflows].
 +
* [https://github.com/eprints/eprints3.4/issues/258 Fixes text indexing <tt>saved_search.spec</tt> causing problems with Xapian].
 +
* [https://github.com/eprints/eprints3.4/issues/262 Fixes HTTPS URLs not be parseable by <code>XML::LibXML->parse_file</code>].
 +
* [https://github.com/eprints/eprints3.4/issues/263 Fixes missing URL encoding of # in filename download links].
 +
* Checks <code>render_dynamic</code> attribute is set for <code>MetaField</code> before testing value
 +
* [https://github.com/eprints/eprints3.4/issues/265 Fixes LDAP-based login failures when accounts need to be created on-the-fly].
 +
* [https://github.com/eprints/eprints3.4/issues/266 Ensures <code>$c->{userhome}</code> and <code>$c->{urlpath}</code> are auto set correctly].
 +
* [https://github.com/eprints/eprints3.4/pull/269 Fixes missing parameter field when making phrase <code>limit_names_shown_label</code>].
 +
* Adds <code>poppler-utils</code> DEB dependency for <code>pdftotext</code> to index PDFs.
 +
* [https://github.com/eprints/eprints3.4/pull/275 Allows <code>PHDTHESIS</code> from BibTeX to be imported without error by correcting mappings for <code>thesis_type</code> and <code>thesis_name</code> fields].
 +
* [https://github.com/eprints/eprints3.4/issues/279 Uses original rather than proxied IP address in access record if proxied address is in (configurable) private IP address range].
 +
* [https://github.com/eprints/eprints3.4/issues/272 Fixes BibTeX import parsing by ignoring entries with empty of malformed citekeys].
 +
* [https://github.com/eprints/eprints3.4/issues/274 Fixes issues with both server-side and client-side caching of JavaScript and CSS auto files].
 +
* [https://github.com/eprints/eprints3.4/issues/284 Fixes search offset being forgotten when results reordered].
 +
* [https://github.com/eprints/eprints3.4/issues/285 Fixes search ordering reverting to "by relevance" when different default ordering is set].
 +
* [https://github.com/eprints/eprints3.4/issues/289 Makes redirects from short URLs to long URLs a 301 rather than 302 or 303].  Good for SEO.
 +
* [https://github.com/eprints/eprints3.4/pull/293 Ensures BibTeX export of <code>note</code> is not prevented is already used by <code>ispublished</code> field].
 +
* [https://github.com/eprints/eprints3.4/pull/295 Fixes incorrect location described in <code>lib/syscfg.d/README</code>].
 +
* Tidies up <code>replyto_name</code> used in emails when referenced user has not set their name.
 +
* [https://github.com/eprints/eprints3.4/issues/301 Fixes disabling <code>Config::Edit</code> plugins breaking "View Configuration"].
 +
* Gracefully handles template pin not being defined or mapped.
 +
* [https://github.com/eprints/eprints3.4/issues/253 Fixes incorrect counts for items for ancestor (e.g. parent) subjects in subject field based browse views].
 +
* [https://github.com/eprints/eprints3.4/pull/292 Fixes bug with grouping function being ignored in certain browse views].
 +
* [https://github.com/eprints/eprints3.4/issues/283 Ensures appropriate escaping in search serialization and setting of <code>$self->{op}</code> for <code>regexp</code> search condition].
 +
* [https://github.com/eprints/eprints3.4/issues/306 Fixes ordering of summary box <code>div</code>s on abstract pages].
 +
* [https://github.com/eprints/eprints3.4/issues/309 CRUD interface GET requests now return <code>NOT_FOUND</code> rather than <code>FORBIDDEN</code> for non-existent eprints].
 +
* [https://github.com/eprints/eprints3.4/pull/314 Removes redundant code from XHTML field rendering function].
 +
* [https://github.com/eprints/eprints3.4/commit/bd0a1e928b70478e4c25f2c818cc77d31b12c98f Ensures consistent ordering of RejectWithEmail / RemoveWithEmail buttons on review queue].
 +
* [https://github.com/eprints/eprints3.4/issues/319 Fixes check for whether JavaScript within uploaded files can run when viewed through EPrints].  Fixes change for [https://github.com/eprints/eprints3.4/issues/62 original issue].
 +
* [https://github.com/eprints/eprints3.4/issues/320 Adds more character mappings for indexer to fix issues with indexing tasks failing to complete due to duplicate index errors].
 +
* [https://github.com/eprints/eprints3.4/commit/ffd9b53079bc6969ba17671552aefd5b5d511c66|Removes unnecessary field defaults. Better restricts digits for int fields].
 +
* [https://github.com/eprints/eprints3.4/pull/325 Fixes ARIA typo in upload form].
 +
* [https://github.com/eprints/eprints3.4/issues/329 Fixes use of fieldsets in input/search from to make it easier and more consistent when modifying CSS].
 +
* [https://github.com/eprints/eprints3.4/issues/330 Deal with UTF8-MB4 characters that would break database queries].
 +
* Makes user menu bar and footer more responsive to page width.
 +
* Fixes word-wrapping overflow on homepage description list.
 +
* Various improvements to the <code>tidy_pids</code> script.
 +
* Various typos
 +
 
 +
== Known Issues ==
 +
 
 +
=== Long time to add <tt>requester_userid</tt> field to access data object ===
 +
Adding new columns to a database table that already contains a lot of records can take a long time.  The access table for EPrints can often have tens of millions of records.  At such a size adding a new column can take in the order of hours.  EPrints 3.4.5 add the new field <tt>requester_userid</tt>.  This is intended to capture the logged in user that is viewing or downloading an eprint/document.  This is useful for Open Education repositories that have different access permissions.  However, if you have a large access table you may want to [https://github.com/eprints/eprints3.4/commit/79683e8dadda91f5d4862b23fa7bd80bcdee081d apply this patch] from the [https://github.com/eprints/eprints3.4/issues/333 GitHub issue].
 +
 
 +
=== 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].
 +
 
 +
== Planned Development ==
 +
See [[EPrints 3.4.6]]
  
 
[[Category:Eprints3.4]]
 
[[Category:Eprints3.4]]
[[Category:Planned Releases]]
+
[[Category:Releases]]

Latest revision as of 10:31, 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

Release Notes

EPrints 3.4.5 is now available on GitHub and files.eprints.org.

  • Zero codename: Smoothie Squall
  • Publications flavour codename: Kombucha Hypercane (1.5)

New Dependencies

html2text RPM / DEB required instead of elinks.

Check earlier dependencies for EPrints 3.4.4 and before.

Changes Since 3.4.4

New Functionality

Security and Privacy Improvements

General Improvements

Bug Fixes

Known Issues

Long time to add requester_userid field to access data object

Adding new columns to a database table that already contains a lot of records can take a long time. The access table for EPrints can often have tens of millions of records. At such a size adding a new column can take in the order of hours. EPrints 3.4.5 add the new field requester_userid. This is intended to capture the logged in user that is viewing or downloading an eprint/document. This is useful for Open Education repositories that have different access permissions. However, if you have a large access table you may want to apply this patch from the GitHub issue.

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.

Planned Development

See EPrints 3.4.6