Hello ports@,

Please find attached a new port for Fourmolu 0.20.1.0:

devel/fourmolu

Fourmolu is a source code formatter for Haskell:

https://github.com/fourmolu/fourmolu

It is a fork of Ormolu that continuously incorporates upstream Ormolu
improvements while allowing the formatting style to be configured.

Unlike Ormolu's deliberately fixed formatting style, Fourmolu exposes a
number of formatting options through command-line arguments and project
configuration files such as fourmolu.yaml. This allows projects to
define and consistently enforce their preferred formatting style while
retaining Ormolu's parser-based approach, idempotence checks and focus
on producing small diffs.

The formatter can write formatted source to stdout, modify files in
place, recursively process Haskell source directories, or operate in a
check-only mode suitable for CI. It can also locate Cabal files to
derive language extensions, dependencies and operator fixities
automatically.

Fourmolu is supported as a formatting provider by Haskell Language
Server, so the standalone executable can also be used by editors and
other Haskell development tooling.

The current 0.20.1.0 release incorporates Ormolu 0.8.2.0 changes,
including improved collection of operator fixity information from
commonly used Haskell packages. This improves formatting of operator
chains, particularly when operators are re-exported through umbrella
modules. It also corrects import sorting of Prelude when
NoImplicitPrelude is enabled.

For the OpenBSD port, I used the devel/cabal module and generated
cabal.inc with cabal-bundler from the Hackage dependency set.

The port builds and installs the single:

fourmolu

executable.

The package uses the Hackage revision for Fourmolu 0.20.1.0 and depends
on the usual native libraries required by the generated Haskell
dependency set: libffi, GMP and libiconv.

No local source patches are required.

Thank you for your time and consideration.

Best regards,
David.

Attachment: fourmolu.tar.gz
Description: application/gzip

Reply via email to