summaryrefslogtreecommitdiff
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* turns out apparently C8.unpack assumes asciistuebinm2021-12-201-2/+3
| | | | | | (and no one's documented that) Anyways it now uses utf8 which seems a little more reasonable.
* print hint for non-zero exit code in non-json modestuebinm2021-12-161-18/+26
|
* various fixes to bugsstuebinm2021-11-281-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
* print aeson warning to stderr, not stdout …stuebinm2021-11-281-1/+2
|
* remove unused --allowScripts flagstuebinm2021-11-171-2/+0
| | | | | (didn't do anything, and it seems better to do all of these things in the config anyways)
* add readmestuebinm2021-11-141-1/+4
|
* add runtime warning for older Aeson versionsstuebinm2021-11-141-2/+22
|
* config option: don't copy asset filesstuebinm2021-11-141-1/+1
|
* Functional jitsiRoomAdminTag adjustmentstuebinm2021-11-141-4/+1
| | | | also yet another typeclass™, because why not?
* too much type level stuff to read a config filestuebinm2021-11-141-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.
* fail on missing map assetsstuebinm2021-11-101-4/+6
| | | | (but not (yet?) on missing maps/entrypoints)
* copy map assets (and refuse if any are missing)stuebinm2021-11-101-1/+1
|
* extra module for repository writeoutstuebinm2021-11-101-2/+2
|
* first example of a map adjustmentstuebinm2021-11-091-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.
* removed unnecessary dependencystuebinm2021-10-041-4/+2
|
* prettier pretty printing and stuffstuebinm2021-09-231-3/+5
| | | | | also, configurable log level, which only required relaxing the type system once!
* handle all maps in entire repositoriesstuebinm2021-09-231-7/+8
| | | | (+ checking that paths don't run outside of respositories)
* very naïve handling of directoriesstuebinm2021-09-231-1/+3
|
* tame the stringsstuebinm2021-09-181-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.
* (somewhat) reasonable representation of parse errorsstuebinm2021-09-171-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?
* input options, output jsonstuebinm2021-09-161-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 …).
* moving lots of code aroundstuebinm2021-09-162-561/+26
| | | | (also renaming things now that concepts seem a bit clearer)
* small updatestuebinm2021-09-161-5/+6
|
* simple proof of conceptstuebinm2021-09-052-0/+591
Lots of monads everywhere, hurray! (unfortunately, workadventure maps don't quite form a category; they lack composition …) Credits: - the example.json file is by TabascoEye (with some modifications for testing purposes) - the Tiled module is forked from aeson-tiled on hackage, since that package didn't handle custom layer properties correctly