Skip to content

Releases: NatLibFi/Skosmos

Skosmos 3.1

06 Feb 15:09

Choose a tag to compare

This release shapes up Skosmos 3 by implementing incremental loading of results on the search results page, by improving how deprecated concepts and SKOS collections are displayed and implementing support for ordered property values (credit: @jdfranel). CSS variables have been reworked to make it easier to implement color themes and customizations and a new favicon matching the Skosmos logo has been added. More aspects of Skosmos can now be controlled using environment variables (credit: @jdfranel), which eases deployment with Docker.

Cypress tests have been reworked and some stale files and directories have been cleaned up in order to ease future development. The HTTP User-Agent header used by Skosmos when performing SPARQL queries and other HTTP requests now includes a version number and URL, better identifying the client application.

For an overview of the next planned steps in Skosmos development, see the Roadmap.

What's Changed

  • Update favicon (new Skosmos 3 look) by @osma in #1905
  • Fix unstable concept page tests (mapping headers and copy functionality) by @miguelvaara in #1906
  • Translate concept/collection types on concept page by @osma in #1910
  • Add CSS variables for UI colors by @UnniKohonen in #1913
  • Include version number and website URL in HTTP User-Agent header by @osma in #1914
  • Feat/env config by @jdfranel in #1866
  • Concept page: special display for deprecated concepts by @osma in #1918
  • Load new search results on vocab and global search pages by @UnniKohonen in #1917
  • Remove obsolete ansible directory by @osma in #1920
  • Block web access to .env and add note about Lokalise API key by @osma in #1922
  • Clean up old, stale files from the root directory by @osma in #1923
  • Support ordered rdf list for concept property by @jdfranel in #1863

New Contributors

Full Changelog: v3.0...v3.1

Skosmos 3.0

10 Dec 08:55
92b0580

Choose a tag to compare

Skosmos 3.0 is a major release of Skosmos that includes a reimplementation of the front-end, using fewer third party components and improving the layout, user interface and accessibility. The release also includes a Cypress test framework for automated front-end testing. The code base has been thoroughly cleaned to follow a unified style and some functionality optimised for faster operations. The architecture remains mostly the same as in Skosmos 2 and the Skosmos REST API is still backwards compatible.

The Skosmos translation framework has been changed to Lokalise. To translate Skosmos into your own language, you can request access to the Skosmos-3 translation project by sending an e-mail to finto-posti@helsinki.fi.

The release includes an overhaul to the Skosmos plugin framework, as documented in the Skosmos wiki.

To install Skosmos 3, you can follow the general InstallTutorial, which will be updated very soon to focus on the new version. You will need PHP version 8.1, 8.2, 8.3 or 8.4. Alternatively, you can run a Docker image of Skosmos 3. See the Docker install instructions. The Skosmos wiki documentation has been also been updated The main focus is now on Skosmos 3, but information about Skosmos 2 is still available for those still using the older version.

After this release, Skosmos development will continue in 2026 with further releases in the 3.x series.

What's Changed

Full Changelog: v3.0-beta.2...v3.0

Skosmos 3.0-beta.2

06 Nov 14:22

Choose a tag to compare

Skosmos 3.0-beta.2 Pre-release
Pre-release

This is the second beta release of Skosmos 3.0 that provides a peek into the upcoming final 3.0 release. It is mainly intended for Skosmos users who want to plan ahead for the 3.0 release. You can use it to test how Skosmos 3 works with your vocabulary and how to set it up on local infrastructure. As for the previous 3-0beta.1 release, we have also published a Docker image on Quay.io.

This release contains a new global search bar, new customization options through custom templates, improvements to the Hierarchy and New and Deprecated sidebar views, and enhancements to the concept page (showing submembers of thesaurus arrays and truncating long lists of property values). There are also some maintenance updates, including a cleanup of obsolete translated messages and fixes to the documentation and automated test suite.

This is the final beta release before the Skosmos 3.0 release, scheduled for release by the end of the year 2025.

