From ea82b9f8207291d6ab5277a8233d3cde052bc15b Mon Sep 17 00:00:00 2001 From: Robert Date: Sun, 9 Jun 2019 04:42:28 +0200 Subject: [PATCH] Update cabal bounds (#1319) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Relax some cabal upper bounds Primarily based on building against GHC 8.6.5 with stackage lts-13.23. * Add swagger2 upper bound With swagger2 2.4, we get a number of errors like the following: src/PostgREST/OpenAPI.hs:58:11: error: • Couldn't match type ‘Maybe (SwaggerType 'Data.Swagger.Internal.SwaggerKindSchema)’ with ‘SwaggerType 'Data.Swagger.Internal.SwaggerKindSchema’ arising from a functional dependency between: constraint ‘HasType Schema (SwaggerType 'Data.Swagger.Internal.SwaggerKindSchema)’ arising from a use of ‘type_’ instance ‘HasType Schema (Maybe (SwaggerType 'Data.Swagger.Internal.SwaggerKindSchema))’ at • In the first argument of ‘(.~)’, namely ‘type_’ In the second argument of ‘(&)’, namely ‘type_ .~ SwaggerObject’ In the first argument of ‘(&)’, namely ‘(mempty :: Schema) & description .~ tableDescription t & type_ .~ SwaggerObject’ | 58 | & type_ .~ SwaggerObject | ^^^^^ * Require base 4.9 / GHC 8.0.1 The DuplicateRecordFields extension, which is used here, was introduced with GHC 8.0. * Set cabal lower bounds These are based on building against stackage lts-7.24 / GHC 8.0.1. * Set cabal upper bounds, and truncate lower bounds These are primarily based on the output of `cabal bounds`, with a good build against GHC 8.6.5. Some test dependencies were missing; these were filled out based on a build against stackage nightly. Also I truncated lower bounds to the third level, since that is what `cabal bounds` seems to suggest anyway. * Format postgrest.cabal using stylish-cabal * Sort build-depends list --- postgrest.cabal | 346 ++++++++++++++++++++++++------------------------ 1 file changed, 174 insertions(+), 172 deletions(-) diff --git a/postgrest.cabal b/postgrest.cabal index fba09331e..8f496277c 100644 --- a/postgrest.cabal +++ b/postgrest.cabal @@ -1,179 +1,181 @@ -name: postgrest -description: Reads the schema of a PostgreSQL database and creates RESTful routes - for the tables and views, supporting all HTTP verbs that security - permits. -version: 5.2.0 -synopsis: REST API for any Postgres database -license: MIT -license-file: LICENSE -author: Joe Nelson, Adam Baker -homepage: https://postgrest.org -maintainer: Steve Chávez -bug-reports: https://github.com/PostgREST/postgrest/issues -category: Executable, PostgreSQL, Network APIs -extra-source-files: CHANGELOG.md -build-type: Simple -cabal-version: >=1.10 +name: postgrest +version: 5.2.0 +synopsis: REST API for any Postgres database +description: Reads the schema of a PostgreSQL database and creates RESTful routes + for the tables and views, supporting all HTTP verbs that security + permits. +license: MIT +license-file: LICENSE +author: Joe Nelson, Adam Baker +maintainer: Steve Chávez +category: Executable, PostgreSQL, Network APIs +homepage: https://postgrest.org +bug-reports: https://github.com/PostgREST/postgrest/issues +build-type: Simple +extra-source-files: CHANGELOG.md +cabal-version: >= 1.10 + source-repository head - type: git + type: git location: git://github.com/PostgREST/postgrest.git -Flag CI - Description: No warnings allowed in continuous integration - Manual: True - Default: False - -executable postgrest - main-is: Main.hs - default-extensions: OverloadedStrings, QuasiQuotes, NoImplicitPrelude - ghc-options: - -threaded - -rtsopts - "-with-rtsopts=-N -I2" - default-language: Haskell2010 - build-depends: auto-update - , base >= 4.8 && < 4.10 - , hasql >= 1.3 && < 1.4 - , hasql-pool >= 0.5 && < 0.6 - , hasql-transaction >= 0.7 && < 0.8 - , network == 2.6.3.2 - , postgrest - , protolude == 0.2.2 - , retry - , text - , time - , warp - , bytestring - , base64-bytestring - , retry - , directory - if !os(windows) - build-depends: unix - - hs-source-dirs: main +flag ci + default: False + manual: True + description: No warnings allowed in continuous integration library - default-language: Haskell2010 - default-extensions: OverloadedStrings, QuasiQuotes, NoImplicitPrelude - build-depends: aeson - , ansi-wl-pprint - , base >= 4.8 && < 4.10 - , base64-bytestring - , bytestring - , case-insensitive - , cassava - , configurator-pg >= 0.1 && < 0.2 - , containers - , contravariant - , contravariant-extras - , cookie - , either - , gitrev - , hasql >= 1.3 && < 1.4 - , hasql-pool >= 0.5 && < 0.6 - , hasql-transaction >= 0.7 && < 0.8 - , heredoc - , HTTP - , http-types >= 0.12.2 - , insert-ordered-containers - , interpolatedstring-perl6 - , jose == 0.7.0.0 - , lens - , lens-aeson - , network-uri - , optparse-applicative >= 0.13 && < 0.15 - , parsec - , protolude == 0.2.2 - , Ranged-sets == 0.3.0 - , regex-tdfa - , scientific - , swagger2 - , text - , time - , unordered-containers - , vector - , wai - , wai-cors - , wai-extra - , wai-middleware-static + exposed-modules: PostgREST.ApiRequest + PostgREST.App + PostgREST.Auth + PostgREST.Config + PostgREST.DbRequestBuilder + PostgREST.DbStructure + PostgREST.Error + PostgREST.Middleware + PostgREST.OpenAPI + PostgREST.Parsers + PostgREST.QueryBuilder + PostgREST.RangeQuery + PostgREST.Types + other-modules: Paths_postgrest + hs-source-dirs: src + build-depends: base >= 4.9 && < 4.13 + , HTTP >= 4000.3.7 && < 4000.4 + , Ranged-sets >= 0.3 && < 0.5 + , aeson >= 0.11.3 && < 1.5 + , ansi-wl-pprint >= 0.6.7 && < 0.7 + , base64-bytestring >= 1 && < 1.1 + , bytestring >= 0.10.8 && < 0.11 + , case-insensitive >= 1.2 && < 1.3 + , cassava >= 0.4.5 && < 0.6 + , configurator-pg >= 0.1 && < 0.2 + , containers >= 0.5.7 && < 0.7 + , contravariant >= 1.4 && < 1.6 + , contravariant-extras >= 0.3.3 && < 0.4 + , cookie >= 0.4.2 && < 0.5 + , either >= 4.4.1 && < 5.1 + , gitrev >= 1.2 && < 1.4 + , hasql >= 1.3 && < 1.4 + , hasql-pool >= 0.5 && < 0.6 + , hasql-transaction >= 0.7 && < 0.8 + , heredoc >= 0.2 && < 0.3 + , http-types >= 0.12.2 && < 0.13 + , insert-ordered-containers >= 0.1 && < 0.3 + , interpolatedstring-perl6 >= 1 && < 1.1 + , jose >= 0.7 && < 0.8 + , lens >= 4.14 && < 4.18 + , lens-aeson >= 1.0.1 && < 1.1 + , network-uri >= 2.6.1 && < 2.7 + , optparse-applicative >= 0.13 && < 0.15 + , parsec >= 3.1.11 && < 3.2 + , protolude >= 0.2.2 && < 0.3 + , regex-tdfa >= 1.2.2 && < 1.3 + , scientific >= 0.3.4 && < 0.4 + , swagger2 >= 2.1.4 && < 2.4 + , text >= 1.2.2 && < 1.3 + , time >= 1.6 && < 1.9 + , unordered-containers >= 0.2.8 && < 0.3 + , vector >= 0.11 && < 0.13 + , wai >= 3.2.1 && < 3.3 + , wai-cors >= 0.2.5 && < 0.3 + , wai-extra >= 3.0.19 && < 3.1 + , wai-middleware-static >= 0.8.1 && < 0.9 + default-language: Haskell2010 + default-extensions: OverloadedStrings + QuasiQuotes + NoImplicitPrelude - Other-Modules: Paths_postgrest - Exposed-Modules: PostgREST.ApiRequest - , PostgREST.App - , PostgREST.Auth - , PostgREST.Config - , PostgREST.DbStructure - , PostgREST.DbRequestBuilder - , PostgREST.Error - , PostgREST.Middleware - , PostgREST.OpenAPI - , PostgREST.Parsers - , PostgREST.QueryBuilder - , PostgREST.RangeQuery - , PostgREST.Types - hs-source-dirs: src +executable postgrest + main-is: Main.hs + hs-source-dirs: main + build-depends: base >= 4.9 && < 4.13 + , auto-update >= 0.1.4 && < 0.2 + , base64-bytestring >= 1 && < 1.1 + , bytestring >= 0.10.8 && < 0.11 + , directory >= 1.2.6 && < 1.4 + , hasql >= 1.3 && < 1.4 + , hasql-pool >= 0.5 && < 0.6 + , hasql-transaction >= 0.7 && < 0.8 + , network < 2.9 + , postgrest + , protolude >= 0.2.2 && < 0.3 + , retry >= 0.7.4 && < 0.9 + , text >= 1.2.2 && < 1.3 + , time >= 1.6 && < 1.9 + , warp >= 3.2.12 && < 3.3 + default-language: Haskell2010 + default-extensions: OverloadedStrings + QuasiQuotes + NoImplicitPrelude + ghc-options: -threaded -rtsopts "-with-rtsopts=-N -I2" -Test-Suite spec - Type: exitcode-stdio-1.0 - Default-Language: Haskell2010 - default-extensions: OverloadedStrings, QuasiQuotes, NoImplicitPrelude - ghc-options: -threaded -rtsopts -with-rtsopts=-N - Hs-Source-Dirs: test - Main-Is: Main.hs - Other-Modules: Feature.AudienceJwtSecretSpec - , Feature.AuthSpec - , Feature.AsymmetricJwtSpec - , Feature.BinaryJwtSecretSpec - , Feature.ConcurrentSpec - , Feature.CorsSpec - , Feature.DeleteSpec - , Feature.ExtraSearchPathSpec - , Feature.InsertSpec - , Feature.JsonOperatorSpec - , Feature.NoJwtSpec - , Feature.PgVersion95Spec - , Feature.PgVersion96Spec - , Feature.ProxySpec - , Feature.QueryLimitedSpec - , Feature.QuerySpec - , Feature.RangeSpec - , Feature.SingularSpec - , Feature.StructureSpec - , Feature.UnicodeSpec - , Feature.AndOrParamsSpec - , Feature.RpcSpec - , Feature.NonexistentSchemaSpec - , Feature.UpsertSpec - , SpecHelper - , TestTypes - Build-Depends: aeson - , aeson-qq - , async - , auto-update - , base >= 4.8 && < 4.10 - , bytestring - , base64-bytestring - , case-insensitive - , cassava - , containers - , contravariant - , hasql >= 1.3 && < 1.4 - , hasql-pool >= 0.5 && < 0.6 - , hasql-transaction >= 0.7 && < 0.8 - , heredoc - , hspec - , hspec-wai >= 0.7.0 - , hspec-wai-json - , http-types - , lens - , lens-aeson - , monad-control - , postgrest - , process - , protolude == 0.2.2 - , regex-tdfa - , text - , time - , transformers-base - , wai - , wai-extra + if !os(windows) + build-depends: unix + +test-suite spec + type: exitcode-stdio-1.0 + main-is: Main.hs + other-modules: Feature.AndOrParamsSpec + Feature.AsymmetricJwtSpec + Feature.AudienceJwtSecretSpec + Feature.AuthSpec + Feature.BinaryJwtSecretSpec + Feature.ConcurrentSpec + Feature.CorsSpec + Feature.DeleteSpec + Feature.ExtraSearchPathSpec + Feature.InsertSpec + Feature.JsonOperatorSpec + Feature.NoJwtSpec + Feature.NonexistentSchemaSpec + Feature.PgVersion95Spec + Feature.PgVersion96Spec + Feature.ProxySpec + Feature.QueryLimitedSpec + Feature.QuerySpec + Feature.RangeSpec + Feature.RpcSpec + Feature.SingularSpec + Feature.StructureSpec + Feature.UnicodeSpec + Feature.UpsertSpec + SpecHelper + TestTypes + hs-source-dirs: test + build-depends: base >= 4.9 && < 4.13 + , aeson >= 0.11.3 && < 1.5 + , aeson-qq >= 0.8.1 && < 0.9 + , async >= 2.1.1 && < 2.3 + , auto-update >= 0.1.4 && < 0.2 + , base64-bytestring >= 1 && < 1.1 + , bytestring >= 0.10.8 && < 0.11 + , case-insensitive >= 1.2 && < 1.3 + , cassava >= 0.4.5 && < 0.6 + , containers >= 0.5.7 && < 0.7 + , contravariant >= 1.4 && < 1.6 + , hasql >= 1.3 && < 1.4 + , hasql-pool >= 0.5 && < 0.6 + , hasql-transaction >= 0.7 && < 0.8 + , heredoc >= 0.2 && < 0.3 + , hspec >= 2.3 && < 2.8 + , hspec-wai >= 0.7 && < 0.10 + , hspec-wai-json >= 0.7 && < 0.10 + , http-types >= 0.12.3 && < 0.13 + , lens >= 4.14 && < 4.18 + , lens-aeson >= 1.0.1 && < 1.1 + , monad-control >= 1.0.1 && < 1.1 + , postgrest + , process >= 1.4.2 && < 1.7 + , protolude >= 0.2.2 && < 0.3 + , regex-tdfa >= 1.2.2 && < 1.3 + , text >= 1.2.2 && < 1.3 + , time >= 1.6 && < 1.9 + , transformers-base >= 0.4.4 && < 0.5 + , wai >= 3.2.1 && < 3.3 + , wai-extra >= 3.0.19 && < 3.1 + default-language: Haskell2010 + default-extensions: OverloadedStrings + QuasiQuotes + NoImplicitPrelude + ghc-options: -threaded -rtsopts -with-rtsopts=-N