13.1. Changes in 3.4.x

The changes of the 3.4.x builds that affect the work of users and administrators, newest first. Internal (development) changes are not listed. Changes of the Czech description rules (ZP2015) and code lists (CZ_BASE) are listed only in the Czech documentation.

Entries that require an action of the administrator (a configuration change, a step during the upgrade) name the configuration key and link to the relevant chapter. Before an upgrade, read the entries of all builds between the installed and the new version; see Upgrading.

13.1.1. 3.4.12

13.1.1.1. Fixes

  • Fix: DA - a batch downloaded over File Transfer is accepted as the directory tree the DA communication standard prescribes (one directory per package); a single zip file delivered in place of the tree is accepted as well, while a zip inside the directory of a package is a part of that package. The download request sends the transfer type download defined by the standard when File Transfer download request type is empty; see Digital Repositories and the Digital Archive.

  • Fix: DA - a unit date in the archival description of a package written as an interval that closes within the period it opens (a day as D-D, a year as Y-Y) is read as that single period; the import of the package no longer ends with an unexpected error.

  • Fix: DA - a package delivered inside the batch as one zip file in the directory of the AIP, or with its own root directory (named by the UUID of the package) inside, is unwrapped and loaded; a package that cannot be read reports what it holds instead of the missing file. An AIP whose package the batch does not carry fails with the names the batch does carry, instead of being closed as loaded.

  • Fix: DA - a File Transfer download that failed is reported with the outcome of the transfer instead of a missing file; the cause is in the server log (com.lightcomp.ft).

  • Fix: DA - an action over AIPs (loading of metadata, update and repair) whose download fails finishes with the error instead of running until the queue succeeds; the queue keeps retrying the download, which is followed on the AIP and in the queue view.

  • Change: DA - the originator of a package (the agent of the creation event in PACKAGE-INFO.xml) is resolved by its CAM identifier (agentIdentifierType CAM_ID, the entity id or UUID in CAM) to the access point taken over from CAM, whatever its type. An identifier that matches no access point is recorded as the AIP problem Nenalezen původce; take the entity over from CAM and run Aktualizace a oprava AIP. A package without the identifier keeps the originator by name and has no problem. Such a package failed before with “Cannot parse null string”.

  • Fix: DA - the result dialog of an action over AIPs shows the message of each AIP in a readable colour.

13.1.2. 3.4.11

13.1.2.1. Before the upgrade

  • Change: 10146 - Security audit log (elza.siemLogFile): the field names follow the OSSEC/Wazuh schema (srcuser, dstuser, srcip, result, reason, msg, …), fields without meaning for a SIEM (LOG_FILE, SIEM_LOG_FILE, @version, logger_name, thread_name, level_value) are removed and the events are identified by event_type and action (e.g. a login is user_login with result success or failed). The format is not compatible with the previous one; adjust the decoders and rules of the SIEM system. See Authentication and Security.

  • Change: 10146 - Behind a reverse proxy, the security audit log records the address of the client (srcip) when elza.security.acceptForwardedHeaders is enabled. The proxy must replace the header X-Forwarded-For with the address of the client (NGINX $remote_addr, Apache RequestHeader unset X-Forwarded-For early); otherwise a client can choose the logged address. See Address of the client.

  • Change: 10146 - The administrator from the configuration (elza.security.admin.username / .password) is replaced by the list elza.security.override of user names and passwords. A missing user is created as an administrator without a password in the database; a listed user logs in with their own password or with the configured one, which is no longer written to the database. With elza.security.admin.* set, the application does not start; move the entry to elza.security.override. See Users from the configuration.

  • Removed: 10146 - Recovering access with elza.security.recovery.username and elza.security.recovery.password; the keys are ignored. Access is recovered with elza.security.override, whose use is written to the security audit log; see Authentication and Security. Remove the recovery keys from elza.yaml.

