Commit graph

11 commits

Author SHA1 Message Date
Christian Clason
f525d9eb6b 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-04-06 13:17:33 +02:00
Christian Clason
deeb6a0f46 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-04-06 13:17:33 +02:00
Christian Clason
9e484d5ffd feat!: use tree-sitter build 2025-04-06 13:17:33 +02:00
Christian Clason
b96ca7212d 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-04-06 13:17:31 +02:00
Christian Clason
21239d7db5 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-04-06 13:16:45 +02:00
Christian Clason
654153e043 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-04-06 13:16:45 +02:00
Christian Clason
58a6e91e40 fix: install dependencies 2025-04-06 13:16:45 +02:00
Christian Clason
8a122f5a0e ci: remove update-lockfile shell script 2025-04-06 13:16:45 +02:00
Lewis Russell
68aa1ac4f6 refactor: rewrite installation using jobs and async
Replace sync variants with callback support
2025-04-06 13:16:45 +02:00
Christian Clason
d4246a2eeb feat(locals)!: refactor locals.lua into standalone
Co-authored-by: TheLeoP <eugenio2305@hotmail.com>
2025-04-06 13:16:45 +02:00
Christian Clason
1764f4270f feat!: drop modules, general refactor and cleanup 2025-04-06 13:16:45 +02:00