package dunolint-lib
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page
- Added
- Changed
- 0.0.20260211 (2026-02-11)
- 0.0.20260103 (2026-01-03)
- 0.0.20251006 (2025-10-06)
- 0.0.20250910-1 (2025-09-10)
- 0.0.20250910 (2025-09-10)
- 0.0.20250907 (2025-09-07)
- 0.0.20250804 (2025-08-04)
- 0.0.20250730 (2025-07-30)
- 0.0.20250403 (2025-04-03)
- 0.0.20250315 (2025-03-15)
- 0.0.20250310 (2025-03-10)
- 0.0.20250211 (2025-02-11)
A library to create dunolint configs
Install
dune-project
Dependency
Authors
Maintainers
Sources
dunolint-0.0.20260306.tbz
sha256=d92e0d705b661ea12b22dcc9bdd83815c507218c1de085d75140fd47bea0c5ec
sha512=fdf4fbb4906aba4aeab766dfa5202b64950c71c988b1b84363319dd05edb93b34142355f968a5687057977e40defdced20a2a17ee0614565096eb123655621f3
doc/CHANGES.html
0.0.20260306 (2026-03-06)
From this version, pre-compiled release binaries are included as compressed archives.
Added
- Distribute compressed archived for release artifacts (#PR, @mbarbin).
Changed
- Upgrade to recent
actions/attestGitHub workflow (#PR, @mbarbin).
0.0.20260211 (2026-02-11)
Starting from this version we're using GitHub immutable releases.
Added
- Add library modes
memvariadic construct (#174, @mbarbin). - Adapt release artifacts jobs for immutable releases (@mbarbin).
- Added new CI workflow based on setup-dune (@mbarbin).
- Add some library and executable linter getters/setters (#163, @mbarbin).
Changed
- Extract dune lang format directly from enclosing context (#177, @mbarbin).
- Support supplying flags to instrumentation backends (#175, @mbarbin).
- Migrate main and doc CIs to
setup-dune(#171, @mbarbin). - Assorted improvements to CI scripts. Upgrade an pin actions deps (#173, @mbarbin).
- Generalize
Dunolint_engine.with_linterhelper (#163, @mbarbin).
Deprecated
- Deprecate
has_modeandhas_modeslibrary modes, replaced bymem(#172, @mbarbin).
Fixed
- Fix new dune build target
unused-libs(#171, @mbarbin). - Fix tests and prepare compatibility with
dune.3.21(#167, @mbarbin).
Removed
- Removed deprecated
load_existing_librariesprivate helper (#163, @mbarbin). - Removed root
dune-workspacecausing build issues withdune.3.17. (@mbarbin).
0.0.20260103 (2026-01-03)
Added
- Show supported candidates in invalid construct sexp error (#162, @mbarbin).
- Add initial support for
packagepredicates in libraries (#161, @mbarbin). - Add new qualifier
if_presentto enforce only if field is present (#159, @mbarbin). - Add predicates for the
(inline_tests)library stanza (#157, @mbarbin). - Add support for
DUNE_ROOTenvironment variable (#156, @mbarbin). - Add initial support for linting
dune-workspacefiles (#153, @mbarbin). - Add initial support for linting
dunolintfiles (#146, @mbarbin). - Enabled OCaml
5.4in CI (#136, @mbarbin). - Added new tests (#132, @mbarbin).
Changed
- Improve tests for sexp and equal functions and their coverage (#162, @mbarbin).
- Support multiple input files in
tools lint-file --in-place(#158, @mbarbin). - Make a few dunolint config parsing errors more friendly (#155, @mbarbin).
- Refactor sexp parsing - prerequisite for future improvements (#152, @mbarbin).
- Cleanup implementation of
equalfunctions (#151, @mbarbin). - Extend lang version compare operators (#145, @mbarbin).
- Upgrade
actions/checkouttov6(#138, @mbarbin). - Improved licensing headers for vendored
blang(#144, @mbarbin). - Refactor pkg directory structure (#143, @mbarbin).
- Improve some format & diff in some internal tests (#137, @mbarbin).
- Upgrade to and require fixes from
fpath-sexp0.0.4.0(#133, @mbarbin). - Made some internal refactors suggested by the Zanuda linter (#130, @mbarbin).
Fixed
- Fix location of sexp error on invalid atoms (#160, @mbarbin).
- Fix enforce on absent
public_namefields (#159, @mbarbin). - Allow dash char in package names (#154, @mbarbin).
Removed
- Removed
expect_test_helpers_coredependency (#154, @mbarbin). - Removed unused
comparefunctions on rules & predicates (#150, @mbarbin). - Removed redundant
skip_pathsconstructs from dunolint config (#149, @mbarbin). - Removed now unused
fpathdependency fromdunolint-lib(#142, @mbarbin). - Removed deprecated construct
path.equals(#142, @mbarbin). - Removed support for config version
v0(#141, @mbarbin).
0.0.20251006 (2025-10-06)
Added
- Added 'Config Autoloading' documentation page (#129, @mbarbin).
- Add test for config cache (#128, @mbarbin).
- Implement dunolint config files autoloading (#127, @mbarbin).
- Added 'First Run Through' tutorial (#115, @mbarbin).
- Added 'Quick Start' tutorial (#106, @mbarbin).
Changed
- Always include default skip paths in config (#125, @mbarbin).
- Refactors to prepare config autoloading (#121, #122, #123, #124, #126, @mbarbin).
- Make dunolint aware of and use dune workspaces (#113, @mbarbin)
- Remove support for
--enforcein lint-file tool (#118, @mbarbin). - Update doc for
(lang dunolint 1.0)(#110, @mbarbin). - Upgrade to recent
pplumbingrepackaging (#109, @mbarbin). - Upgrade
crsactions (#108, @mbarbin).
Fixed
- Fix workspace root detection in dune test envs (#120, @mbarbin).
- Fix parsing errors of dune version in dune-project (#112, @mbarbin).
0.0.20250910-1 (2025-09-10)
Fixed
- Missing opam dependency
dunolint-lib-base(@mbarbin).
0.0.20250910 (2025-09-10)
Added
- Support new
(lang dunolint 1.0)config stanzas format fordunolintfiles (#105, @mbarbin). - New lib
dunolint-lib-baseto extenddunolint-libfor base users (#99, @mbarbin).
Changed
- Now autoload config files if present at "$PWD/dunolint" (#103, #104, @mbarbin).
- Move the dunolint config at the root of the repo (#102, @mbarbin).
- Change dune-lang sexps to be atoms (e.g. "3.19") instead of tuples (#101, @mbarbin).
- Remove base and ppx dependencies from
dunolint-lib(#99, @mbarbin). - Always use versioned sexp for config (#98, @mbarbin).
Fixed
- Improve location and messages for sexp loading errors (#100, @mbarbin).
- Config loading errors are no longer internal errors and now reported with locations when able (#97, @mbarbin).
0.0.20250907 (2025-09-07)
Added
- Added dependency to
volgo-vcsin preparation for future features (#89, @mbarbin). - Supports linting the dune lang version in dune-project files (#93, @mbarbin).
- Supports implicit trans deps
false-if-hidden-includes-supportedvalue (#92, @mbarbin).
Changed
- Prepare transition to versioned API and config format (#96, @mbarbin).
- Upgrade docusaurus dependencies to current latest (#94, @mbarbin).
- Changes
(implicit_transitive_deps _)config value from bool to variant (#92, @mbarbin). - Improved testing coverage (#90, #91, @mbarbin).
Fixed
- Correctly propagate
skip_subtreewhen returned from rules (#90, @mbarbin).
0.0.20250804 (2025-08-04)
Added
- Made all names in dunolint lib export
Comparable.S(#84, @mbarbin).
Changed
- Move sections handling logic into helper module (#85, @mbarbin).
- Move comment handling logic into helper module (#84, @mbarbin).
Fixed
- Entries
ppsare now sorted by sections when separated by comments (#86, @mbarbin, reported and suggested by @raphael-proust).
0.0.20250730 (2025-07-30)
Added
- Improve canonical order of libraries to open via flags (#83, @mbarbin).
- Add support for ordered-set and use it in library.modes (#81, @mbarbin).
- Enable CRs workflows (experimental) (#76, #78, @mbarbin).
- Add tests (#67, #68, @mbarbin).
Changed
- Improved testing coverage (#80, @mbarbin).
- Small refactors, tweaks & code improvement (#77, #79, @mbarbin).
- Use
Git_pagerfrom opam packagepageanttyinstead of vendoring it (#73, @mbarbin). - Refactor enforce functions to ease further testing (#72, @mbarbin).
- Support building dunolint-lib with OCaml 4.14 (#65, @mbarbin).
- Updated git-pager and err dependencies (#63, #64, @mbarbin).
Fixed
- Fix unexpected rewrites on duped flags in libs (#82, @mbarbin).
- Fix some cram test failures shown by ocaml-ci (#75, @mbarbin).
- Fix disabling of color when
--color=neveris supplied (#70, @mbarbin). - Fix doc location for installation guide (#69, @mbarbin).
- Fix git pager clean termination when displayed diff exceeds 1 page (#61, @mbarbin).
Removed
- Replace library
equals MODESbyhas_modesconstruct (#81, @mbarbin).
0.0.20250403 (2025-04-03)
Added
- Added command
tools lint-fileto ease editor integration (#39, #40, #46, @mbarbin, requested by and with help from @arvidj). - Added support for
library.modes(#23, #27, @mbarbin, requested by @raphael-proust) - Document release process and current state (#25, @mbarbin).
- Added coverage and regression tests (#18, #19, #30, #33, #34, #48, @mbarbin).
Changed
- Reduce dependencies of config library (#49, #51, @mbarbin).
- Enabled setup-ocaml's dune-cache in CI (#52, @mbarbin).
- Upgrade Docusaurus to latest available (#24, @mbarbin).
Fixed
- Add missing
melangelibrary mode (#43, #44, @mbarbin, reported by @arvidj). - Fixes for
odoc.3.0.0(#28, #32, @mbarbin, with help from @jonludlam)
Removed
- Disabled failing macos build from CI for now (#20, @mbarbin).
0.0.20250315 (2025-03-15)
Added
- Prepare to include more ci workflows incrementally in the future (#16, @mbarbin).
Changed
- Dependencies in
librariesare now sorted by sections when separated by comments (#12, #14, @mbarbin, reported and suggested by @raphael-proust).
0.0.20250310 (2025-03-10)
Added
- Added new tests (#8, #10, @mbarbin).
- Enabled sending coverage reports to Coveralls (#7, @mbarbin).
Changed
- Replace
pp-logdeps bypplumbingto prepare for publishing to opam (#11, @mbarbin). - Internal lib rename (
command->cli) (#9, @mbarbin). - Replace Eio-based deps by a combination of Unix and Stdio (#6, @mbarbin).
0.0.20250211 (2025-02-11)
This very early draft release is intended for publication to my custom opam-repository. It allows for initial experimentation and ensures that the release cycle and distribution process are functioning correctly.
Added
- Initialize a dunolint config for dunolint.
- Initialize documentation.
- Initialize project, add LICENSE, etc.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page
- Added
- Changed
- 0.0.20260211 (2026-02-11)
- 0.0.20260103 (2026-01-03)
- 0.0.20251006 (2025-10-06)
- 0.0.20250910-1 (2025-09-10)
- 0.0.20250910 (2025-09-10)
- 0.0.20250907 (2025-09-07)
- 0.0.20250804 (2025-08-04)
- 0.0.20250730 (2025-07-30)
- 0.0.20250403 (2025-04-03)
- 0.0.20250315 (2025-03-15)
- 0.0.20250310 (2025-03-10)
- 0.0.20250211 (2025-02-11)