github nix-community/nixd 2.0.0

latest releases: 2.4.0, 2.3.2, 2.3.1...
pre-release5 months ago

First Version of the new frontend.

Please test it with your daily workloads. It is expected to be buggy in this version.

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

Documentation

  • docs/editor-setup: extend Emacs setup to include Eglot by @cmacrae in #341

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
  • docs: update for nixd-next by @inclyc in #435

New Contributors

Full Changelog: 1.2.3...2.0.0

Don't miss a new nixd release

NewReleases is sending notifications on new releases.