ITADN
tony-aw/tinycodet

版本发布 7

tinycodet 0.5.60.5.6
? · 2025-04-07

* **Behaviour change:** The import functions no longer import `.Primitive` or `.Internal` functions, to comply with CRAN. * **Behaviour change:** `import_as()` now allows hidden (i.e. dot-prefixed) names for `alias` objects.

tinycodet 0.5.40.5.4
? · 2025-01-10

* **Performance improvement:** Even more performance improvement for `stri_locate_ith()`; it now internally uses 'C' code instead of 'C++'.

tinycodet 0.5.30.5.3
? · 2024-08-02

* **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.00.5.0
? · 2024-05-08

* **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.50.4.5
? · 2024-03-04

# 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.10.4.1
? · 2024-02-17

# 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.00.4.0
? · 2024-01-16

# 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.