packages feed

espial-0.0.38: package.yaml

name: espial
synopsis: Espial is an open-source, web-based bookmarking server.
version: "0.0.38"
description: ! "
  Espial is an open-source, web-based bookmarking server.

  - Yesod + TypeScript + sqlite3

  - multi-user (w/ privacy scopes)

  - multi-language (i18n)

  - tags, stars, editing, deleting"
category: Web
author: Jon Schoning
maintainer: jonschoning@gmail.com
copyright: Copyright (c) 2018 Jon Schoning
license: AGPL-3.0-or-later
license-file: LICENSE
homepage: https://github.com/jonschoning/espial
git: https://github.com/jonschoning/espial.git
bug-reports: https://github.com/jonschoning/espial/issues
extra-doc-files:
  - changelog.md
  - README.md
  - SECURITY.md
extra-source-files:
  - Dockerfile
  - Dockerfile.buildkit
  - Makefile
  - appmigrations/**
  - config/favicon.ico
  - config/keter.yml
  - config/robots.txt
  - config/routes
  - config/settings.yml
  - config/test-settings.yml
  - docker-compose.archivebox07.yml
  - docker-compose.yml
  - frontend/.gitignore
  - frontend/.prettierignore
  - frontend/.prettierrc
  - frontend/Makefile
  - frontend/README.md
  - frontend/eslint.config.mjs
  - frontend/package-lock.json
  - frontend/package.json
  - frontend/scripts/**/*
  - frontend/src/**/*
  - frontend/tsconfig.json
  - hie.yaml
  - package.yaml
  - stack.yaml
  - stack.yaml.lock
  - static/css/**
  - static/fonts/**
  - static/images/**
  - static/js/**
  - static/locales/**/*
  - templates/**

language: GHC2024

default-extensions:
  - BlockArguments
  - CPP
  - NoImplicitPrelude
  - OverloadedStrings
  - PartialTypeSignatures
  - QuasiQuotes
  - RecordWildCards
  - TemplateHaskell
  - TypeFamilies
  - ViewPatterns

dependencies:
  - base >=4.18.1.0 && <5
  - yesod >=1.6 && <1.8
  - yesod-core >=1.6 && <1.8
  - yesod-auth >=1.6 && <1.8
  - yesod-static >=1.6 && <1.8
  - yesod-form >=1.6 && <1.8
  - yesod-newsfeed >= 1.6 && < 1.8
  - classy-prelude >=1.4 && <1.6
  - classy-prelude-conduit >=1.4 && <1.6
  - classy-prelude-yesod >=1.4 && <1.6
  - bytestring >=0.11.5 && <0.13
  - text >=2 && <3
  - persistent >=2.14 && <2.19
  - blaze-html >= 0.9 && < 1
  - persistent-template >=2.12 && <2.13
  - template-haskell
  - shakespeare >=2.0 && <2.3
  - blaze-markup
  - hjsmin >=0.1 && <0.3
  - wai-extra >=3.0 && <3.2
  - yaml >=0.8 && <0.12
  - http-client-tls >=0.3 && <0.5
  - http-conduit >=2.3 && <2.4
  - directory >=1.1 && <1.4
  - warp >=3.0 && <3.5
  - warp-tls >=3.0 && <3.5
  - tls
  - data-default
  - conduit >=1.0 && <2
  - monad-logger >=0.3 && <0.4
  - fast-logger >=2.2 && <4
  - wai-logger
  - file-embed
  - safe
  - unordered-containers
  - containers
  - vector
  - time
  - case-insensitive
  - wai
  - foreign-store

  - aeson >=2.0
  - attoparsec
  - base64 >=1 && < 2
  - bcrypt >= 0.0.8
  - crypton >= 0.30
  - crypton-connection
  - cryptohash-sha256
  - entropy
  - text-short
  - esqueleto >= 3.5.11.1 && < 3.7
  - filepath
  - fgl
  - gitrev
  - html-entities
  - http-api-data >= 0.3.4
  - http-client
  - http-types
  - iproute
  - microlens
  - mtl
  - parser-combinators
  - persistent-sqlite == 2.13.3.0 # do not upgrade to 2.13.3.1 due to UTCTime behavior in that version (see https://github.com/yesodweb/persistent/issues/1628)
  - transformers >= 0.2.2

when:
  - condition: "!os(windows)"
    dependencies:
      - unix

tested-with:
  - GHC == 9.10.3

# The library contains all of our application code. The executable
# defined below is just a thin wrapper.
library:
  source-dirs: src
  generated-exposed-modules:
    - Paths_espial
  when:
    - condition: flag(usebuildinfo)
      exposed-modules:
        - BuildInfo
      source-dirs: buildinfo
      cpp-options:
        - -DUSE_BUILDINFO
    - condition: (flag(dev)) || (flag(library-only))
      then:
        ghc-options:
          - -Wall
          - -fwarn-tabs
        cpp-options: -DDEVELOPMENT
        dependencies:
          - pretty-show
          - hscolour
      else:
        ghc-options:
          - -Wall
          - -fwarn-tabs
          - -O2

# Runnable executable for our application
executables:
  espial:
    main: main.hs
    source-dirs: app
    ghc-options:
      - -threaded
      - -rtsopts
      - -with-rtsopts=-N
    dependencies:
      - espial
    when:
      - condition: flag(library-only)
        buildable: false
  migration:
    when:
      - condition: flag(library-only)
        buildable: false
    main: Main.hs
    source-dirs:
      - app/migration
    ghc-options: -threaded -rtsopts -with-rtsopts=-N
    dependencies:
      - espial
      - optparse-generic >= 1.2.3
      - optparse-applicative

# Test suite
tests:
  test:
    main: Spec.hs
    source-dirs: test
    ghc-options: -Wall
    dependencies:
      - espial
      - hspec >=2
      - yesod-test

# Define flags used by "yesod devel" to make compilation faster
flags:
  library-only:
    description: Build for use with "yesod devel"
    manual: false
    default: false
  dev:
    description: Turn on development settings, like auto-reload templates.
    manual: false
    default: false
  usebuildinfo:
    description: read buildinfo from generated file buildinfo/BuildInfo.hs
    default: false
    manual: true