What's Changed

  • dockerfiles/README.md: updated curl command for loading voc to work with curl v8.5.0 by @andrecastro0o in #1792
  • Fix flaky vocab-home Cypress test under GitHub Actions CI by @osma in #1819
  • Render hierarchy without topconcepts by @UnniKohonen in #1818
  • Remove unnecessary translation keys and messages by @miguelvaara in #1820
  • Show submembers of collections on concept page by @osma in #1821
  • Custom content slots for landing page, about page and footer by @osma in #1817
  • Render hierarchy with concept schemes by @UnniKohonen in #1823
  • Fix width of changes tab on window resize by @UnniKohonen in #1826
  • Truncate long property value lists on concept page by @osma in #1825
  • Global search bar (core) by @joelit in #1779

New Contributors

Full Changelog: v3.0-beta.1...v3.0-beta.2

Skosmos 3.0-beta.1

28 Aug 12:09

Choose a tag to compare

Skosmos 3.0-beta.1 Pre-release
Pre-release

This is the first beta release of Skosmos 3.0 that provides a peek into the upcoming final 3.0 release. It is mainly intended for Skosmos users who want to plan ahead for the 3.0 release. You can use it to test how Skosmos 3 works with your vocabulary and how to set it up on local infrastructure.

Compared to the two alpha releases, this release contains layout and accessibility fixes, optimizations to avoid unnecessary SPARQL queries, and an overhaul of legacy configuration settings. We have also created public Docker images that are automatically published on Quay.io as part of the CI/CD pipeline.

As a part of this and earlier 3.0 alpha/beta releases, we have also produced wiki documentation specific to Skosmos 3:

The next release is going to be Skosmos 3.0-beta.2, due to be released in November 2025, followed by the Skosmos 3.0 release by the end of the year 2025.

What's Changed

Full Changelog: v3.0-alpha.2...v3.0-beta.1

Skosmos 3.0-alpha.2

26 May 12:43

Choose a tag to compare

Skosmos 3.0-alpha.2 Pre-release
Pre-release

This is the second alpha release of Skosmos 3.0 that provides an early peek into the upcoming final 3.0 release. It is mainly intended for Skosmos users who want to plan ahead for the 3.0 release. You can use it to test how Skosmos 3 works with your vocabulary and how to set it up on local infrastructure.

Compared to the first alpha release, this release contains fixes to the layout and improvements to the tests and plugin infrastructure.

The next release is going to be Skosmos 3.0-beta.1, due to be released in September 2025. There will be another beta release in October, followed by the Skosmos 3.0 release by the end of the year 2025.

What's Changed

  • Narrower container for landing & other global page types by @osma in #1787
  • Upgrade to Fuseki 5.4.0 in Skosmos tests and containers by @osma in #1788
  • Global Search twig-template by @joelit in #1758
  • Set max width for topbar and headerbar by @osma in #1791
  • New plugin infrastructure for Skosmos 3.0 by @UnniKohonen in #1790

Full Changelog: v3.0-alpha.1...v3.0-alpha.2

Skosmos 3.0-alpha.1

20 Mar 12:27
78e83dc

Choose a tag to compare

Skosmos 3.0-alpha.1 Pre-release
Pre-release

This is the first alpha release of Skosmos 3.0 that provides an early peek into the upcoming final 3.0 release. It is mainly intended for Skosmos users who want to plan ahead for the 3.0 release. You can use it to test how Skosmos 3 works with your vocabulary and how to set it up on local infrastructure.

There are many changes in Skosmos 3 compared to earlier 2.x releases. The front-end layer has been completely reimplemented using frameworks such as Bootstrap 5 and Vue.js 3, making the code easier to maintain. The new user interface provides roughly the same functionality as Skosmos 2, but with a fresh visual style, improved accessibility and automated Cypress front-end tests. The PHP back-end code, including the REST API, remains mostly the same as in Skosmos 2, though with updated dependencies and more emphasis on consistent code style. More information about the goals of Skosmos 3 and the technical implementation can be found in the Skosmos 3.0 Architecture. You can also watch the ISKO UK webinar presentation What's New in Skosmos 3 for an overview of the changes.

