summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* update readmestuebinm2021-11-281-4/+25
|
* git: ignore .stack-workstuebinm2021-11-281-0/+1
|
* various fixes to bugsstuebinm2021-11-287-89/+104
| | | | | | | | | | 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
* Merge branch 'main' of git.cccv.de:hub/walintstuebinm2021-11-281-11/+16
|\
| * why oh why does the prelude contain unsafe functionsstuebinm2021-11-231-1/+1
| | | | | | | | some parts of haskell are really, really old …
| * add a severity attribute to the json outputstuebinm2021-11-231-11/+16
| |
* | print aeson warning to stderr, not stdout …stuebinm2021-11-281-1/+2
|/
* pipeline: hopefully fix it?stuebinm2021-11-211-2/+2
|
* gitlab pipeline: more reasonable artefactstuebinm2021-11-211-2/+5
|
* whoops, forgot to add a filestuebinm2021-11-201-0/+80
|
* minor additionstuebinm2021-11-201-2/+4
|
* documentation for URI rewrite rulesstuebinm2021-11-201-9/+34
|
* make link adjustments configurablestuebinm2021-11-205-46/+64
| | | | | | this allows for creating custom URI "schemas" in the linter's config, which may be either allowed, prefixed, or translated according to some (domain-based) substitution.
* add domain allow- and blocklists for weblinksstuebinm2021-11-194-6/+33
| | | | | | (these use a rather crude regex for parsing, which may be possible to side-step, and which should probably be replaced by something that was actually written while following the relevant rfc)
* fix group layer handlingstuebinm2021-11-191-9/+22
| | | | we don't want to accidentally copy maps, whoopsie
* add lint for empty group layersstuebinm2021-11-191-0/+7
|
* deal with group layersstuebinm2021-11-192-9/+37
| | | | | I have no idea why these even exist, but apparently they do, so here's some code to deal with them in a hopefully useful manner …
* assorted lints for properties found in some mapsstuebinm2021-11-181-17/+56
| | | | | (mostly to do with the scripting API, but also some old ones which are already deprecated / not even mentioned in the documentation anymore)
* add warnings for as-yet unlinted layer propertiesstuebinm2021-11-171-0/+9
|
* small fixesstuebinm2021-11-171-8/+7
|
* make map parser work with more mapsstuebinm2021-11-172-7/+39
| | | | | I found yet more properties that weren't really documented or weren't marked as optional, hurray!
* map format: turns out more things are optionalstuebinm2021-11-171-6/+6
| | | | | | | | the unhelpfulness of the spec is slowly starting to grate … Anyways, apparently a lot more properties don't have to be present, and you find out by finding maps somewhere that work but currently fail the parser.
* 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)
* slight updates to documentationstuebinm2021-11-172-11/+16
|
* exit with code 1 if maximum lint level exceededstuebinm2021-11-174-15/+26
|
* reject map urls starting with /_/stuebinm2021-11-161-3/+6
|
* deleted old example filestuebinm2021-11-161-41271/+0
|
* add adjustment: add prefix for openWebsitestuebinm2021-11-163-3/+8
|
* fix default config.jsonstuebinm2021-11-161-0/+1
|
* disable print output when copying filesstuebinm2021-11-141-2/+2
| | | | (this would otherwise break the json schema if `--json` is given)
* config options: implement script-related optionsstuebinm2021-11-143-2/+20
|
* add documentation on what lints are supportedstuebinm2021-11-141-0/+53
|
* add example configstuebinm2021-11-141-0/+6
|
* Update Readme.mdstuebinm2021-11-141-1/+1
|
* add readmestuebinm2021-11-142-1/+111
|
* gitlab pipeline: guix → debian-based image + stackstuebinm2021-11-141-3/+3
|
* add runtime warning for older Aeson versionsstuebinm2021-11-141-2/+22
|
* build with stack & use newer Aesonstuebinm2021-11-142-0/+124
| | | | since the older versions of Aeson can be attacked via hash-flooding.
* config: some small documentationstuebinm2021-11-141-0/+4
|
* config option: don't copy asset filesstuebinm2021-11-143-22/+28
|
* Functional jitsiRoomAdminTag adjustmentstuebinm2021-11-148-39/+55
| | | | also yet another typeclass™, because why not?
* add some simple config optionsstuebinm2021-11-141-9/+30
|
* too much type level stuff to read a config filestuebinm2021-11-143-3/+120
| | | | | | | | | 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-102-7/+14
| | | | (but not (yet?) on missing maps/entrypoints)
* copy map assets (and refuse if any are missing)stuebinm2021-11-103-23/+57
|
* extra module for repository writeoutstuebinm2021-11-105-12/+36
|
* remove dead codestuebinm2021-11-102-41/+11
| | | | | | | | (also fix some hlints) This removes some code that was apparently dead and I never noticed. I only noticed now since it wouldn't work with the newer versions of Aeson anymore.
* little code cleanupstuebinm2021-11-102-8/+6
|
* first example of a map adjustmentstuebinm2021-11-096-42/+96
| | | | | | | | | 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.
* monad plumbing to let the linter modify thingsstuebinm2021-11-022-14/+24
| | | | | | | I'm not sure if this is the right approach tbh — it lets the LintWriter monad modify its own context, but maybe we might run into cases where lints and modifications depend on each other across longer "distances" than just the context of the linter (i.e. just across a property?)