packages feed

nbparts-0.1.1.0: nbparts.cabal

cabal-version: 3.8
name: nbparts
version: 0.1.1.0
synopsis: Unpack a Jupyter notebook into its sources, metadata and outputs
description:
    `nbparts` is a tool for splitting Jupyter notebooks into its "parts":

    - sources (code and markdown content),
    - outputs, and
    - metadata.

    These parts can be re-assembled back into an equivalent Jupyter notebook.
    The goal is to make it easier to store and diff Jupyter notebooks in text-based version control systems like Git.
license: Apache-2.0
license-files:
    LICENSE
    tests/fixtures/commonmark-spec/LICENSE
author: Dixon Sean Low Yan Feng
maintainer: root@dixslyf.dev
copyright: (c) 2025 Dixon Sean Low Yan Feng
homepage: https://github.com/dixslyf/nbparts
bug-reports: https://github.com/dixslyf/nbparts/issues
category: Data
tested-with:
    GHC == 9.8
    GHC == 9.10
    GHC == 9.12
build-type: Simple
extra-doc-files:
    CHANGELOG.md
extra-source-files:
    README.md
    tests/fixtures/*.ipynb
    tests/fixtures/commonmark-spec/*.ipynb
source-repository head
  type: git
  location: https://github.com/dixslyf/nbparts

common warnings
    ghc-options: -Wall -Wmissing-import-lists

common extensions
    default-extensions:
        OverloadedStrings,
        LambdaCase,
        NoFieldSelectors,
        OverloadedRecordDot,
        DuplicateRecordFields

library
    import: warnings, extensions
    exposed-modules:
        Nbparts.Run,
        Nbparts.Types,
        Nbparts.Types.Manifest,
        Nbparts.Types.Sources,
        Nbparts.Types.Sources.Markdown,
        Nbparts.Types.Outputs,
        Nbparts.Types.Metadata,
        Nbparts.Types.Mime,
        Nbparts.Types.Error,
        Nbparts.Unpack,
        Nbparts.Unpack.Sources,
        Nbparts.Unpack.Sources.Markdown,
        Nbparts.Unpack.Outputs,
        Nbparts.Unpack.Metadata,
        Nbparts.Unpack.Mime,
        Nbparts.Pack,
        Nbparts.Pack.Sources,
        Nbparts.Pack.Sources.Markdown,
        Nbparts.Pack.Outputs,
        Nbparts.Pack.Metadata,
        Nbparts.Pack.Mime,
        Nbparts.Util.Text,
        Nbparts.Util.Prompt,
        Nbparts.Util.Markdown,
        Nbparts.Util.Map,
    other-modules:
        Paths_nbparts
    autogen-modules:
        Paths_nbparts
    build-depends:
        base >=4.19 && <5,
        mtl ^>=2.3.1,
        transformers ^>=0.6.0.0,
        filepath ^>=1.4.301.0,
        directory ^>=1.3.8.5,
        text ^>=2.1.1,
        bytestring ^>=0.12.1.0,
        memory ^>=0.18.0,
        base64-bytestring ^>=1.2.1.0,
        ipynb ^>=0.2,
        containers ^>=0.7,
        aeson ^>=2.2.3.0,
        aeson-pretty ^>=0.8.10,
        yaml ^>=0.11.11.2,
        libyaml ^>=0.1.4,
        crypton ^>=1.0.4,
        mime-types ^>=0.1.2.0,
        commonmark ^>=0.2.6.1,
        -- Used by Commonmark
        parsec ^>=3.1.18.0,
        megaparsec ^>=9.7.0
    hs-source-dirs: src
    default-language: GHC2021

executable nbparts
    import: warnings, extensions
    main-is: Main.hs
    other-modules:
        Nbparts.Cli.Options
        Paths_nbparts
    autogen-modules:
        Paths_nbparts
    build-depends:
        nbparts,
        base >=4.19 && <5,
        mtl ^>=2.3.1,
        text ^>=2.1.1,
        optparse-applicative ^>=0.19.0.0
    hs-source-dirs: app
    default-language: GHC2021

test-suite test-nbparts
    import: warnings, extensions
    type: exitcode-stdio-1.0
    main-is: Spec.hs
    hs-source-dirs: tests
    build-depends:
        nbparts,
        base >=4.19 && <5,
        bytestring ^>=0.12.1.0,
        mtl ^>=2.3.1,
        text ^>=2.1.1,
        containers ^>=0.7,
        hspec ^>=2.11.12,
        hedgehog ^>=1.5,
        hspec-hedgehog ^>=0.3.0.0,
        aeson ^>=2.2.3.0,
        scientific ^>=0.3.8.0,
        vector ^>=0.13.2.0,
        yaml ^>=0.11.11.2,
        ipynb ^>=0.2,
        mime-types ^>= 0.1.2.0,
        commonmark ^>=0.2.6.1,
        parsec ^>=3.1.18.0,
        temporary ^>=1.3,
        filepath ^>=1.4.301.0,
        directory ^>=1.3.8.5,
        req ^>=3.13.4
    other-modules:
        Tests.SpecHook,
        Tests.Integration.UnpackPackSpec,
        Tests.Integration.UnpackSpec,
        Tests.Integration.PackSpec,
        Tests.Integration.Util,
        Tests.Types.ManifestSpec,
        Tests.Types.MetadataSpec,
        Tests.Types.SourcesSpec,
        Tests.Types.OutputsSpec,
        Tests.Types.MimeSpec,
        Tests.Util.TextSpec,
        Tests.Util.MapSpec,
        Tests.Util.MarkdownSpec,
        Tests.Util.Json
    build-tool-depends: hspec-discover:hspec-discover ^>=2.11.12
    default-language: GHC2021
    ghc-options: -threaded