Skip to content

Releases: Idrinth/papyrus-lint

v1.20.0

Choose a tag to compare

@Idrinth Idrinth released this 04 Sep 19:58
99a9272

Changes

  • #393 Add lint for Int/Int division widened into a Float
  • #392 Add lint for a static function called through an instance
  • #391 Add non-static function call lint
  • #390 Add thank you section for contributors

Full Changelog: v1.19.0...v1.20.0

Coverage by module

Module Coverage Lines covered
Crates (papyrus-parser, papyrus-lints, papyrus-lint-core, papyrus-lint-cli) 96.6% 18257/18906
↳ papyrus-parser 98.3% 1828/1860
↳ papyrus-lints 95.8% 11941/12469
↳ papyrus-lint-core 98.1% 2679/2731
↳ papyrus-lint-cli 98.0% 1809/1846
App (src-tauri) 98.1% 1457/1485
UI (frontend) 98.7% 936/948
Editor plugins 99.6% 507/509
↳ vscode-extension 99.4% 320/322
↳ SublimeLinter-contrib-papyrus-lint 100.0% 187/187
Total 96.8% 21157/21848

Line coverage, aggregated from each job's lcov report. Missing reports mean that job didn't run or didn't upload one.

v1.19.0

Choose a tag to compare

@Idrinth Idrinth released this 04 Sep 14:23
fa456f2

Changes

  • #388 Add frontend tests for lint result actions (View / Apply fixes / Compile)
  • #389 Add CLI binary option integration tests
  • #387 Test config gates for all papyrus-lints fixers
  • #386 vscode-extension: add edge-case tests for CLI download, quick-fixes, and lifecycle
  • #385 Add public API edge-case tests for papyrus-lints
  • #384 Add lint flagging a property/variable named identical to its script
  • #383 Add invariant-loop-condition lint for provably non-terminating While loops
  • #382 Surface lint rule tags in the desktop app for filtering findings
  • #381 Add --tag to run a single lint/fix class from the CLI
  • #380 Distinguish multiple Auto state severity: local error vs inherited warning
  • #379 Add test for short-circuited None check in While condition
  • #375 Harden autocomplete against stale/in-flight lookup races
  • #376 Add rule tags for kind, importance, and auto-fixability
  • #374 Bundle LICENSE into the vsix during the release build
  • #373 Add stylelint job to CI for frontend CSS

Full Changelog: v1.18.1...v1.19.0

Coverage by module

Module Coverage Lines covered
Crates (papyrus-parser, papyrus-lints, papyrus-lint-core, papyrus-lint-cli) 96.8% 17420/17990
↳ papyrus-parser 98.3% 1828/1860
↳ papyrus-lints 96.1% 11122/11575
↳ papyrus-lint-core 98.2% 2679/2727
↳ papyrus-lint-cli 98.0% 1791/1828
App (src-tauri) 98.1% 1457/1485
UI (frontend) 98.7% 936/948
Editor plugins 99.6% 507/509
↳ vscode-extension 99.4% 320/322
↳ SublimeLinter-contrib-papyrus-lint 100.0% 187/187
Total 97.1% 20320/20932

Line coverage, aggregated from each job's lcov report. Missing reports mean that job didn't run or didn't upload one.

v1.18.1

Choose a tag to compare

@Idrinth Idrinth released this 03 Sep 20:04
b2c6bb4

Changes

  • #372 Add unit tests for unused-getter and division-by-zero lints
  • #371 Treat any-branch assignment as sufficient in variable-used-before-assignment
  • #370 Add test ensuring trailing-whitespace repair preserves identifier/type casing
  • #367 Treat default-value comparisons as gates in variable-used-before-assignment
  • #369 Preserve a script's original encoding when fixing it
  • #368 Fix strict_achlist_scope being ignored when --config is used
  • #366 Add unit tests for coverage-summary and Nexus page rendering scripts and run them in CI
  • #365 Move default config to docs/, link from README instead of dumping it
  • #364 Add public API test for dispatching opt-in lint rules
  • #360 Test: ignore stale single-PSC drop results (frontend)
  • #359 Use a Skyrim-esque font for the header and version
  • #358 Fix function-override lint reporting events as functions
  • #357 Add public API edge-case tests to papyrus-lints

Full Changelog: v1.18.0...v1.18.1

Coverage by module

