Skip to content

Releases: tony-aw/tinycodet

tinycodet 0.5.3

02 Aug 18:34
Compare
Choose a tag to compare
  • Behaviour change: the atomic typecasting functions now preserve names, dimensions, and dimnames (instead of all attributes), to be more in line with most of base 'R'.
  • Behaviour change: pkgs %installed in% lib.loc will now return NA for "packages" that are part of core 'R' (i.e. 'base', 'stats', etc.).
  • Behaviour change: All decimal truth testing operators now always give NA when Inf is compared with Inf, or when -Inf is compared to -Inf.
  • Streamlined the internal code of the decimal truth testing operators.
  • Added %s><% and %s<>% as aliases for %sget% and %strim%, respectively.
  • Removed some superfluous text in the import system documentation.
  • Re-written one 'C++' script to pure 'C' code.
  • Some of the internal 'C' code now support long vectors, when appropriate.
  • Small speed improvement in some of the internal code.
  • Added new fake packages to the special tests, to perform more thorough tests on the pversion_ - functions.
  • Added even more tests.

tinycodet 0.5.0

08 May 07:07
Compare
Choose a tag to compare
  • Feature Improvement: help.import() now directly evaluates the arguments under help() if both arguments i and alias are missing.
  • Feature Improvement: re_exports in import_as() can now include functions from core R if necessary, except 'base'.
  • Performance Improvement: Replaced some of the internal code in the import system with 'C++' code via 'Rcpp' for some performance improvement.
  • Bug fix: Fixed a (small) bug, where help.import() sometimes gave an unnecessary error, when searching topics of un-exported objects or non-functions via an alias object instead of searching functions directly.
  • Bug fix: Fixed a (small) bug where class names were sometimes inconsistently assigned to functions and infix operators exposed by the 'tinycodet' import system.
  • Removed Feature: Removed the form() function, as its use-case is a bit too rare to justify having a whole function for it (with all the tests and maintenance that come with it). I rarely remove functions; this is an exception.
  • Fixed some mistakes in the documentation.
  • Added more tests.
  • help.import() can now also be called without any arguments, just like the original help() function.
  • Moved the atomic type casting functions to the "DRY" category.
  • Cleaned up the internal code of the import system a bit.
  • Added the current year to the LICENSE file.

tinycodet 0.4.6

16 Apr 06:28
Compare
Choose a tag to compare
  • Tweaked the error messages of strfind()<- to be a bit more informative.
  • Slight speed and memory improvement for stri_locate_ith(). Also relaxed the length restriction on argument i a little bit.
  • Added as_cplx() and as_raw() to the atomic typecasting functions.
  • Improved the documentation here and there.
  • Tweaked description text.
  • Added more tests.

tinycodet 0.4.5

04 Mar 07:14
Compare
Choose a tag to compare

tinycodet 0.4.5

  • Slight speed improvement of stri_locate_ith().
  • New Features: Added the following functions to the "safer functionality" category: form(), aes_pro(), with_pro(), and safer_partialmatch(). Naturally, added tests for these new functions.

tinycodet 0.4.1

17 Feb 18:49
Compare
Choose a tag to compare

tinycodet 0.4.1

  • Added an explanation in the string overview help page, regarding the usage of vector recycling.
  • Provided additional clarification in the help file for the %row% and %col~% operators.
  • Simplified the internal code of the decimal (in)equality testing operators.
  • Added a few more tests.
  • Moved is_wholenumber() to the decimal truth testing section.
  • Argument change: Added the rt argument to strfind()<-, and moved the i and rt arguments more to the end of the functions. The type argument in strcut_brk() can now also directly accept a list produced by stringi::stri_opts_brkiter().

tinycodet 0.4.0

16 Jan 10:30
92db5b6
Compare
Choose a tag to compare

tinycodet 0.4.0

  • Clarified in the documentation that %col~% and %row~% strip attributes.
  • Clarified the usage of merge = FALSE for pattern charclass,
    in the documentation of the stri_locate_ith() function.
  • Clarified in the documentation that locked objects are not protected from modification by reference.
  • Clarified in the documentation of 'stringi' pattern searching infix operators that the p argument can also be a character vector of length 1.
  • Clarified in the stri_locate_ith() documentation that one should not pass the capture_groups argument; also clarified how to capture the ith group using stri_locate_ith(). And clarified that stri_locate_ith() does not support long vectors.
  • Normalized the links in the "See Also" sections in the documentation.
  • Renamed the "str_truth" page to "str_search", as that makes a little more sense.
  • Removed the redundant stringi:: piece in the example code for import_LL().
  • The help file for the s_pattern functions is now actually titled "s_pattern".
  • The messages returned by import_as() when aliasing packages is now slightly less verbose: removed the line "Methods work like normally", and replaced the line "Importing packages ..." with "Importing packages and registering methods...".
  • The strcut_brk() function now includes the tolist argument to return a list. Moreover, the n argument may now also be specified (n = -1L by default).
  • More safety checks: Improved safety against malformed conditions in the transform_if() function. stri_locate_ith() now gives a warning when an empty string or pattern is given. The help.import() function now gives an error if neither topic/package nor i/alias is supplied, instead of just silently doing nothing. The %sget% and %strim% operators now give an explicit error message if the arguments do not have proper lengths.
  • Internal Re-write: stri_locate_ith() has now been partially re-written, and now includes 'C++' code, making it a bit faster. Also cleaned up the internal code for some other functions here and there.
  • Added dependency: 'Rcpp' is now added as an dependency, due to the aforementioned partial re-write in 'C++'.
  • New Features: Added %ss% to the collection of string arithmetic operators, and added the strfind()<- method to the string search operators.
    One can now supply the at argument in the list of the right-hand side for the %s{}% operator. Supplying at = "start" will check if the pattern appears at the start of a string. Supplying at = "end" will check if the pattern appears at the end of a string.
  • Optimization: Managed to optimise stri_locate_ith() even further. Optimised the 'subset_if' operators a bit more. Also optimised the %n&%, %sget%, %strim%, and %=strtype% operators a bit more.
  • Argument change: The s_pattern functions now wrap additional arguments in a list for the user, in case of using vector arguments, preventing potential confusion.
  • Argument change: The type argument in stri_locate_ith_boundaries() is now not a mandatory argument; one can now also supply it through stri_opts_brikiter(), to keep it more consistent with the rest of 'stringi'.
  • Tests: Improved the tests for the s_pattern operators. Added tests for stri_locate_ith() when using argument merge = FALSE. Added more error check tests for help.import(). Added tests for unequal vector sizes for the logic operators. Added tests for empty condition subsets for transform_if(). Added tests for the new functionalities introduced in this version. Added tests for malformed 'stringi' pattern searches in all relevant functions.
  • Bug fix: There was a small bug where s_coll() worked properly when assigned to an object (as usual), but not when called directly (like nested inside a function). This is now fixed.