W dniu pią, 08.09.2017 o godzinie 13∶19 +0200, użytkownik Michał Górny napisał: > EAPI 7 is introducing new version manipulation and comparison functions > that aim to replace versionator.eclass. This eclass provides an 'early > adopter' versions of those routines. > > It serves two goals: > > a. getting wider review and some real-life testing before > the specification is set in stone, and > > b. making it possible to adapt ebuilds to the new routines early, > reducing the future work of EAPI 7 porting. > > For more details on the new logic, please see the eclass documentation. > Long story short, we are introducing three functions: > > 1. ver_cut -- to get substrings of the version string, > > 2. ver_rs -- to replace version separators via indices, > > 3. ver_test -- to compare two version numbers. > > The third function is not implemented in the eclass. It's meant to reuse > the algorithms from the package manager, and the final implementation > will most likely reuse the code from the package manager (e.g. via IPC). >
Merged now, with some documentation fixes and additional benchmark to compare it with versionator.eclass. Here are the approximate results: cutting real 5.64 5.62 5.55 5.57 5.56 => 5.59 avg user 6.25 6.23 6.24 6.10 6.09 => 6.18 avg cutting_versionator real 105.00 104.10 104.40 104.30 104.10 => 104.38 avg user 71.30 71.40 71.20 70.70 71.80 => 71.28 avg replacing real 4.76 4.75 4.79 4.77 4.75 => 4.76 avg user 5.16 5.48 5.60 5.62 5.11 => 5.39 avg replacing_versionator real 68.50 68.60 68.40 68.20 68.40 => 68.42 avg user 51.60 51.40 51.10 51.60 52.30 => 51.60 avg Please note that versionator tests were run with 10 times less repetitions and the results were multiplied by 10 to avoid it taking forever. -- Best regards, Michał Górny