Major refactoring just to better organize the code in better directories. Putting executables in the 'bin' folder. Moving the native extensions in the proper 'ext' folder with 'extconf.rb' and configure the project as a gem.
- Makefile compiles on Ubuntu (@akitaonrails)
- String#blank? even faster now (@kostya)
- Updated test inflector benchmarking
- Since this project has gotten a little bit of attention, I'll be adding some docs about contributing/developing/etc.
- Inflectors are completely working
- Regular expressions work, converting both directions (ruby -> crystal and vice versa)
This is now using an external shard for inflectors (github/phoffer/inflector.cr). It is not quite perfect but it's mostly working, please see that repo for more info.
- Set up benchmarking to compare the Ruby-ActiveSupport with the Crystal implementation. Results are very strong for Crystal.
- Realized I forgot to add a bunch of files to the repo. Those are all added and the instructions below should work now.
I've ported over all the relevant parts of ActiveSupport::Inflector. Basically everything except the two methods for constantizing and also the i18n stuff. To run:
rake clean
rake compile
rake test
bin/benchmark
bin/benchmark_inflector
The only thing that's BROKEN is pluralize. It works except for words that are already plural, ending in 's', like "posts"/"words"
There's a benchmarking script for all this, and the results are pretty good. See active_support/results.txt