summaryrefslogtreecommitdiff
path: root/Biz
AgeCommit message (Collapse)Author
2021-01-29Lint 'return' into 'pure', replace bind operatorBen Sima
2021-01-28Refactor handler functionsBen Sima
Created guardAuth and cleaned up the handlers to be as small and regular as possible. My custom operators make it really fun to write this kind of code, heh. And it looks cool.
2021-01-27Set subscription in user page, operator precedenceBen Sima
I'm still working on figuring out operator precedence with my custom operators. The normal precedences don't work well for writing code in a pipeline as I like, so I have to re-define the operators with my own fixity settings. This will take some fiddling to get right. The user subscription allows setting to "Free" only now. It's fine because I still need to do a design refresh on the pages I just made. One thing I noticed is that it's getting harder to make changes without breaking stuff, so I either need to make smaller incremental changes, or actually write some real tests. I'll probably write tests soon.
2021-01-26Refactor lintBen Sima
- print results sequentially instead of all at once at the end - don't try and run all linters concurrently - filter out directories (can't lint those)
2021-01-26Create Biz.Log library, extracted from Biz.BildBen Sima
2021-01-26Add user subscription fieldBen Sima
Also improved the test situation, did some refactors, and now listing the user's past analyses on their account page.
2021-01-22Better bild outputBen Sima
- structured log messages - compact logs rewrite the line on bild completion - using conduit for streaming output (although I think this isn't working quite right) - new Proc type for running subprocesses - general code cleanup and refactoring
2021-01-22Property tests for calculateScoreBen Sima
2021-01-22Persist Analysis runsBen Sima
Keep Analysis runs, with a unique id, and index them based on ID, which user asked for the analysis, and commit sha.
2021-01-22Add --loud feature to bildBen Sima
2021-01-22Print help message with --helpBen Sima
2021-01-22Add footer and adjust widthsBen Sima
The footer is just a copyright for now. The header is full width, main and footer max out at 900px. This seems like a reasonable default, so I put it in the base Biz/Look.hs.
2021-01-22Stop shipping if lint failsBen Sima
2021-01-22Fix gap in bild logBen Sima
I really could use those structured logs.
2021-01-22Style SelectRepo page and all linksBen Sima
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!
2021-01-22Fix bad bash substitutionBen Sima
2021-01-16Fix colors and structure HTML betterBen Sima
My qutebrowser dark filter messed up my colors. Also now I'm using header and main HTML elements.
2021-01-16Freshen up frontpage designBen Sima
Part of a larger effort, but doing this iteratively in smaller chunks.
2021-01-16Remove unused importBen Sima
2021-01-16Check and print bild --test outputBen Sima
2021-01-16Add colors to tooling outputsBen Sima
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.
2021-01-15Also --test on shipmentBen Sima
2021-01-15Add bild --testBen Sima
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.
2021-01-15Implement Biz.Test with tastyBen Sima
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.
2021-01-15Implement Biz.CliBen Sima
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.
2021-01-15Port lint to HaskellBen Sima
2021-01-12Fix score calculationBen Sima
It was always showing 0 because of annoying numeric type conversion stuff. This is my least favorite part of Haskell.
2021-01-11Add navbar mostly everywhereBen Sima
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.
2021-01-11Fix cookie settings in test areaBen Sima
2021-01-09Fix live cookie settingsBen Sima
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.
2021-01-08Don't ship if bild failsBen Sima
2021-01-08Refactor nix a bitBen Sima
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.
2021-01-08Fix stack overflow in nixBen Sima
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
2021-01-08Add cookies and store user tokensBen Sima
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.
2021-01-08Simplify post-checkoutBen Sima
2021-01-05dev: put biz in the shell promptBen Sima
2021-01-05mail: increase my quotaBen Sima
2021-01-04Add my simatime keyBen Sima
2021-01-04Disable Hero/Prod.nix from ship scriptBen Sima
2021-01-04Add my Groq VM keyBen Sima
2021-01-04Support multiple keys per userBen Sima
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.
2021-01-04Enable bitcoindBen Sima
2021-01-03Biz.Dev: mount campbell automaticallyBen Sima
2020-12-30colorize sentry outputBen Sima
2020-12-30add simple sentryBen Sima
2020-12-30que: use EnvironmentFile instead of keyfileBen Sima
2020-12-30bild: build everytingBen Sima
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.
2020-12-30Remove Biz/IbbBen Sima
2020-12-30bild: try to fix the remote bild message againBen Sima
2020-12-29Deploy hoogle to Biz.DevBen Sima
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.