++ed by:

1 non-PAUSE user(s).



Changes for version 0.32_8

  • Bumped up version for Workflow::State to 1.14 considering patches from action_group and test_condition patches
  • Added POD, primarily focused on development, resources and test to the Workflow POD - would love to eliminate the original README and merge in the information from this file and let it be auto-generated in the future
  • Removed VERSION file, this has now been obsoleted
  • Addressing RT #40750 http://rt.cpan.org/Ticket/Display.html?id=40750
    • We are now resolving the version number for the distribution from Workflow.pm the main module, this mean a jump from 0.32 to 1.32, but it does mean that an installation can be traced back to a given distribution
  • Added new test file t/workflow_history.t, the new tests of Workflow::History methods. Added explicit returns so we return a true value when run
  • Addressed [ControlStructures::ProhibitCStyleForLoops] Perl::Critic policy, disabled locally in Workflow::Persister::DBI::ExtraData
  • Addressed [Subroutines::RequireArgUnpacking] Perl::Critic policy, disabled locally in Workflow::Exception and Workflow::Factory for two violations that need to be revisited
  • Addressed [CodeLayout::ProhibitParensWithBuiltins] Perl::Critic policy, disabled locally in Workflow::Persister::DBI in two places
  • Addressed [BuiltinFunctions::ProhibitUniversalIsa] Perl::Critic policy we should now be compatible with perl 5.9.3's deprecation of UNIVERSAL::isa functional call, we now use isa as a method where relevant
  • Addressed [ValuesAndExpressions::ProhibitCommaSeparatedStatements], disabled locally in Workflow::Persister::DBI
  • Addressed [ValuesAndExpressions::ProhibitCommaSeparatedStatements], disabled locally in Workflow::Persister::DBI
  • Addressed [ValuesAndExpressions::RequireInterpolationOfMetachars], disabled locally in Workflow::Condition::Evaluate
  • Addressed [CodeLayout::RequireTrailingCommas] Perl::Critic policy, few violations nothing serious
  • Addressed [BuiltinFunctions::ProhibitStringySplit] Perl::Critic policy, single violation
  • Addressed [InputOutput::RequireCheckedSyscalls] Perl::Critic policy, this required addition of some code, which will throw relevant exception
  • Addressed [InputOutput::RequireCheckedClose] Perl::Critic policy, this required addition of some code, which will throw relevant exceptions [InputOutput::RequireCheckedClose] was removed from the t/perlcriticrc, it is no longer violated so it's listing might have been a mistake
  • Addressed [Variables::ProhibitPunctuationVars] Perl::Critic policy, we now use English
  • All packages have been run through perltidy addressing the following Perl::Critic policies:
    • CodeLayout::ProhibitHardTabs
    • CodeLayout::ProhibitTrailingWhitespace
    • CodeLayout::RequireTidyCode
  • Perl::Critic policy [Subroutines::ProhibitExplicitReturnUndef] disabled this would break APIs at does not seem like a good idea, a more thorough analysis should however be completed at some point
  • Perl::Critic policy [NamingConventions::ProhibitAmbiguousNames] disabled we have an overwrite of Class::Accessor, which happens to violate this policy
  • Added use of File::Slurp refactoring a potential problematic body of code addressing Perl::Critic policy [InputOutput::ProhibitJoinedReadline] File::Slurp added to Build.PL
  • Some hardcoded numbers have been made into constants, some of these are candidates however for propagation to a central place. (See TODO file) This addresses Perl::Critic policy [ValuesAndExpressions::ProhibitMagicNumbers] We do however run with this policy disabled since, it warns about some numbers, which it does not make sense to refactor into constants. In addition [ValuesAndExpressions::ProhibitConstantPragma] is deactivated since we are using constants
  • Added use of warnings pragma, addressing Perl::Critic policy [TestingAndDebugging::RequireUseWarnings], I am however not sure whether this breaks backwards compatibility towards older perls. So this will have to be investigated (added to TODO file)
  • Exchanged calls to die and warn to croak and carp addressing Perl::Critic policy [ErrorHandling::RequireCarping], this is also considered a good module practive so errors are perceived from the callers perspective. In addition Carp was listed in relevant packages and Build.PL
  • Added Id keyword to Workflow::Validator::MatchesDateFormat addressing Perl::Critic policy [Miscellanea::RequireRcsKeywords]
  • Added t/critic.t and t/perlcriticrc getting started on improving code quality based on Perl::Critic, the number of contributors are increasing and Perl::Critic might prove a good tool in assisting in quality assurance for Workflow in the future