Use modern packaging practices

- Move sources under src
- Use hpack via package.yaml
- Remove the network-uri flag
This commit is contained in:
patrick brisbin 2017-12-13 17:42:55 -05:00
parent 34ae029705
commit 1d36cb346e
16 changed files with 73 additions and 105 deletions

7
.gitignore vendored
View File

@ -1,8 +1,3 @@
*.swp
.cabal-sandbox
*.cabal
.env*
.stack-work
cabal-dev/
cabal.sandbox.config
dist/
tags

72
package.yaml Normal file
View File

@ -0,0 +1,72 @@
---
name: yesod-auth-oauth2
version: '0.3.0'
synopsis: OAuth 2.0 authentication plugins
description: Library to authenticate with OAuth 2.0 for Yesod web applications.
category: Web
author: Tom Streller
maintainer: Pat Brisbin <pat@thoughtbot.com>
license: BSD3
github: thoughtbot/yesod-auth-oauth2.git
homepage: http://github.com/thoughtbot/yesod-auth-oauth2
dependencies:
- base >=4.5 && <5
library:
source-dirs: src
dependencies:
- aeson >=0.6 && <1.3
- authenticate >=1.3.2.7 && <1.4
- bytestring >=0.9.1.4
- hoauth2 >=1.3.0 && <1.6
- http-client >=0.4.0 && <0.6
- http-conduit >=2.0 && <3.0
- http-types >=0.8 && <0.10
- lifted-base >=0.2 && <0.4
- microlens
- network-uri >=2.6
- random
- text >=0.7 && <2.0
- transformers >=0.2.2 && <0.6
- uri-bytestring
- vector >=0.10 && <0.13
- yesod-auth >=1.3 && <1.5
- yesod-core >=1.2 && <1.5
- yesod-form >=1.3 && <1.5
executables:
yesod-auth-oauth2-example:
main: main.hs
source-dirs: example
ghc-options:
- -threaded
- -rtsopts
- -with-rtsopts=-N
dependencies:
- yesod-auth-oauth2
- containers
- http-conduit
- load-env
- text
- warp
- yesod
- yesod-auth
when:
- condition: ! '!(flag(example))'
buildable: false
tests:
test:
main: Spec.hs
source-dirs: test
dependencies:
- yesod-auth-oauth2
- hspec
- uri-bytestring
flags:
example:
description: Build the example application
manual: false
default: false

View File

@ -1,8 +1,5 @@
---
resolver: lts-9.18
flags:
yesod-auth-oauth2:
network-uri: true
packages:
- .
extra-deps:

View File

@ -1,96 +0,0 @@
name: yesod-auth-oauth2
version: 0.3.0
license: BSD3
license-file: LICENSE
author: Tom Streller
maintainer: Pat Brisbin <pat@thoughtbot.com>
synopsis: OAuth 2.0 authentication plugins
description: Library to authenticate with OAuth 2.0 for Yesod web applications.
category: Web
stability: Experimental
cabal-version: >= 1.8
build-type: Simple
homepage: http://github.com/thoughtbot/yesod-auth-oauth2
flag network-uri
description: Get Network.URI from the network-uri package
default: True
flag example
description: Build the example application
default: False
library
if flag(network-uri)
build-depends: network-uri >= 2.6
else
build-depends: network < 2.6
build-depends: base >= 4.5 && < 5
, bytestring >= 0.9.1.4
, http-client >= 0.4.0 && < 0.6
, http-conduit >= 2.0 && < 3.0
, http-types >= 0.8 && < 0.10
, aeson >= 0.6 && < 1.3
, yesod-core >= 1.2 && < 1.5
, authenticate >= 1.3.2.7 && < 1.4
, random
, yesod-auth >= 1.3 && < 1.5
, text >= 0.7 && < 2.0
, yesod-form >= 1.3 && < 1.5
, transformers >= 0.2.2 && < 0.6
, hoauth2 >= 1.3.0 && < 1.6
, lifted-base >= 0.2 && < 0.4
, vector >= 0.10 && < 0.13
, uri-bytestring
, microlens
exposed-modules: Yesod.Auth.OAuth2
Yesod.Auth.OAuth2.Github
Yesod.Auth.OAuth2.Google
Yesod.Auth.OAuth2.Spotify
Yesod.Auth.OAuth2.Upcase
Yesod.Auth.OAuth2.EveOnline
Yesod.Auth.OAuth2.Nylas
Yesod.Auth.OAuth2.Slack
Yesod.Auth.OAuth2.Salesforce
Yesod.Auth.OAuth2.Bitbucket
Yesod.Auth.OAuth2.BattleNet
URI.ByteString.Extension
-- ^ exposed for testing
ghc-options: -Wall
executable yesod-auth-oauth2-example
if flag(example)
buildable: True
else
buildable: False
hs-source-dirs: example
main-is: main.hs
ghc-options: -threaded -rtsopts -with-rtsopts=-N
build-depends: base
, containers
, http-conduit
, load-env
, text
, warp
, yesod
, yesod-auth
, yesod-auth-oauth2
test-suite test
type: exitcode-stdio-1.0
main-is: Spec.hs
hs-source-dirs: test
ghc-options: -Wall
build-depends: base
, yesod-auth-oauth2
, hspec
, uri-bytestring
other-modules: URI.ByteString.ExtensionSpec
source-repository head
type: git
location: https://github.com/thoughtbot/yesod-auth-oauth2.git