]> git.immae.eu Git - github/fretlink/hmacaroons.git/blame - hmacaroons.cabal
Nixify package & documentation
[github/fretlink/hmacaroons.git] / hmacaroons.cabal
CommitLineData
f6781456
JT
1name: hmacaroons
2version: 0.1.0.0
3synopsis: Haskell implementation of macaroons
7001a61e
JT
4description:
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
f6781456
JT
49license: BSD3
50license-file: LICENSE
51author: Julien Tanguy
52maintainer: julien.tanguy@jhome.fr
7001a61e
JT
53homepage: https://github.com/jtanguy/hmacaroons
54bug-reports: https://github.com/jtanguy/hmacaroons/issues
f6781456
JT
55category: Data
56build-type: Simple
57extra-source-files: README.md
7001a61e 58 CONTRIBUTING.md
f6781456
JT
59cabal-version: >=1.10
60
7001a61e
JT
61source-repository head
62 type: git
63 branch: master
64 location: https://github.com/jtanguy/hmacaroons
65
f6781456
JT
66library
67 exposed-modules: Crypto.Macaroon,
68 Crypto.Macaroon.Binder
a20c77f8 69 Crypto.Macaroon.Serializer.Base64
f6781456 70 other-modules: Crypto.Macaroon.Internal
f6781456 71 build-depends: base >=4 && < 5,
a20c77f8 72 attoparsec >=0.12,
f6781456
JT
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
84benchmark 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,
a20c77f8 91 attoparsec >=0.12,
f6781456
JT
92 bytestring >=0.10,
93 base64-bytestring >= 1.0,
7001a61e 94 byteable >= 0.1 && <0.2,
f6781456
JT
95 cereal >= 0.4,
96 cryptohash >=0.11 && <0.12,
7001a61e 97-- cipher-aes >=0.2 && <0.3,
f6781456
JT
98 hex >= 0.1,
99 deepseq >= 1.1,
100 criterion >= 1.1
7001a61e 101
f6781456
JT
102test-suite test
103 default-language: Haskell2010
104 type: exitcode-stdio-1.0
105 hs-source-dirs: test
46af385c 106 main-is: main.hs
f6781456 107 build-depends: base >= 4 && <5,
a20c77f8 108 attoparsec >=0.12,
f6781456
JT
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,
a22bcdb6 117 tasty-quickcheck >= 0.8,
f6781456 118 hmacaroons