mischief-ecs-0.2.1.0: mischief-ecs.cabal
cabal-version: 3.0
-- The cabal-version field refers to the version of the .cabal specification,
-- and can be different from the cabal-install (the tool) version and the
-- Cabal (the library) version you are using. As such, the Cabal (the library)
-- version used must be equal or greater than the version stated in this field.
-- Starting from the specification version 2.2, the cabal-version field must be
-- the first thing in the cabal file.
-- Initial package description 'mischief' generated by
-- 'cabal init'. For further documentation, see:
-- http://haskell.org/cabal/users-guide/
--
-- The name of the package.
name: mischief-ecs
-- The package version.
-- See the Haskell package versioning policy (PVP) for standards
-- guiding when and how versions should be incremented.
-- https://pvp.haskell.org
-- PVP summary: +-+------- breaking API changes
-- | | +----- non-breaking API additions
-- | | | +--- code changes with no API change
version: 0.2.1.0
-- A short (one-line) description of the package.
synopsis: An archetype ECS engine built in Haskell.
homepage: https://codeberg.org/mischief/mischief
-- A longer description of the package.
description:
The ECS at the core of the Mischief game engine.
category: Game Engine, ECS, Game, Control, Data, Framework
-- The license under which the package is released.
license: BSD-3-Clause
-- The file containing the license text.
license-file: LICENSE
-- The package author(s).
author: Damon
-- An email address to which users can send suggestions, bug reports, and patches.
maintainer: pvdoriginal2019@gmail.com
-- A copyright notice.
-- copyright:
build-type: Simple
-- Extra doc files to be distributed with the package, such as a CHANGELOG or a README.
extra-doc-files:
CHANGELOG.md
README.md
-- Extra source files to be distributed with the package, such as examples, or a tutorial module.
-- extra-source-files:
common warnings
ghc-options:
"-Wall,"
-Wno-name-shadowing
library
-- Import common warning flags.
import: warnings
-- Modules exported by the library.
exposed-modules:
Mischief.ECS
Mischief.ECS.App
Mischief.ECS.App.Plugins
Mischief.ECS.App.Schedules
Mischief.ECS.App.SystemDef
Mischief.ECS.App.Systems
Mischief.ECS.Archetypes
Mischief.ECS.Archetypes.Graph
Mischief.ECS.Collectable
Mischief.ECS.Components
Mischief.ECS.Components.Bundle
Mischief.ECS.Components.BundleTypes
Mischief.ECS.Components.Common
Mischief.ECS.Components.HooksDef
Mischief.ECS.Components.Required
Mischief.ECS.Components.Spawn
Mischief.ECS.Entities
Mischief.ECS.EntityDef
Mischief.ECS.EventDef
Mischief.ECS.Events
Mischief.ECS.Exports
Mischief.ECS.Fixed
Mischief.ECS.Foreign
Mischief.ECS.Hooks
Mischief.ECS.HooksRel
Mischief.ECS.Log
Mischief.ECS.Messages
Mischief.ECS.Observer
Mischief.ECS.Relationships.ChildOf
Mischief.ECS.Relationships.Graph
Mischief.ECS.Relationships.Order
Mischief.ECS.Relationships.Tree
Mischief.ECS.Repeater
Mischief.ECS.Resources
Mischief.ECS.Schedules
Mischief.ECS.Stdin
Mischief.ECS.Stdout
Mischief.ECS.Systems
Mischief.ECS.Tables
Mischief.ECS.Time
Mischief.ECS.Timer
Mischief.ECS.Tutorial.Guides.Basics
Mischief.ECS.Tutorial.Guides.Change
Mischief.ECS.Tutorial.Guides.Events
Mischief.ECS.Tutorial.Guides.MonadicQueries
Mischief.ECS.Tutorial.Guides.Organizing
Mischief.ECS.Tutorial.Guides.Parallelism
Mischief.ECS.Tutorial.Guides.QuasiConversion
Mischief.ECS.Tutorial.Guides.QueryBasics
Mischief.ECS.Tutorial.Guides.QueryPiping
Mischief.ECS.Tutorial.Guides.Scheduling
Mischief.ECS.Tutorial.Guides.Time
Mischief.ECS.Tutorial.Introduction.Dungeon
Mischief.ECS.Tutorial.Introduction.Startup
Mischief.ECS.Utils
Mischief.ECS.Vec
Mischief.ECS.World
Mischief.ECS.World.Change
Mischief.ECS.World.Defer
Mischief.ECS.World.Insert
Mischief.ECS.World.Par
Mischief.ECS.World.Query
Mischief.ECS.World.Query.Markers
Mischief.ECS.World.Query.Pipe
Mischief.ECS.World.Query.Queryable
Mischief.ECS.World.Query.QueryFilter
Mischief.ECS.World.Query.TH
Mischief.ECS.World.Query.TH.Common
Mischief.ECS.World.Query.TH.QD
Mischief.ECS.World.Query.TH.QF
Mischief.ECS.World.Remove
Mischief.ECS.World.Spawn
Mischief.ECS.World.Utils
-- Modules included in this library but not exported.
-- other-modules:
other-modules:
Mischief.ECS.Hidden
-- LANGUAGE extensions used by modules in this package.z
default-extensions:
DefaultSignatures
DeriveAnyClass
DuplicateRecordFields
FunctionalDependencies
ImportQualifiedPost
MagicHash
NoFieldSelectors
OverloadedRecordDot
OverloadedStrings
QuasiQuotes
RequiredTypeArguments
TemplateHaskell
TypeFamilyDependencies
UnboxedSums
UnboxedTuples
UndecidableInstances
UnliftedDatatypes
UnliftedNewtypes
-- other-extensions:
-- Other library packages from which modules are imported.
build-depends:
ansi-terminal >=1.1.5 && <1.2,
async >=2.2.6 && <2.3,
base >=4.21.0.0 && <4.22,
clock >=0.8.4 && <0.9,
co-log >=0.7.0 && <0.8,
containers >=0.7 && <0.8,
data-default >=0.8.0 && <0.9,
exceptions >=0.10.9 && <0.11,
hashtables >=1.4.2 && <1.5,
haskell-src-meta >=0.8.16 && <0.9,
megaparsec >=9.8.1 && <9.9,
mtl >=2.3.1 && <2.4,
primitive >=0.9.1 && <0.10,
stm >=2.5.3 && <2.6,
string-interpolate >=1.0.0 && <1.1,
template-haskell >=2.23.0 && <2.24,
text >=2.1.2 && <2.2,
transformers >=0.6.1 && <0.7,
vector >=0.13.2 && <0.14,
-- Directories containing source files.
hs-source-dirs:
src
-- Base language which the package is written in.
default-language:
GHC2024
ghc-options: -fno-omit-yields
test-suite mischief-test
-- Import common warning flags.
import: warnings
ghc-options: -fno-omit-yields
-- Base language which the package is written in.
default-language: GHC2024
-- Modules included in this executable, other than Main.
-- other-modules:
-- LANGUAGE extensions used by modules in this package.
default-extensions:
DeriveAnyClass
DuplicateRecordFields
NoFieldSelectors
NoGeneralizedNewtypeDeriving
OverloadedRecordDot
OverloadedStrings
QuasiQuotes
RequiredTypeArguments
TypeFamilyDependencies
-- other-extensions:
-- The interface type and version of the test suite.
type: exitcode-stdio-1.0
-- Directories containing source files.
hs-source-dirs: test
-- The entrypoint to the test suite.
main-is: Main.hs
other-modules:
Changes
Relationships
Utils
-- Test dependencies.
build-depends:
base >=4.21.0.0 && <4.22,
containers,
data-default,
mischief-ecs,
primitive,
random >=1.3.1 && <1.4,
text,
transformers,
executable example-dungeon
main-is: Dungeon.hs
hs-source-dirs: examples
build-depends:
base >=4.21.0.0 && <4.22,
containers,
data-default,
mischief-ecs,
primitive,
random >=1.3.1 && <1.4,
text,
transformers,
default-language: GHC2024
default-extensions:
DeriveAnyClass
DuplicateRecordFields
NoFieldSelectors
NoGeneralizedNewtypeDeriving
OverloadedRecordDot
OverloadedStrings
QuasiQuotes
RequiredTypeArguments
TemplateHaskell
TypeFamilyDependencies
executable example-startup
main-is: Startup.hs
hs-source-dirs: examples
build-depends:
base >=4.21.0.0 && <4.22,
containers,
mischief-ecs,
primitive,
text,
transformers,
default-language: GHC2024
default-extensions:
DeriveAnyClass
DuplicateRecordFields
NoFieldSelectors
NoGeneralizedNewtypeDeriving
OverloadedRecordDot
OverloadedStrings
QuasiQuotes
RequiredTypeArguments
TemplateHaskell
TypeFamilyDependencies
benchmark bench-spawn
type: exitcode-stdio-1.0
main-is: bench-spawn.hs
hs-source-dirs: benchmarks
default-language: GHC2024
build-depends:
base >=4.21.0.0 && <4.22,
containers,
criterion >=1.6.5 && <1.7,
deepseq >=1.5.1 && <1.6,
mischief-ecs,
primitive,
time,
transformers,
default-extensions:
DeriveAnyClass
DuplicateRecordFields
NoFieldSelectors
NoGeneralizedNewtypeDeriving
OverloadedRecordDot
OverloadedStrings
QuasiQuotes
RequiredTypeArguments
TemplateHaskell
TypeFamilyDependencies
benchmark bench-insert
type: exitcode-stdio-1.0
main-is: bench-insert.hs
hs-source-dirs: benchmarks
default-language: GHC2024
build-depends:
base >=4.21.0.0 && <4.22,
containers,
criterion >=1.6.5 && <1.7,
deepseq >=1.5.1 && <1.6,
mischief-ecs,
primitive,
time,
transformers,
default-extensions:
DeriveAnyClass
DuplicateRecordFields
NoFieldSelectors
NoGeneralizedNewtypeDeriving
OverloadedRecordDot
OverloadedStrings
QuasiQuotes
RequiredTypeArguments
TemplateHaskell
TypeFamilyDependencies
benchmark bench-update
type: exitcode-stdio-1.0
main-is: bench-update.hs
hs-source-dirs: benchmarks
default-language: GHC2024
build-depends:
base >=4.21.0.0 && <4.22,
containers,
criterion >=1.6.5 && <1.7,
deepseq >=1.5.1 && <1.6,
mischief-ecs,
primitive,
time,
transformers,
default-extensions:
DeriveAnyClass
DuplicateRecordFields
NoFieldSelectors
NoGeneralizedNewtypeDeriving
OverloadedRecordDot
OverloadedStrings
QuasiQuotes
RequiredTypeArguments
TemplateHaskell
TypeFamilyDependencies