Releases: ivov/lisette
Releases · ivov/lisette
lisette-v0.4.3
- feat: enable cgo for third-party go packages #760
f097c20 - fix: fall back to constructor heuristic on inconclusive nil analysis #761
50ab4e0 - feat: lint for an operand and its own negation #759
c2d91fb - feat: recognize and validate
#[test]functions #758ad379b2 - fix: take recursive-enum constructor fields by value #751
1de2f4e - refactor: drop the string-setup path from emit #757
d30936d - feat: discover
.test.lisfiles and isolate them from production #7568d4390b - feat: lints for slice membership and emptiness checks #755
519f424 - feat: lints for unnecessary eager and lazy evaluation #754
0bd336e - chore: update fuzz lockfile #750
33d6fbe - refactor: extract the post-inference passes into their own crate #749
4c41014 - feat: go-to-definition for prelude symbols #748
a56fd02 - refactor: decouple inference from the post-inference passes #747
ac3a457 - feat: inlay hint additons #742
ebd6ef2 - feat: introduce
#[equality]attribute #7463a273a3 - fix: reject VarArgs in non-last parameter position #743
ab535ad - feat: lints for needless question mark and manual option zip #744
4a40051
lisette-v0.4.2
- refactor: rename info summary count label to advisories #741
410b75e - feat: inlay hints for parameter names at call sites #740
70fb4a1 - ci: build bindgen unoptimized to speed up stdlib check #739
4d8d558 - feat: show parameter names in LSP signature help #738
0bc93c7 - feat: lints for option/result combinator simplifications #737
63807bf - ci: cache the go build output for e2e suite #736
6a004df - feat: deep equality for slices and maps of equatable types #735
f331d8f - ci: run on main to warm the pull request cache #734
7b727d1 - feat: lints for option/result match simplifications #733
6fccf25 - ci: split unit tests from main suite #732
559b60c - fix: track equals liveness per receiver type #731
edb638c - fix: reject unrepresentable receiver method bounds #730
8a18611 - refactor: prep for semantics crate split #729
bc16ce7 - feat: lint for botched variable swaps #728
c5a4cc6 - feat: lint for min/max clamp mistakes #726
4b54e8a
lisette-v0.4.1
- test: render remaining emit snapshot descriptions as yaml blocks #725
414e81b - fix: correct UFCS lowering and generic type args #724
2ce2570 - feat: lint for float comparison hazards and NaN casts #723
6a316fe - feat: add LSP inlay type hints for
letbindings #722c61d141 - feat: lint for faulty bit masks and equal operands #721
b23d692 - refactor: tighten bindgen for maintainability #720
efde06b - ci: stop requiring zed extension version bump on grammar change #718
13a3231 - refactor: rework cli styling #717
27d427e - chore: rebuild playground #716
66677a1 - feat: add
equalsmethod for slices and maps #7152c69536 - feat: flag impossible, redundant, and combinable comparisons #712
8fbcb7f
lisette-v0.4.0
This version contains breaking changes.
- feat: advise against recompiling a regexp in a loop #710
b88540d - feat: go-to-definition for go stdlib symbols #684
5126fad - fix: stop generated imports from colliding with user names #709
d627ae1 - feat: warn on leaked context from uncalled cancel func #708
b39bc39 - feat: support method expressions on promoted methods #707
6dc0e2c - feat!: make
lis buildproduce a binary #7066f0b0f5 - feat: warn on use of deprecated Go APIs #705
252aade - chore: remove benchmark crate #704
9885735 - refactor!: rename
--debugto--sourcemap#703c5245f4 - feat: allow suppressing more lints via
#[allow]#702ce4c0fa - refactor!: drop
implfor interface embedding in favor ofembed#70115563f9 - feat: warn when
os.Exitskips adefer#7002d22251 - refactor: finish migrating emit statements to structured IR #699
e3701db - perf: run independent pass groups concurrently #698
06a0aa2 - perf: stop cloning function bodies during emit #696
cbe4d70
lisette-v0.3.4
- docs: document embedding imported Go types #695
d027dbd - fix: adjust diagnostics for
var#6948617a15 - feat: promote methods through unexported Go embeds #693
14e9316 - fix: enforce sealing of imported Go interfaces #692
b1db049 - test: render snapshot descriptions as yaml literal blocks #691
ff2c70a - feat: add
lis emitto CLI #689f130d63 - refactor: reshape
lis runonto build-then-exec #688bd807f9 - feat: broaden imported types accepted as embed targets #687
a3edafa - chore: upgrade to
insta1.48.0 #686eb77a81 - perf: parallelize module registration #685
d197b78 - refactor: replace text-scanned liveness with structural tracking #683
35aa700 - fix: reject non-comparable interface and unknown equality #682
ddd6bc0 - refactor: de-flatten imported struct embeds #681
1bd8dfc - feat: broaden match-to-if-let lint coverage #680
244fe2a - perf: dispatch ast walk checks by expression kind #679
202244a - perf: memoize global enum layouts and generic constraints in emit #677
1827dc0 - test: add imported types to embed harness #676
aeeca19 - feat: embedding for generic structs #674
2fef804 - perf: freeze types in place instead of rebuilding the ast #673
156652c - fix: reject namespace used as a value #671
c9e1eec - feat: hover and go-to-definition on promoted members #667
f181b25
lisette-v0.3.3
- feat: support embedding in native structs #666
eec2ea2 - refactor: replace
implwithembedfor interface embedding #66418d7902 - test: differential harness for struct and interface embedding #663
b580f92 - fix: skip
manual_map_orlint on side-effecting match arms #662ecb5ed8 - fix: type unexported singleton vars by their implemented interface #661
be8e0f2 - fix: prevent go types from shadowing prelude generics #660
e0f036b - feat: add
Result.wrap_errto attach context to errors #658668cab7 - fix: keep f-string interpolations single-line #657
ee4f66a
lisette-v0.3.2
- fix: cross-module reference tracking in unused lints #651
64b9dc7 - refactor: introduce
embedkeyword #650cd78bfb - feat: lint for type limit comparison #648
f8757f5 - fix: classify compound wrappers by qualified id #646
192df75 - refactor: store type attributes as a map #647
7063de2 - feat: bind go anonymous struct types #644
3a44617 - feat: add redundant else lint #643
8f8b584 - feat: add manual find simplification lint #642
6e44a27 - fix: tuple-struct and newtype pattern exhaustiveness #641
1fd5350 - test: move sync tests in-process #640
85d8c44 - fix: zero-fill emit for newtype and tuple-struct fields #637
8b68e65
lisette-v0.3.1
- feat: add map_or_else to Result #633
d5939f7 - feat: add manual map_or simplification lint #632
fc4e772 - fix: exclude
#[display]struct fields from the unused-field lint #631100d37d - fix: stop
lis docmangling third-party module paths #630f376290 - fix: suggest
cmp.Orderedbound when comparing unbounded generics #629a17a67a - refactor: continue collapsing emit layer into IR #628
ae8ca07 - fix: resolve shadowed builtin types in type position #627
3109a37 - fix: stack overflow when zero-filling a function-alias field #626
127d4e1 - feat: add collapsible if lint #625
fc77943 - feat: reject legacy octal integer literals #624
94c1747 - feat: add single-arm select lint #622
80e1837 - feat: add manual
strings.ReplaceAlllint #6212a88406 - feat: add redundant slice bounds lint #620
eb6f3f4 - feat: add redundant
Sprintflint #619e515873 - refactor: dedupe emit coercion, call, and abi helpers #618
f3db058 - feat: add manual
bytes.Equallint #616d909ca0 - docs: clarify interop directions #617
6b78dba - feat: add manual
time.Untillint #6151d8000d - feat: add manual
time.Sincelint #614375a226 - feat: offer lsp attribute completions on
#[#6139f28fff - refactor: make the scope stack the single source for return context #611
244a089 - perf: share function signatures via Arc instead of deep-cloning #610
3687940 - feat: add inefficient comparison lint #609
d67fda2 - fix: pin generic impl type params during interface satisfaction #608
f7b8201 - perf: cache module field projections, skip redundant type resolves #607
267f64f - fix: enforce pointer-receiver rule through generic bounds #606
8c46015 - refactor: add misplaced attribute diagnostic #605
ae95f55 - perf: stop cloning function and lambda signatures twice #604
63987ec - refactor: rebuild tree-sitter parser if stale in nvim #603
84b56f6 - feat: add goos/goarch unknown-value comparison lint #602
9e7a38f - perf: cut allocations in semantic analysis hot paths #601
cdfa21c - feat: add integer division to zero lint #599
814bbb3
lisette-v0.3.0
This version contains breaking changes.
- refactor: stop threading store through inference signatures #597
4890ad5 - feat: add out-of-domain value lint for closed named primitives #596
c434c3a - refactor: share context and walk across checks and lints #595
40f5264 - feat: add non-negative length comparison lint #593
c268079 - feat: catch x % 1 in redundant operation lint #592
7f26440 - ci: flag breaking changes in github release notes #591
823ba05 - refactor!: rename
--formatto--outputinlis check#5906b886fe - refactor!: remove value enums #588
260463c - feat: add redundant operation simplification lint #589
5b834b0 - feat: add negated equality simplification lint #586
6edc4bf - fix: lsp hover improvements #583
c536ba2 - feat: add let-and-return simplification lint #585
fde3b5b - feat: lint match on bool that should be if/else #584
b08193d - feat: add match-to-let simplification lint #582
e27c9b7 - feat: add redundant assert_type lint #580
802bbfd - refactor!: rename attributes to
#[iterate]and#[display]#578ba0503e
lisette-v0.2.17
- feat: add manual emptiness check lint #577
6dd1cb1 - feat: add manual compound assignment lint #576
3e569d9 - fix: make newtype structs and bool-backed named types nominal #575
c3b2f75 - fix: lsp goto-def on type alias with same name as origin type name #569
801ce11 - feat: gate stringer synthesis on
#[displayable]#574a9333a9 - fix: make string value enums nominal #573
6066322 - fix: make numeric value enums nominal #572
081757a - feat: introduce
#[displayable]attribute #571d7acbed - refactor: suggest WaitGroup.Go in waitgroup warning #570
190180b - refactor: route stringer synthesis through a single gate #568
e60bde0 - refactor: set up opt-in stringer capability #567
1557c7c - fix: lsp autocomplete via non-generic type aliases #563
3ea55c0 - refactor: reclassify diagnostics #566
afc5027 - feat: advisory
infodiagnostics #565bb13b0a - feat: warn on lost url query mutation #564
a5f94c6 - feat: warn on match with identical arms #562
1a44853 - feat: warn on closures replaceable by the function itself #561
07fd58a - feat: add manual_map lint #560
4c0bcd3 - feat: add manual_unwrap_or lint #558
0c19819