| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
also, configurable log level, which only required relaxing the type
system once!
|
| |
|
|
|
|
| |
(+ checking that paths don't run outside of respositories)
|
| |
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
it is no longer an Either since that wasn't used anyways, but is now
also a Reader.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
apparently i couldn't read or something?
|
| |
|
|
|
|
| |
it's almost as if there's some structure to this code!
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
| |
/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
|
|
|
|
|
|
| |
Adds a PrettyPrint typeclass which operates on Text and should replace
Show, since constantly converting strings from linked lists to arrays
seems somewhat silly.
|
|
|
|
|
|
|
|
| |
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 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 …).
|
| |
|
|
|
|
| |
(also renaming things now that concepts seem a bit clearer)
|
| |
|
|
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
|