infinisil changed the topic of #nix-lang to: Channel for discussing Nix as a language - https://nixos.org/nix/manual/#chap-writing-nix-expressions - Logs: https://logs.nix.samueldr.com/nix-lang/
andremedeiros has quit [Read error: Connection reset by peer]
andremedeiros has joined #nix-lang
andremedeiros has quit [Read error: Connection reset by peer]
andremedeiros has joined #nix-lang
andremedeiros has quit [Read error: Connection reset by peer]
andremedeiros has joined #nix-lang
andremedeiros has quit [Read error: Connection reset by peer]
andremedeiros has joined #nix-lang
andremedeiros has quit [Read error: Connection reset by peer]
andremedeiros has joined #nix-lang
rajivr has joined #nix-lang
evanjs has quit [Read error: Connection reset by peer]
evanjs has joined #nix-lang
Synthetica has joined #nix-lang
<aaronjanse> Autocomplete now implemented :D
<lukegb> nice!
<Profpatsch> aaronjanse: nice! What lsp framework are you using?
<Profpatsch> aaronjanse: cool stuff! I’d love to maybe integrate it into lorri, if you want to make it available as rust library
<Profpatsch> I’m still not quite clear about how composable lsp modes are
<Profpatsch> e.g. if you can have multiple enabled like how emacs minor modes work
<Profpatsch> or if you need some kind of lsp proxy
<aaronjanse> I definitely plan to publish the LSP as a crate
<aaronjanse> Should I also publish the underlying debugging evaluator thing, so it can be used without the LSP protocol wrapper?
<aaronjanse> *publish as a crate. Of course I'll at least make it available on github :-)
<Profpatsch> aaronjanse: yeaaaah, the evaluator part would be awesome
<Profpatsch> I’d like to get some more features into lorri that don’t depend on modifying the C++ nix codebase
<Profpatsch> Nix currently has 200 open PRs
<Profpatsch> so I don’t have much hope of getting any changes upstream
<aaronjanse> Makes sense
<Profpatsch> but maybe I should bite the bullet at some point
<Profpatsch> aaronjanse: maybe we should do it the other way around, you do nix-lsp and we add an optional lorri integration that talks to a lorri daemon if it is running
<Profpatsch> like how you can add linters that are picked up if they are in PATH
<aaronjanse> Ooh, that would be cool
<aaronjanse> Yeah
<Profpatsch> then the lsp part is strictly in one projct
<Profpatsch> and lorri could use the eval lib as well, but only to implement some functionality about incremental building when files change
<Profpatsch> e.g. to find all imported files to know which files to watch for an attribute
<aaronjanse> It might make sense to just use the rnix parser directly if you're just looking for paths
<Profpatsch> currently we instrument the file reading builtins to print nix trace messages, which we then parse from the nix stderr
<Profpatsch> which is … eh
<aaronjanse> Ahaha, yeah
<Profpatsch> But also, going from an attribute to the closure of required files would be cool
<aaronjanse> I'd like to clarify that it doesn't (yet?) support stuff like generating correct /nix/store paths, since I'm currently focusing on the analysis and debugging part
<aaronjanse> Ooh. I should have the attribute -> required files thing later next week as part of an attempt to do reactive evaluation
<aaronjanse> Assuming you want a list of files that an attribute's value depends on
<Profpatsch> aaronjanse: yes, exactly, including source paths (if possible after builtins.filterSource) and stuff like builtins.readFile
__monty__ has joined #nix-lang
andremedeiros has quit [Read error: Connection reset by peer]
rajivr has quit [Quit: Connection closed for inactivity]
andremedeiros has joined #nix-lang
andremedeiros has quit [Read error: Connection reset by peer]
andremedeiros has joined #nix-lang
andremedeiros has quit [Read error: Connection reset by peer]
andremedeiros has joined #nix-lang
andremedeiros has quit [Read error: Connection reset by peer]
andremedeiros has joined #nix-lang
angerman has quit [Ping timeout: 250 seconds]
angerman has joined #nix-lang
andremedeiros has quit [Quit: ZNC 1.8.2 - https://znc.in]
andremedeiros has joined #nix-lang
__monty__ has quit [Quit: leaving]
andremedeiros has quit [Read error: Connection reset by peer]
andremedeiros has joined #nix-lang
andremedeiros has quit [Read error: Connection reset by peer]
andremedeiros has joined #nix-lang
Synthetica has quit [Quit: Connection closed for inactivity]