How to test this release

If you want to try out Skosmos 3 without installing it yourself, you can visit the public test instance at https://test.dev.finto.fi/ . This instance is tracking the main branch, so it is always up to date w.r.t. the current development version of Skosmos 3.

You can also install it for yourself. There is no install tutorial yet specifically for Skosmos 3, but you can follow the general InstallTutorial, but checkout the Skosmos code either from the main branch or the v3.0-alpha.1 tag that points specifically to this alpha release. However, you should use PHP version 8.1, 8.2 or 8.3. In addition to installing the Composer dependencies for the PHP back-end, you will also need to install the front-end dependencies using npm install.

Alternatively, you can use the Dockerfile to build and run a Docker image of Skosmos 3. See the Docker install instructions.

What is implemented, what is missing?

Skosmos 3 development is organized thematically using Epic-style issues. Each Epic describes the requirements for an important part of the functionality. Below, each Epic is listed with a summary of the completed requirements as well as the most important functionality that is still missing in this alpha release.

Page types

Landing Page #1480

  • Implemented: Basic multi-vocabulary layout and functionality
  • Missing functionality:
    • Single vocabulary layout
    • Customizable content boxes
    • Customizable logo

Vocabulary Home Page #1482

  • Implemented: Basic layout and functionality
  • Missing functionality: Many details and edge cases

Concept Page #1484

  • Implemented: Basic layout and functionality, mappings component
  • Missing functionality:
    • Language tags always shown when explicit language tags are configured
    • Special support for deprecated concepts
    • Tooltips for property labels

Search Results Page #1481

  • Implemented: Basic search result listing for vocabulary search
  • Missing functionality:
    • Waypoints-style loading of more results
    • Filtering of search results using different criteria
    • Global search results page

About Page #1748

  • Implemented: Very basic static About page
  • Missing functionality:
    • Customizable content
    • Layout still needs work

Feedback Page #1749

  • Implemented: Basic layout and functionality
  • Missing functionality:
    • Length limits for feedback form
    • Option to disable Feedback page
    • Accessibility improvements

Header and Footer #1740

  • Implemented: Very basic header and footer
  • Missing functionality:
    • Layout still needs work
    • Tooltips
    • Better accessibility
    • Customizable logo

Search functionality

Vocabulary Search Bar #1514

  • Implemented: Basic layout and functionality, autocomplete
  • Missing functionality:
    • Caching for autocomplete
    • Search tips

Global Search Bar #1489

  • Implemented: Nothing yet in this release, but development is ongoing.

Sidebar and tabs within it

Sidebar #1747

  • Implemented: Basic functionality
  • Missing functionality:
    • Focus and hover handling
    • Accessibility: screen reader support & keyboard navigation

Alphabetical View Sidebar Tab #1563

  • Implemented: Basic functionality, dynamic loading of new content, partial page loads
  • Missing functionality:
    • Full alphabetical index (for small vocabularies)

Hierarchical View Sidebar Tab #1521

  • Implemented: Basic functionality, partial page loads
  • Missing functionality:
    • Showing concept schemes in hierarchy (for vocabularies with multiple concept schemes)
    • Highlight concepts from outside the vocabulary

Groups View Sidebar Tab #1704

  • Implemented: Basic functionality, partial page loads
  • Missing functionality:
    • Showing notation codes in group hierarchy
    • Showing member concepts if the group contains subgroups on the same level

New and Deprecated Sidebar Tab #1735

  • Implemented: Basic layout and functionality
  • Missing functionality:
    • Fallbacks when concept labels are not available in the right language
    • Showing notation codes in the New and Deprecated list

Infrastructure / general

Translation Infrastructure #1712

  • Implemented: Basic functionality for translating UI messages and managing translations on Lokalise
  • Missing functionality:
    • UI translations to most languages are out of date because the codebase has changed a lot

Plugin Support #1751

  • Implemented: Nothing yet, plugin support still needs to be designed and implemented!

