cabal-version: 2.4 name: swarm version: 0.2.0.0 synopsis: 2D resource gathering game with programmable robots description: Swarm is a 2D programming and resource gathering game. Program your robots to explore the world and collect resources, which in turn allows you to build upgraded robots that can run more interesting and complex programs. See the README for more information and instructions on how to play or contribute! license: BSD-3-Clause license-file: LICENSE author: Brent Yorgey maintainer: byorgey@gmail.com bug-reports: https://github.com/swarm-game/swarm/issues copyright: Brent Yorgey 2021 category: Game tested-with: GHC ==8.10.7 || ==9.0.2 || ==9.2.4 || ==9.4.2 extra-source-files: CHANGELOG.md example/*.sw editors/emacs/*.el editors/vscode/syntaxes/*.json data-dir: data/ data-files: *.yaml, scenarios/**/*.yaml, scenarios/**/*.txt, scenarios/**/*.sw, *.txt source-repository head type: git location: git://github.com/swarm-game/swarm.git flag ci description: Make warnings error default: False manual: True common common if flag(ci) ghc-options: -Werror ghc-options: -Wall -Wcompat -Widentities -Wincomplete-uni-patterns -Wincomplete-record-updates -Wno-star-is-type if impl(ghc >= 8.4) ghc-options: -Wpartial-fields default-language: Haskell2010 common stan-config ghc-options: -fwrite-ide-info -hiedir=.hie -- Harmless extensions from GHC2021 common ghc2021-extensions ghc-options: -Wprepositive-qualified-module default-extensions: BangPatterns DeriveAnyClass DeriveDataTypeable DeriveFunctor DeriveGeneric DeriveTraversable ExplicitForAll FlexibleContexts FlexibleInstances GADTSyntax MultiParamTypeClasses NumericUnderscores RankNTypes ScopedTypeVariables StandaloneDeriving TupleSections TypeApplications TypeOperators -- Note we warn on prequalified ImportQualifiedPost -- Not GHC2021, but until we get \cases we use \case a lot LambdaCase library import: stan-config, common, ghc2021-extensions exposed-modules: Swarm.Language.Context Swarm.Language.Types Swarm.Language.Syntax Swarm.Language.Capability Swarm.Language.Requirement Swarm.Language.Parse Swarm.Language.Parse.QQ Swarm.Language.Pretty Swarm.Language.Typecheck Swarm.Language.Typed Swarm.Language.Elaborate Swarm.Language.LSP Swarm.Language.Pipeline Swarm.Language.Pipeline.QQ Swarm.Game.CESK Swarm.Game.Scenario Swarm.Game.ScenarioInfo Swarm.Game.Display Swarm.Game.Entity Swarm.Game.Exception Swarm.Game.Recipe Swarm.Game.Robot Swarm.Game.State Swarm.Game.Step Swarm.Game.Terrain Swarm.Game.Value Swarm.Game.World Swarm.Game.WorldGen Swarm.TUI.Attr Swarm.TUI.Border Swarm.TUI.List Swarm.TUI.Panel Swarm.TUI.Model Swarm.TUI.View Swarm.TUI.Controller Swarm.TUI.Inventory.Sorting Swarm.App Swarm.Version Swarm.Web Swarm.Util Swarm.DocGen Swarm.Util.Yaml other-modules: Paths_swarm autogen-modules: Paths_swarm build-depends: base >= 4.14 && < 4.18, aeson >= 2 && < 2.2, array >= 0.5.4 && < 0.6, brick >= 1.0 && < 1.4, bytestring >= 0.10 && < 0.12, clock >= 0.8.2 && < 0.9, containers >= 0.6.2 && < 0.7, directory >= 1.3 && < 1.4, dotgen >= 0.4 && < 0.5, either >= 5.0 && < 5.1, extra >= 1.7 && < 1.8, filepath >= 1.4 && < 1.5, fused-effects >= 1.1.1.1 && < 1.2, fused-effects-lens >= 1.2.0.1 && < 1.3, githash >= 0.1.6 && < 0.2, hashable >= 1.3.4 && < 1.5, hsnoise >= 0.0.3 && < 0.1, http-client >= 0.7 && < 0.8, http-client-tls >= 0.3 && < 0.4, http-types >= 0.12 && < 0.13, lens >= 4.19 && < 5.3, linear >= 1.21.6 && < 1.22, lsp >= 1.2 && < 1.7, megaparsec >= 9.0 && < 9.3, minimorph >= 0.3 && < 0.4, mtl >= 2.2.2 && < 2.3, murmur3 >= 1.0.4 && < 1.1, natural-sort >= 0.1.2 && < 0.2, parser-combinators >= 1.2 && < 1.4, prettyprinter >= 1.7.0 && < 1.8, random >= 1.2.0 && < 1.3, servant >= 0.19 && < 0.20, servant-server >= 0.19 && < 0.20, simple-enumeration >= 0.2 && < 0.3, split >= 0.2.3 && < 0.3, stm >= 2.5.0 && < 2.6, syb >= 0.7 && < 0.8, tagged >= 0.8 && < 0.9, template-haskell >= 2.16 && < 2.20, text >= 1.2.4 && < 2.1, text-zipper >= 0.10 && < 0.13, time >= 1.9 && < 1.14, unification-fd >= 0.11 && < 0.12, unordered-containers >= 0.2.14 && < 0.3, vector >= 0.12 && < 0.14, vty >= 5.33 && < 5.38, wai >= 3.2 && < 3.3, warp >= 3.2 && < 3.4, witch >= 1.1.1.0 && < 1.2, word-wrap >= 0.5 && < 0.6, yaml >= 0.11 && < 0.12, hs-source-dirs: src default-language: Haskell2010 default-extensions: -- Avoid unexpected unevaluated thunk buildup -- See discussion in #415 StrictData executable swarm import: stan-config, common main-is: Main.hs build-depends: optparse-applicative >= 0.16 && < 0.18, githash >= 0.1.6 && < 0.2, -- Imports shared with the library don't need bounds base, text, swarm hs-source-dirs: app default-language: Haskell2010 ghc-options: -threaded default-extensions: ImportQualifiedPost test-suite swarm-unit import: stan-config, common, ghc2021-extensions main-is: Main.hs type: exitcode-stdio-1.0 other-modules: TestEval TestInventory TestModel TestNotification TestLanguagePipeline TestPretty TestUtil build-depends: tasty >= 0.10 && < 1.5, tasty-hunit >= 0.10 && < 0.11, tasty-quickcheck >= 0.10 && < 0.11, QuickCheck >= 2.14 && < 2.15, -- Imports shared with the library don't need bounds aeson, base, containers, filepath, hashable, lens, linear, mtl, swarm, text, witch hs-source-dirs: test/unit default-language: Haskell2010 ghc-options: -threaded test-suite swarm-integration import: stan-config, common, ghc2021-extensions main-is: Main.hs type: exitcode-stdio-1.0 build-depends: tasty >= 0.10 && < 1.5, tasty-hunit >= 0.10 && < 0.11, tasty-expected-failure >= 0.12 && < 0.13, -- Imports shared with the library don't need bounds base, containers, directory, filepath, lens, linear, mtl, swarm, text, transformers, witch, yaml hs-source-dirs: test/integration default-language: Haskell2010 ghc-options: -threaded benchmark benchmark import: stan-config, common, ghc2021-extensions main-is: Benchmark.hs hs-source-dirs: bench type: exitcode-stdio-1.0 build-depends: criterion >= 1.6.0.0 && < 1.7, -- Import shared with the library don't need bounds base, lens, linear, mtl, random, swarm, text default-language: Haskell2010 ghc-options: -threaded