cabal-version: 2.4 name: swarm version: 0.3.0.1 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, test/language-snippets/**/*.sw 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: Data.BoolExpr Data.BoolExpr.Simplify Swarm.App Swarm.DocGen Swarm.Game.CESK Swarm.Game.Display Swarm.Game.Entity Swarm.Game.Exception Swarm.Game.Log Swarm.Game.Recipe Swarm.Game.Robot Swarm.Game.Scenario Swarm.Game.Scenario.Cell Swarm.Game.Scenario.Objective.Logic Swarm.Game.Scenario.Objective.Graph Swarm.Game.Scenario.Objective.Presentation.Model Swarm.Game.Scenario.Objective.Presentation.Render Swarm.Game.Scenario.Objective.Validation Swarm.Game.Scenario.Objective.WinCheck Swarm.Game.Scenario.Objective Swarm.Game.Scenario.RobotLookup Swarm.Game.Scenario.Style Swarm.Game.Scenario.WorldDescription Swarm.Game.ScenarioInfo Swarm.Game.State Swarm.Game.Step Swarm.Game.Terrain Swarm.Game.World Swarm.Game.WorldGen Swarm.Language.Context Swarm.Language.Capability Swarm.Language.Elaborate Swarm.Language.LSP Swarm.Language.LSP.Hover Swarm.Language.LSP.VarUsage Swarm.Language.Module Swarm.Language.Parse Swarm.Language.Parse.QQ Swarm.Language.Pipeline Swarm.Language.Pipeline.QQ Swarm.Language.Pretty Swarm.Language.Requirement Swarm.Language.Syntax Swarm.Language.Typecheck Swarm.Language.Typed Swarm.Language.Types Swarm.Language.Value Swarm.TUI.Attr Swarm.TUI.Border Swarm.TUI.Controller Swarm.TUI.Controller.Util Swarm.TUI.View.CustomStyling Swarm.TUI.Inventory.Sorting Swarm.TUI.List Swarm.TUI.Model Swarm.TUI.Model.Achievement.Attainment Swarm.TUI.Model.Achievement.Definitions Swarm.TUI.Model.Achievement.Description Swarm.TUI.Model.Achievement.Persistence Swarm.TUI.Model.Failure Swarm.TUI.Model.Menu Swarm.TUI.Model.Name Swarm.TUI.Model.Repl Swarm.TUI.Model.StateUpdate Swarm.TUI.Model.UI Swarm.TUI.Panel Swarm.TUI.View Swarm.TUI.View.Achievement Swarm.TUI.View.CellDisplay Swarm.TUI.View.Util Swarm.Util Swarm.Util.Location Swarm.Util.Yaml Swarm.Version Swarm.Web 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.5 && < 1.7, 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.23, lsp >= 1.6 && < 1.7, megaparsec >= 9.0 && < 9.4, 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-rope >= 0.2 && < 0.3, 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 TestBoolExpr TestLSP 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