]> git.immae.eu Git - github/fretlink/hmacaroons.git/blob - hmacaroons.cabal
Fix build and add travis badge
[github/fretlink/hmacaroons.git] / hmacaroons.cabal
1 name: hmacaroons
2 version: 0.1.0.0
3 synopsis: Haskell implementation of macaroons
4 description:
5 = Macaroons: Pure haskell implementation of macaroons
6 #macaroons-pure-haskell-implementation-of-macaroons#
7
8 Macaroons is a pure haskell implementation of macaroons. It aims to
9 provide compatibility at a serialized level with the
10 <https://github.com/rescrv/libmacaroons reference implementation> and
11 the <https://github.com/ecordell/pymacaroons python implementation>
12
13 __WARNING: This library has not been audited by security experts.__
14 __There is no error handling at the moment, everyhting is silently
15 accepted__
16
17 It is developed in the purpose of exploration purposes, and would need
18 much more attention if it were to be used in production.
19
20 = References
21 #references#
22
23 == Papers and articles
24 #papers-and-articles#
25
26 - <http://research.google.com/pubs/pub41892.html Google paper on macaroons>
27 - <https://air.mozilla.org/macaroons-cookies-with-contextual-caveats-for-decentralized-authorization-in-the-cloud/ Macaroons at Mozilla>
28 - <http://hackingdistributed.com/2014/11/23/macaroons-in-hyperdex/ Time for better security in NoSQL>
29
30 == Implementations
31 #implementations#
32
33 - <https://github.com/rescrv/libmacaroons C>
34 - <https://github.com/nitram509/jmacaroons Java>
35 - <https://github.com/nitram509/macaroons.js Node.js>
36 - <https://github.com/ecordell/pymacaroons Python>
37 - <https://github.com/cryptosphere/rust-macaroons.git Rust>
38
39 = TODO
40 #todo#
41
42 - Third party caveats
43 - Verify Macaroons
44 - Discharge Macaroons
45 - JSON serialization
46 - Quickcheck tests
47 - Error handling
48 - FFI\'s for testing and benchmarking purposes
49 license: BSD3
50 license-file: LICENSE
51 author: Julien Tanguy
52 maintainer: julien.tanguy@jhome.fr
53 homepage: https://github.com/jtanguy/hmacaroons
54 bug-reports: https://github.com/jtanguy/hmacaroons/issues
55 category: Data
56 build-type: Simple
57 extra-source-files: README.md
58 CONTRIBUTING.md
59 cabal-version: >=1.10
60
61 source-repository head
62 type: git
63 branch: master
64 location: https://github.com/jtanguy/hmacaroons
65
66 library
67 exposed-modules: Crypto.Macaroon,
68 Crypto.Macaroon.Binder
69 Crypto.Macaroon.Serializer.Base64
70 other-modules: Crypto.Macaroon.Internal
71 build-depends: base >=4 && < 5,
72 attoparsec >=0.12,
73 bytestring >=0.10,
74 base64-bytestring >= 1.0,
75 byteable >= 0.1 && <0.2,
76 cereal >= 0.4,
77 cryptohash >=0.11 && <0.12,
78 cipher-aes >=0.2 && <0.3,
79 deepseq >= 1.1,
80 hex >= 0.1
81 hs-source-dirs: src
82 default-language: Haskell2010
83
84 benchmark bench
85 default-language: Haskell2010
86 type: exitcode-stdio-1.0
87 hs-source-dirs: src, bench
88 main-is: bench.hs
89 ghc-options: -O2
90 build-depends: base >= 4 && <5,
91 attoparsec >=0.12,
92 bytestring >=0.10,
93 base64-bytestring >= 1.0,
94 byteable >= 0.1 && <0.2,
95 cereal >= 0.4,
96 cryptohash >=0.11 && <0.12,
97 cipher-aes >=0.2 && <0.3,
98 hex >= 0.1,
99 deepseq >= 1.1,
100 criterion >= 1.1
101
102 test-suite test
103 default-language: Haskell2010
104 type: exitcode-stdio-1.0
105 hs-source-dirs: test
106 main-is: main.hs
107 build-depends: base >= 4 && <5,
108 attoparsec >=0.12,
109 bytestring >=0.10,
110 base64-bytestring >= 1.0,
111 byteable >= 0.1 && <0.2,
112 cereal >= 0.4,
113 cryptohash >=0.11 && <0.12,
114 hex >= 0.1,
115 tasty >= 0.10,
116 tasty-hunit >= 0.9,
117 tasty-quickcheck >= 0.8,
118 QuickCheck < 2.8,
119 hmacaroons