summaryrefslogtreecommitdiff
path: root/src/Main.hs (unfollow)
Commit message (Collapse)AuthorFilesLines
2022-03-19walint: some marginally nicer codestuebinm1-55/+47
2022-03-19switch to universum preludestuebinm1-17/+13
also don't keep adjusted maps around if not necessary
2022-03-19use hpack and clean up modulesstuebinm1-4/+5
as annoying as yaml is, cabal's package format is somehow worse, apparently
2021-12-30add dot language output for repository map graphsstuebinm1-5/+10
2021-12-22print version information on --versionstuebinm1-2/+9
If --version is given, `walint` prints version information, then exists with code 0.
2021-12-20turns out apparently C8.unpack assumes asciistuebinm1-2/+3
(and no one's documented that) Anyways it now uses utf8 which seems a little more reasonable.
2021-12-16print hint for non-zero exit code in non-json modestuebinm1-18/+26
2021-11-28various fixes to bugsstuebinm1-3/+5
Among them - always set correct exit codes - refuse to write out files if the out path already exists - calculate the overall severity correctly - slightly changed the json output schema - also output the text output format in json - make the default config.json suitable for a production environment
2021-11-28print aeson warning to stderr, not stdout …stuebinm1-1/+2
2021-11-17remove unused --allowScripts flagstuebinm1-2/+0
(didn't do anything, and it seems better to do all of these things in the config anyways)
2021-11-14add readmestuebinm1-1/+4
2021-11-14add runtime warning for older Aeson versionsstuebinm1-2/+22
2021-11-14config option: don't copy asset filesstuebinm1-1/+1
2021-11-14Functional jitsiRoomAdminTag adjustmentstuebinm1-4/+1
also yet another typeclass™, because why not?
2021-11-14too much type level stuff to read a config filestuebinm1-3/+19
This got kinda out of hand, but it can now (a) read a json config file and (b) patch that with another json given on the command line to change some of the options given in the file. No, I probably didn't need to make the `patch` function sufficiently general to work with arbitrary records, but it was kinda fun to do.
2021-11-10fail on missing map assetsstuebinm1-4/+6
(but not (yet?) on missing maps/entrypoints)
2021-11-10copy map assets (and refuse if any are missing)stuebinm1-1/+1
2021-11-10extra module for repository writeoutstuebinm1-2/+2
2021-11-09first example of a map adjustmentstuebinm1-9/+15
this also includes some more monad plumbing, and an option for the linter to actually write things out again. Some of the previous commit was reverted a bit since it turned out to be stupid, but overall it was suprisingly easy once I got around to it, so yay! i guess Also includes a fairly silly example of how to use it.
2021-10-04removed unnecessary dependencystuebinm1-4/+2
2021-09-23prettier pretty printing and stuffstuebinm1-3/+5
also, configurable log level, which only required relaxing the type system once!
2021-09-23handle all maps in entire repositoriesstuebinm1-7/+8
(+ checking that paths don't run outside of respositories)
2021-09-23very naïve handling of directoriesstuebinm1-1/+3
2021-09-18tame the stringsstuebinm1-6/+7
Adds a PrettyPrint typeclass which operates on Text and should replace Show, since constantly converting strings from linked lists to arrays seems somewhat silly.
2021-09-17(somewhat) reasonable representation of parse errorsstuebinm1-6/+3
This makes map loading (and parsing) part of the linter, and also makes it return "general lints" and nothing else in case that failed. Possibly a sum type would be nicer here, but I guess it's not really important since everything ends up as json anyways?
2021-09-16input options, output jsonstuebinm1-44/+41
input options are mostly dummies for now, but some work (e.g. --inpath and --json). Lints can now be optionally printed as json to be reasonably machine-readable (and the json can be pretty-printed to make it human-readable again …).
2021-09-16moving lots of code aroundstuebinm1-161/+26
(also renaming things now that concepts seem a bit clearer)
2021-09-16small updatestuebinm1-5/+6