Changes for version 3.7.4

  • New commands: recs-substream, recs-multiplex, recs-frommongo (Eli Lindsey, Keith Amling, Ben Bernard)
  • Switch from XML::Simple to XML::Twig to handle large documents and preserve document order (Eli Lindsey)
  • Nested XML elements are now forced into arrays (Eli Lindsey)
  • Support -M and -m, a la perl itself, for operations that accept snippets (Thomas Sibley)
  • Lexically sort keys if no order is specified for a better user experience and passing tests on 5.18 (Eli Lindsey)
  • totable now respects explicit key ordering (Ben Bernard)
  • Handle input streams as bytes instead of assuming UTF-8 (Shawn Halpenny)
  • New and updated documentation for many operations
  • Fix various --help-* options to recs-collate, recs-join, recs-multiplex (Keith Amling, Ben Bernard, Thomas Sibley)
  • Fix normalize time issues with newer Date::Manip versions (Ben Bernard)
  • Require Text::CSV_XS 0.98 to avoid a bug with embedded newlines (Thomas Sibley)
  • Exec recs-chain with the same perl running the tests [rt.cpan.org #76879] (Thomas Sibley)
  • Skip failing tests in fromtcpdump.t which are TODO (Thomas Sibley)

Provides

in lib/App/RecordStream/Accumulator.pm
in lib/App/RecordStream/Aggregator.pm
in lib/App/RecordStream/Aggregator/Aggregation.pm
in lib/App/RecordStream/Aggregator/Average.pm
in lib/App/RecordStream/Aggregator/Concatenate.pm
in lib/App/RecordStream/Aggregator/Correlation.pm
in lib/App/RecordStream/Aggregator/Count.pm
in lib/App/RecordStream/Aggregator/CountBy.pm
in lib/App/RecordStream/Aggregator/Covariance.pm
in lib/App/RecordStream/Aggregator/DistinctCount.pm
in lib/App/RecordStream/Aggregator/First.pm
in lib/App/RecordStream/Aggregator/FirstRecord.pm
in lib/App/RecordStream/Aggregator/InjectInto.pm
in lib/App/RecordStream/Aggregator/InjectInto/Field.pm
in lib/App/RecordStream/Aggregator/InjectInto/Subrefs.pm
in lib/App/RecordStream/Aggregator/Internal/Constant.pm
in lib/App/RecordStream/Aggregator/Internal/ForField.pm
in lib/App/RecordStream/Aggregator/Internal/ForField2.pm
in lib/App/RecordStream/Aggregator/Internal/Ord2BivariateMap.pm
in lib/App/RecordStream/Aggregator/Internal/Ord2UnivariateMap.pm
in lib/App/RecordStream/Aggregator/Last.pm
in lib/App/RecordStream/Aggregator/LastRecord.pm
in lib/App/RecordStream/Aggregator/LinearRegression.pm
in lib/App/RecordStream/Aggregator/MapReduce.pm
in lib/App/RecordStream/Aggregator/MapReduce/Field.pm
in lib/App/RecordStream/Aggregator/MapReduce/FieldSet.pm
in lib/App/RecordStream/Aggregator/MapReduce/Subrefs.pm
in lib/App/RecordStream/Aggregator/Maximum.pm
in lib/App/RecordStream/Aggregator/Minimum.pm
in lib/App/RecordStream/Aggregator/Mode.pm
in lib/App/RecordStream/Aggregator/Ord2Bivariate.pm
in lib/App/RecordStream/Aggregator/Ord2Univariate.pm
in lib/App/RecordStream/Aggregator/Percentile.pm
in lib/App/RecordStream/Aggregator/PercentileMap.pm
in lib/App/RecordStream/Aggregator/RecordForMaximum.pm
in lib/App/RecordStream/Aggregator/RecordForMinimum.pm
in lib/App/RecordStream/Aggregator/Records.pm
in lib/App/RecordStream/Aggregator/StandardDeviation.pm
in lib/App/RecordStream/Aggregator/Sum.pm
in lib/App/RecordStream/Aggregator/UniqConcatenate.pm
in lib/App/RecordStream/Aggregator/ValuesToKeys.pm
in lib/App/RecordStream/Aggregator/Variance.pm
in lib/App/RecordStream/BaseRegistry.pm
in lib/App/RecordStream/Clumper.pm
in lib/App/RecordStream/Clumper/Base.pm
in lib/App/RecordStream/Clumper/CubeKeyPerfect.pm
in lib/App/RecordStream/Clumper/Key.pm
in lib/App/RecordStream/Clumper/Key/WrappedCallback.pm
in lib/App/RecordStream/Clumper/KeyLRU.pm
in lib/App/RecordStream/Clumper/KeyPerfect.pm
in lib/App/RecordStream/Clumper/Options.pm
in lib/App/RecordStream/Clumper/Window.pm
in lib/App/RecordStream/Clumper/WrappedClumperCallback.pm
in lib/App/RecordStream/DBHandle.pm
in lib/App/RecordStream/Deaggregator.pm
in lib/App/RecordStream/Deaggregator/Base.pm
in lib/App/RecordStream/Deaggregator/Field.pm
in lib/App/RecordStream/Deaggregator/Split.pm
in lib/App/RecordStream/Deaggregator/Unarray.pm
in lib/App/RecordStream/Deaggregator/Unhash.pm
in lib/App/RecordStream/DomainLanguage.pm
in lib/App/RecordStream/DomainLanguage/Executor.pm
in lib/App/RecordStream/DomainLanguage/Library.pm
in lib/App/RecordStream/DomainLanguage/Registry.pm
in lib/App/RecordStream/DomainLanguage/Snippet.pm
in lib/App/RecordStream/DomainLanguage/Valuation.pm
in lib/App/RecordStream/DomainLanguage/Valuation/KeySpec.pm
in lib/App/RecordStream/DomainLanguage/Valuation/Sub.pm
in lib/App/RecordStream/DomainLanguage/Value.pm
in lib/App/RecordStream/Executor.pm
in lib/App/RecordStream/Executor/Getopt.pm
in lib/App/RecordStream/KeyGroups.pm
in lib/App/RecordStream/KeyGroups.pm
in lib/App/RecordStream/KeyGroups.pm
in lib/App/RecordStream/LRUSheriff.pm
in lib/App/RecordStream/Operation.pm
in lib/App/RecordStream/Operation/annotate.pm
in lib/App/RecordStream/Operation/chain.pm
in lib/App/RecordStream/Operation/chain.pm
in lib/App/RecordStream/Operation/collate.pm
in lib/App/RecordStream/Operation/collate/BaseClumperCallback.pm
in lib/App/RecordStream/Operation/decollate.pm
in lib/App/RecordStream/Operation/delta.pm
in lib/App/RecordStream/Operation/eval.pm
in lib/App/RecordStream/Operation/flatten.pm
in lib/App/RecordStream/Operation/fromatomfeed.pm
in lib/App/RecordStream/Operation/fromcsv.pm
in lib/App/RecordStream/Operation/fromdb.pm
in lib/App/RecordStream/Operation/fromkv.pm
in lib/App/RecordStream/Operation/frommongo.pm
in lib/App/RecordStream/Operation/frommultire.pm
in lib/App/RecordStream/Operation/fromps.pm
in lib/App/RecordStream/Operation/fromre.pm
in lib/App/RecordStream/Operation/fromsplit.pm
in lib/App/RecordStream/Operation/fromtcpdump.pm
in lib/App/RecordStream/Operation/fromxml.pm
in lib/App/RecordStream/Operation/generate.pm
in lib/App/RecordStream/Operation/grep.pm
in lib/App/RecordStream/Operation/join.pm
in lib/App/RecordStream/Operation/multiplex.pm
in lib/App/RecordStream/Operation/multiplex/BaseClumperCallback.pm
in lib/App/RecordStream/Operation/normalizetime.pm
in lib/App/RecordStream/Operation/sort.pm
in lib/App/RecordStream/Operation/stream2table.pm
in lib/App/RecordStream/Operation/substream.pm
in lib/App/RecordStream/Operation/tocsv.pm
in lib/App/RecordStream/Operation/todb.pm
in lib/App/RecordStream/Operation/togdgraph.pm
in lib/App/RecordStream/Operation/tognuplot.pm
in lib/App/RecordStream/Operation/tohtml.pm
in lib/App/RecordStream/Operation/topn.pm
in lib/App/RecordStream/Operation/toprettyprint.pm
in lib/App/RecordStream/Operation/toptable.pm
in lib/App/RecordStream/Operation/totable.pm
in lib/App/RecordStream/Operation/xform.pm
in lib/App/RecordStream/Site.pm
in lib/App/RecordStream/Stream/Base.pm
in lib/App/RecordStream/Stream/Printer.pm
in lib/App/RecordStream/Stream/Sub.pm
in lib/App/RecordStream/Test/DistinctCountHelper.pm
in lib/App/RecordStream/Test/LastHelper.pm
in lib/App/RecordStream/Test/OperationHelper.pm
in lib/App/RecordStream/Test/OperationHelper.pm
in lib/App/RecordStream/Test/Tester.pm
in lib/App/RecordStream/Test/UniqConcatHelper.pm
in lib/App/RecordStream/Operation/annotate.pm
in tests/RecordStream/Operation/frommongo.pm
in lib/App/RecordStream/Operation/annotate.pm
in lib/App/RecordStream/Operation/annotate.pm