Commit graph

11 commits

Author SHA1 Message Date
Christian Clason
5bd6e2a9b4 feat(parsers): rework tiers
* stable: updates follow semver releases (todo)
* unstable: updates follow HEAD (default)
* unmaintained: no automatic updates
* unsupported: no updates, cannot be installed
2025-03-05 10:00:39 +01:00
Christian Clason
a796eb4fc1 feat(install)!: drop support for git
Problem: Using git for installing parsers can lead to data loss if in a
git commit buffer.

Solution: Only support downloading via curl+tar, which are installed on
all supported platforms (since Windows 10). Curl will also be required
for WASM parsers (and for `vim.net.download()`).
2025-03-05 10:00:39 +01:00
Christian Clason
303fabc2f7 feat!: use tree-sitter build 2025-03-05 10:00:39 +01:00
Christian Clason
961b7f6f77 feat!: track parser revision in Lua
Problem: Tracking parser revision in lockfile and allowing override
through the parsers module complicates the code. In addition, only
revision changes are handled robustly, not changes to other installation
info.

Solution: Track parser revision in the parsers module directly. Reload
parser table on every install or update call. Support modifying parser
table in a `User TSUpdate` autocommand.
2025-03-05 10:00:39 +01:00
Christian Clason
335b62e540 feat: add parser tiers
Tier 1: Stable
Tier 2: Core (maintained by org members)
Tier 3: Community (maintained by external contributors, to varying
degree)
Tier 4: Unsupported (lacking active maintainer or declared
experimental); skipped in lockfile update and ignored for automatic
install by default
2025-03-05 10:00:39 +01:00
Christian Clason
fe66ace996 feat!: drop makefile support, norg parser
Norg install_info and queries are maintained by neorg.

All other parsers are compatible with C++11, so fix that as standard.
(Can be bumped if all supported platforms support C++14.)

Remove Makefile support, as it's no longer needed.
2025-03-05 10:00:39 +01:00
Christian Clason
70910f335f fix: install dependencies 2025-03-05 10:00:38 +01:00
Christian Clason
6bd77a0870 ci: remove update-lockfile shell script 2025-03-05 10:00:38 +01:00
Lewis Russell
c9074b7e5f refactor: rewrite installation using jobs and async
Replace sync variants with callback support
2025-03-05 10:00:38 +01:00
Christian Clason
e97cf1c5e6 feat(locals)!: refactor locals.lua into standalone
Co-authored-by: TheLeoP <eugenio2305@hotmail.com>
2025-03-05 10:00:38 +01:00
Christian Clason
20c077f374 feat!: drop modules, general refactor and cleanup 2025-03-05 10:00:38 +01:00