git.iko.soy/typeable/servant-swagger-ui
on master help sign in
swagger update
0777fd3Oleg Grenrus
example/Main.hs+9−21
@@ -41,26 +41,14 @@ newtype CatName = CatName Text
41 deriving (Eq, Show, Generic, FromText)
41 deriving (Eq, Show, Generic, FromText)
42
42
43instance ToJSON CatName where
43instance ToJSON CatName where
44− toJSON (CatName name) = toJSON name
44+ toJSON (CatName n) = toJSON n
45
45
46instance IsString CatName where
46instance IsString CatName where
47 fromString = CatName . fromString
47 fromString = CatName . fromString
48
48
49instance ToParamSchema CatName
49instance ToParamSchema CatName
50−
51−instance ToSchema Cat where
50+instance ToSchema Cat
52− declareNamedSchema proxy = do
53− (name, schema) <- genericDeclareNamedSchema defaultSchemaOptions proxy
54− return (name, schema
55− & schemaDescription ?~ "This is some cat"
56− & schemaExample ?~ toJSON (Cat "Felix" True))
57−
58−instance ToSchema CatName where
51+instance ToSchema CatName
59− declareNamedSchema proxy = do
60− (name, schema) <- genericDeclareNamedSchema defaultSchemaOptions proxy
61− return (name, schema
62− & schemaDescription ?~ "This is some cat name"
63− & schemaExample ?~ toJSON (CatName "Felix"))
64
52
65---
53---
66
54
@@ -87,15 +75,15 @@ server =
87 :<|> pure swaggerDoc
75 :<|> pure swaggerDoc
88 :<|> swaggerUIServer
76 :<|> swaggerUIServer
89 where
77 where
90− catEndpoint name = pure $ Cat name False
78+ catEndpoint n = pure $ Cat n False
91
79
92-- Boilerplate
80-- Boilerplate
93
81
94swaggerDoc :: Swagger
82swaggerDoc :: Swagger
95swaggerDoc = toSwagger (Proxy :: Proxy BasicAPI)
83swaggerDoc = toSwagger (Proxy :: Proxy BasicAPI)
96− & info.infoTitle .~ "Cats API"
84+ & info.title .~ "Cats API"
97− & info.infoVersion .~ "2016.1.31"
85+ & info.version .~ "2016.2.6"
98− & info.infoDescription ?~ "This is an API that tests servant-swagger support "
86+ & info.description ?~ "This is an API that tests servant-swagger support "
99
87
100api :: Proxy API
88api :: Proxy API
101api = Proxy
89api = Proxy
@@ -108,6 +96,6 @@ main = do
108 args <- getArgs
96 args <- getArgs
109 case args of
97 case args of
110 ("run":_) -> do
98 ("run":_) -> do
111− port <- fromMaybe 8000 . (>>= readMaybe) <$> lookupEnv "PORT"
99+ p <- fromMaybe 8000 . (>>= readMaybe) <$> lookupEnv "PORT"
112− Warp.run port app
100+ Warp.run p app
113 _ -> putStrLn "To run, pass 'run' argument"
101 _ -> putStrLn "To run, pass 'run' argument"
package.yaml+10−10
@@ -17,19 +17,19 @@ ghc-options: -Wall
17
17
18dependencies:
18dependencies:
19 - base >=4.7 && <4.9
19 - base >=4.7 && <4.9
20− - blaze-markup >=0.7.0.3 && <0.8
20+ - blaze-markup >=0.7.0.2 && <0.8
21 - bytestring >=0.10.4.0 && <0.11
21 - bytestring >=0.10.4.0 && <0.11
22− - directory >=1.2.2.0 && <1.3
22+ - directory >=1.2.1.0 && <1.3
23− - file-embed >=0.0.9 && <0.1
23+ - file-embed >=0.0.8.2 && <0.1
24− - filepath >=1.4.0.0 && <1.5
24+ - filepath >=1.3.0.2 && <1.5
25 - http-media >=0.6.2 && <0.7
25 - http-media >=0.6.2 && <0.7
26 - servant >=0.4.4.5 && <0.5
26 - servant >=0.4.4.5 && <0.5
27 - servant-blaze >=0.4.4.5 && <0.5
27 - servant-blaze >=0.4.4.5 && <0.5
28 - servant-server >=0.4.4.5 && <0.5
28 - servant-server >=0.4.4.5 && <0.5
29− - servant-swagger >=0.1.2 && <0.2
29+ - servant-swagger >=1.0.1 && <1.1
30− - swagger2 >=1.2.1 && <1.3
30+ - swagger2 >=2.0.1 && <2.1
31− - template-haskell >=2.10 && <2.11
31+ - template-haskell >=2.9 && <2.11
32− - text >=1.2.2 && <1.3
32+ - text >=1.2.0.6 && <1.3
33 - wai-app-static >=3.0.1.1 && <3.2
33 - wai-app-static >=3.0.1.1 && <3.2
34
34
35library:
35library:
@@ -42,8 +42,8 @@ tests:
42 dependencies:
42 dependencies:
43 - servant-swagger-ui
43 - servant-swagger-ui
44 - servant-server >=0.4.4.5 && <0.5
44 - servant-server >=0.4.4.5 && <0.5
45− - aeson >=0.9 && <0.11
45+ - aeson >=0.8.0.2 && <0.11
46 - base-compat >=0.6.0 && <0.10
46 - base-compat >=0.6.0 && <0.10
47− - lens >=4.13 && <4.14
47+ - lens >=4.7.0.1 && <4.14
48 - wai >=3.0.3.0 && <3.3
48 - wai >=3.0.3.0 && <3.3
49 - warp >=3.0.13.1 && <3.3
49 - warp >=3.0.13.1 && <3.3
servant-swagger-ui.cabal+20−20
@@ -75,19 +75,19 @@ library
75 ghc-options: -Wall
75 ghc-options: -Wall
76 build-depends:
76 build-depends:
77 base >=4.7 && <4.9
77 base >=4.7 && <4.9
78− , blaze-markup >=0.7.0.3 && <0.8
78+ , blaze-markup >=0.7.0.2 && <0.8
79 , bytestring >=0.10.4.0 && <0.11
79 , bytestring >=0.10.4.0 && <0.11
80− , directory >=1.2.2.0 && <1.3
80+ , directory >=1.2.1.0 && <1.3
81− , file-embed >=0.0.9 && <0.1
81+ , file-embed >=0.0.8.2 && <0.1
82− , filepath >=1.4.0.0 && <1.5
82+ , filepath >=1.3.0.2 && <1.5
83 , http-media >=0.6.2 && <0.7
83 , http-media >=0.6.2 && <0.7
84 , servant >=0.4.4.5 && <0.5
84 , servant >=0.4.4.5 && <0.5
85− , servant-blaze >=0.4.4.6 && <0.5
85+ , servant-blaze >=0.4.4.5 && <0.5
86 , servant-server >=0.4.4.5 && <0.5
86 , servant-server >=0.4.4.5 && <0.5
87− , servant-swagger >=0.1.2 && <0.2
87+ , servant-swagger >=1.0.1 && <1.1
88− , swagger2 >=1.2.1 && <1.3
88+ , swagger2 >=2.0.1 && <2.1
89− , template-haskell >=2.10 && <2.11
89+ , template-haskell >=2.9 && <2.11
90− , text >=1.2.2 && <1.3
90+ , text >=1.2.0.6 && <1.3
91 , wai-app-static >=3.0.1.1 && <3.2
91 , wai-app-static >=3.0.1.1 && <3.2
92 exposed-modules:
92 exposed-modules:
93 Servant.Swagger.UI
93 Servant.Swagger.UI
@@ -102,25 +102,25 @@ test-suite example
102 ghc-options: -Wall
102 ghc-options: -Wall
103 build-depends:
103 build-depends:
104 base >=4.7 && <4.9
104 base >=4.7 && <4.9
105− , blaze-markup >=0.7.0.3 && <0.8
105+ , blaze-markup >=0.7.0.2 && <0.8
106 , bytestring >=0.10.4.0 && <0.11
106 , bytestring >=0.10.4.0 && <0.11
107− , directory >=1.2.2.0 && <1.3
107+ , directory >=1.2.1.0 && <1.3
108− , file-embed >=0.0.9 && <0.1
108+ , file-embed >=0.0.8.2 && <0.1
109− , filepath >=1.4.0.0 && <1.5
109+ , filepath >=1.3.0.2 && <1.5
110 , http-media >=0.6.2 && <0.7
110 , http-media >=0.6.2 && <0.7
111 , servant >=0.4.4.5 && <0.5
111 , servant >=0.4.4.5 && <0.5
112− , servant-blaze >=0.4.4.6 && <0.5
112+ , servant-blaze >=0.4.4.5 && <0.5
113 , servant-server >=0.4.4.5 && <0.5
113 , servant-server >=0.4.4.5 && <0.5
114− , servant-swagger >=0.1.2 && <0.2
114+ , servant-swagger >=1.0.1 && <1.1
115− , swagger2 >=1.2.1 && <1.3
115+ , swagger2 >=2.0.1 && <2.1
116− , template-haskell >=2.10 && <2.11
116+ , template-haskell >=2.9 && <2.11
117− , text >=1.2.2 && <1.3
117+ , text >=1.2.0.6 && <1.3
118 , wai-app-static >=3.0.1.1 && <3.2
118 , wai-app-static >=3.0.1.1 && <3.2
119 , servant-swagger-ui
119 , servant-swagger-ui
120 , servant-server >=0.4.4.5 && <0.5
120 , servant-server >=0.4.4.5 && <0.5
121− , aeson >=0.9 && <0.11
121+ , aeson >=0.8.0.2 && <0.11
122 , base-compat >=0.6.0 && <0.10
122 , base-compat >=0.6.0 && <0.10
123− , lens >=4.13 && <4.14
123+ , lens >=4.7.0.1 && <4.14
124 , wai >=3.0.3.0 && <3.3
124 , wai >=3.0.3.0 && <3.3
125 , warp >=3.0.13.1 && <3.3
125 , warp >=3.0.13.1 && <3.3
126 default-language: Haskell2010
126 default-language: Haskell2010
stack-lts-2.yamlnew file+10
@@ -0,0 +1,10 @@
1+resolver: lts-2.22
2+packages:
3+- '.'
4+extra-deps:
5+- servant-blaze-0.4.4.6
6+- servant-0.4.4.6
7+- servant-server-0.4.4.6
8+- swagger2-2.0.1
9+- servant-swagger-1.0.1
10+flags: {}
stack-lts-5.yaml+3−1
@@ -1,5 +1,7 @@
1resolver: lts-5.1
1resolver: lts-5.1
2packages:
2packages:
3- '.'
3- '.'
4−extra-deps: []
4+extra-deps:
5+- swagger2-2.0.1
6+- servant-swagger-1.0.1
5flags: {}
7flags: {}