Bartek Iwańczuk
a6d1f1116f
add support for hint
2024-12-26 13:38:52 +01:00
Bartek Iwańczuk
c3ac6031f6
renames
2024-12-26 13:33:47 +01:00
Bartek Iwańczuk
f283a0fd73
put fns into Rc
2024-12-26 12:26:44 +01:00
Bartek Iwańczuk
df54f58874
use static strings
2024-12-26 11:54:49 +01:00
Bartek Iwańczuk
47178efd62
lint
2024-12-26 11:41:21 +01:00
Bartek Iwańczuk
46e191c563
remove debug logs
2024-12-26 11:36:54 +01:00
Bartek Iwańczuk
1a0a61d059
cleanup
2024-12-26 11:26:04 +01:00
Bartek Iwańczuk
05a89f5ffb
add PluginLogger, finally works in the LSP
2024-12-25 15:18:50 +01:00
Bartek Iwańczuk
f55dd0d0bb
wire up in the lsp
2024-12-24 16:22:09 +01:00
Bartek Iwańczuk
f6efc9f357
plugins are run inside CliLinter now
2024-12-24 10:52:36 +01:00
Bartek Iwańczuk
e6d0a6fde1
abstract away running plugins
2024-12-24 10:43:10 +01:00
Bartek Iwańczuk
0e8457d7c3
simplify plugin loading
2024-12-24 10:27:30 +01:00
Bartek Iwańczuk
46db6dd14d
Merge branch 'main' into lint_plugins
2024-12-23 08:50:34 +01:00
Marvin Hagemeister
1a809b8115
feat(unstable): support selectors in JS lint plugins ( #27452 )
...
This PR adds support for using selectors in the JS linting plugin API.
Supported at the moment are:
- `Foo Bar` (descendant)
- `Foo > Bar` (child combinator)
- `Foo + Foo` (next sibling)
- `Foo ~ Foo` (subsequent sibling)
- `[attr]`, `[attr=value]` (attribute selectors, supported operators:
`=`, `!=`, `<`, `>`, `<=`, `>=`)
- `:first-child`
- `:last-child`
- `:nth-child(2)`, `:nth-child(2n + 1)`
2024-12-23 08:45:47 +01:00
Bartek Iwańczuk
71c82e47ef
run jsr plugins
2024-12-22 22:06:31 +01:00
Bartek Iwańczuk
3bea4cfa18
load plugins relative to the config file
2024-12-22 21:46:49 +01:00
Bartek Iwańczuk
a446c89620
remove --plugins flag support for now
2024-12-22 21:35:29 +01:00
Bartek Iwańczuk
6d03bafd1e
move ops
2024-12-22 21:20:52 +01:00
Bartek Iwańczuk
8479e9541d
update a todo
2024-12-22 21:04:55 +01:00
Bartek Iwańczuk
67e2d06c34
Try to load files differently
2024-12-21 16:08:47 +01:00
Bartek Iwańczuk
fcfd4c09b5
wip after merge
2024-12-21 02:38:23 +01:00
Bartek Iwańczuk
d3e41a770a
Merge branch 'main' into lint_plugins
2024-12-21 02:28:39 +01:00
Marvin Hagemeister
26425a137b
feat(unstable): add JS linting plugin infrastructure ( #27416 )
...
This PR extracts the core part of
https://github.com/denoland/deno/pull/27203 to make it easier to review
and land in parts.
It contains:
- The JS plugin code the deserializes and walks the buffer
- The Rust portion to serialize SWC to the buffer format (a bunch of
nodes are still todos, but imo these can land anytime later)
- Basic lint plugin types, without the AST node types to make this PR
easier to review
- Added more code comments to explain the format etc.
More fixes and changes will be done in follow-up PRs.
---------
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-12-21 00:58:03 +01:00
Marvin Hagemeister
13cc74dd59
clippy stuff
2024-12-18 15:29:27 +01:00
Marvin Hagemeister
5ea018aa58
improve conversion safety
2024-12-18 14:36:24 +01:00
Marvin Hagemeister
e296022d44
fix more types
2024-12-18 12:16:28 +01:00
Marvin Hagemeister
8d9f9ce5e2
fix: node name
2024-12-18 11:30:23 +01:00
Bartek Iwańczuk
53a680bded
Merge branch 'main' into lint_plugins
2024-12-18 05:35:56 +01:00
Marvin Hagemeister
6e70ba2c77
get selector integration working
2024-12-17 12:04:12 +01:00
Bartek Iwańczuk
f9add94e17
refactor(lint): renames and code flattening ( #27386 )
...
Working on loading plugin configuration for
https://github.com/denoland/deno/pull/27203
I encountered a lot of complexity, so did some drive-by cleanups to make
it easier to grok the code and have fewer duplicate names.
2024-12-17 01:35:26 +00:00
Marvin Hagemeister
86fc6e64cb
WIP
2024-12-16 16:17:02 +01:00
Marvin Hagemeister
f167277561
remove dead code
2024-12-15 22:57:55 +01:00
Marvin Hagemeister
3f9ee0d6df
feat(lint): support visitor selector syntax
2024-12-15 22:56:50 +01:00
Marvin Hagemeister
ea11f95029
make js plugins independent of ast strucure
2024-12-15 19:18:30 +01:00
Marvin Hagemeister
65fcda4cd5
improve format
2024-12-13 11:38:35 +01:00
Marvin Hagemeister
f50bf9b064
refactor node handling
2024-12-13 00:33:44 +01:00
Marvin Hagemeister
c83f722039
Refactor binary ast
2024-12-12 22:16:49 +01:00
Marvin Hagemeister
76c1275200
fix traversal
2024-12-12 20:53:08 +01:00
Marvin Hagemeister
8f104313ff
more nodes
2024-12-12 15:20:36 +01:00
Marvin Hagemeister
7c7a888fa6
basic ts nodes
2024-12-12 13:28:35 +01:00
Marvin Hagemeister
2902ebaa6f
refactor ast
2024-12-12 11:34:45 +01:00
Marvin Hagemeister
dda408b019
fix: clippy
2024-12-12 10:53:12 +01:00
Marvin Hagemeister
d9e506eb8d
refactors
2024-12-12 10:42:38 +01:00
Marvin Hagemeister
dd75c31aa3
more_nodes
2024-12-12 10:22:21 +01:00
Marvin Hagemeister
499257cbf1
refactor
2024-12-12 04:19:11 +01:00
Marvin Hagemeister
a3421b9c0a
more nodes
2024-12-12 01:35:57 +01:00
Marvin Hagemeister
17ad68bb53
more nodes
2024-12-11 17:47:46 +01:00
Marvin Hagemeister
8e56216adf
more nodes
2024-12-11 17:41:33 +01:00
Marvin Hagemeister
a2b10d43f3
more nodes
2024-12-11 17:10:05 +01:00
Marvin Hagemeister
3c19d0651b
WIP
2024-12-11 12:47:45 +01:00