Module Coverage Lines covered
Crates (papyrus-parser, papyrus-lints, papyrus-lint-core, papyrus-lint-cli) 96.7% 16945/17518
↳ papyrus-parser 98.3% 1828/1860
↳ papyrus-lints 95.9% 10769/11229
↳ papyrus-lint-core 98.2% 2679/2727
↳ papyrus-lint-cli 98.1% 1669/1702
App (src-tauri) 98.1% 1428/1456
UI (frontend) 98.5% 864/877
Editor plugins 99.4% 506/509
↳ vscode-extension 99.1% 319/322
↳ SublimeLinter-contrib-papyrus-lint 100.0% 187/187
Total 97.0% 19743/20360

Line coverage, aggregated from each job's lcov report. Missing reports mean that job didn't run or didn't upload one.

v1.18.0

Choose a tag to compare

@Idrinth Idrinth released this 02 Sep 17:44
e4c0659

Changes

  • #356 Fix code viewer edit-mode overlay desyncing on blank lines
  • #354 Audit rules/native-methods.yaml against vanilla Skyrim SE natives
  • #355 Add public API tests for opt-in global-variable-setvalue lint
  • #350 Add lint for repeated GlobalVariable.GetValue() calls in If/ElseIf chains
  • #353 Add CLI binary integration coverage
  • #352 Fix code viewer edit-mode textarea leaking raw text on selection
  • #349 Add GlobalVariable no-op SetValue lint
  • #348 Add edge-case public API tests to papyrus-lints
  • #347 Move lint report schema into docs
  • #351 Normalize whitespace in Nexus page documentation

Full Changelog: v1.17.0...v1.18.0

Coverage by module

Module Coverage Lines covered
Crates (papyrus-parser, papyrus-lints, papyrus-lint-core, papyrus-lint-cli) 96.5% 16573/17179
↳ papyrus-parser 98.3% 1828/1860
↳ papyrus-lints 95.7% 10562/11040
↳ papyrus-lint-core 97.6% 2562/2625
↳ papyrus-lint-cli 98.0% 1621/1654
App (src-tauri) 98.0% 1407/1435
UI (frontend) 98.4% 863/877
Editor plugins 99.4% 506/509
↳ vscode-extension 99.1% 319/322
↳ SublimeLinter-contrib-papyrus-lint 100.0% 187/187
Total 96.7% 19349/20000

Line coverage, aggregated from each job's lcov report. Missing reports mean that job didn't run or didn't upload one.

v1.17.0

Choose a tag to compare

@Idrinth Idrinth released this 02 Sep 12:09
7b92371

Changes

  • #346 Add colored plain-text output to the CLI
  • #345 Add --short-paths flag to the CLI
  • #344 Add CLI example image to README
  • #343 Update README with Papyrus Lint Viewer image
  • #342 Add non-base-game native function usage lint
  • #341 Revise README with updated images and descriptions
  • #340 Add unwired rules/native-methods.yaml with Skyrim base-game native methods
  • #339 test: expand slow function repair coverage
  • #338 Add automatic fixes for slow function calls
  • #337 test: expand papyrus-lints edge-case coverage
  • #334 tests: add public_api tests for line-restricted repair behavior
  • #336 Add custom funding link to FUNDING.yml
  • #335 Move Nexus Mods BBCode template into docs/ and update references
  • #333 Update FUNDING.yml with GitHub funding info
  • #331 tests: add public-api contract tests for fixable/known rule lists and filtered repairs
  • #330 Sync Nexus page: add CLI fix filters and update default config docs
  • #329 Add a per-finding "Fix this issue" button to the file overview
  • #328 Reuse script index for cross-script resolution
  • #321 test: expand papyrus-lints coverage
  • #327 docs: add 'How to help' section to README and Nexus page
  • #326 Add "Fix This Issue" button to the SublimeLinter plugin
  • #325 Add a "Fix this issue" quick fix to the VS Code extension
  • #324 test(core): add edge-case tests for achlist parsing and source encoding
  • #323 Build an in-memory script index once for conflicting-script-versions in the CLI
  • #322 Add --type/--line filters to the fix subcommand
  • #320 Add nexus-page release job to attach versioned nexuspage.bbcode with coverage values
  • #318 Scope achlist cross-script resolution to its own listed entries (#311)
  • #319 Fix name of issue and PR messages in workflow
  • #313 Bump actions/github-script from 8 to 9
  • #314 Bump DavidAnson/markdownlint-cli2-action from 20 to 24
  • #316 Bump actions/download-artifact from 7 to 8
  • #317 test(lints): add public tests for unused @disable behavior
  • #315 Bump Nexus-Mods/upload-action from 1.0.0.pre.beta.9 to 1.0.0.pre.beta.10
  • #312 Bump actions/first-interaction from 1 to 3
  • #310 Guard incremental lint rendering against overlapping drops
  • #309 Memoize papyrus-parser's parse()/tokenize() against the most recent source
  • #308 Stream lint results into the lint tab as each file finishes
  • #307 Refactor workflow dependencies in release.yml
  • #306 test(vscode-extension): expand test harness and add coverage for CLI download, activation, and lifecycle behaviors

