fix(kiosk): fetch a required plugin module whose replace directory is missing
A plugin developed inside an application replaces its required plugins with sibling directories (../user). Checked out on its own, that directory is missing and plugin.yaml lost the minimum (golem15.user: ""), so the manifest differed between the two layouts and TestPluginManifest could not pass in both. Such a module is now fetched at the version go.mod requires, as a consumer would see it. - listedModule.fallback marks a local replace whose directory is absent - fallback modules download separately, so one unfetchable version does not hold up the others - TestDeriveMissingReplace over a file:// proxy (offline)
This commit is contained in:
@@ -38,7 +38,7 @@ overrides:
|
||||
| `name` | The README's H1, or the `--name` override. |
|
||||
| `description` | The first paragraph after the README's H1 (the one-sentence summary of the standard README structure), or the `--description` override. |
|
||||
| `framework` | The version `go.mod` requires the framework (`git.golem15.com/golem15/summercms`) at: the oldest framework release the plugin works with. |
|
||||
| `requires` | Each plugin ID `Requires()` returns (literals or constants, as for `id`), with the version `go.mod` requires its module at. A requirement at `v0.0.0` is an error, because nobody can install that version; a pseudo-version is accepted with a warning. The value is empty for a plugin in the same module, and for one whose module is not a `go.mod` require. Left out when `Requires()` returns none. |
|
||||
| `requires` | Each plugin ID `Requires()` returns (literals or constants, as for `id`), with the version `go.mod` requires its module at. A requirement at `v0.0.0` is an error, because nobody can install that version; a pseudo-version is accepted with a warning. The value is empty for a plugin in the same module, and for one whose module is not a `go.mod` require. A module that `go.mod` replaces with a directory that is not checked out (a plugin developed inside an application, checked out on its own) is read at its required version from the module proxy, so the value is the same in both places. Left out when `Requires()` returns none. |
|
||||
| `overrides` | The `--name` and `--description` values, kept across regenerations. Left out when neither is set. |
|
||||
|
||||
Versions are minimums in Go's sense (`v0.6.0` means "v0.6.0 or newer"), never ranges: Go's minimal version selection picks the version, and a major version change moves the module path.
|
||||
|
||||
Reference in New Issue
Block a user