Hi everyone, PasBuild 1.2.0 has been released.
PasBuild is a Maven-inspired build automation tool for Free Pascal projects. It provides convention-based project structure, dependency management, multi-module builds, resource filtering, and packaging. Homepage: https://github.com/graemeg/pasbuild What's New in 1.2.0 -------------------- Version Inheritance for Multi-Module Projects Child modules in a multi-module project no longer need to declare their own <version> element. The version is automatically inherited from the aggregator (root) project.xml. This eliminates the need to manually synchronise version numbers across all modules when preparing a release. If a child module does declare a <version>, it must match the aggregator's version. A mismatch produces a clear error message with guidance on how to resolve it. Bug Fixes * The test runner now executes from the output directory (target/), ensuring test fixtures are found via their expected relative paths. Previously, tests that relied on fixture files would fail with "file not found" errors. * Packaging validation error messages now correctly reference "aggregator" projects, making it clearer why a library or application module cannot declare child <modules>. * The `pasbuild init` command's multi-module template no longer generates a <version> tag in child module project.xml files, consistent with the new version inheritance behaviour. * Resolved all compiler warnings in PasBuild's own source code, including implicit string type conversions from the DOM API, unused variables, and hidden inherited constructor warnings. Compatibility Notes * Existing single-module projects are unaffected. * Existing multi-module projects that already declare matching versions in child modules continue to work without changes. * Child modules may now omit <version> entirely (recommended). Upgrade Instructions Replace your existing pasbuild binary with the new 1.2.0 build. No project configuration changes are required, though removing <version> from child modules in multi-module projects is recommended. Getting started --------------- Documentation includes: - Updated quick-start guide with multi-module examples - Sample projects demonstrating simple and complex scenarios - Multi-module project creation via 'pasbuild init' - Full design specification with architecture details PasBuild is free software released under the BSD-3-Clause license. Regards, - Graeme - _______________________________________________ fpc-pascal maillist - [email protected] https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
