Changes in version 2023-08-19 - Work around https://github.com/r-lib/roxygen2/issues/1491 - For captured_dots note in CRAN checks Changes in version 2022-01-26 - Document qc() limitations (ref: https://github.com/WinVector/wrapr/issues/15#issue-1046032267 ). - Add sx() for https://github.com/WinVector/wrapr/issues/15#issue-1046032267 use case. Changes in version 2021-06-10 - Make calls to order stricter (no names, and convert data.frames), see https://stat.ethz.ch/pipermail/r-devel/2020-May/079500.html and https://stat.ethz.ch/pipermail/r-package-devel/2021q1/006550.html - Add international character tests for bc(). Changes in version 2021-02-03 - Add bc() blank-separated parsing, suggested by Emil Erik Pula Bellamy Begtrup-Bright \url{https://github.com/WinVector/wrapr/issues/12}. - Fix strsplit_capture empty-return type. Changes in version 2020-12-06 - Bump version. - Add pack(). Changes in version 2020-11-13 - More ... checks. - Better error message for extra comman in unpack. - Remove RUnit suggest / test function. Changes in version 2020-10-16 - Move to tinytest. Changes in version 2020-08-10 - dot-function (f.). - character-mode for mk_formula. - work around refs such as \link[utils]{dump.frames} no longer working with Ben Boker's suggestion \link[utils:debugger]{dump.frames} on R-pkg-devel - URLs to https where possible. Changes in version 2020-03-27 - Allow as_named_list to choose new names. - Update references. - Stricter tests on unpack/to. - Stricter wrapr-pipe value checks. - := for names. - := for to/unpack. - Don't use := for anonymous function construction. - Update evalb, and bquote uses including adding .(-) notation. - Remove some obsolete methods such as CapturePipeine, as_dot_fn, UnaryFunctions/ApplyTo, and locum. - Make pipe_impl public, and document more. - Vectorize string interpolation and add operator versions. - Fix description. Changes in version 2020-01-26 - Add dotpipe_eager_eval_*. - Add on unpack method. Changes in version 2020-01-18 - remove q= from sQuote to, as that feature wasn't added until newer Rs. Changes in version 2020-01-16 - tolerance on check_equiv_frames - remove graphics dependency - improve ... check message. Changes in version 2019-11-03 - := for factors and logical Changes in version 2019-10-13 - Fix dev version at request of CRAN, appears to be instability in capturing ... and passing to bquote(). https://github.com/WinVector/wrapr/blob/master/extras/wrapr_dev_CRAN_issue_2019_10_13.md Changes in version 2019-10-05 - Fix locum composite line printing. - Document .()-escaping in pipe. Changes in version 2019-09-28 - Add locum ( https://github.com/WinVector/wrapr/blob/master/Examples/Locum/Locum.md ). Changes in version 2019-07-24 - More unit tests. - Adjust license. Changes in version 2019-07-06 - More work with mk_formula(). Changes in version 2019-05-23 - Better sinterp semantics (vectorize over values, not template). - Looser checks on qchar_frame(). Changes in version 2019-04-02 - Turn off radix sort to work around https://github.com/WinVector/wrapr/issues/9 - Make draw_frame() resistent to operator driven re-indentation. - Add draw_framec(). Changes in version 2019-03-24 - More tests. - Be more careful with formals(). - Add frame checking utils. - Doc fixes. Changes in version 2019-02-19 - Add run_packages_tests() and run_wrapr_tests(). - Move to RUnit tests. - More args to clean_fit. Changes in version 2019-01-29 - Add string strsplit_capture() and dotsubs(). - better bquote_function() and evalb() examples. - Allow comparisions in mk_formula(), and general improvements. Changes in version 2019-01-04 - Add paste(class(), collapse=" "). - Add seqi(). - Add evalb(). Changes in version 2018-12-13 - Fix as_fn() environment assignment. Changes in version 2018-12-11 - Add generic unary functions. - Add .() pipe escaping. - Add clean lm() and glm() fitters. - Add split_at_brace_pairs. - Documentation fixes. - Error msg fix. - Add %p%, and %.%. Changes in version 2018-11-15 - bquote enable qc() and other quoting methods. - Preserve NA types in draw_frame. - Add VectorizeM, vapplym, lapplym. - Add bquote_function(). - Export underbar version of apply_left_default to get non-S3 version of code. - Better string concat example. - Add %c% and %qc%. - Allow qc() to call c(). Changes in version 2018-10-03 - Make sure parent.frame() is unambiguosly resovled (force()). - qe(), qae(), qs() now return character vectors instead of lists. - Add psagg(). - Add grepv(). - More examples in SubstitutionModes vignette (show we don't need special pairlist case). - Allow no-intercept version of formula. Changes in version 2018-09-10 - Add mk_formula(). - Documentation fixes. - Add %in_block% operator notation. - Add orderv(). Changes in version 2018-08-21 - More restrictive apply_right_S4. - Clear methods note. Changes in version 2018-08-01 - S4 dispatch apply_right_S4. - split based partition_tables(). - Allow drawing of empty data.frames. - Documentation fixes. Changes in version 2018-07-07 - make pipe_impl public (but keyworld internal). - fix draw_frame quoting. - drop old pipe fns. Changes in version 2018-06-13 - Rationalize and re-name pipe interfaces to apply_right and apply_left. - Fix qc() eval environment and recursion. - Add %?% coalescing operator. - Add reduce/expand operators. - Dot pipe tries to preserve names in function calls. - Improve error checking and reporting. - Add uniques(). - Add partition_tables() and execute_parallel(). Changes in version 2018-05-17 - Move dot assignment into S3 step. - Refine error checking. - Minor documentation fixes. - Fix print/visibility treatment. - Remove special 1-key case from := . - draw_frame NA handling. - Add view(). Changes in version 2018-04-03 - More tests and checks. - Allow lookups at the top level ($, [], [[]], ::, :::, @). - Starting enforcing strict piping rules (with usable error messages). - Move base_fns to https://gist.github.com/JohnMount/1982127318654c8631203e5b5d4946ac and seplyr. - Minor documentation fixes/improvements. - Extend map_to_char() to work without names. - wrapr_function right-dispatch falls back to pipe_step left-disptach as default. Changes in version 2018-03-12 - base_fns- slight stregnthenings of base operators for piping. - draw_frame et. al.- functions for building example data.frames. Changes in version 2018-02-21 - Add map_upper. - Accept x=y in qae(). - Strengthen :=. - Add left S3 dispatch through pipe_step. - Add right S3 dispatch through wrapr_function. - Add match_order. - Remove deprecated methods. - Move mk_tmp_name_source to this package. - Add stop_if_dot_args. Changes in version 2018-01-20 - Fix some null/blank substitution issues. - Minor documentation improvements. Changes in version 2018-01-03 - minor doc improvements. - fix deparse in qae() and qe(). - Deprecate ateval(), seval(), beval(), and "stringsubs". - add qs(). - add dereference and class-supplied function to pipes. Changes in version 2017-12-13 - add "to dot" pipe. - harden := a bit. - let qc() have names. - add qae(). - add map_to_char(). Changes in version 2017-11-17 - Better error msgs. - Bit more debugging info. - Add grepdf() and qc(). Changes in version 2017-10-04 - Add mapsyms() function. Changes in version 2017-08-31 - Work on location of lambda-definition (do NOT write into environment until asked). - Minor check fixes. Changes in version 2017-08-24 - Do not insist let-mapping be invertible. - Migrate named map builder and lambda from seplyr. Changes in version 2017-07-22 - Allow non-strict names. - Insist let-mapping be invertible. Changes in version 2017-07-08 - Introduce "dot arrow" pipe %.>% Changes in version 2017-07-05 - Switch to abstract syntax tree substitution. - Allow variable swaps. Changes in version 2017-06-13 - More flexible treatment of NULL. - Add non string based version of let() replacement. Changes in version 2017-04-13 - add ateval() Changes in version 2017-03-13 - Allow names in let. Changes in version 2017-02-10 - First version (some fns, from replyr package).