Downloads

v2.0.0

Released on 19 April 2024.

  • manager app WAR file: rdepot-app-2.0.0.war (sha1, md5)
  • repository app JAR file: rdepot-repo-2.0.0.jar (sha1, md5)
  • docker manager app: openanalytics/rdepot-app:2.0.0
  • docker repository app: openanalytics/rdepot-repo:2.0.0
  • docker web interface: openanalytics/rdepot-client:2.0.0

Release notes

This release includes a completely new web interface, which has been split from the main RDepot application. The old web interface that came as part of the RDepot application is no longer available.
Most notable changes include this new web UI, Python support and a well-documented stable ReSTful API v2.

Breaking changes

  • new web UI application, requires separate deployment (split from rdepot-app, see updated docker-compose)
  • declarative mode is now required to be enabled when configuring repositories in the application configuration
  • API tokens were replaced with user-generated access tokens, manageable via the API or UI
  • API v1 has been removed, please use API v2 instead (available since v1.6.0)
  • some configuration properties have been renamed slightly for consistency reasons:
    • localStorage is now local-storage
    • maxRequestSize is now max-request-size
    • access_token is now access-token
    • lifetime_configurable is now lifetime-configurable
    • allowed_characters is now allowed-characters
    • generate_manuals is now generate-manuals
    • api_token is now api-token
  • built-in LDAP support has been removed, please use OIDC and/or configure LDAP synchronization in your identity provider of choice instead
  • Java 17 is now required, instead of Java 11 (already included in Docker images)

New separate web UI, with:

  • search and filtering (packages, repositories, etc.)
  • sorting and pagination (packages, repositories, etc.)
  • improved package upload workflow
  • improved submission review workflow
  • improved inter-page navigation
  • the generate manuals option exposed when uploading R packages
  • HTML vignettes opening directly in the browser
  • submitter, maintainer and approver of packages are shown
  • notifications
  • English and Polish language support
  • personal user settings
  • markdown rendering for Python package descriptions
  • package details page that shows all package versions
  • access token management
  • custom URL prefix support
  • hiding the package installation command if the repository is not published

Other changes:

  • new feature: application health endpoints in the API
  • new feature: support for Python repositories and packages
  • new feature: configurable folder for declarative repository configurations
  • fix: submission fails when both Authors@R and Maintainer are provided
  • fix: deleted Package Maintainer can edit a package
  • fix: repositories are not published automatically
  • fix: deleted packages should not be downloadable
  • fix: generated folder is deleted when repository-snapshots are turned off
  • fix: inactive users are still able to perform operations using a valid access token
  • fix: RDescription parser cannot parse multiline URLs
  • fix: some transactions are not handled properly
  • fix: access tokens should be deactivated when a user is deactivated
  • fix: user trying to deactivate themselves returns an internal server error response
  • fix: deleting submission does not remove the source completely
  • fix: correctly handle HTTP 500 responses
  • fix: unable to assign more than one package maintainer
  • fix: liquibase migration fails when updating from v1.7.x to v2.0.0
  • fix: trace ID is not returned for checked exceptions
  • fix: it should not be possible to restore a repository
  • documentation: improving Java docs of RDepot base
  • documentation: user roles
  • documentation: developer guidelines
  • documentation: folder structure of the end-to-end tests
  • documentation: on how to access the OpenAPI specification UI
  • refactor: avoiding the use of “Lazy” injections

v1.7.9

Released on 18 April 2024.

Release notes

  • fix: publishing to repositories fails in some cases

v1.7.8

Released on 28 March 2024.

Release notes

  • fix: configurable max file size for package uploads (submissions)

v1.7.7

Released on 19 March 2024.

Release notes

  • fix: R DESCRIPTION parser was not able to parse certain packages
  • fix: Default application.yml files inside Docker images for manager app and repo

v1.7.6

Released on 5 January 2024.

Release notes

  • new feature: allow configuring a URL context path, see documentation
  • fix: R DESCRIPTION parser cannot parse multi-line properties
  • fix: R DESCRIPTION parser does not allow underscores in property keys

v1.7.5

Released on 6 July 2023.

Release notes

  • fix: mirror synchronizer doesn’t handle redirections properly
  • fix: package versions should not be differentiated by separators
  • fix: submitted packages are not replaced in repository in some cases

v1.7.4

Released on 9 May 2023.

Release notes

  • fix: integrate latest version of OWASP dependency check
  • fix: inactive users are able to perform operations in some cases
  • fix: repository generation directory should be cleaned, not removed

v1.7.3

Released on 24 March 2023.

Release notes

  • fix: RDescription parsing fails when properties cover multiple lines
  • fix: soft-deleted packages should not be downloadable
  • fix: manual generation always happens, ignoring config and request params
  • fix: correct Docker entrypoint for app and config

v1.7.2

Released on 8 March 2023.

Release notes

  • fix: repositories are not published correctly when in declarative mode

v1.7.1

Released on 2 March 2023.

Release notes

  • fix: repository maintainer can create a package maintainer outside of their repository
  • fix: disable approve/cancel button as soon as any of them is clicked on submissions page
  • fix: typos in translated messages
  • fix: missing version number in the manager UI
  • fix: deleting packages doesn’t work in some cases
  • fix: repositories are not published automatically in some cases
  • fix: additional validation for submission patch (assigned package)
  • fix: generated repository directory uses null timestamp
  • fix: deleted package maintainers can still edit packages
  • fix: error when trying to patch a not waiting submission
  • fix: package upload with replace option doesn’t work in some cases

