Age | Commit message (Collapse) | Author |
|
|
|
I really could use those structured logs.
|
|
I'm borrowing heavily from Basecamp.com, but I figure after enough itreation I
will settle on something more unique. Anyway, copying Basecamp isn't so bad --
they are a great company after all!
|
|
|
|
My qutebrowser dark filter messed up my colors. Also now I'm using header and
main HTML elements.
|
|
Part of a larger effort, but doing this iteratively in smaller chunks.
|
|
|
|
|
|
This makes scanning logs *much* easier. I figure keep it as simple as possible,
just red, yellow, and green.
I also added two spaces between labels in the log messages. It would be nice to
have a more structured logging system, but for now this works.
|
|
|
|
This argument will run the tests for an output after building. It's active in
'ci' so running that will ensure tests are passing. This way testing a
namespace and building a namespace are as close together as possible, so
presumably it will be that much easier to write good tests.
|
|
Also changes the --test option to a 'test' command. This is because running the
tests for a namespace/exe should never be combined with anything else: you
either want to run the tests, or not.
|
|
Wraps docopt rather nicely. It's much nicer than optparse-applicative and runs
tests with the --test argument automatically. Next I just need to implement a
test framework.
|
|
|
|
It was always showing 0 because of annoying numeric type conversion stuff. This
is my least favorite part of Haskell.
|
|
This necessitated adding a few more paths for clarity and such, and a type for
the analysis page. There seem to be some bugs with session handling I think, but
I'll suss those out later. Also I'm running into many uncaught exceptions so
eventually I will need to tackle those as well.
|
|
|
|
Auth was broken without the xsrf thing disabled. Anyway, its best to have
well-defined live and test settings. I will re-enable xsrf when I figure out the
js snippet I need.
|
|
|
|
Using lib.pipe for readability. Moved analyze into the public functions so I can
debug things easier by calling bild.analyze from the nix repl.
|
|
There is a bug in nixpkgs where lib.strings.splitString overflows on long lines.
builtins.split performs better, but needs the extra filter for some reason.
https://github.com/NixOS/nixpkgs/issues/68951
|
|
Boy that was harder than I thought, but the code is pretty clean now. I still
need to fixup the error handling, and maybe move all the extra args into an app
monad, but I think otherwise I have it in a good place.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Every key is just a new line in the $USER.pub file. This is not automatically
reflected to gitolite, which uses a separate config, so I'll need to come up
with a way to replace gitolite someday.
|
|
|
|
|
|
|
|
|
|
|
|
Now bild knows how to determine between modules that require ghcjs and ghc. It
also knows what *not* to build, meaning it won't try to build non-buildable nix
targets, for example (unfortunately this is just hardcoded for now), but it also
won't build scm or py targets that I haven't implemented yet. It just silently
fails, which is fine, because it means I can do `bild **/*` and everything just
works.
Of course, if I want to build scm code then I will have to implement that, but
that's not a priority right now.
|
|
|
|
|
|
I had to refactor Biz/Bild/Rules.nix. I also had to checkin my patched
hoogle.nix file, but I also upstreamed the patch to nixpkgs-dev so it shouldn't
stick around for too long.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|