CSS/Style #1752

  • Implemented: Basic stylesheets
  • Missing functionality:
    • Theming / color scheme support
    • Checking for redundant or unused CSS rules

Mobile Layout #1753

  • Implemented: Not much yet, though the most important pages have a responsive layout

Search Engine Optimization #1533

  • Implemented: Basic HTML title and description metadata
  • Missing functionality:
    • Update HTML metadata elements after partial page load

Next steps

This first alpha release of Skosmos 3 will be followed by more releases:

  • 3.0-alpha.2 to be released in May 2025
  • 3.0-beta.1 to be released in August 2025
  • 3.0-beta.2 to be released in October 2025
  • Final 3.0 to be released in December 2025

For more details, see the Roadmap.

Note that some Skosmos 3 features, for example customization and plugin support, will likely not be completed by the time of the Skosmos 3.0 release; their development will continue in subsequent 3.x releases in 2026.

For a full list of changes between 2.x and this release, see the list of issues and PRs in the 3.0-alpha.1 milestone.

What's Changed

  • Permit GitHub Actions CI to write Packages, needed for php-build caching by @osma in #1290
  • drop useless SKOSMOS_VERSION build arg from Dockerfile by @osma in #1293
  • Update to Bootstrap 5 by @kinow in #1182
  • drop unused URI.js dependency by @osma in #1300
  • Fix typeahead and handlebars template. by @kinow in #1303
  • Updated Handlebars v4.7.6 -> v4.7.7 by @joelit in #1305
  • Fix font color and size after Bootstrap 5 upgrade by @osma in #1304
  • Sanitize language switching URLs by @osma in #1307
  • Store current Skosmos version in composer.json by @osma in #1308
  • Use copy to clipboard icon from Font Awesome Free set by @osma in #1309
  • fix font size of autocomplete entries after Bootstrap 5 upgrade by @osma in #1310
  • add Latvian translation by @osma in #1313
  • Upgrade to PHPUnit 9, drop PHP 7.2 support by @osma in #1312
  • fix 'Any language' choice in language selection menu by @osma in #1315
  • Use explicit $.parseHTML() to avoid JS syntax error by @osma in #1316
  • provide translations for skosmos:marcSourceCode by @kouralex in #1187
  • Fix sidebar search, post bootstrap by @kinow in #1314
  • use Font Awesome fonts for icons by @osma in #1319
  • Fix SKOS-XL tooltips by @joelit in #1317
  • Create SECURITY.md by @joelit in #1318
  • minor CSS tweaks after Bootstrap 5 update by @osma in #1321
  • Modify checklist in PR template by @osma in #1322
  • Fix typeahead templates in the search auto-complete by @kinow in #1326
  • Fix highlighting of the New tab after Bootstrap 5 upgrade by @osma in #1328
  • Avoid introducing extra whitespace around literal values on the concept page by @osma in #1330
  • Update translations from Transifex by @osma in https://github.co...
Read more

Skosmos 2.18.1

01 Oct 11:18

Choose a tag to compare

This is a patch release that fixes problems building the Docker container for Skosmos 2. In the 2.18.0 release, support for PHP 7.4 was dropped, but the Dockerfile in 2.18.0 was still using PHP 7.4, so it didn't work. In this release, the Docker base image has been upgraded to Ubuntu 22.04 which includes PHP 8.1, making it work again. Credit to @matthew-morris-cessda for quickly reporting the issue after the 2.18.0 release.

Bug fixes

  • #1678/#1680 Skosmos 2 Docker: upgrade to Ubuntu 22.04 base image and PHP 8.1

See the upgrade instructions in the wiki for information about upgrading from earlier versions.

Skosmos 2.18

05 Sep 10:22

Choose a tag to compare

This is a minor version release (2.18) of Skosmos which contains several bug fixes as well as improvements to search engine and social media sharing metadata. There are also updated to the UI translations in Latvian, Norwegian Bokmål and Norwegian Nynorsk.

Due to the EasyRdf upgrade, we had to drop support for PHP 7. From now on, Skosmos 2 only works on PHP 8.0 and 8.1. Skosmos 3 will support more modern PHP versions.