v1.7.0

Released on 3 December 2022.

Release notes

This release includes a major refactoring where the components are split up into different modules. These modules open the way to enabling other programming languages (like Python) in later releases. The internal flows are more efficient and there is decreased coupling between components. There are a small selection of new features, a lot of fixes and new tests where appropriate.

  • new feature: extend repository events to also include those of related resources
  • new feature: restrictive property updates for entities via the API v2
  • fix: return unexpected error messages as JSON instead of HTMLs
  • fix: repository could not be updated in a declarative configuration
  • fix: race conditions on repository version increments
  • fix: command injection vulnerability via package name
  • fix: sometimes repositories from config file could not be created in declarative mode
  • fix: special case when uploading a package fails
  • refactor: divide into core and R modules
  • refactor: combine modular setup with API v2
  • refactor: move from null checks to Java optionals
  • refactor: decouple dependencies in service classes
  • refactor: improved event flow
  • refactor: improved email service
  • refactor: (re-)publishing should be done as little as possible
  • tests: added extra tests for API v1, database migration and others

v1.6.2

Released on 14 April 2022.

Release notes

  • new feature: configure “published” property of repositories inside the application YAML configuration
  • security: updated Spring Boot to 2.5.12 (CVE-2022-22965), although largely unaffected

v1.6.1

Released on 20 December 2021.

Release notes

  • new feature: support deployments with no access to internet

v1.6.0

Released on 4 November 2021.

Release notes

  • new feature: HTTP API v2, replaces the old v1 HTTP API
  • new feature: more detailed warning/error messages in the HTTP API v2
  • new feature: custom error pages in the UI
  • new feature: now uses Liquibase for all database schema related operations
  • new feature: updated submission rejection flow
  • new feature: turn off repository snapshots through config
  • fix: license check as part of build
  • fix: create correct event while creating new repository
  • fix: repository publication URI is not updated when config file changes in declarative mode
  • deprecation: HTTP API v1 in favour of HTTP API v2

1.5.0

Released on 4 May 2021.

Release notes

  • new feature: automated database management when upgrading versions
  • new feature: mirroring of external repositories
  • new feature: more user-friendly configuration
  • new feature: more user-friendly error handling
  • new feature: reduce reliability on system dependencies
  • new feature: application-wide configuration for generating manuals on upload
  • new feature: optionally filter on repository when listing packages in the API
  • refactor: better declarative configuration integration tests
  • refactor: more elegant way to parse application configurations
  • fix: sometimes cannot delete package while repository is published
  • fix: package submission breaks repository while repository is published
  • fix: user properties are not updated when they change in the auth provider
  • fix: package version equivalence
  • fix: packages are not deleted when repository is unpublished
  • fix: manual links to an empty PDF
  • fix: no vignettes are listed

1.5.0 cli

Released on 4 May 2021.

Release notes

  • new feature: packages list now accepts --repo to filter by repository

1.4.3

Released on 22 January 2021.

Release notes

  • new feature: order packages by version in the UI
  • new feature: generate archive.rds for archived packages
  • new feature: configurable email functionality (disabled by default)
  • new feature: automated OWASP dependency analysis checks
  • fix: error when viewing the archive of a package

1.4.2

Released on 11 December 2020.

Release notes

  • new feature: a tiny cli is now available that can be used to submit packages
  • new feature: integration test images are now available on dockerhub (openanalytics/rdepot-repo-it, openanalytics/rdepot-app-it, openanalytics/rdepot-ldap-it)
  • new feature: API token dialog in the UI
  • new feature: more flexible SQL scripts (DB_NAME, DB_USER)
  • new feature: manual generation for package submissions is now optional (generateManual parameter)
  • fix: HTTP error codes now reflect responses more accurately
  • fix: HTTP methods are now more consistent
  • fix: pet store sample is now removed from the API docs
  • fix: in declarative mode, when a repository is removed from config file it should be removed from db
  • fix: shift delete can’t remove submission

1.4.1

Released on 28 October 2020.

Release notes

  • new feature: translate message codes to proper error messages
  • new feature: show name and surname of current logged in user
  • new feature: declarative repository configuration
  • fix: at least one administrator has to be active
  • fix: read simple authentication configuration per user on login
  • fix: error in repo app when publishing repository
  • fix: API authentication using tokens
  • fix: deadlock on concurrent publication requests

1.4.0

Released on 24 August 2020.

Release notes

  • new feature: repository pre-configuration in the application properties
  • new feature: Keycloak, OIDC and simple authentication
  • fix: correctly handle simultaneous requests to repository
  • fix: more efficient publishing (revamp)
  • fix: migrate from application.properties to application.yml

1.3.1

Released on 27 July 2020.

Release notes

  • fix: thymeleaf security hotfix for users page

1.3.0

Released on 15 July 2020.

Release notes

  • refactored to support more production use cases and future extensions
  • added full suite of unit and integration tests
  • revamped UI using material design lite and thymeleaf
  • REST interface for integration with continuous integration services
  • publish rdepot artefacts to nexus (rdepot)
  • Docker images for the manager and repository application available on Docker hub

Snapshot builds