chore: retire bundled plugins from core; point docs at per-plugin repos#15
Merged
Conversation
The 7 first-party plugins now live in their own repositories (github.com/directedbits/recur-<plugin>), so remove them from core: - Delete plugins/ and drop the plugin entries from go.work (only the root module remains, so go.work/go.work.sum are removed entirely). - CI/build: drop plugin build/test/vet/lint steps from ci, lint, audit, release, and binary-size workflows; remove per-plugin build tasks, test:plugins, and plugin lint args from the Taskfile; stop the docs workflow from triggering on plugins/*/README.md. - e2e: drop the fileevents-backed trigger tests and the fileevents build plumbing from helpers (the remaining plugin/register e2e tests use a manifest-only fake plugin and are unaffected). - Move the per-plugin manual test cases to their new repos; keep daemon/secrets cases. Drop plugin README mirroring from sync-docs.sh. The plugin SYSTEM (install/discovery/run, SDK, protocol) is unchanged; only the bundled plugin sources leave the tree. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Follow-up to retiring bundled plugins from core: - README: plugins table links to github.com/directedbits/recur-<plugin>; add an install note (recur plugin install <release-url> + allowed_hosts); restore the Official documentation link (https://directedbits.github.io/recur/). - docs/plugins: replace the 7 stale per-plugin pages (previously synced from plugin READMEs) with a catalog _index.md linking to each repo, plus install instructions. - Fix now-broken plugins/<name>/ links and 'ships in-repo' claims across the getting-started, developer, and configuration docs; update CONTRIBUTING, the PR template, and ARCHITECTURE to describe plugins as separate repos. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Binary Size Report
|
The CLI command is the top-level 'recur install <path|url>', not 'recur plugin install'. Fix the command in the README, plugins catalog, installation, and writing-a-plugin docs, and use the real v0.1.0 example version. Verified end-to-end: 'recur install <release-url>' installs a plugin from its GitHub release archive.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Completes the plugin split: the 7 first-party plugins now live in their own repositories (
github.com/directedbits/recur-{timer,calendar,devicemonitor,docker,fileevents,mqtt,webhook}), so this removes them from core and repoints all documentation.The plugin system is unchanged — recur still installs, discovers, and runs plugins, and
pkg/plugin-sdk(added in #14, v0.3.0) is the API those repos build against. Only the bundled plugin sources leave the tree.Changes
chore: retire bundled plugins from coreplugins/; remove plugin entries fromgo.work(only the root module remains, sogo.work/go.work.sumgo entirely — core is a single module again).ci,lint,audit,release,binary-size; remove per-plugin build tasks,test:plugins, and plugin lint args from the Taskfile; stopdocstriggering onplugins/*/README.md; drop plugin README mirroring fromsync-docs.sh.daemon/secrets).docs: point plugin docs at the new per-plugin reposrecur install <release-url>+allowed_hosts); restore the Official documentation link (https://directedbits.github.io/recur/).docs/plugins/*.mdpages with a catalog_index.md.plugins/<name>/links and "ships in-repo" claims across getting-started/developer/configuration docs, CONTRIBUTING, the PR template, and ARCHITECTURE.Test plan
go build ./...,go test ./src/... ./pkg/..., andgo vet ./test/e2e/pass (single module, no workspace)golangci-lint run ./src/... ./pkg/...→ 0 issuesplugins/<name>/doc links (runtime~/.config/recur/pluginsreferences intentionally kept)Checklist
Breaking changes
None to the plugin runtime. Operationally, the core release no longer bundles plugin binaries — users install plugins from each plugin repo's releases. Documented in the README and plugins catalog.