Commit graph

28 commits

Author SHA1 Message Date
d393deec8b
build: add luarocks packaging and bump stylua
Problem: oil.nvim had no luarocks rockspec, so users of rocks.nvim
and similar tools could not install it from the registry. The stylua
CI action was also pinned to an older version.

Solution: add scm-1 rockspec and a luarocks publish workflow that
gates on tests passing before publishing on version tags. Bump
stylua action from v2.0.2 to v2.1.0.

Closes: barrettruth/oil.nvim#14
2026-02-21 23:20:26 -05:00
Barrett Ruth
856716e6dc
feat: support vim.g.oil configuration + remove release-please (#17)
* feat: support vim.g.oil declarative configuration

Problem: oil.nvim requires an imperative require("oil").setup(opts)
call to initialize. The Neovim ecosystem is moving toward vim.g.plugin
as a declarative config source that works without explicit setup calls.

Solution: fall back to vim.g.oil in config.setup() when no opts are
passed, and add plugin/oil.lua to auto-initialize when vim.g.oil is
set. Explicit setup(opts) calls still take precedence. Update docs
and add tests for the new resolution order.

Closes: barrettruth/oil.nvim#1

* build: remove release-please pipeline

Problem: the release-please action creates automated releases that
are not needed for this fork's workflow.

Solution: remove the release job from tests.yml and the
release-please branch exclusion from the review request workflow.

* fix(doc): improve readme phrasing

* doc: minor phrasing "improvements"

* ci: add luarocks release on tag push

Problem: there is no automated way to publish oil.nvim to luarocks
when a new version is tagged.

Solution: add a luarocks workflow that triggers on v* tag pushes,
runs the test suite via workflow_call, then publishes via
luarocks-tag-release. Add workflow_call trigger to tests.yml so it
can be reused.
2026-02-21 22:38:38 -05:00
Barrett Ruth
3b930636e3
docs: centralize documentation into helpdoc (#15)
* docs: centralize documentation into helpdoc

Problem: documentation was spread across four files (README.md,
doc/oil.txt, doc/api.md, doc/recipes.md) with duplication and gaps.
User events were undocumented, and adapter docs only lived in the
README.

Solution: expand doc/oil.txt with five new sections (introduction,
requirements, adapters, recipes, events) from existing content. Trim
README to a landing page pointing to :help oil. Delete doc/api.md
and doc/recipes.md since their content now lives in the helpdoc.

Closes: barrettruth/oil.nvim#6

* build: remove docgen pipeline

Problem: the Python docgen pipeline (scripts/generate.py,
scripts/main.py, nvim_doc_tools) was designed for upstream's doc
layout and is incompatible with the centralized helpdoc structure.
It overwrites doc/oil.txt entirely and expects sections in README.md
that no longer exist.

Solution: delete the pipeline scripts (generate.py, main.py,
requirements.txt), remove the update_docs CI job, and clean up the
Makefile and .gitignore references. Linting and typechecking remain
unchanged.
2026-02-21 22:15:53 -05:00
Barrett Ruth
1712b6feb3
docs: upstream tracking in README + daily PR mirror (#13)
* docs: replace changelog with upstream divergence table in README

Problem: fork changes were not documented anywhere user-facing. The
auto-generated CHANGELOG.md tracked upstream releases, not fork
divergence.

Solution: delete CHANGELOG.md and add a collapsed <details> block to
README.md with two tables — cherry-picked PRs (by number, with commit
hashes) and triaged upstream issues (by number, with status and
resolution). This gives users a single place to see what the fork
offers over upstream.

* ci: add daily upstream PR mirror workflow

Problem: new upstream PRs required manual monitoring of
stevearc/oil.nvim to discover.

Solution: add a GitHub Actions workflow that runs daily at 08:00 UTC
and creates issues in the fork for any upstream PRs opened in the last
24 hours. Skips dependabot PRs and deduplicates by title prefix.
Issues are labeled upstream/pr for easy filtering.
2026-02-21 15:53:53 -05:00
034dce7f78
ci: request review from fork owner instead of upstream maintainer 2026-02-21 02:20:07 -05:00
bb128e96af
ci: replace docgen push with staleness check
Problem: the docgen workflow pushed directly to main, which is blocked
by repository rulesets. No token-based push from GitHub Actions can
bypass ruleset rules on personal repos.

Solution: replace the push step with a git diff --exit-code check that
fails if generated docs are out of date. Docs must now be committed by
the developer via make doc. Also regenerates docs to reflect batch 4
changes (close_float, OilFileIcon, OilExecutableHidden, recipe link).
2026-02-20 21:16:17 -05:00
60aed7d595
ci: use PUSH_TOKEN for docgen push to bypass branch rules
Problem: the docgen workflow pushes to main using GITHUB_TOKEN, which
authenticates as github-actions[bot]. The bot cannot bypass repository
rulesets on personal repos, so the push is rejected by required PR,
status check, and signature rules.

Solution: prefer a PUSH_TOKEN secret (a PAT authenticated as the repo
admin, who has bypass permissions) with fallback to GITHUB_TOKEN so
the workflow does not break before the secret is created.
2026-02-20 20:35:07 -05:00
42af6caf0a ci: rename default branch from master to main
Problem: the fork used master as the default branch name.

Solution: rename to main and update all CI workflow triggers,
ref checks, and the pre-push hook fallback.
2026-02-20 16:32:53 -05:00
Steven Arcangeli
81b8a91735 cleanup: remove deprecated trash_command 2026-01-01 00:22:58 -05:00
Steven Arcangeli
302bbaceea ci: run tests against nvim 0.11 2025-03-30 21:58:22 -07:00
Steven Arcangeli
20baf82747 ci: update nvim install script for new appimage name 2025-02-11 17:42:06 -08:00
Steven Arcangeli
a3fc6623fa lint: upgrade to stylua v2.0.2 2025-01-24 22:54:50 -08:00
Steven Arcangeli
15e071f203 ci: typechecking no longer requires neodev 2024-06-01 16:38:11 -07:00
Steven Arcangeli
9e3a02252d ci: remove package-name from release-please config 2024-05-16 12:24:19 -07:00
Steven Arcangeli
6f452e8d47 ci: upgrade release-please-action to v4 2024-05-16 12:16:00 -07:00
Steven Arcangeli
27d9f37161 ci: run tests against Neovim v0.10.0 2024-05-16 11:09:15 -07:00
Steven Arcangeli
8a2de6ada2 ci: update stylua version to v0.20.0 2024-05-16 10:46:45 -07:00
Steven Arcangeli
2edb43a7ec ci: update checkout action 2024-04-23 19:21:02 -07:00
Steven Arcangeli
8bc37bac29 ci: github workflow automation 2024-01-14 12:47:34 -08:00
Steven Arcangeli
2baf36d74f ci: run tests against nvim 0.9.4 2023-11-14 22:47:30 -08:00
Steven Arcangeli
650aa1916f ci: use stylua 0.18.2 2023-10-08 23:01:24 -07:00
Steven Arcangeli
ca2560cae8 ci: merge workflow jobs and add makefile 2023-09-02 08:48:11 -07:00
Steven Arcangeli
ebf9337b32 ci: run type check in actions 2023-08-13 08:08:51 -07:00
Steven Arcangeli
23b1611ca6 ci: use release-please to tag releases 2023-06-27 12:57:43 -07:00
Steven Arcangeli
873ea3b85d ci: run tests on newer nvim versions 2023-04-21 22:17:18 -07:00
Steven Arcangeli
5bdee20d5d refactor: stop checking in doc/tags 2023-04-21 22:16:31 -07:00
Steven Arcangeli
ca4da68aae feat: builtin support for editing files over ssh (#27) 2023-01-18 10:25:22 -08:00
Steven Arcangeli
fefd6ad5e4 feat: first draft 2023-01-02 01:34:53 -08:00