summaryrefslogtreecommitdiff
path: root/lib/CheckMap.hs (unfollow)
Commit message (Collapse)AuthorFilesLines
2021-10-01rename to walintstuebinm1-1/+1
2021-09-30remove unused Maybestuebinm1-4/+4
2021-09-30nicer json output which leaks less haskell namesstuebinm1-21/+32
2021-09-30simple map-map link dependency checkingstuebinm1-4/+7
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 stuffstuebinm1-22/+26
also, configurable log level, which only required relaxing the type system once!
2021-09-23handle all maps in entire repositoriesstuebinm1-22/+26
(+ checking that paths don't run outside of respositories)
2021-09-23very naïve handling of directoriesstuebinm1-6/+6
2021-09-20use PrettyPrinter morestuebinm1-21/+3
2021-09-20typechecking for path depths!stuebinm1-8/+9
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 monadstuebinm1-31/+28
it is no longer an Either since that wasn't used anyways, but is now also a Reader.
2021-09-20lint embedded tilesetsstuebinm1-2/+4
2021-09-20lint map things that aren't custom propertiesstuebinm1-8/+5
2021-09-20lint general map propertiesstuebinm1-6/+13
2021-09-18collecting map dependenciesstuebinm1-5/+10
2021-09-18moved types into Types.hsstuebinm1-3/+4
it's almost as if there's some structure to this code!
2021-09-18can collect dependencies!stuebinm1-7/+9
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-18tame the stringsstuebinm1-17/+16
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-13/+34
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-0/+74
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 …).