Nix Documentation | 439 Members | |
| Discussion about documentation improvements around the Nix ecosystem | 93 Servers |
| Sender | Message | Time |
|---|---|---|
| 28 Jun 2023 | ||
| until then walking the ast with minimal awareness of nix semantics is our best bet | 21:23:47 | |
In reply to @sternenseemann:systemli.orgas for that: the extension list in the manual is not entirely complete. there are a few more we haven't documented yet (most or even all of which predate the markdown tooling itself) | 21:26:54 | |
In reply to @sternenseemann:systemli.orgas for that: the extension list in the manual is not entirely complete. there are a few more we haven't documented yet (most or even all of which predate the markdown tooling itself) | 21:27:24 | |
| Dynamically determining docs has a lot of problems: What constitutes the doc comment? The comment at the let binding? At the inherit exposing it? What happens if I pass the value through the identity function? etc. pp. This is because we don't have a sense of an exported symbol. Consequently we need to establish some sort of convention here that can be transferable to static doc generation since every file has to be a full Nix expression. When dynamically gathering documentation you don't suddenly have no issues: You need to know about the library's structure, e.g. which of the exposed functions are aliases? which functions are deprecated? Since you can't know this. The whole story becomes a lot worse if you are not dealing with anything as tame as When statically doing docs, you need to have a convention, yes, and need to somehow be able to tell it how it relates to the “library” as a whole. This also requires special knowledge about the library, but so does the dynamic solution. This is my point: Both solutions suffer from variations of the same problem; and the problem is that we have no module system, so a library could be structured in arbitrary ways and it is impossible to figure out what's what independently of the concrete code. | 21:34:53 | |
An important argument against dynamicism for me is that it'd be okay for <nixpkgs/lib>, but as soon as you have anything in pkgs proper that's to be documented you'll suffer | 21:35:50 | |
* An important argument against dynamicism for me is that it'd be okay for <nixpkgs/lib>, but as soon as you have anything in pkgs proper that's to be documented you'll suffer. | 21:35:56 | |
| exactly, all of that. which is why we would need to develop very strong conventions for what is and isn't a doc comment, a documented item, etc before moving it into nix. whether it's ever moved is going to be up in the air regardless, and in the interim nixdoc-like solutions are kind of the only option anyway | 21:37:40 | |
| and they do work well enough with some outside input for categorization and namespacing | 21:38:09 | |
| if we converge on something that covers a sufficient number of cases we can start thinking about formalizing the rules applied at that point and putting them into nix, before that it's all just daydreams | 21:38:57 | |
| that's also true the RFC has a big risk in the sense that it'll make whatever it prescribes eternal | 22:19:30 | |
| codifying what is a doc comment and what isn't would be a welcome first step in any case, even if it ends there for a while. nixdoc has to hack around that not being well-defined quite a bit today to not pick up a lot of garbage as accidental doc comments :< | 22:21:16 | |
| but nixpkgs & nixdoc could also do that provisionally | 22:23:10 | |
| it's only a treewide commit away | 22:23:17 | |
| we've had our share of treewide commits breaking new truths tbh xD | 22:24:03 | |
| this is the way | 23:10:05 | |
| if you want to have a go, please do! :) | 23:18:52 | |
| hopefully nixdoc#40 makes it in soon so we can fully remove docbook from the nixpkgs manual, after that there's so much opportunity for improvement | 23:20:16 | |
| 29 Jun 2023 | ||
| Hey, will miss this meeting too unfortunately, sorry for the streak of no-shows, hopefully should end in the next couple of weeks. The little work I’ve done was reviewing nixdoc. I’ll get to my open PRs on nix.dev asap, but if I’m a blocker, feel free to use your best judgement and merge ahead. See you soon! | 13:08:58 | |
| * Hey, will miss this meeting too unfortunately, sorry for the streak of no-shows, hopefully should end in the next couple of weeks. The little work I’ve done was reviewing nixdoc PRs. I’ll get to my open PRs on nix.dev asap, but if I’m a blocker, feel free to use your best judgement and merge ahead. See you soon! | 14:12:44 | |
In reply to @asymmetric:matrix.dapp.org.ukThanks for the update. | 16:24:01 | |
| And again, thanks everyone on the docs and learning journey team. It doesn’t always feel like it on the inside, and it’s not always visible on the outside, but we have taken up enormous momentum. While we’re still have many discussions around finding the right approach and aligning our views, all of you are getting awesome things done, and we’re clearly transitioning into the “performing” phase. The last few sessions in particular were extraordinarily productive. We’re doing reviews, make decisions, merge changes, and I see a lot of major improvements for user and contributor experience on the horizon. Don’t get me wrong, it will still take months until everything gets noticeably smoother. But I’m genuinely amazed how we managed to get rolling with a couple of hours a week from everyone. | 16:30:32 | |
| wild idea for the manuals: let's enforce uuids as ids for sections. namespacing of section ids is constantly subverted, and the ids don't convey much useful information anyway | 16:37:54 | |
| they make link targets readable, which is nicer for readers who share links, and also lets us spot a link target copy paste mistake | 16:45:39 | |
| similar reason as for the store path name, although that does always include an opaque identifier as well | 16:46:31 | |
| are link targets read or their contents very often? (don't actually know.) | 16:47:15 | |
| often enough to warrant readability I think. I can't quantify it, but I don't think we need to | 16:48:24 | |
| then maybe we should add a uuid or something else guaranteed to be unique somewhere | 16:49:22 | |
because currently we have eg a #summary id buried deep in the emscripten docs, and that's just the first example we picked from grep | 16:49:50 | |
| that one will make sense once we have separate pages, fwiw | 16:50:39 | |
| unless it's buried really very deep I guess | 16:50:58 | |