README.md in faster_path-0.1.12 vs README.md in faster_path-0.1.13

- old
+ new

@@ -111,11 +111,11 @@ ``` Add this line to your application's Gemfile: ```ruby -gem 'faster_path', '~> 0.1.0' +gem 'faster_path', '~> 0.1.13' ``` And then execute: $ bundle @@ -141,11 +141,10 @@ |FasterPath Rust Implementation|Ruby 2.3.1 Implementation|Performance Improvement| |---|---|:---:| | `FasterPath.absolute?` | `Pathname#absolute?` | 93.9% | | `FasterPath.chop_basename` | `Pathname#chop_basename` | 50.6% | | `FasterPath.relative?` | `Pathname#relative?` | 93.2% | -| `FasterPath.blank?` | | | | `FasterPath.directory?` | `Pathname#directory?` | 25.5% | | `FasterPath.add_trailing_separator` | `Pathname#add_trailing_separator` | 46.8% | | `FasterPath.has_trailing_separator?` | `Pathname#has_trailing_separator` | 61.2% | You may choose to use the methods directly, or scope change to rewrite behavior on the @@ -167,23 +166,23 @@ ``` require "faster_path/optional/monkeypatches" FasterPath.sledgehammer_everything! ``` -## Unstable optional bits +## Optional Rust implementations -**Optional methods which ~~have regressions.~~ are unstable.** These will **not** be included by default in monkey-patches. Be cautious when using the `FasterPath::RefineFile` refinement. To try them anyways use the environment flag of `WITH_REGRESSION`. These methods are here to be improved upon. +**These are stable, not performant, and not included in `File` by default.** +These will **not** be included by default in monkey-patches. Be cautious when using the `FasterPath::RefineFile` refinement. To try them with monkeypatching use the environment flag of `WITH_REGRESSION`. These methods are here to be improved upon. + |FasterPath Implementation|Ruby Implementation| |---|---| | `FasterPath.dirname` | `File.dirname` | | `FasterPath.basename` | `File.basename` | | `FasterPath.extname` | `File.extname` | It's been my observation (and some others) that the Rust implementation of the C code for `File` has similar results but -performance seems to vary based on CPU cache on possibly 64bit/32bit system environmnets. - -**Developers for FasterPath:** Most of these need to be rewritten, please use `WITH_REGRESSION=true TEST_MONKEYPATCHES=true` in your testing. You can see the resulting failures currently on TravisCI under "Allow Failures". +performance seems to vary based on CPU cache on possibly 64bit/32bit system environmnets. When these methods were initially written, and somewhat simplistic, they were faster than the C implementations on `File`. After the implementations have been perfected to match the behavior in Ruby they don't perform as well and are therefore not included by default when the monkey patch method `FasterPath.sledgehammer_everything!` is executed. If you don't want to pass the `WITH_REGRESSION` environment variable you can put any turthy parameter on the monkey patch method to include it. ## Getting Started with Development The primary methods to target are mostly listed in the **Why** section above. You may find the Ruby source code useful for Pathname's [Ruby source](https://github.com/ruby/ruby/blob/32674b167bddc0d737c38f84722986b0f228b44b/ext/pathname/lib/pathname.rb),