Skip to content

Implement support for a local registry #321

Open
@awvwgk

Description

@awvwgk

Before we make fpm aware of the fpm-registry, we should create a minimal working implementation for a local registry (this registry might even be built-in to simplify things a bit at the beginning).

In analogy to Cargo we could use a syntax like:

[dependencies]
[dependencies.toml-f]
version = "^0.2.1"
registry = "internal"  # or URI to a registry
[dependencies.M_CLI2]
version = "^0.1.0"
registry = "default"  # for whatever the default URI will be

This requires:

  1. a way to specify and match version requirements (src/fpm/versioning.f90 defines only a version type)
  2. the possibility to cache dependencies in a project (we have build/cache.toml, alternatively a lock file)
  3. a format for the registry (JSON?, TOML?, XML?, SQL?) and an fpm package implementing the format
    (the fpm-registry has both TOML and JSON representations of the registry right now)
  4. an interface to fetch from URIs that are not local:// or file:// (libcurl interface or just shell escape to curl/wget)

A full registry is discussed in #35

Metadata

Metadata

Assignees

Labels

specificationIssue regarding fpm manifest and model

Type

No type

Projects

Status

In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions