stratosphere-dax (empty) → 1.0.0
raw patch · 7 files changed
+413/−0 lines, 7 filesdep +aesondep +basedep +stratosphere
Dependencies added: aeson, base, stratosphere
Files
- LICENSE.md +20/−0
- gen/Stratosphere/DAX/Cluster.hs +164/−0
- gen/Stratosphere/DAX/Cluster/SSESpecificationProperty.hs +36/−0
- gen/Stratosphere/DAX/Cluster/SSESpecificationProperty.hs-boot +9/−0
- gen/Stratosphere/DAX/ParameterGroup.hs +54/−0
- gen/Stratosphere/DAX/SubnetGroup.hs +54/−0
- stratosphere-dax.cabal +76/−0
+ LICENSE.md view
@@ -0,0 +1,20 @@+Copyright (c) 2016 David Reaver+Copyright (c) 2022 Markus Schirp++Permission is hereby granted, free of charge, to any person obtaining a copy of+this software and associated documentation files (the "Software"), to deal in+the Software without restriction, including without limitation the rights to+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies+of the Software, and to permit persons to whom the Software is furnished to do+so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all+copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+SOFTWARE.
+ gen/Stratosphere/DAX/Cluster.hs view
@@ -0,0 +1,164 @@+module Stratosphere.DAX.Cluster (+ module Exports, Cluster(..), mkCluster+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DAX.Cluster.SSESpecificationProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data Cluster+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html>+ Cluster {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-availabilityzones>+ availabilityZones :: (Prelude.Maybe (ValueList Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-clusterendpointencryptiontype>+ clusterEndpointEncryptionType :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-clustername>+ clusterName :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-description>+ description :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-iamrolearn>+ iAMRoleARN :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-networktype>+ networkType :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-nodetype>+ nodeType :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-notificationtopicarn>+ notificationTopicARN :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-parametergroupname>+ parameterGroupName :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-preferredmaintenancewindow>+ preferredMaintenanceWindow :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-replicationfactor>+ replicationFactor :: (Value Prelude.Integer),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-ssespecification>+ sSESpecification :: (Prelude.Maybe SSESpecificationProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-securitygroupids>+ securityGroupIds :: (Prelude.Maybe (ValueList Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-subnetgroupname>+ subnetGroupName :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-tags>+ tags :: (Prelude.Maybe JSON.Object)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkCluster ::+ Value Prelude.Text+ -> Value Prelude.Text -> Value Prelude.Integer -> Cluster+mkCluster iAMRoleARN nodeType replicationFactor+ = Cluster+ {haddock_workaround_ = (), iAMRoleARN = iAMRoleARN,+ nodeType = nodeType, replicationFactor = replicationFactor,+ availabilityZones = Prelude.Nothing,+ clusterEndpointEncryptionType = Prelude.Nothing,+ clusterName = Prelude.Nothing, description = Prelude.Nothing,+ networkType = Prelude.Nothing,+ notificationTopicARN = Prelude.Nothing,+ parameterGroupName = Prelude.Nothing,+ preferredMaintenanceWindow = Prelude.Nothing,+ sSESpecification = Prelude.Nothing,+ securityGroupIds = Prelude.Nothing,+ subnetGroupName = Prelude.Nothing, tags = Prelude.Nothing}+instance ToResourceProperties Cluster where+ toResourceProperties Cluster {..}+ = ResourceProperties+ {awsType = "AWS::DAX::Cluster", supportsTags = Prelude.True,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["IAMRoleARN" JSON..= iAMRoleARN, "NodeType" JSON..= nodeType,+ "ReplicationFactor" JSON..= replicationFactor]+ (Prelude.catMaybes+ [(JSON..=) "AvailabilityZones" Prelude.<$> availabilityZones,+ (JSON..=) "ClusterEndpointEncryptionType"+ Prelude.<$> clusterEndpointEncryptionType,+ (JSON..=) "ClusterName" Prelude.<$> clusterName,+ (JSON..=) "Description" Prelude.<$> description,+ (JSON..=) "NetworkType" Prelude.<$> networkType,+ (JSON..=) "NotificationTopicARN" Prelude.<$> notificationTopicARN,+ (JSON..=) "ParameterGroupName" Prelude.<$> parameterGroupName,+ (JSON..=) "PreferredMaintenanceWindow"+ Prelude.<$> preferredMaintenanceWindow,+ (JSON..=) "SSESpecification" Prelude.<$> sSESpecification,+ (JSON..=) "SecurityGroupIds" Prelude.<$> securityGroupIds,+ (JSON..=) "SubnetGroupName" Prelude.<$> subnetGroupName,+ (JSON..=) "Tags" Prelude.<$> tags]))}+instance JSON.ToJSON Cluster where+ toJSON Cluster {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["IAMRoleARN" JSON..= iAMRoleARN, "NodeType" JSON..= nodeType,+ "ReplicationFactor" JSON..= replicationFactor]+ (Prelude.catMaybes+ [(JSON..=) "AvailabilityZones" Prelude.<$> availabilityZones,+ (JSON..=) "ClusterEndpointEncryptionType"+ Prelude.<$> clusterEndpointEncryptionType,+ (JSON..=) "ClusterName" Prelude.<$> clusterName,+ (JSON..=) "Description" Prelude.<$> description,+ (JSON..=) "NetworkType" Prelude.<$> networkType,+ (JSON..=) "NotificationTopicARN" Prelude.<$> notificationTopicARN,+ (JSON..=) "ParameterGroupName" Prelude.<$> parameterGroupName,+ (JSON..=) "PreferredMaintenanceWindow"+ Prelude.<$> preferredMaintenanceWindow,+ (JSON..=) "SSESpecification" Prelude.<$> sSESpecification,+ (JSON..=) "SecurityGroupIds" Prelude.<$> securityGroupIds,+ (JSON..=) "SubnetGroupName" Prelude.<$> subnetGroupName,+ (JSON..=) "Tags" Prelude.<$> tags])))+instance Property "AvailabilityZones" Cluster where+ type PropertyType "AvailabilityZones" Cluster = ValueList Prelude.Text+ set newValue Cluster {..}+ = Cluster {availabilityZones = Prelude.pure newValue, ..}+instance Property "ClusterEndpointEncryptionType" Cluster where+ type PropertyType "ClusterEndpointEncryptionType" Cluster = Value Prelude.Text+ set newValue Cluster {..}+ = Cluster+ {clusterEndpointEncryptionType = Prelude.pure newValue, ..}+instance Property "ClusterName" Cluster where+ type PropertyType "ClusterName" Cluster = Value Prelude.Text+ set newValue Cluster {..}+ = Cluster {clusterName = Prelude.pure newValue, ..}+instance Property "Description" Cluster where+ type PropertyType "Description" Cluster = Value Prelude.Text+ set newValue Cluster {..}+ = Cluster {description = Prelude.pure newValue, ..}+instance Property "IAMRoleARN" Cluster where+ type PropertyType "IAMRoleARN" Cluster = Value Prelude.Text+ set newValue Cluster {..} = Cluster {iAMRoleARN = newValue, ..}+instance Property "NetworkType" Cluster where+ type PropertyType "NetworkType" Cluster = Value Prelude.Text+ set newValue Cluster {..}+ = Cluster {networkType = Prelude.pure newValue, ..}+instance Property "NodeType" Cluster where+ type PropertyType "NodeType" Cluster = Value Prelude.Text+ set newValue Cluster {..} = Cluster {nodeType = newValue, ..}+instance Property "NotificationTopicARN" Cluster where+ type PropertyType "NotificationTopicARN" Cluster = Value Prelude.Text+ set newValue Cluster {..}+ = Cluster {notificationTopicARN = Prelude.pure newValue, ..}+instance Property "ParameterGroupName" Cluster where+ type PropertyType "ParameterGroupName" Cluster = Value Prelude.Text+ set newValue Cluster {..}+ = Cluster {parameterGroupName = Prelude.pure newValue, ..}+instance Property "PreferredMaintenanceWindow" Cluster where+ type PropertyType "PreferredMaintenanceWindow" Cluster = Value Prelude.Text+ set newValue Cluster {..}+ = Cluster {preferredMaintenanceWindow = Prelude.pure newValue, ..}+instance Property "ReplicationFactor" Cluster where+ type PropertyType "ReplicationFactor" Cluster = Value Prelude.Integer+ set newValue Cluster {..}+ = Cluster {replicationFactor = newValue, ..}+instance Property "SSESpecification" Cluster where+ type PropertyType "SSESpecification" Cluster = SSESpecificationProperty+ set newValue Cluster {..}+ = Cluster {sSESpecification = Prelude.pure newValue, ..}+instance Property "SecurityGroupIds" Cluster where+ type PropertyType "SecurityGroupIds" Cluster = ValueList Prelude.Text+ set newValue Cluster {..}+ = Cluster {securityGroupIds = Prelude.pure newValue, ..}+instance Property "SubnetGroupName" Cluster where+ type PropertyType "SubnetGroupName" Cluster = Value Prelude.Text+ set newValue Cluster {..}+ = Cluster {subnetGroupName = Prelude.pure newValue, ..}+instance Property "Tags" Cluster where+ type PropertyType "Tags" Cluster = JSON.Object+ set newValue Cluster {..}+ = Cluster {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DAX/Cluster/SSESpecificationProperty.hs view
@@ -0,0 +1,36 @@+module Stratosphere.DAX.Cluster.SSESpecificationProperty (+ SSESpecificationProperty(..), mkSSESpecificationProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SSESpecificationProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html>+ SSESpecificationProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html#cfn-dax-cluster-ssespecification-sseenabled>+ sSEEnabled :: (Prelude.Maybe (Value Prelude.Bool))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkSSESpecificationProperty :: SSESpecificationProperty+mkSSESpecificationProperty+ = SSESpecificationProperty+ {haddock_workaround_ = (), sSEEnabled = Prelude.Nothing}+instance ToResourceProperties SSESpecificationProperty where+ toResourceProperties SSESpecificationProperty {..}+ = ResourceProperties+ {awsType = "AWS::DAX::Cluster.SSESpecification",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "SSEEnabled" Prelude.<$> sSEEnabled])}+instance JSON.ToJSON SSESpecificationProperty where+ toJSON SSESpecificationProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "SSEEnabled" Prelude.<$> sSEEnabled]))+instance Property "SSEEnabled" SSESpecificationProperty where+ type PropertyType "SSEEnabled" SSESpecificationProperty = Value Prelude.Bool+ set newValue SSESpecificationProperty {..}+ = SSESpecificationProperty {sSEEnabled = Prelude.pure newValue, ..}
+ gen/Stratosphere/DAX/Cluster/SSESpecificationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DAX.Cluster.SSESpecificationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SSESpecificationProperty :: Prelude.Type+instance ToResourceProperties SSESpecificationProperty+instance Prelude.Eq SSESpecificationProperty+instance Prelude.Show SSESpecificationProperty+instance JSON.ToJSON SSESpecificationProperty
+ gen/Stratosphere/DAX/ParameterGroup.hs view
@@ -0,0 +1,54 @@+module Stratosphere.DAX.ParameterGroup (+ ParameterGroup(..), mkParameterGroup+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ParameterGroup+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html>+ ParameterGroup {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html#cfn-dax-parametergroup-description>+ description :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html#cfn-dax-parametergroup-parametergroupname>+ parameterGroupName :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html#cfn-dax-parametergroup-parameternamevalues>+ parameterNameValues :: (Prelude.Maybe JSON.Object)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkParameterGroup :: ParameterGroup+mkParameterGroup+ = ParameterGroup+ {haddock_workaround_ = (), description = Prelude.Nothing,+ parameterGroupName = Prelude.Nothing,+ parameterNameValues = Prelude.Nothing}+instance ToResourceProperties ParameterGroup where+ toResourceProperties ParameterGroup {..}+ = ResourceProperties+ {awsType = "AWS::DAX::ParameterGroup",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Description" Prelude.<$> description,+ (JSON..=) "ParameterGroupName" Prelude.<$> parameterGroupName,+ (JSON..=) "ParameterNameValues" Prelude.<$> parameterNameValues])}+instance JSON.ToJSON ParameterGroup where+ toJSON ParameterGroup {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Description" Prelude.<$> description,+ (JSON..=) "ParameterGroupName" Prelude.<$> parameterGroupName,+ (JSON..=) "ParameterNameValues" Prelude.<$> parameterNameValues]))+instance Property "Description" ParameterGroup where+ type PropertyType "Description" ParameterGroup = Value Prelude.Text+ set newValue ParameterGroup {..}+ = ParameterGroup {description = Prelude.pure newValue, ..}+instance Property "ParameterGroupName" ParameterGroup where+ type PropertyType "ParameterGroupName" ParameterGroup = Value Prelude.Text+ set newValue ParameterGroup {..}+ = ParameterGroup {parameterGroupName = Prelude.pure newValue, ..}+instance Property "ParameterNameValues" ParameterGroup where+ type PropertyType "ParameterNameValues" ParameterGroup = JSON.Object+ set newValue ParameterGroup {..}+ = ParameterGroup {parameterNameValues = Prelude.pure newValue, ..}
+ gen/Stratosphere/DAX/SubnetGroup.hs view
@@ -0,0 +1,54 @@+module Stratosphere.DAX.SubnetGroup (+ SubnetGroup(..), mkSubnetGroup+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SubnetGroup+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html>+ SubnetGroup {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html#cfn-dax-subnetgroup-description>+ description :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html#cfn-dax-subnetgroup-subnetgroupname>+ subnetGroupName :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html#cfn-dax-subnetgroup-subnetids>+ subnetIds :: (ValueList Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkSubnetGroup :: ValueList Prelude.Text -> SubnetGroup+mkSubnetGroup subnetIds+ = SubnetGroup+ {haddock_workaround_ = (), subnetIds = subnetIds,+ description = Prelude.Nothing, subnetGroupName = Prelude.Nothing}+instance ToResourceProperties SubnetGroup where+ toResourceProperties SubnetGroup {..}+ = ResourceProperties+ {awsType = "AWS::DAX::SubnetGroup", supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["SubnetIds" JSON..= subnetIds]+ (Prelude.catMaybes+ [(JSON..=) "Description" Prelude.<$> description,+ (JSON..=) "SubnetGroupName" Prelude.<$> subnetGroupName]))}+instance JSON.ToJSON SubnetGroup where+ toJSON SubnetGroup {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["SubnetIds" JSON..= subnetIds]+ (Prelude.catMaybes+ [(JSON..=) "Description" Prelude.<$> description,+ (JSON..=) "SubnetGroupName" Prelude.<$> subnetGroupName])))+instance Property "Description" SubnetGroup where+ type PropertyType "Description" SubnetGroup = Value Prelude.Text+ set newValue SubnetGroup {..}+ = SubnetGroup {description = Prelude.pure newValue, ..}+instance Property "SubnetGroupName" SubnetGroup where+ type PropertyType "SubnetGroupName" SubnetGroup = Value Prelude.Text+ set newValue SubnetGroup {..}+ = SubnetGroup {subnetGroupName = Prelude.pure newValue, ..}+instance Property "SubnetIds" SubnetGroup where+ type PropertyType "SubnetIds" SubnetGroup = ValueList Prelude.Text+ set newValue SubnetGroup {..}+ = SubnetGroup {subnetIds = newValue, ..}
+ stratosphere-dax.cabal view
@@ -0,0 +1,76 @@+cabal-version: 1.12++-- This file has been generated from package.yaml by hpack version 0.38.2.+--+-- see: https://github.com/sol/hpack++name: stratosphere-dax+version: 1.0.0+synopsis: Stratosphere integration for AWS DAX.+description: Integration into stratosphere to generate resources and properties for AWS DAX+category: AWS, Cloud, DAX+stability: experimental+homepage: https://github.com/mbj/stratosphere#readme+bug-reports: https://github.com/mbj/stratosphere/issues+maintainer: Markus Schirp+license: MIT+license-file: LICENSE.md+build-type: Simple++source-repository head+ type: git+ location: https://github.com/mbj/stratosphere++flag development+ description: Run GHC with development flags+ manual: True+ default: False++library+ exposed-modules:+ Stratosphere.DAX.Cluster+ Stratosphere.DAX.Cluster.SSESpecificationProperty+ Stratosphere.DAX.ParameterGroup+ Stratosphere.DAX.SubnetGroup+ other-modules:+ Paths_stratosphere_dax+ hs-source-dirs:+ gen+ default-extensions:+ DataKinds+ DeriveGeneric+ DerivingStrategies+ DerivingVia+ DuplicateRecordFields+ FlexibleContexts+ FlexibleInstances+ GADTs+ GeneralizedNewtypeDeriving+ InstanceSigs+ LambdaCase+ MultiParamTypeClasses+ NoFieldSelectors+ NoImplicitPrelude+ NumericUnderscores+ OverloadedLists+ OverloadedRecordDot+ OverloadedStrings+ PolyKinds+ RecordWildCards+ ScopedTypeVariables+ StandaloneDeriving+ Strict+ TemplateHaskell+ TupleSections+ TypeApplications+ TypeFamilies+ ghc-options: -Wall -Wcompat -Widentities -Wimplicit-prelude -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-local-signatures -Wmissing-signatures -Wmonomorphism-restriction -Wredundant-constraints -fhide-source-paths -funbox-strict-fields -optP-Wno-nonportable-include-path -Wno-unused-imports+ build-depends:+ aeson ==2.*+ , base >=4.8 && <4.22+ , stratosphere ==1.0.0+ default-language: Haskell2010+ if flag(development)+ ghc-options: -Werror+ else+ ghc-options: -Wwarn