summaryrefslogtreecommitdiff
path: root/lib (unfollow)
Commit message (Collapse)AuthorFilesLines
2021-10-01rename to walintstuebinm3-44/+43
2021-09-30check if assets existstuebinm1-8/+40
2021-09-30remove unused Maybestuebinm1-4/+4
2021-09-30nicer json output which leaks less haskell namesstuebinm4-40/+56
2021-09-30simple map-map link dependency checkingstuebinm6-21/+106
This is purely based on a set difference, i.e. it won't catch stupid things like a map linking to itself, a map link going only one-way, etc. Also, it only handles map links; it doesn't check if all ressource files referenced by a map actually exist.
2021-09-23prettier pretty printing and stuffstuebinm4-37/+71
also, configurable log level, which only required relaxing the type system once!
2021-09-23some documentationstuebinm2-5/+20
2021-09-23handle all maps in entire repositoriesstuebinm3-66/+96
(+ checking that paths don't run outside of respositories)
2021-09-23very naïve handling of directoriesstuebinm5-26/+120
2021-09-20use PrettyPrinter morestuebinm4-29/+20
2021-09-20typechecking for path depths!stuebinm4-69/+127
This now checks if relative paths are still inside the repository, as a general safety mechanism to stop the linter from accidentally reading other things, as well as a nice hint for users.
2021-09-20rebuilding the core LintWriter monadstuebinm3-93/+68
it is no longer an Either since that wasn't used anyways, but is now also a Reader.
2021-09-20simple parsing of local dependency pathsstuebinm3-20/+24
2021-09-20moving code aroundstuebinm1-57/+69
2021-09-20lint embedded tilesetsstuebinm4-11/+21
2021-09-20lint map things that aren't custom propertiesstuebinm2-12/+36
2021-09-20lint general map propertiesstuebinm4-72/+121
2021-09-19some properties require non-empty layersstuebinm4-46/+92
2021-09-19support for properties that aren't stringsstuebinm4-49/+88
apparently i couldn't read or something?
2021-09-18collecting map dependenciesstuebinm4-20/+70
2021-09-18moved types into Types.hsstuebinm4-51/+66
it's almost as if there's some structure to this code!
2021-09-18can collect dependencies!stuebinm4-25/+56
There's now a Lint type, which may be either a "true lint" (which is a Hint, which contains some message and level of severity), or a Depends, which indicates that this map depends on some ressource or other (and is otherwise treated as a special info Hint in all other cases)
2021-09-18type check propertiesstuebinm3-56/+42
/finally/ figured out that all properties just look like {name, value, type} so now that's abstracted away and Properties.hs doesn't look like javascript anymore
2021-09-18tame the stringsstuebinm4-43/+55
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 errorsstuebinm2-17/+41
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 jsonstuebinm3-13/+103
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-16some unused codestuebinm1-5/+2
2021-09-16moving lots of code aroundstuebinm5-0/+607
(also renaming things now that concepts seem a bit clearer)