13.1.2.2. New

  • New: 10146 - Security audit log - new events: logout, password change, creation, activation, deactivation and renaming of users (including the first administrator of the initial setup), changes of permissions of users and groups, group membership, creation and deletion of groups, creation (including an import) and deletion of archival funds and deletion of their history. A failed login states the method (authentication_type) and a stable reason (INVALID_USERNAME, INVALID_PASSWORD, INACTIVE_USER, …); a rejected JWT is logged as well. A login with the password from elza.security.override is logged as OVERRIDE, and every startup records the users with such a password (override_active).

  • New: 10161 - CAM - the external system has the option Verify TLS certificate; a new system verifies the certificate of CAM. Existing systems are set to No by the upgrade and keep trusting any certificate, as before. Where CAM has a valid certificate, switch the option to Yes. See Integrations.

  • New: 10188 - DA - the repository has the option REST API authentication: None, API key (NDA-HMAC-SHA256 signature) or HTTP Basic with the username and password of the repository, which File Transfer uses as well. The upgrade sets API key for repositories with both parts of the API key filled in and None for the others, so their behaviour does not change. The API key is stored only with the API key method. See Digital Repositories and the Digital Archive.

13.1.2.3. Changes

  • Change: 9800 - The text search of archival entities puts the entity whose name is typed the way it is commonly used first (“Petr Pytelka”, “Československá akademie věd”). The names of CZ_BASE entities get the index REAL_NAME - the name without supplements and degrees, a person as forename and surname - and the whole search text is matched against it whatever the order of the words and the diacritics. After the upgrade the CZ_BASE entities are regenerated in the background (the queue of entity validation); the ranking improves as the run proceeds. A rules package states such a field in index-search with index-type, see the implementation guide.

  • Change: 10146 - Security audit log - a successful login with a JWT or an API key, which is checked on every request, is logged at most once per hour for the same key (or user) and address; failures are always logged.

  • Change: 10133 - Digital archive: the change package carries the contextual archival description of the AIP (EAD-CONTEXT.xml) from ELZA - the fund root, the path to the units linked to the AIP and their subtrees - instead of a fixed sample. An AIP linked to units of more than one fund is not exported; the export reports it. See Digital Repositories and the Digital Archive.

  • Change: 10165 - EAD output of the ZP2015 rules follows the Czech EAD3 profile CZ_EAD3_PROFILE_20260501 (new and corrected mappings, roles of entities given as text are written as weak entities). Units are identified by id="uuid-…"; the URI in base (https://archdesc.nacr.cz/dids/…) is no longer written - adjust systems that read it. Units linked to the digital archive refer to the AIP (dao href="aip:…").

  • Fix: 10181 - CAM synchronization stopped completely (since 3.4.9) when CAM reported an entity as replaced (merged) and its ELZA record was in another scope than the external system; the record was retried forever. Such entities are now replaced and invalidated as before. A record whose synchronization fails for any other reason no longer blocks the others: its item in the synchronization queue ends in the state ERROR with the reason, and the record is synchronized again from the user interface once the cause is resolved.

  • Fix: 10189 - Digital archive: when the request to the REST API could not be signed with the API key (e.g. an empty key value), it was sent with Signature=null and rejected by the archive without the cause in the log. The call now fails with the cause.

  • Fix: 10190 - Digital archive: the signature with the API key depended on the default charset of the system; a request whose path contained characters outside ASCII (e.g. an AIP identifier with diacritics) was rejected by the archive on Windows. The signed text is always UTF-8.

13.1.3. 3.4.10

13.1.3.1. Before the upgrade

  • Fix: 10128 - Storage of binary files (DMS): the move into the new structure in 3.4.8 and 3.4.9 set aside the files with an identifier from 1000 to 9999 into dms/_migrating/ and did not take them back; their attachments and outputs report “Požadovaný soubor neexistuje”. At the first start, 3.4.10 runs the move again: it puts every file whose database row points elsewhere to its place. This repairs installations upgraded to 3.4.8 or 3.4.9 and is the only move for older ones. Files that no database row claims stay in dms/_migrating/; nothing is deleted. Before the upgrade, back up the database and the dms directory from the same moment (see Backup and Restore); after it, read the report dms/_migration-<date>-<time>.txt: MISSING rows have no file, ORPHAN files have no row, FAILED rows could not be moved and must be put in place by hand.

  • Change: REST API - the bulk actions of a fund version are listed by GET /api/v1/action/fund-version/{fundVersionId} with the kind of each action (type), and the persistent sort is run by POST /api/v1/action/fund-version/{fundVersionId}/persistent-sort, which finds the sort of the rules of the fund itself. The endpoint POST /api/action/queue/persistentSort/{versionId}/{code} is removed; update scripts that call it.

13.1.3.2. New

  • New: Rules package ISADG - archival description of fonds according to the international standard ISAD(G), in English, with a user guide. It uses ISAAR_CPF for creators and access points, is delivered with ELZA and is imported when elza.packages.enabled lists it. This is its first version, for trial use: printed outputs and EAD3 export are not available yet. Installations with ZP2015 see no change. See Loading the packages.

  • New: ELZA DA - entry URL <ELZA_URL>/da/<DA_CODE>/aip/<AIP_ID> opens an AIP by its identifier in the digital archive. It goes to the linked description unit, or to the package in its fund. See Integrations. The AIP list can be filtered by the code of the digital archive.

13.1.3.3. Changes

  • Change: The persistent sort in the context menu of the tree and the refresh of the tree after it follow the rules of the fund: the action is recognised by its kind, not by a fixed name, so every rules package names its own. Compute and visualise EJ is offered only for funds whose rules have the action (ZP2015). The persistent sort is not offered for a run over several funds, whatever the rules call it.

  • Change: The description of a unit sent to a WSDL digital repository or a digitization front desk with a linked digital object (the DID of the DAO web services) carries the identifier of the unit only. The script groovy/createDid.groovy in the working directory, which added the title, the reference code and the date, is no longer read and can be deleted; it had not worked since 2020.

  • Change: The text search of archival entities searches the name elements that the rules packages list for the search (with ISAAR_CPF its names as well); the search with CZ_BASE does not change.

  • Change: 9970 - The dialog of a new output offers No filter as the empty choice of the output filter.

13.1.3.4. Fixes

  • Fix: 10127 - A bulk action copying description elements into its result (ZP2015 Agregace úvodu) failed with “Error while writing JSON” when the elements contained an attachment or a date.

  • Fix: ELZA DA - with two digital archives using the same AIP code, a change reported by one archive (e.g. an invalidation) could be applied to the AIP of the other.

  • Fix: A failed persistent sort or Compute and visualise EJ is reported; before, only a finished or interrupted run was. The tree refreshed after the action is the tree of its fund, not of the fund shown at that moment.

  • Fix: The persistent sort on the page of bulk actions keeps the direction and the specification of the run it starts from.

13.1.4. 3.4.9

13.1.4.1. Before the upgrade

  • Change: The languages (sys_language) get a BCP 47 tag (cs, en, …); the upgrade fills it for the languages delivered with ELZA. If languages were added to the database by hand, the upgrade stops with the message “sys_language contains rows without a tag”; find them with SELECT * FROM sys_language WHERE tag IS NULL, fill tag (e.g. UPDATE sys_language SET tag = 'hu' WHERE code = 'hun') and start ELZA again. The language with code cze must not be deleted.

  • Change: Packages at startup - the packages loaded from dpkg/ are the imported ones and those listed in the new key elza.packages.enabled (with their dependencies); the other files of the directory are skipped. Existing installations keep their packages without a change of the configuration; a new installation sets the key before the first start. The log of the start lists the imported and the skipped packages. See Loading the packages and Configuration Reference.

  • Change: Rules packages are read strictly - an unknown or misplaced element stops the import of the package (the error names the file, the line and the element), and entity rules in the old form are refused. The packages delivered with ELZA are updated (CZ_BASE version 89). A package of your own or of a third party that imported before may now be refused; correct it and raise its version. Local changes of the CZ_BASE scripts building entity names (patches of rul_structure_extension*.xml) must move to rul_entity_rule.xml.

  • Change: 10098 - Print templates with barcodes use the barcode4j library; the barbecue library is removed. Templates of your own with an element of kind="barbecue" no longer compile and must be changed.

  • New: Restart from the administration - the application exits with the code of the new key elza.restart.exitCode (3 by default) and the service manager starts it again; set Restart=on-failure in the systemd unit. Without a service manager the application only stops. See Configuration Reference.

13.1.4.2. New

  • New: The language of the user interface (Czech, English) is chosen in the user settings and in the login dialog. Without a choice the interface is in the language of elza.locale.

  • New: Validation messages of archival entities and units of description are shown in the language of the user interface. The messages of CZ_BASE and ZP2015 stay in Czech. A record validated before the upgrade shows its stored texts until it is validated again.

  • New: Unit dates are accepted in Czech and English forms whatever the language of the user interface (20th century, 21 Aug 1968, 500 BC, 1968-08-21, …).

  • New: Rules package ISAAR_CPF - description of archival entities according to the international standard ISAAR(CPF), in English. It is delivered with ELZA and imported when elza.packages.enabled lists it; a scope uses it by choosing the rule set ISAAR_CPF. Installations with CZ_BASE see no change.

  • New: Package management - the administration lists the packages of dpkg/ that are not loaded, lets the administrator mark a package for the import at the next start and offers Restart the application. See Loading the packages.

  • New: ELZA DA - Administration → Fronta digitálního archivu lists the requests of the queue of a digital archive (waiting ones or the whole history) and offers Retry now, Cancel request and Repeat. Requests are never deleted.

  • New: ELZA DA - a new setting of the DA repository, Batch status check interval (s), default 2 seconds (before 100 ms).

  • New: 10070 - Structured objects (storage units, access restrictions, …) are exported to CSV from the panel of the fund (three dots → Export to CSV), with the filter of the panel applied. The ID column is the value the CSV import of description elements expects.

13.1.4.3. Changes

  • Change: ELZA DA - a batch the digital archive prepares for download or processes after an export no longer stops the other communication with it and survives a restart of ELZA. A failure to reach the archive is retried with a growing interval up to 5 minutes.

  • Change: ELZA DA - a new version of an attached AIP: a part the new version no longer contains is detached, a version naming another fund is moved to it. Forced update is no longer offered.

  • Change: 10029 - Import of description elements from CSV - the import of a fund (Table view) and the batch import read the same format, support more data types, import in parts of 1000 rows and offer a test run.

  • Change: OAuth2 users created from tokens get the entity class elza.security.o-auth2.user-ap-type (default PERSON_INDIVIDUAL) in the scope elza.security.o-auth2.user-scope (default JWT_USERS); see Authentication and Security.

13.1.4.4. Fixes

  • Fix: ELZA DA - a package whose PREMIS file has another name, or no PREMIS file, is no longer refused.

  • Fix: ELZA DA - a description unit with an attached AIP whose metadata were not downloaded yet could not be opened.

  • Fix: 10098 - Large outputs - generating cards and labels with a barcode failed with “Error virtualizing object”; the barcodes are wider and easier to read.

  • Fix: A rules package without dependencies was skipped by the import at startup.

  • Fix: Deleting a rules package that defines task types failed.

  • Fix: In a newly created database the 20th archival entity scope or institution type could not be created (identifier collision).

13.1.5. 3.4.8

13.1.5.1. Before the upgrade

  • Change: 10028 - Storage of binary files (DMS). At the first start, the files in work/dms are moved once into the new structure dms/<year>/<month>/<block>/. Deleted content is first moved to the trash dms/_trash (elza.dms.trashRetentionDays, default 30 days), and a new regular consistency check runs (elza.dms.check.cron). Before the upgrade, back up the database and the dms directory from the same moment; returning to an older version requires restoring both. See Backup and Restore.

  • Removed: The FULL_SYNC mode of elza.webservice.fonds.adminPermissionMode - the web service only adds fund administrators (ADD_ONLY). With FULL_SYNC the application does not start; remove the setting from elza.yaml.

  • Change: 10054 - REST API: the endpoints /api/admin/asyncRequests moved to /api/v1/admin/async-requests; update scripts that call them.

13.1.5.2. New

  • New: 9963 - Password rules (minimum length, character groups, validity), a required password change at the next login, accounts whose password never expires, and recovering access to an account with elza.security.recovery.username and elza.security.recovery.password. All rules are off after the upgrade. Turning the validity on makes every password not changed since the upgrade expired at once; see Authentication and Security.

  • New: 9963 - Initial setup: while the database contains no user, the application creates the first administrator instead of showing the login. Create the administrator right after the first start, before the application is made available on the network; see First administrator.

  • New: 9963 - Administrator from the configuration: elza.security.admin.username and elza.security.admin.password are applied at every startup - a missing user is created as an administrator, an existing user gets the configured password and is activated. While they are set, a password changed in the application returns to the configured one at the next restart; see Users from the configuration.

  • New: ELZA DA - taking over archival description from packages (AIP) by the user (levels, description elements, attachments).

  • New: ELZA DA - automatic placement of received AIPs that match no description unit by UUID, decided by the rules of the fund (rule type DA_MATCH). Applies to repositories with automatic metadata download.

  • New: 7843 - Revalidation of dependent entities when a related entity is invalidated

  • New: 7453 - Renaming of attachments

13.1.5.3. Fixes

  • Fix: Structured types - error with an unsupported description element type

13.1.6. 3.4.7

  • New: AI assistant - links to records (entities) in chat answers

  • New: DA / AIP - the link of an AIP is shown in read-only mode as well; linking and unlinking an AIP requires the arrangement permission

  • New: The login dialog and the Background tasks page redesigned (Fluent UI)

  • New: Addressable opening of the digital objects page

  • Fix: 10041 - Output generation: the state of an output changed only after the browser was refreshed

  • Fix: 10053 - Outputs: the Generate output button does not react for a particular archival fund

  • Fix: 10051 - Table view: blank screen with a filter on a description element (for example Entity roles)

  • Fix: DA / AIP - the package detail allows linking parts and refers to description units; detection of digital repositories of the FILESYSTEM type

  • Fix: Crash when working with several browser tabs

  • Fix: Minor translation fixes (react-intl)

13.1.7. 3.4.6

  • New: 9991 - Batch import - import of several archival funds at once (from a folder on the server or by upload from the browser) with an overview of the batch result; import from a server folder requires elza.import.batchInputDir, see Configuration Reference

  • New: 10011 - Personal API keys - support and management, filter for active keys only; the feature is enabled by default (elza.security.api-keys, header X-API-Key), see Authentication and Security

  • New: 10029 - Import of description elements from CSV - import by entity ID

  • New: Outputs - generation of large outputs (pages swapped to disk, a shared cache of archival entities of limited size; settings elza.export.jasperPageCacheSize and elza.export.outputRecordCacheSize); the default number of threads generating outputs (elza.asyncActions.output.threadCount) lowered from 4 to 2

  • New: The user settings dialog redesigned (Fluent UI), with an option to clear the browser cache

  • New: Import of archival entities from XML - relations between entities created by the same file, storing the external identifier

  • New: AI assistant - the last selected model is remembered

  • New: The user interface converted to react-intl and the older translation layer removed (preparation for full localisation)

  • Fix: 10004 - Add description element: special access restriction - the element is inserted twice

  • Fix: 9999 - Special access restriction - the element is not shown in read-only mode

  • Fix: 10003 - Import of description elements (Table view, CSV) - trailing spaces from MS Excel

  • Fix: 9996 - The UUID of a unit cannot be copied

  • Fix: Export - access restriction: elements with a constant value are added again

  • Fix: ELZA DA / AIP - better error reporting when downloading and processing packages, links in the AIP list (linked fund and package), package overview

  • Fix: Wrong focus after closing a confirmation dialog

13.1.8. 3.4.5

  • New: ELZA DA - reworked handling of AIPs:

    • AIP explorer as a separate page (tree of the downloaded package, opening directly from the address bar)

    • AIP list - readable package states, working sorting, actions by state, lookup of the institution and the fund

    • Linking AIPs to description units in the background (AIP by AIP), showing the progress and the obstacles before confirmation, filtering by the linking state

    • Automatic download of metadata after pairing, linking by UUID

    • DA repository - AIP download mode, synchronisation interval stored in the database, settings test, multiple links respected

    • Removed: the DA synchronisation timer in elza.yaml (elza.da.sync) - the interval is set on the digital repository in External systems (default 300 s); remove the section from elza.yaml

  • New: 9955 - CSV import - asynchronous processing with a notification when finished (WebSocket)

  • New: 9990 - Digital entities - reworked detail window (single panel) and a context menu with navigation to the tree

  • New: 9981 - Conflicting value (not saved) - a description element can be deleted by deleting its value

  • New: Archival funds - the active archival fund is highlighted when opened, with an action menu in the detail

  • Fix: 9982 - Citations do not work

  • Fix: 9978 - The storage unit generator function does not finish for a particular archival fund

  • Fix: 9995 - Outputs - the preview shows the result of the introduction aggregation function only after the browser is refreshed

  • Fix: ELZA DA - crashes of the AIP list and detail (institution not found, missing package size), understandable description of package processing errors

  • Fix: Outputs - hidden scroll bar

13.1.9. 3.4.4

  • New: 9955 - CSV import - a wizard with a choice of encoding and separator and a live preview

  • New: 9945 - Arrangement - the value of the element Content (Obsah) is shown at the file level (when the unit title is missing)

  • New: 9944 - Digital entities - file repository: a context menu with file download, sorting by modification time (9971) and unified browser icons

  • Fix: 9973 - Element Language (Jazyk) - missing exception flag

  • Fix: 9476 - Archival funds - home page: after opening a fund and returning, the focus does not stay on the selected record in the left panel (scrolling to the selected record in the tree added)

  • Fix: 9944 - File repository - file download

  • Fix: Splitter behaviour - panel sizes by area

13.1.10. 3.4.3

  • New: 9944 - Digital entities - file repository completed and extended (browsing the folder tree with file previews, draggable splitter, links of files to description units with navigation to the node, multiple links, moving a file link to another description unit, configuration and test of the repository in the administration)

  • New: Outputs - reworked output detail (new form of description elements, column layout, read-only mode), highlighted output menu

  • New: 9965 - Outputs - check and warning about recommended actions that have not run before generating

  • New: 9277 - Outputs - help added to tooltips

  • New: AI assistant - suggestions for completing and improving the description of a description unit (suggestion cards, accept/reject, record of decisions) and preparation of fixes from review findings

  • New: Support of description elements of the JSON_TABLE type

  • New: Approving a version of an archival fund - the tab switches to the newly opened version

  • New: 9962 - Passwords in an older format are updated at login

  • Fix: 9960 - Arrangement - element Coordinates (Souřadnice): the value cannot be saved and shown in the map editor; display of very long coordinates

  • Fix: 9959 - Coordinate editor: the map is limited to the upper part of the screen

  • Fix: 9967 - Search in an archival fund: node not found by ID

  • Fix: 9952 - Element Entity roles (Role entit) - the author specification is not shown in read-only mode

  • Fix: Arrangement - display of some description element types in a narrow form

  • Fix: Outputs - NullPointerException when importing a table

13.1.11. 3.4.2

  • New: 9944 - Digital entities - file repository (browsing and downloading files of the fund’s directory repository, MIME type detection, files over 2 GB, filters by further properties)

  • New: 9679 - Change history - records loaded gradually (in batches)

  • Fix: 9943 - Function migration to Title / Content, subject description - error with multiple spaces

  • Fix: 9948 - Archival entities: element Administrative classification (Administrativní zařazení) - invalid request state when searching

  • Fix: 9950 - Archival entities - Extended filter: search by description elements returns no results

13.1.12. 3.4.1

  • New: Table view - reworked windows for editing values, element buttons moved to a drop-down menu, option to jump to a description element

  • New: Institution management - the linked entity (access point) of an existing institution can be changed

  • New: Values of API keys and passwords in the settings of external systems are hidden

  • Fix: 9927 - Table view - the keyboard cannot be fully used

  • Fix: 9547 - Table view - element Coordinates (COORDINATES) - the operations “Is contained in” and “Is near”

  • Fix: 9934 - Description unit - restoring suppressed inheritance when reverting changes (cache synchronisation)

  • Fix: Table view - adding hidden columns when redirected from a link, link adjustments

13.1.13. 3.4.0

  • New: AI assistant - extended functions:

    • Search tools over the archival description, archival entities and funds

    • Progress of processing and activity of the tools in real time

    • Overview of usage and credits (weekly allowance, price), choice of the AI profile

    • Review findings in the assistant’s answers

  • New: 9935 - Institution management - new management of institutions, including changing the linked access point of an institution (institution types loaded from the cz-base package)

  • New: Administration - navigation moved to a side panel, the selected theme (dark mode) respected on administration pages

  • New: Table view - addressable URL (a link to a particular description unit and description element) and a link from the context menu of a description unit in the tree

  • New: 9240 - The screen state is kept when switching between Arrangement and Table view (focus kept)

  • New: Floating windows - can be moved and resized (on all edges and corners), brought to front on click and adjusted when the browser window is resized

  • New: 9925 - The interval for downloading entities moved from the configuration to the settings of the external system; the synchronisation interval is updated without a restart. Values of elza.accesspoints.sync in elza.yaml are copied to the external system settings at the first start

  • New: Health and metrics available on a separate management port (default 8081 on 127.0.0.1), fix of the LDAP health check, see Monitoring

  • New: Monitoring of the task scheduler - metrics and settings elza.monitoring.scheduler.*

  • Fix: 9594 - Digital entities - preview of files with a special character in the name

  • Fix: 9797 - Error during reindexing - coordinates

13.1.14. 3.4.0-RC-3

  • New: AI assistant - first version of the user interface (assistant panel), API keys for the AI provider, choice of profile/model, display of document citations

  • New: Bulk actions over several funds - the action selection button renamed, the selection of funds kept

  • New: Export - the native XML includes the source application and links to DAOs bound to an AIP

  • New: Synchronisation of permissions over web services - by default, permissions are only added, not removed (elza.webservice.fonds.adminPermissionMode; the distribution configuration set FULL_SYNC until 3.4.7, however)

  • Fix: 9913 - Text jumps when typing on the second line of a text description element

  • Fix: 9914 - Printed output is generated slowly

  • Fix: 9916 - Element Content (Obsah) cannot be added to a series when the unit has the element Title (Název)

  • Fix: Behaviour of the icon opening the entity preview in a description element

13.1.15. 3.4.0-RC-2

  • New: AI provider - a new type of external system and the first version of the interface for integrating artificial intelligence (connecting an AI provider, connection test)

  • New: Selection of the application language - a new experimental feature

  • New: Bulk actions over several funds - selection of funds by a filter evaluated on the server, reworked dialog for starting bulk actions

  • New: Health monitoring and Prometheus metrics of the processing queue (see Monitoring)

  • Fix: Cache records are deleted in batches (stability and performance)

13.1.16. 3.4.0-RC-1

  • New: Publication of archival description - a new function for publishing (sharing) the archival description of a fund: management of publication types and publication systems (connection type PRODUCTION / TEST / DEVELOPMENT, generated system code), starting a publication, generating and downloading publication files, copying a publication; new permissions FUND_PUBLISH and FUND_PUBLISH_ALL

  • New: Structured types editor - a new editor of structured types in the right panel, including read-only mode and bulk editing

  • New: Bulk actions over several funds - a bulk action can be run over several archival funds at once (selection in the list of funds)

  • New: 9635 - Add description element - selection of several elements at once, highlighted inputs, handling of IMPOSSIBLE description elements

  • New: Compact view and multi-column view - moved from the experimental features to the display settings of a description unit

  • New: 9488, 9503 - Search in archival funds - logical OR within one filter

  • New: 9582 - Export of closed versions

  • New: Export - option to include or omit digital entities (DAO)

  • New: External system (CAM) - “Revisions in the external system” renamed to “Revision history”, warnings/errors and revision history from CAM shown, ELZA ID and CAM ID of an entity selectable with one click

  • Fix: 9911 - Entity download fails for a REPLACEMENT whose replacing entity has not been downloaded locally

  • Fix: 9898 - Revision history in the external system - missing processor and approver of a revision sent to CAM

  • Fix: 9888 - Structured types: editing in the right panel - an element removed from the form disappeared from the element menu

  • Fix: 9887 - Structured types: access restriction - rules were not loaded

  • Fix: 9886 - Structured types: the length of a storage unit does not show 0 as the first digit and contains a decimal point

  • Fix: 9885 - Arrangement - translation (Add description element)

  • Fix: 9869 - Error when sending an entity with an empty description element value

  • Fix: 9578 - Citation generator - description units with the element Fixed link (Pevné spojení), including citations from another fund and fund version

  • Fix: 9811 - Citation generator - element Content (Obsah): an empty value is replaced by the value of the nearest higher level (in square brackets)

  • Fix: 9832 - Archival entities - export of records to CSV - completed (permissions)

  • Fix: Sending to CAM - correct time by time zone (not UTC)

  • Fix: External system (CAM) - search, download of an entity by ID, storing and sorting of warnings

  • Fix: Faster and more stable cache of description units (repeated loading of a node skipped)

13.1.17. 3.4.0-BETA-2

  • New: 9488, 9503 - Search in archival funds - search by institutions and archival funds

  • Fix: Search by institution

13.1.18. 3.4.0-BETA-1

  • New: ELZA DA - connection to a digital archive (DA) and work with archival information packages (AIP):

    • Overview of AIPs from the digital archive, including the list of AIPs of an archival fund

    • AIP explorer - browsing the content of a package (logical structure, components/files), displaying and loading them from the DA

    • Linking AIPs to the archival description - a wizard for linking single AIPs and sets of AIPs, with findings (checks) shown when linking

    • The AIP assigned to a description unit shown directly in the arrangement, with a jump to the component in the explorer

    • Transfer of the archival description back to the DA - generating and transferring change packages in a directory structure including METS

    • Unlinking the archival description from an AIP

    • Generating and deleting the AIP structure, filling the description elements of the logical structure

    • Configuration: DA synchronisation timer (elza.yaml), a new external system type “digital repository” for the DA

  • New: 9488 - Search in archival funds - filters by archival funds

  • New: 8746 - Table view - filter on the element Entity roles (Role entit) - new condition “Contains the entity”

  • New: 9633 - Left panel of Arrangement (tree) - the element Formal title (Formální název) is shown when Content (Obsah) has no value

  • New: Runtime environment upgraded to Java 17 (JDK 17)

  • Fix: 6044 - Marking of storage units (check boxes) does not disappear after storage units are deleted

  • Fix: 9002 - Writing an entity to CAM - the element Note (Poznámka) of a related entity that is not written in the external system is filtered out

13.1.19. Changes compared to 3.3.x

The list of changes compared to the 3.3.x line is available in the repository: https://github.com/elzasw/elza/compare/release-3.3.x…release-3.x