packages feed

mpd-current-json-3.0.0.0: mpd-current-json.cabal

cabal-version:      3.8
name:               mpd-current-json
-- 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:            3.0.0.0
synopsis:           Print current MPD song and status as JSON

tested-with: GHC == { 9.10.1, 9.6.7, 9.4.8 }
-- A longer description of the package.
description: Print currently playing MPD's song metadata and status as JSON
homepage:           https://codeberg.org/useless-utils/mpd-current-json

-- A URL where users can report bugs.
-- bug-reports:
license:            Unlicense
license-file:       UNLICENSE
author:             Lucas G
maintainer:         g@11xx.org

-- A copyright notice.
-- copyright:
category:           Network
extra-doc-files:    CHANGELOG.md
                    README.org

source-repository head
    type:      git
    location:  https://codeberg.org/useless-utils/mpd-current-json

library
    -- exposed: False
    exposed-modules:  MPD.Current.JSON.Parse
                      MPD.Current.JSON.Builder
                      MPD.Current.JSON.Types
    build-depends:  base >=4.16 && <5
                  , libmpd == 0.10.*
                  , aeson == 2.2.*
                  , aeson-pretty == 0.8.*
                  , deriving-aeson ^>=0.2.10
                  , bytestring >=0.11 && <0.13
                  , text ^>=2.1.3
    hs-source-dirs: lib
    default-language: GHC2021
    default-extensions: LambdaCase
                      , NoFieldSelectors
                      , OverloadedRecordDot
                      , OverloadedStrings
                      , StrictData
                      , DerivingStrategies
    ghc-options:    -Wall
                    -Wcompat
                    -Widentities
                    -Wincomplete-uni-patterns
                    -Wincomplete-record-updates
                    -Wredundant-constraints
                    -Wmissing-export-lists
                    -Wpartial-fields
                    -Wmissing-deriving-strategies
                    -Wunused-packages
                    -fwrite-ide-info
                    -hiedir=.hie
                    -Wmissing-local-signatures
                    -Wincomplete-patterns
                    -Woverlapping-patterns
                    -fwarn-incomplete-patterns
                    -fwarn-tabs


executable mpd-current-json
    main-is:          Main.hs

    -- Modules included in this executable, other than Main.
    other-modules:    Options
                      Paths_mpd_current_json
                      Version

    autogen-modules:  Paths_mpd_current_json

    -- LANGUAGE extensions used by modules in this package.
    -- other-extensions:
    build-depends:    base
                    , libmpd
                    , optparse-applicative == 0.18.*
                    , aeson
                    , aeson-pretty
                    , bytestring
                    , mpd-current-json

    -- Directories containing source files.
    hs-source-dirs:   src
    default-language: GHC2021
    default-extensions: LambdaCase
                      , NoFieldSelectors
                      , OverloadedRecordDot
                      , OverloadedStrings
                      , StrictData
                      , DerivingStrategies

    -- [[https://kowainik.github.io/posts/2019-02-06-style-guide#ghc-options][Haskell Style Guide :: Kowainik]]
    ghc-options:    -Wall
                    -Wcompat
                    -Widentities
                    -Wincomplete-uni-patterns
                    -Wincomplete-record-updates
                    -Wredundant-constraints
                    -Wmissing-export-lists
                    -Wpartial-fields
                    -Wmissing-deriving-strategies
                    -Wunused-packages
                    -fwrite-ide-info
                    -hiedir=.hie