Features & Roadmap

Features and roadmap of Open SPM Registry. The project is still in development and will be updated with new features and improvements.

Features

Listing / Browsing

State Feature API
Listing / Browsing GET /{scope}/{package}
Info of Package GET /{scope}/{package}/{version}
Retrieval of Package GET /{scope}/{package}/{version}.zip
Retrieval of Manifest GET /{scope}/{package}/{version}/Package.swift[?swift-version=[e.g. 5.7.0]]

Publishing

State Feature API
Publishing PUT /{scope}/{package}/{version}
ℹ️ currently only synchronous mode is supported
Package Signing e.g. swift package-registry publish [scope].[Package] [version] --metadata-path package-metadata.json --vv --private-key-path ecdsa_pkcs8.key --cert-chain-paths ecdsa.crt

Management

State Feature API
Storage currently Filesystem only
Docker Image Support docker pull wgr1984/openspmregistry
User Management No auth, Basic Auth, Oauth password and token

Roadmap

  • Publishing
    • Package Validity checking (checksum, manifest, etc)
    • asynchronous mode support
    • base64 format (not sure if needed)
  • Management API
    • Delete packages
    • Browser UI to e.g. list packages
    • Upload Binary Files (e.g. .zip), needed for binary targets
  • Storage
    • DB support (e.g. mysql, postgres)
    • Online storage (e.g S3, cloud drive)
    • Proxying / Cacheing support of other registries
  • User Management / Access Control
    • Permissions / roles
    • Scope restrictions
    • Audit logging