Releases: omeka/omeka-s
Releases · omeka/omeka-s
v3.2.2
- FIxed permissions issues when using value annotation for non-admin users
- Fixed permissions for vocabularies to allow supervisors to import vocabularies and manage ones they import
- Fixed incorrect appearance of user editing buttons and UI for Editor users
- Fixed video thumbnailing for some versions of ImageMagick (the problematic versions are those between 6.9.11-31 and 6.9.12-54, inclusive)
- Updated translations for Basque, Czech, French
v3.2.1
- Fixed bugs affecting resource selection sidebars that could cause inaccurate counts and could incorrectly show that all resources had already been selected
- Fixed "quick add" when setting resource values to respect the data type for all created values, instead of just the first one
- Fixed a missing translation in some public search results (#1839, fix contributed by @ManOnDaMoon)
- Fixed a bug in the JSON-LD output that could violate the spec when the
@reverse
key appeared when there were no reverse properties (#1840) - Fixed spurious notices that could be logged when the same user/session accessed the site multiple times in very quick succession
- Updated the bundled default theme to version 1.6.4
- Translation updates for Basque, Spanish
v3.2.0
Features
- Value Annotation
- Users can now use metadata properties and values to describe/annotate values, or, put another way, to make statements about their statements. This introduces the concept of reification to Omeka S. Users can choose to make ambiguous facts more concrete by annotating things like: provenance (Where is this fact from?), time (When did this fact occur?), location: (What is the location associated with this fact?), certainty (What is the confidence of this fact?), type (What type of concept/thing is this fact?), and more.
- New site setting to choose whether to show value annotations publicly
- Fulltext search now includes the text of value annotations (with their parent resources) and media metadata (with their parent items)
- Search results now include thumbnails where appropriate
- Public resource show pages for resources not included on a site now include "noindex" meta-tags to avoid search engines potentially indexing resources under the wrong sites
- Theme config can now set the "required" flag for form inputs
- The page title block now uses a view so themes can override it (#1787, contributed by @grandgeorg)
- Data types can optionally accept an extra array argument of options to their render method (partiarlly contributed by @Daniel-KM)
- Site pages now include a class on the
body
element derived from the page's slug to make page-specific styling easier - The admin interface for site navigation and the "list of pages" block now indicate when pages are private
- JPEG2000's .jp2 is now supported when ingested without its file extension set (contributed by @Daniel-KM)
Fixes
- Fixed a deprecation warning from Doctrine by switching to the newer-style UnderscoreNamingStrategy that supports numbers in entity names (#1804, contributed by @Daniel-KM)
- Fixed several typos and code quality issues (#1794, #1811, contributed by @stweil)
- Noted more required extensions in composer.json
- Security mitigation for Laminas Framework issue LP-2022-01: inline form element error messages were not escaped
API Changes
- Friendlier message on the root of the API endpoint
- New data_types API resource
- Resource values are now validated to point to the proper resource types only
- Position for media within the set of media for its parent item can now be set directly as
position
- Resources include a
@reverse
key listing the linkages from other resources to the current one - Values for resources now include an
@annotation
key listing annotations for that value - The REST API now supports returning simple scalar results with the query parameter
return_scalar
in_sites
query for items and item sets now supports passing 0/false to return resources that are not assigned to any site
For Developers
- New server events rep.value.string, rep.value.json, rep.resource.json_output, rep.resource.value_annotation_display_values, data_types.value_annotating, view.show.value
- New client events
o:ckeditor-config
,o:prepare-value-annotation
Bundled Libraries
- jQuery 3.6.0
- CKEditor 4.18.0
- Sortable.js 1.14.0
- jsTree 3.3.11
- Font Awesome 5.15.4
v3.1.2
Bugs Fixed
- A page could become inaccessible when an asset or page used in an Asset block was removed or made private
- The Asset block did not allow page authors to choose private pages to link to (or any pages from a private site)
- Large lists in the List of pages block could encounter an error when trying to add a new page
- When reordering blocks on the edit form for pages, dropping a block into the HTML editor of an HTML block would insert unwanted text into the block (#1791)
- Poor visibility in Safari for some disabled form elements
- The Link headers in the REST API could be incorrect if the per_page query parameter was passed
Internationalization
- New translations for Arabic, Basque, and Swedish
- Updated translations
v3.1.1
Bugs Fixed
- New items incorrectly selected all sites on the Sites tab by default instead of just those configured to auto-assign new items
Internationalization
- Updates for Catalan, Spanish, Estonian, Finnish, French, Hungarian, and Italian
v3.1.0
Features
- PHP 8 support
- Minimum PHP version increased to 7.2
- Built-in support for alt text for media and assets
- New Assets section for listing and managing uploaded assets
- New Asset site block for including assets in pages
- New "query" form input allows usage of advanced search inputs rather than copying and pasting a query string
- Options for multiple sites that share the same items but display them in different languages (contributed by @ManOnDaMoon)
- New site setting to show only resource values that are in the site's configured locale language
- New site setting to control whether to show the locale labels for resource values
- Added thumbnail setting for sites; thumbnails are displayed in the public list of sites
- New "List of pages" site block
- Options for controlling the content to show in the browse preview block
- Option for adding a wrapper div with a specified class to the HTML block
- Batch edit for items allows adding and removing items from sites
- Resource admin show pages now include the resource ID in their sidebars
- Improved links to browse resources in public-side user bar (#1716, contributed by @Daniel-KM)
- Media can now be sorted by filesize
- New "auto" option for cli execute strategy to detect which strategy to use (#1661, contributed by @Daniel-KM)
Bugs Fixed
- Site and page titles were sometimes not properly escaped on public pages (reported by ribersec)
- Sidebar selectors could show wrong number of results when filtering (#1678)
- Newly-opened sidebars could display "underneath" previous ones in some situations
Changes
- Public advanced search for sites only shows the sets that are attached to the site in the item set dropdown, and does not show the dropdown at all if no sets are attached
- Site blocks are displayed alphabetically in page edit sidebar
- Module.php files for non-active modules are now not loaded at all
- Custom pages added by modules that are inactive are displayed as "[Missing Page]" instead of "Fallback"
- Files without generated thumbnails now render as custom-assigned or fallback thumbnails rather than a text-only link
For Developers
- Background jobs can create absolute URLs
- Ignore empty-string queries for is_public and assign_new_items in API (#1671, contributed by @Daniel-KM)
- New filters rep.resource.display_title and rep.resource.display_description for filtering titles and descriptions displayed on pages
- Added view.edit.before and view.edit.after filters for site page edit
- Tooling for detecting changes to module DB schema SQL now includes automatically-generated join tables
- Resources can be searched and sorted by resource_template_label in API
- Page action menu... used by modules (??)
- New option to get registered services from a plugin manager in alphabetical order using new Sortable interface
v3.0.2
Bugs Fixed
- The "body" for some browse views was not correctly escaped
- The URL data type allowed
javascript:
URLs which could lead to XSS issues in some browsers (#1688) - The public cross-site search results pages did not correctly escape the user's query, leading to an XSS issue (#1698)
- An error occurred when deleting individual site pages, and their entries in the fulltext search index were not properly removed (#1662)
- Batch edits involving resource templates could fail when run in-process rather than in the background (#1690)
- Public cross-site search results for item sets caused an error
- Linked resource counts incorrectly included private non-visible resources
- Some errors and exceptions were not included in logs (#1657)
- Some labels were not translated when displaying linked resources
- The "no resources" label displayed incorrectly in some admin sidebars
- The "Add Site" button on the admin dashboard could improperly be visible for users who did not have permission to add sites (#1680)
- The
id
API parameter was not correctly supported in the REST API (#1667, contributed by @Daniel-KM) - The
proc_open
CLI execution strategy could generate a warning by unncecessarily trying to read from the subprocessstdin
- The default
from
option for emails in configuration was not correctly checked (#1685)
Changes
- Value types and languages are now matched case-insensitively by the
value()
function, matching the behaviors of database queries and the spec for language codes (#1672, #1684, contributed by @Daniel-KM) - The gulp scripts are updated to stick to Composer 1, which is necessary for compatibility for the current dependencies (#1659)
- OEmbed now supports the non-standard "text/json+oembed" media type (#1670, contributed by @Avnerus)
- The installer now checks up-front for PHP JSON support, leading to better error reporting when it's missing
Internationalization
- New translations for Bulgarian, Croatian, and Romanian
- Updated translations for Catalan, Czech, German, Estonian, Italian, Lithuanian, Mongolian, Chinese (Taiwan)
v3.0.1
Bugs Fixed
- Users were unable to set the visibility of sites using the "eye" icon (#1650, contributed by @ManOnDaMoon)
- The user form could not be submitted without selecting at least one default site for items in the user settings (#1652)
- Searches in sidebars for selecting resources always returned zero results (#1653)
- Some relative links were not generated correctly in jobs, with the base path to the Omeka S install missing
Internationalization
- Updated translations for Estonian and French
v3.0.0
Omeka S 3.0.0 is a major release containing backwards-incompatible changes.
You must update modules and themes when upgrading to this version.
Features
- Fine-grained assignement of items to sites
- Items can now be explicity added to or removed from sites one-by-one.
- A new "auto-assign new items" setting is provided for sites that should include all newly created items
- The prior search-based "pool" can be used to make bulk changes to the pool of items assigned to a site, but the search is no longer executed "live." The search interface can be used to add to the current pool, replace it completely, or to remove only the searched items.
- Search across multiple sites
- New search capability to find items, sets, pages across all sites in the installation. Item and set results will present a list of the sites in which they can be found
- This search is now available on the default "list of sites" installation front page
- Sites have a new setting allowing the main search box to be either the previous "current site only" search or the new "across all sites" search
- New user setting to allow each user to set default sites to be selected when adding new items
- Public/private setting for individual pages within a site (#1603, contributed by @Daniel-KM)
- Admin page list for sites now includes display of the added/modified date for each page and control over sorting (#1615, contributed by @Daniel-KM)
- Added site setting for which types of resources to search (#1486, contributed by @Daniel-KM)
- Search results now omits headers and other clutter when no results of a particular type are found
- Drag-and-drop reordering for values within a property when editing resources
- Public item views now include a list of the pages of the current site that the item is attached to, controlled by a new "Show attached pages" setting
- Advanced search for resources now includes an option to search by owner
- The IIIF media type now supports IIIF Image API v3 (#1585, contributed by @Daniel-KM)
- Media can be reordered on the form when it is initially added, no longer requiring the user to wait until the media is added to reorder it (#1599, contributed by @ManOnDaMoon)
- Default public media show pages now include a link back to their parent item
- New UI allowing administrators to manually set the owner of resources
- Resource templates can select multiple data types for each property (#1634, contributed by @Daniel-KM)
- Administrators can set a list of suggestions for the value language input (#1617, contributed by @Daniel-KM)
- Improved .htaccess rules to exclude serving of PHP scripts, hidden files (partially contributed by @Daniel-KM)
Changes
- Updated labels for roles to reduce confusion:
- The label for the "Site Administrator" role is now "Supervisor"
- The label for the "Admin" site permissions role is now "Manager"
- The label for the "Editor" site permissions role is now "Creator"
- The "Settings" sub-page of sites is now merged with "Site info," which is renamed "Site admin"
- "Thumbnail" tab for resources now included in "Advanced" tab
- Advanced search layout updated to be more compact
- Error pages now include more text/explanation by default
- Admin dashboard links to sites are swapped to align with their presentation elsewhere: the name of the site now links to its admin area, and the former "edit" icon link is replaced by a "view in public" icon
- Harmonized code and behavior for instances of "selection" sidebars
Bugs Fixed
- Pages with attachments pointing to private items or media could cause errors when viewed by unprivileged/anonymous users
- Redundant
values_json
key was left in resource add/edit post data (#1551, contributed by @mikesname) - The
searchOne
API method could work incorrectly for results that were not numerically indexed (#1546, #1604, contributed by @Daniel-KM) - Admin user browse sidebars had to be "closed" several times to actually close (#1555, contributed by @ManOnDaMoon)
- The
objectValues()
method for resources incorrectly excluded values of resource sub-types (#1568, contributed by @Daniel-KM) - Sites could not be sorted by owner
data-term
anddata-property-id
attributes were missing from the property select element when restricting a site's search form by a template- Configure forms for modules did not include a CSRF token check
- Pages using the "fragment" for other purposes could conflict with our JS for handling switching between tabs/sections
- Some SVG images could not be uploaded as assets (#1583, contributed by @Daniel-KM)
- Fulltext search did not work when used with
returnScalar
request option - Template select boxes were not ordered in the same order as the template browse (#1618, #1627, contributed by @Daniel-KM)
- A DQL/SQL issue could occur when modules used subrequests during item set queries (#1519, contributed by @Daniel-KM)
- Resource template import/export did not include the resource title, description settings (contributed by @Daniel-KM)
- Stray whitespace was possibly allowed in the resource template import process (#1631, contributed by @Daniel-KM)
- Some pages that should have shown "404" errors instead showed other types of error
- "Modules" section of left admin nav displayed even if no modules were present there (#1587, contributed by @Daniel-KM)
- Batch update for site permissions for users was broken (#1538, contributed by @ManOnDaMoon)
- Failed ingests could leave behind stale temporary files
- Some form details could not be expanded and viewed by the user (#1554, contributed by @ManOnDaMoon)
For Developers
- Updated from Zend Framework to Laminas Project
- EasyRDF moved back to upstream, updated to version 1.0 (contributed by @Daniel-KM)
- The REST API now includes a header
Omeka-S-Total-Results
on "browse" requests that includes the total number of results - The media API now allows
ingester
andrenderer
query keys - All API resources now accept multiple or single IDs in the
id
parameter to search - New
used
search parameter for properties, classes to return only vocab members actually being used in items (partially contributed by @Daniel-KM) - The
returnScalar
API option now allows retrieval of the IDs of associated entities - New
thumbnail_display_urls
entry in resource API results for simpler access to thumbnail URLs without additional requests or client logic - The
thumanail()
view helper can now be used directly on uploaded assets (#1545, contributed by @Daniel-KM) - The
value()
method for resource representations now allowstype
andlanguage
to be arrays, to retrieve values matching any of multiple types/languages in one call (#1632, #1633, contributed by @Daniel-KM) - The
zend-soap
/laminas-soap
component has been removed - The default return for
value()
is now an array when theall
option is enabled (#1489, contributed by @Daniel-KM) - New Gulp tasks for testing code standards for modules and for fixing code standards for core and modules
- New
o:property-added
JS event triggered when new properties are loaded onto the resource edit form - New
view.$action.form.advanced
PHP event for adding to the new Advanced tab - Instructions for installing Gulp updated to suggest
npx
instead of globally installing Gulp CLI (#1606, contributed by @Trott)
v3.0.0-alpha
Omeka S version 3.0.0-alpha is a prerelease version of the upcoming Omeka S 3.0.0. It is intended for gathering feedback from users, performing testing, and making it simpler for module and theme developers to check compatibility of their addons and make changes where necessary. Please do not use it in production.
Major Changes
- The item pool system for attaching items to sites has been significantly overhauled. Instead of providing a "search" that Omeka S runs to determine which items are in a site, items can now be attached and detached one-by-one, so you can have fine, direct control over which items appear in which sites.
- A new "Sites" tab on the item add/edit pages allow selecting which sites the current item should appear in
- The existing "item pool" page in sites still exists, and provides a similar interface to before, for making "bulk" changes to the pool: you can use search terms here to add to, remove from, or totally replace the set of items for a site. Unlike in previous versions of Omeka S, however, these are now one-time operations; the set of items does not "live update" when the set of results for a given search changes.
- On a technical level, version 3 includes the change from Omeka S's underlying library Zend Framework to that library's new name going forward: Laminas. This change means that modules in particular should update their code that references "Zend" code to use "Laminas" instead when updating for version 3. For modules written by the Omeka Team, you'll find "laminas" branches for each module that have made the necessary changes and are compatible with this alpha release.