We already said this for 2.17, but this will most likely be the final release in the Skosmos 2 series, unless serious bugs are discovered. Current Skosmos development is focused on Skosmos 3.

Enhancements

  • #1666 SEO functionality backport for skosmos 2

Bug fixes

  • #1574/#1575 don't perform HTML escaping for server constants to avoid breaking alphabetical index for diacritics
  • #1621 Make LOC HTTP prefLabel header parsing case-insensitive
  • #1635/#1673 Fix Skosmos 2 deprecated concept pages (bool value causes crash)
  • #1672 Fix Skosmos 2 Twig syntax error on search result page
  • #1671 Upgrade EasyRdf to fix Turtle fragment URIs
  • #1664 Fix flaky getResourceFromUri test by increasing httpTimeout
  • #1676 Avoid showing SEO/metadata description on vocab home page

Translation updates

  • #1663 Update Latvian (lv) translations from Transifex (credit: @CaptSolo)
  • #1662 Update Norwegian (nn, nb) translations (credit: @olufine)

See the upgrade instructions in the wiki for information about upgrading from earlier versions.

Skosmos 2.17

05 Dec 12:41

Choose a tag to compare

This is a minor version release (2.17) of Skosmos which contains numerous bug fixes, miscellancelous enchancements, and improvements for running Skosmos under Docker. There is also an update to the UI translation in French, Spanish, English and Northern Sámi. Special thanks for active community contributions for this release!

This will most likely be the final release in the Skosmos 2 series, unless serious bugs are discovered. Current Skosmos development is focused on Skosmos 3.

Enhancements

  • #1380 Autocomplete to support distinguisher labels in case of shared preferred labels (credit: @kouralex)
  • #1377/#1383 Avoid slow HTML parsing in hierarchy sort function
  • #1385 Add support for PHP 8.1 (credit: @kouralex)
  • #1415 Update Fuseki Docker (credit: @nichtich)
  • #1419 Enhance the feature request template with additional instructions
  • #1477 Use Apache Jena Fuseki docker image (credit: @kinow)
  • #1512 Top-level docker-compose.yml (credit: @namedgraph)
  • #1557 Implement max length for input fields on the feedback page (credit: @rvdwxl)

Bug fixes

  • #1343/#1568 Avoid showing vocabulary modified timestamp on concept page when the concept doesn't have a specific modification date
  • #1408/#1409 Skosmos crashes silently on missing void:uriSpace (credit: @nichtich)
  • #1423 fix conversion of DateTime to string in getContainsHtml
  • #1453/#1455 UI language negotiation fix (credit: @namedgraph)
  • #1457 Fixes and unit tests for UI language detection
  • #1529 Show deprecated concepts without replacement in change list
  • #1559 fix guessVocabularyFromURI when some vocabulary has no URI space
  • #1389/#1425 SKOSXL labels displayed multiple times (credit: @henriyli)
  • #1567 Fix feedback form limit php81 deprecation warning

Code quality and tests

  • #1394 CI builds are failing due to dubious ownership in repository at '/app' (credit: @kouralex)
  • #1397 Fix running git commands in CI tests under GitHub Actions
  • #1553 Harden JSONP callback filter

Translation updates

  • #1424 update German & Northern Sámi translations + English language template
  • #1536/#1569 update Spanish UI translations (credit: Meron Ewketu)
  • #1569 update French UI translations (credit: plecor)

See the upgrade instructions in the wiki for information about upgrading from earlier versions.

Skosmos 2.16.1

23 Mar 13:33

Choose a tag to compare

This is a minor patch release (2.16.1) of Skosmos which contains some bug fixes as well as updated UI translations for German and Northern Sámi languages.

Bug fixes

  • #1377/#1383 Opening the hierarchy for a concept takes a long time
  • #1423 Fix conversion of DateTime to string in getContainsHtml
  • #1408/#1409 Don't crash on incomplete vocabulary configuration (credit: @nichtich)

Translation updates

See the upgrade instructions in the wiki for information about upgrading from earlier versions.