The geojson package

[Tags:bsd3, library, test]

A thin GeoJSON Layer above the aeson library.

It currently conforms to version 1.0 of the GeoJSON spec which can be found here:

[Skip to Readme]


Versions 0.0.1, 0.0.2, 1.0.0, 1.0.1, 1.1.0, 1.1.1, 1.2.0, 1.3.0, 1.3.1
Change log
Dependencies aeson (==0.7.*), base (==4.*), lens (==4.1.*), semigroups (==0.13.*), text (==1.1.*), validation (==0.3.*), vector (==0.10.*) [details]
License BSD3
Copyright Copyright (C) 2013-2014
Author Dom De Re
Maintainer Dom De Re
Category Data
Home page
Bug tracker
Source repository head: git clone
this: git clone 1.1.0)
Uploaded Sat May 10 14:12:19 UTC 2014 by domdere
Distributions NixOS:1.3.1
Downloads 1690 total (19 in the last 30 days)
0 []
Status Docs available [build log]
Successful builds reported [all 1 reports]
Hackage Matrix CI




small_baseChoose the new, split-up base package.EnabledAutomatic

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainer's Corner

For package maintainers and hackage trustees

Readme for geojson

Readme for geojson-1.1.0

geojson Build Status Hackage

A thin GeoJSON Layer above the aeson library

Building the project

Install the dependencies with:

cabal install --only-dependencies

Optionally add --enable-tests if you intend to run the unit tests

The project must be "configured" at least once everytime geojson.cabal changes, this can be done with:

cabal configure

If you wish to run the unit tests you will have to run:

cabal configure --enable-tests

Then finally build it with:

cabal build

See cabal build --help for more build options.

Running Unit Tests

After running cabal build, you can run the unit tests with the command:

cabal test

Adding Unit tests

Unit tests are written with doctest, for instructions on how to add unit tests see the doctest User Guide.

Currently only files in the src/ directory are searched for tests, it is assumed that the code in main/ is a thin layer of code that uses modules from src/.

Development: Cabal Dependency Hell?

Cabal's great, but when you are developing a few different projects with their own dependency chains, sometimes installing all your libraries to the same place causes problems,

Consider trying cabal-dev. In terms of using it, all thats required is replacing cabal with cabal-dev in all the above command lines.

It will download and install all the dependencies for your project and install them in a cabal-dev/ directory in your project directory, and they will only be used for this project.

Those with newer versions of cabal (>= 1.18 I think) can skip cabal-dev and instead run cabal sandbox init, and just start runnign the above instructions as is from cabal install --only-dependencies