Full Changelog: v1.16.0...v1.17.0

Coverage by module

Module Coverage Lines covered
Crates (papyrus-parser, papyrus-lints, papyrus-lint-core, papyrus-lint-cli) 96.6% 16231/16808
↳ papyrus-parser 98.3% 1828/1860
↳ papyrus-lints 95.8% 10220/10669
↳ papyrus-lint-core 97.6% 2562/2625
↳ papyrus-lint-cli 98.0% 1621/1654
App (src-tauri) 98.0% 1407/1435
UI (frontend) 98.4% 863/877
Editor plugins 99.4% 506/509
↳ vscode-extension 99.1% 319/322
↳ SublimeLinter-contrib-papyrus-lint 100.0% 187/187
Total 96.8% 19007/19629

Line coverage, aggregated from each job's lcov report. Missing reports mean that job didn't run or didn't upload one.

v1.16.0

Choose a tag to compare

@Idrinth Idrinth released this 02 Sep 03:01
710e164

Changes

  • #305 Improve VS Code extension CLI download tests and enforce 90% coverage
  • #304 test(lints): cover composed repair behavior in public API tests
  • #303 test(core): cover AST cache and script-conflict edge cases
  • #302 CI: add yamllint job to validate rules/*.yaml and add config
  • #301 test(sublime): add unit tests for CLI cache/platform edge cases
  • #300 Add comprehensive VS Code extension tests and harness
  • #299 test(sublime): cover automatic CLI download, caching and error handling
  • #298 Move ScriptName/Else position info into the AST to avoid re-lexing
  • #297 test(parser): cover additional parser edge cases
  • #296 Track integer literal notation (decimal/hex) in the AST
  • #294 Add magic numbers lint, disabled by default
  • #295 Allow 1/0 as bool-like for the strict boolean check
  • #293 Add FormID hex notation lint
  • #292 Add "Local variable used before assignment" lint
  • #291 Add parameter reassignment lint
  • #290 test: expand papyrus-lints public API test coverage
  • #289 Editor plugins: auto-download matching CLI release and cache it
  • #288 Expand unused-disable lint test coverage
  • #287 Update automation description for clarity

Full Changelog: v1.15.0...v1.16.0

Coverage by module

Module Coverage Lines covered
Crates (papyrus-parser, papyrus-lints, papyrus-lint-core, papyrus-lint-cli) 96.4% 14829/15381
↳ papyrus-parser 98.3% 1720/1749
↳ papyrus-lints 95.6% 9837/10285
↳ papyrus-lint-core 97.4% 2172/2229
↳ papyrus-lint-cli 98.4% 1100/1118
App (src-tauri) 98.0% 1323/1350
UI (frontend) 98.4% 822/835
Editor plugins 94.5% 376/398
↳ vscode-extension 92.1% 258/280
↳ SublimeLinter-contrib-papyrus-lint 100.0% 118/118
Total 96.6% 17350/17964

Line coverage, aggregated from each job's lcov report. Missing reports mean that job didn't run or didn't upload one.

v1.15.0

Choose a tag to compare

@Idrinth Idrinth released this 01 Sep 19:34
1886f2f

Changes

  • #286 Update version extraction in release workflow
  • #285 Enhance release workflow for NexusMods uploads
  • #283 Revise test coverage details in nexuspage.bbcode
  • #284 Add automation section to nexuspage.bbcode
  • #282 Add Nexus Mods BBCode linter and CI job
  • #281 Publish releases to Nexus Mods via the Nexus Mods API
  • #280 Report unused @disable directives (opt-in unused-disable lint)
  • #279 test: expand papyrus-lints public API test coverage
  • #278 Honor configured SublimeLinter executable (support PapyrusLinter desktop app)
  • #277 Improve generated release notes
  • #276 Include default papyrus-lint.yaml in release artifacts
  • #275 Modify test coverage section with placeholders
  • #274 Clarify Nexus lint documentation sync

