Skip to content

2.0.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@inclyc inclyc released this 21 Apr 06:59
· 116 commits to main since this release
ad3e603

What's Changed

New Features

Bug Fixes

  • libnixf: fix node range of Binding & ExprAttrs by @inclyc in #319
  • libnixf/Parse: fix range for AttrName (String/Expr) by @inclyc in #332
  • libnixf/Sema: fix misplaced nested liveness diagnostic by @inclyc in #382
  • lspserver: stop connection while the client process died. by @inclyc in #437
  • libnixf/Sema: dfs formal default arg if it exists by @inclyc in #439
  • nixd/attrs-eval: set offset from zero by @inclyc in #441
  • libnixf: fix out-of-bounds access in Lexer::consumeManyOf by @xokdvium in #443
  • libnixf: fix crash for large integers by @inclyc in #445

Documentation

  • docs/editor-setup: extend Emacs setup to include Eglot by @cmacrae in #341
  • docs: update for nixd-next by @inclyc in #435

Other Changes

  • vendor: update default.nix for new architecure by @inclyc in #313
  • libnixf: parse ExprAttrs (basic, without inherit support) by @inclyc in #314
  • libnixf: parse variable by @inclyc in #315
  • libnixf: use sync tokens for creating unknown nodes (error recovery) by @inclyc in #316
  • libnixf: add descend(), with boost's small_vector by @inclyc in #320
  • libnixf: parse inherit binding by @inclyc in #321
  • ci: enable -Werror by @inclyc in #324
  • libnixf: use unique_ptr by @inclyc in #326
  • libnixf: add semantic analysis for AttrSets by @inclyc in #323
  • libnixf/Parse: create a class for Parser, expose testing API by @inclyc in #328
  • libnixf: parse expr_app by @inclyc in #330
  • libnixf: parse list_expr by @inclyc in #331
  • libnixf/Parse: create dedicated interpolation by @inclyc in #334
  • nixd: add relatedInformation to Diagnostics by @inclyc in #335
  • libnixf/Sema: lowering inherit by @inclyc in #333
  • nixd: support diagnostic tags by @inclyc in #337
  • libnixf: parse lambda_arg by @inclyc in #338
  • libnixf: parse lambda_expr by @inclyc in #339
  • libnixf/Sema: semantic lowering for lambda formals by @inclyc in #340
  • libnixf/test/Parse: refactor parser tests by @inclyc in #343
  • libnixf/Parse: remove unexpected for binds by @inclyc in #344
  • libnixf/Parse: exit early if missing = for binding by @inclyc in #345
  • libnixf/Parse: split parsers by @inclyc in #346
  • libnixf/Parse: parse expr_op by @inclyc in #347
  • libnixf/Basic: split basic nodes headers by @inclyc in #348
  • libnixf/Parse: parse expr_if by @inclyc in #349
  • libnixf/Parse: parse expr_assert by @inclyc in #350
  • libnixf/Parse: parse expr_let by @inclyc in #351
  • libnixf/Parse: fix nullptr while parsing expr_op by @inclyc in #352
  • libnixf/Parse: parse expr ? attrpath by @inclyc in #353
  • libnixf/Parse: parse expr_with by @inclyc in #354
  • nixd-next: switch to nixd-next by @inclyc in #327
  • nixd: refactor files of nixd implementation by @inclyc in #355
  • flake: update the lock by @inclyc in #359
  • nixd/eval: init by @inclyc in #356
  • libbc: install by @inclyc in #363
  • lspserver: add close() for actively close the connection by @inclyc in #364
  • libnixf: towards immutable lowering by @inclyc in #368
  • nixd/librpc: use lspserver framework by @inclyc in #365
  • nixd: threaded RPC by @inclyc in #367
  • libnixf: return non-owned references for Attribute by @inclyc in #371
  • libnixf: lowering let .. in ... binds by @inclyc in #370
  • libnixf: fix various missing child node cases by @inclyc in #373
  • libnixf: variable lookups by @inclyc in #372
  • libnixf/Sema: fix crashing on null dynamic binding by @inclyc in #375
  • libnixf: fix various #include misuses by @inclyc in #376
  • nixd: fix various misuses of #includes by @inclyc in #377
  • libnixf: add AST serialization by @inclyc in #379
  • libnixt: eval dirty flake (by flake-compat) by @inclyc in #381
  • nixd: publish variable lookup diagnostics by @inclyc in #383
  • libnixt: hack eval cache instead of parse cache by @inclyc in #384
  • libnixt: add AST deserialization by @inclyc in #380
  • ci: enable ASAN for gcc by @inclyc in #385
  • libnixf/{Parse,Sema}: deduplicate lambda arg with it's formals by @inclyc in #386
  • libnixt: allow eval decoded expression by @inclyc in #388
  • libnixt: add Value library by @inclyc in #389
  • libnixf: add parent map by @inclyc in #391
  • libnixf: support SPath () by @inclyc in #392
  • nixd: install nix-node-eval into libexec by @inclyc in #393
  • libnixf/Sema: set attrrange to it's key for var lookup by @inclyc in #396
  • libnixf/Sema: fix const correctness for VLA by @inclyc in #399
  • libnixf/Sema: fix builtin asserts by @inclyc in #398
  • libnixf/Sema: reduce range of with def by @inclyc in #397
  • nixd: add basic goto-def support via libnixf (no eval) by @inclyc in #400
  • nixd: support find references by @inclyc in #402
  • libnixf/Sema: record AST node -> Definition map by @inclyc in #401
  • nixd: support goto def for inherit-ed attrs by @inclyc in #404
  • nixd: support textDocument/documentHighlight by @inclyc in #403
  • nixd: support textDocument/rename, textDocument/prepareRename by @inclyc in #405
  • libnixf: add Default node to ExprSelect by @inclyc in #407
  • nixd: support textDocument/documentSymbol by @inclyc in #406
  • nixd: support textDocument/semanticTokens/full by @inclyc in #408
  • libnixf/Sema: record env for later references by @inclyc in #395
  • nixd: support textDocument/completion (static) by @inclyc in #410
  • libnixt: add attr selecting library by @inclyc in #412
  • nixd: introduce attrset provider by @inclyc in #394
  • nixd: complete nixpkgs by @inclyc in #411
  • nixd: support textDocument/inlayHint by @inclyc in #414
  • nixd: basic work-done progress support by @inclyc in #416
  • nixd: options completion by @inclyc in #415
  • nixd: support workspace configuration by @inclyc in #424
  • nixd: support formatting by @inclyc in #425
  • nixd: disable some definition features by libnixf definition context by @inclyc in #426
  • docs: link toward official wiki by @a-kenji in #427
  • nixd: provide trigger character "." by @inclyc in #428
  • nixd: support textDocument/documentLink by @inclyc in #429
  • nixd: use orphan nixpkgs, nixos default in lit-test mode by @inclyc in #431
  • nixd: provide package information on hover request by @inclyc in #430
  • nixd: goto-def for nixpkgs packages by @inclyc in #432
  • nixd: goto definition(declaration) for nixos options by @inclyc in #433
  • nixd: cleanup AST findAttrPath by @inclyc in #434
  • flake: update the lock by @inclyc in #444

New Contributors

Full Changelog: 1.2.3...2.0.1