<commit_before>= 3.2 (unreleased yet)
* new class methods on the User class to find users depending on roles they have
* better edge cases covering in the specs
* deletions of n-n relation are unreliable with Mongoid. Removing ids instead

= 3.1 (Apr 6, 2012)
* Mongoid adapter optimization
* adapter code refactoring
* generator now adds the role class name to the rolify method injected in the user class
* fixed a bug on the generator when using a 2 words Camel case for the Role class name
* <b>DEPRECATION NOTICE:</b> <tt>has_role</tt> and <tt>has_no_role</tt> have been depecrated. They are replaced by <tt>add_role</tt> and <tt>remove_role</tt>
* some internals cleanup (backward compatible)
* stop requiring <tt>active_record</tt> in <tt>rolify.rb</tt> to prevent other gems ORM detection issue
* fixed a bug when removing a role to the user using Mongoid adapter
* added indexes to generator for mongoid (thanks to @stigi)
* fixed a bug regarding **with_role** method on resource classes (thanks to @nfo)

= 3.0 (Apr 2, 2012)
* support for Mongoid
* roles search on resources on instance level (e.g. <tt>Forum.first.roles</tt>) and class level (e.g. <tt>Forum.with_role("admin", user)</tt>)
* heavy lifting and redesign of the library, code and specs refactoring
* enhanced drastically specs coverage: 1001 examples !

= 2.2.2 (Feb 17, 2012)
* fixed another bug occurring when dynamic shortcuts is enabled
* display now a README file after running the generator to show the next setup steps

= 2.2.1 (Jan 24, 2012)
* fixed a backward incompatible change introduced in Rails 3.2 release (<tt>find_or_create_by_* generated methods</tt>)

= 2.2 (Jan 18, 2012)
* fixed a bug in the initializer file regarding dynamic shortcuts 

= 2.1 (Nov 30, 2011)
* added syntactic sugar: <tt>grant</tt> and <tt>revoke</tt> are aliases for <tt>has_role</tt> and <tt>has_no_role</tt><commit_msg>don't forget credits [ci skip]<commit_after>= 3.2 (unreleased yet)
* new class methods on the User class to find users depending on roles they have
* better edge cases covering in the specs
* deletions of n-n relation are unreliable with Mongoid. Removing ids instead (thanks to @nfo)

= 3.1 (Apr 6, 2012)
* Mongoid adapter optimization
* adapter code refactoring
* generator now adds the role class name to the rolify method injected in the user class
* fixed a bug on the generator when using a 2 words Camel case for the Role class name
* <b>DEPRECATION NOTICE:</b> <tt>has_role</tt> and <tt>has_no_role</tt> have been depecrated. They are replaced by <tt>add_role</tt> and <tt>remove_role</tt>
* some internals cleanup (backward compatible)
* stop requiring <tt>active_record</tt> in <tt>rolify.rb</tt> to prevent other gems ORM detection issue
* fixed a bug when removing a role to the user using Mongoid adapter
* added indexes to generator for mongoid (thanks to @stigi)
* fixed a bug regarding **with_role** method on resource classes (thanks to @nfo)

= 3.0 (Apr 2, 2012)
* support for Mongoid
* roles search on resources on instance level (e.g. <tt>Forum.first.roles</tt>) and class level (e.g. <tt>Forum.with_role("admin", user)</tt>)
* heavy lifting and redesign of the library, code and specs refactoring
* enhanced drastically specs coverage: 1001 examples !

= 2.2.2 (Feb 17, 2012)
* fixed another bug occurring when dynamic shortcuts is enabled
* display now a README file after running the generator to show the next setup steps

= 2.2.1 (Jan 24, 2012)
* fixed a backward incompatible change introduced in Rails 3.2 release (<tt>find_or_create_by_* generated methods</tt>)

= 2.2 (Jan 18, 2012)
* fixed a bug in the initializer file regarding dynamic shortcuts 

= 2.1 (Nov 30, 2011)
* added syntactic sugar: <tt>grant</tt> and <tt>revoke</tt> are aliases for <tt>has_role</tt> and <tt>has_no_role</tt>
{'fraction_non_alphanumeric': 0.09200841219768664, 'fraction_numerical': 0.02996845425867508, 'mean_word_length': 4.67910447761194, 'pattern_counts': {'":': 0, '<': 59, '<?xml version=': 0, '>': 59, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '175129', 'n_tokens_mistral': 1265, 'n_tokens_neox': 1124, 'n_words': 528}