Full Changelog: v1.14.1...v1.15.0

Coverage by module

Module Coverage Lines covered
Crates (papyrus-parser, papyrus-lints, papyrus-lint-core, papyrus-lint-cli) 96.4% 13790/14307
↳ papyrus-parser 98.1% 1695/1727
↳ papyrus-lints 95.6% 8897/9305
↳ papyrus-lint-core 97.3% 2098/2157
↳ papyrus-lint-cli 98.4% 1100/1118
App (src-tauri) 98.0% 1323/1350
UI (frontend) 98.4% 814/827
Editor plugins 100.0% 93/93
↳ vscode-extension 100.0% 21/21
↳ SublimeLinter-contrib-papyrus-lint 100.0% 72/72
Total 96.6% 16020/16577

Line coverage, aggregated from each job's lcov report. Missing reports mean that job didn't run or didn't upload one.

v1.14.1

Choose a tag to compare

@Idrinth Idrinth released this 01 Sep 14:40
3266627

Changes

Coverage by module

Module Coverage Lines covered
Crates (papyrus-parser, papyrus-lints, papyrus-lint-core, papyrus-lint-cli) 96.4% 13647/14162
App (src-tauri) 98.0% 1323/1350
UI (frontend) 98.4% 814/827
Editor plugins 100.0% 92/92
Crates (papyrus-parser, papyrus-lints, papyrus-lint-core, papyrus-lint-cli)
Component Coverage Lines covered
papyrus-parser 98.1% 1695/1727
papyrus-lints 95.6% 8754/9160
papyrus-lint-core 97.3% 2098/2157
papyrus-lint-cli 98.4% 1100/1118
Editor plugins
Component Coverage Lines covered
vscode-extension 100.0% 21/21
SublimeLinter-contrib-papyrus-lint 100.0% 71/71

Line coverage, aggregated from each job's lcov report. Missing reports mean that job didn't run or didn't upload one.

Full Changelog: v1.14.0...v1.14.1

v1.14.0

Choose a tag to compare

@Idrinth Idrinth released this 01 Sep 00:34
7094cbe

Changes

Coverage by module

Module Coverage Lines covered
Crates (papyrus-parser, papyrus-lints, papyrus-lint-core, papyrus-lint-cli) 96.4% 13209/13697
App (src-tauri) 98.0% 1312/1339
UI (frontend) 98.4% 809/822
Editor plugins 100.0% 92/92
Crates (papyrus-parser, papyrus-lints, papyrus-lint-core, papyrus-lint-cli)
Component Coverage Lines covered
papyrus-parser 97.9% 1690/1727
papyrus-lints 95.6% 8562/8956
papyrus-lint-core 98.0% 1918/1958
papyrus-lint-cli 98.4% 1039/1056
Editor plugins
Component Coverage Lines covered
vscode-extension 100.0% 21/21
SublimeLinter-contrib-papyrus-lint 100.0% 71/71

Line coverage, aggregated from each job's lcov report. Missing reports mean that job didn't run or didn't upload one.

Full Changelog: v1.13.0...v1.14.0

v1.13.0

Choose a tag to compare

@Idrinth Idrinth released this 31 Aug 13:23
902fc17

Changes

Coverage by module

Module Coverage Lines covered
Crates (papyrus-parser, papyrus-lints, papyrus-lint-core, papyrus-lint-cli) 96.1% 12793/13314
App (src-tauri) 96.5% 836/866
UI (frontend) 96.5% 754/781
Editor plugins 100.0% 92/92
Crates (papyrus-parser, papyrus-lints, papyrus-lint-core, papyrus-lint-cli)
Component Coverage Lines covered
papyrus-parser 97.1% 1677/1727
papyrus-lints 95.3% 8280/8687
papyrus-lint-core 97.7% 1802/1844
papyrus-lint-cli 97.9% 1034/1056
Editor plugins
Component Coverage Lines covered
vscode-extension 100.0% 21/21
SublimeLinter-contrib-papyrus-lint 100.0% 71/71

Line coverage, aggregated from each job's lcov report. Missing reports mean that job didn't run or didn't upload one.

Full Changelog: v1.12.0...v1.13.0