Boxer
=====
Created: 2013-02-12
Home page: <https://wiki.debian.org/Boxer>
Home page: <https://metacpan.org/release/Boxer>
Bug tracker: <http://rt.cpan.org/Dist/Display.html?Queue=Boxer>
Maintainer: Jonas Smedegaard (JONASS) <jonass@cpan.org>
v1.4.3 2022-02-05
[ Bug Fixes ]
- fix use signature (not bypass it), to silence a warning
[ Documentation ]
- Fix mirror sketch
Siri Reiter++
- add projects.svg
- fix typo in features.svg
- group, improve identifiers, and add links in projects.svg
- rename boxer.svg -> features.svg
- update TODOs
[ Test Suite ]
- fix wordlist in author test pod-spell
[ Other ]
- check spelling of PODs with tidyall
- use bullseye as default suite
- work around tidyall string-encoding bug
v1.4.2 2020-04-24
[ Bug Fixes ]
- fix process empty class list or non-empty parameters in node data
- have Boxer::Task::Classify: explicitly set datadir default as unset
(this partly reverts git commit a4bea17)
[ Test Suite ]
- fix tighten World::Reclass test to not tolerate duplicates (this also
reverts git commit f3e3009)
- tighten World::Reclass test to cover node with custom parameters and no
class
[ Packaging ]
- update perltidy config: consistently use long-options; use --converse
- use List::MoreUtils
[ Other ]
- rephrase World::Reclass slightly to make peace between perltidy and
Test::Tabs)
- tighten World::Reclass to process only matching types, and skip
duplicates is arrays
v1.4.1 2020-04-23
[ Bug Fixes ]
- Boxer::Task::Classify: reword trace messages
- Boxer::World::Reclass: avoid constructor for attributes classdir nodedir
[ Documentation ]
- add Boxer synopsis
[ Test Suite ]
- add coverage of Boxer::World::Reclass; use Test::Deep
- improve coverage of Boxer::Task::Classify
- stop enumerate tests in 01_app_help.t
- use subtest to isolate repetitions
- use tempdir to ensure empty or non-existing dir
[ Packaging ]
- require perl 5.020
[ Other ]
- Boxer::Part::Reclass: tighten type for attribute suite
- Boxer::Task::Classify: simplify attribute datadir to not be required nor
have default explicitly unset
- Boxer::World: add attribute data
- Boxer::World::Reclass: add method list_parts
- Boxer::World::Reclass: log (not croak) on error resolving parts from
node
- Boxer::World::Reclass: rename attribute flatten -> map
- Boxer::World::Reclass: rename method get_node_by_id -> get_part, and
distinguish empty world from missing part
- handle Boxer::World::* as plugins, using Module::Find and
Module::Load::Conditional
- process YAML data internally, using Hash::Merge (not with reclass)
- relax constraints and tests to be less specific to Reclass world
- use feature signatures
v1.4.0 2019-04-01
[ Bug Fixes ]
- Fix avoid option --verbose overriding stronger verbosity set as
environment variables.
[ Documentation ]
- Improve pod of Boxer::Task.
- Mention Elbe commands and isar in SEE ALSO pod.
- Mention Perl module Footprintless in Boxer pod section SEE ALSO.
- Update TODOs.
[ Other ]
- Added: Fix implement boxer-compose/boxer-bootstrap option --verbose.
- Added: Implement boxer-bootstrap option --mode.
- Emit shell command notice via Log::Any to stderr (not explicitly to
stdout).
- Execute reclass in Boxer::World::Reclass (not Boxer::Task::Classify).
- Improve logging.
- Load Moo-related modules (base classes and roles) before other modules.
- Stop use version: Unneeded.
- Tidy coercion hints.
- Tidy to consistently use qw() in module use.
- Tighten author-test pod-spell to rely on english aspell disctionary
being installed.
v1.3.0 2019-03-01
[ Documentation ]
- Add TODO about unit testing code coverage.
- Reference inspirational projects and competing tools.
- Rephrase Boxer::Reclass pod DESCRIPTION.
- Update/fix references to upstream git.
[ Test Suite ]
- Avoid declaring test count where tests are optionally skipped.
- Check path prefix handling in serialize.t.
- Process node parl-greens (not lxp5) in serialize.t, to expose different
features.
- Update spelling test, adding a few more words.
- Use Test::CleanNamespaces in testsuite.
- Use Test::Fatal (replacing Test::Exception).
[ Other ]
- Added: Add subcommand bootstrap.
- Added: Fix implement boxer-compose option --format.
- Handle serialization details in Boxer::World::Flat (not
Boxer::Task::Serialize).
- Limit Type::Utils import: Apparently unneeded.
- Pass variables when file template is processed (not when instantiated).
- Treat namespace::autoclean as a pragma (one of its benefits over
namespace::clean).
- Use MooX::StrictConstructor.
v1.2.0 2019-02-27
[ BACK COMPAT ]
- Update skeleton files: Drop workaround unneeded since Jessie (see
bug#751367).
[ Bug Fixes ]
- Fix compose option --help output to list current dir as default for
--nodedir, to match boxer pod and actual logic since v1.1.4.
[ Documentation ]
- Update TODOs.
[ Test Suite ]
- Update spelling test, adding a few more words.
[ Other ]
- Added: Provide additional variables to skeleton templates, containing
comma-separated lists: pkgs pkgs_avoid pkgs_auto.
- Added: Provide additional variables to skeleton templates, containing
plain and perl-escaped shell code: tweaks tweaks_perl.
- Update skeleton files: Use apt (not apt-get) in shell script.
- Updated: Use buster as default suite.
v1.1.11 2018-10-04
[ Bug Fixes ]
- Fix propagate nonfree flag to skeleton files.
v1.1.10 2018-09-27
[ Documentation ]
- Tidy changes to mark test-related entries as such.
[ Test Suite ]
- Add author-test pod-spell.
- Fix author-test SYNOPSIS without needing MANIFEST.
- Fix test miminum version without needing META.yml.
[ Packaging ]
- Fix explicitly depend on Class::XSAccessor: Optionally used by Moo, but
without it accessors with hyphens are not supported.
v1.1.9 2018-09-27
[ Bug Fixes ]
- Fix resolve nonfree, auto-resolved, and to-be-avoided packages.
[ Documentation ]
- Update INSTALL file: Update git URL.
[ Test Suite ]
- Extend testsuite: Cover auto-resolved and to-be-avoided packages.
[ Other ]
- Tidy HEREDOC commands.
v1.1.8 2018-07-13
[ Bug Fixes ]
- Fix subcommand about choking on authority implemented but undefined.
- Fix subcommand about listing authority: Use namespace::autoclean (not
namespace::clean, and use recent version to avoid Moo inflation to
Moose).
- Fix subcommand aliases help text to use valid example, and tone down
usage (only some not most subcommands have aliases).
- Fix syntax error resolving nonfree packages in Boxer::World::Reclass.
[ Documentation ]
- Fix changelog entry part of release v1.1.5.
- Fix typo in POD of module Boxer::World::Flat.
v1.1.7 2017-11-06
[ Bug Fixes ]
- Fix make option --skeldir optional.
v1.1.6 2017-11-05
[ Test Suite ]
- Fix testsuite to gracefully handle executable reclass unavailable.
[ Packaging ]
- Fix require Test::Exception and Test::File::Contents for testsuite.
v1.1.5 2017-01-24
[ Bug Fixes ]
- Fix chomp tweak lines.
[ Documentation ]
- Add some TODOs.
- Fix usage description for compose subcommand.
[ Test Suite ]
- Run perlcritic with tidyall, and test both (not only perlcritic) in
TEST_AUTHOR mode.
[ Packaging ]
- Use version with modern assignment. Extend copyright to current year.
[ Other ]
- Add Boxer::File::WithSkeleton class.
- Add World and Part classes, with unit test.
- Consistently use namespace::clean in modules. Order use by
pragma/non-Moo/Moo/cleanup and (roughly) by specificity.
- Drop unused code in Boxer::CLI.
- Modernize to use perl v5.14, utf8, and strictures 2.
- Removed: Stop handle __PKGAUTOLIST__ in data (deprecated since 0.004).
- Stop skip undefined args in Task::Serialize (needed only for
Task::Classify).
- Stop use MooX::Types::MooseLike::Base.
v1.1.4 2016-05-02
[ Bug Fixes ]
- Fix have current dir be default nodedir (as originally intended and
documented in boxer pod): Do XDG data_dirs lookup only on datadir,
leaving datadir undefined by default).
v1.1.3 2016-05-02
[ Bug Fixes ]
- Fix use File::ShareDir.
v1.1.2 2016-04-30
- Use File::ShareDir (not File::ShareDir::ProjectDistDir, strongly
discouraged by author). Thanks to Karen Etheridge (RT#114079).
v1.1.1 2016-04-12
- Use Log::Any::Adapter::Screen (not obsolete predecessor
Log::Any::Adapter::ScreenColoredLevel).
v1.1.0 2015-11-29
[ Bug Fixes ]
- Fix unescape \n and ${ for shellscript.
- Fix use apt-get (automated) or apt (interactive, on recent releases) in
skeleton scripts and notes (aptitude is not always available).
[ Documentation ]
- Add TODO on resolving named suites from relative ones.
- Extend copyright to cover current year.
[ Other ]
- Added: Pass node to skeleton files (and use in boilerplate, replacing
bogus DebianParl boilerplate.
- Added: Pass suite to skeleton files, and set as variable in shellscript
and preseed file late_script.
- Fix drop all hardcoded data from default skeleton files.
- Tidy Boxer::Types.
- Updated: Support empty packagelist.
v1.0.0 2015-11-21
[ Bug Fixes ]
- Fix avoid Boxer::Task::Serialize spewing garbage when warning about
empty lists.
- Fix suppress failure to mark package auto-installed.
[ Documentation ]
- Rewrite INSTALL to use Debian boxer package.
[ Packaging ]
- Release as stable, using semantic versioning.
[ Other ]
- Added: Implement --nonfree option for subcommand compose.
- Croak (not die) on broken input.
- Fixate suite in preseed file (resolved package list is suite-specific).
- Improve coercion and error messages for input paths.
- Sync example data with boxer-data.
- Tidy whitespace.
- Use MooX::Role::Logger (not MooX::Log::Any) and
Log::Any::Adapter::ScreenColoredLevel.
0.004 2014-11-24
[ Bug Fixes ]
- Fix only warn (not die) on unresolved auto-markings, avoidance or
tweaks.
[ Documentation ]
- Add some TODOs.
- Adjust help output of Compose command to describe correct default
locations.
[ Other ]
- Move initial shell code for tweaklist out to skeleton file.
- Removed: Deprecate expansion of __PKGAUTOLIST__ in tweaklist.
- Sort doc sections by explicit list (and alphabetically only as
fallback).
- Updated: Adjust example class set: Use reclass 1.4 ABI, and drop broken
Printing class.
- Use Template::Tiny.
0.003 2014-10-19
[ Documentation ]
- Update INSTALL file and pod synopsis slightly.
[ Packaging ]
- Fix copyright coverage to include current year.
- Fix require MooX::Log::Any.
- Require IPC::System::Simple.
- Tighten Moo requirement to at least 1.001000 (older are untested with
Type::Tiny).
[ Other ]
- Added: Add --suite option (and drop it as 2nd argument) in compose
command, allowing multiple nodes instead.
- Added: Handle nodes, classes and skeleton files with separate options in
compose command.
- Added: Include builting skeleton files, and ship with example classes
and nodes.
- Explicitly use IPC::System::Simple (already implicitly used via autodie
+ system() call).
- Refactor to strip undefined args handed over internally - a.k.a. coerce
Undef to default, to permit callers to sloppily pass App::Cmd options
as-is.
0.002 2014-10-19
[ Packaging ]
- Fix all references to distribution name.
Toby Inkster++
- Fix time of initial release.
0.001 2014-10-18 Initial release.