friendly_id_datamapper 3.1.0.beta1 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/ChangeLog.md +21 -0
- data/MIT-LICENSE +1 -1
- data/README.md +16 -10
- data/Rakefile +2 -2
- data/lib/friendly_id/datamapper_adapter/configuration.rb +9 -1
- data/lib/friendly_id/datamapper_adapter/slugged_model.rb +44 -49
- data/lib/friendly_id/datamapper_adapter/version.rb +2 -2
- data/test/test_helper.rb +9 -19
- metadata +51 -85
    
        data/ChangeLog.md
    CHANGED
    
    | @@ -3,6 +3,27 @@ | |
| 3 3 | 
             
            * Table of Contents
         | 
| 4 4 | 
             
            {:toc}
         | 
| 5 5 |  | 
| 6 | 
            +
            ## 3.2.0 (2011-08-08)
         | 
| 7 | 
            +
             | 
| 8 | 
            +
            * Release offering compatibility with FriendlyId 3.2.x series.
         | 
| 9 | 
            +
            * Release provides support for both DataMapper 1.0.x and 1.1.x series:
         | 
| 10 | 
            +
              * Silence noisy deprecation warnings on DataMapper 1.1 (11a6dd5).
         | 
| 11 | 
            +
            * Gemspec compatibility with RubyGems 1.7+:
         | 
| 12 | 
            +
              * Fix Rake and RubyGems deprecation warnings (030df1f, 132e4ba).
         | 
| 13 | 
            +
            * Optimize to use Rails extract_options method. Ignore Array keys when doing
         | 
| 14 | 
            +
              lookup ([Josh Huckabee](http://github.com/jhuckabee), f11f206).
         | 
| 15 | 
            +
            * Fix for orphaned slugs on deletion of a FriendlyId model instance, without
         | 
| 16 | 
            +
              using dm-constraints (54d3a9c).
         | 
| 17 | 
            +
            * Workaround an issue overriding DataMapper::Model#get on 1.9.2 that results in
         | 
| 18 | 
            +
              "NotImplementedError - super from singleton method that is defined to multiple
         | 
| 19 | 
            +
              classes is not supported" (0cd55ab).
         | 
| 20 | 
            +
             | 
| 21 | 
            +
            Additionally this release establishes Continuous Integration, using the
         | 
| 22 | 
            +
            excellent [Travis CI](http://travis-ci.org/) hosted CI service. This should lead
         | 
| 23 | 
            +
            to more reliable future releases!
         | 
| 24 | 
            +
             | 
| 25 | 
            +
            ## 3.1.0 (not released)
         | 
| 26 | 
            +
             | 
| 6 27 | 
             
            ## 3.1.0.beta1 (2010-09-13)
         | 
| 7 28 |  | 
| 8 29 | 
             
            * Initial beta release.
         | 
    
        data/MIT-LICENSE
    CHANGED
    
    
    
        data/README.md
    CHANGED
    
    | @@ -1,26 +1,27 @@ | |
| 1 1 | 
             
            # FriendlyId DataMapper Adapter
         | 
| 2 2 |  | 
| 3 | 
            -
             | 
| 4 | 
            -
             | 
| 3 | 
            +
            [](http://travis-ci.org/myabc/friendly_id_datamapper)
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            An adapter for [FriendlyId](http://norman.github.com/friendly_id) using
         | 
| 6 | 
            +
            DataMapper.
         | 
| 5 7 |  | 
| 6 8 | 
             
            ## FriendlyId Features
         | 
| 7 9 |  | 
| 8 10 | 
             
            It currently supports all of FriendlyId's features except:
         | 
| 9 11 |  | 
| 10 12 | 
             
            * Rails Generator
         | 
| 11 | 
            -
            * Support for multiple finders
         | 
| 12 13 |  | 
| 13 | 
            -
            Currently, only finds using `get`  | 
| 14 | 
            +
            Currently, only finds using `get` are supported.
         | 
| 14 15 |  | 
| 15 16 | 
             
                @post = Post.get("this-is-a-title")
         | 
| 16 17 | 
             
                @post.friendly_id # this-is-a-title
         | 
| 17 18 |  | 
| 18 19 | 
             
            ## Compatibility
         | 
| 19 20 |  | 
| 20 | 
            -
            The FriendlyId DataMapper Adapter keeps in lock-step with major and
         | 
| 21 | 
            -
             | 
| 22 | 
            -
             | 
| 23 | 
            -
             | 
| 21 | 
            +
            The FriendlyId DataMapper Adapter keeps in lock-step with major and minor
         | 
| 22 | 
            +
            versions of the FriendlyId gem, i.e. `friendly_id_datamapper 3.2.x` is
         | 
| 23 | 
            +
            compatible with `friendly_id 3.2.x series`. Patch and build versions are not
         | 
| 24 | 
            +
            kept in lock-step.
         | 
| 24 25 |  | 
| 25 26 | 
             
            ## Usage
         | 
| 26 27 |  | 
| @@ -42,6 +43,12 @@ Patch and build versions are not kept in lock-step. | |
| 42 43 | 
             
            For more information on the available features, please see the
         | 
| 43 44 | 
             
            [FriendlyId Guide](http://norman.github.com/friendly_id/file.Guide.html).
         | 
| 44 45 |  | 
| 46 | 
            +
            ## Known Issues
         | 
| 47 | 
            +
             | 
| 48 | 
            +
            FriendlyId DataMapper Adapter is not yet compatible with Ruby 1.9.3, because of
         | 
| 49 | 
            +
            an issue with a dependency `dm-do-adapter` and changes with the DateTime class,
         | 
| 50 | 
            +
            after its reimplementation in C (namely, `DateTime#new!` no longer exists).
         | 
| 51 | 
            +
             | 
| 45 52 | 
             
            ## Bugs
         | 
| 46 53 |  | 
| 47 54 | 
             
            Please report them on the [Github issue tracker](http://github.com/myabc/friendly_id_datamapper/issues)
         | 
| @@ -59,5 +66,4 @@ and add a test that reproduces the error you are experiencing. | |
| 59 66 |  | 
| 60 67 | 
             
            ## Credits
         | 
| 61 68 |  | 
| 62 | 
            -
            Copyright (c) 2010, released under the MIT license.
         | 
| 63 | 
            -
             | 
| 69 | 
            +
            Copyright (c) 2010, 2011, released under the MIT license.
         | 
    
        data/Rakefile
    CHANGED
    
    | @@ -1,11 +1,11 @@ | |
| 1 1 | 
             
            require "rake"
         | 
| 2 2 | 
             
            require "rake/testtask"
         | 
| 3 | 
            -
            require  | 
| 3 | 
            +
            require 'rubygems/package_task'
         | 
| 4 4 | 
             
            require "rake/clean"
         | 
| 5 5 |  | 
| 6 6 | 
             
            CLEAN << "pkg" << "doc" << "coverage" << ".yardoc"
         | 
| 7 7 |  | 
| 8 | 
            -
             | 
| 8 | 
            +
            Gem::PackageTask.new(eval(File.read("friendly_id_datamapper.gemspec"))) { |pkg| }
         | 
| 9 9 | 
             
            Rake::TestTask.new(:test) { |t| t.pattern = "test/*_test.rb" }
         | 
| 10 10 |  | 
| 11 11 | 
             
            task :default => :test
         | 
| @@ -57,11 +57,19 @@ module FriendlyId | |
| 57 57 | 
             
                  end
         | 
| 58 58 |  | 
| 59 59 | 
             
                  def associated_friendly_classes
         | 
| 60 | 
            -
                     | 
| 60 | 
            +
                    configured_class_relationships.select { |relationship|
         | 
| 61 61 | 
             
                      relationship.child_model.respond_to?(:friendly_id_config)
         | 
| 62 62 | 
             
                    }.map(&:child_model)
         | 
| 63 63 | 
             
                  end
         | 
| 64 64 |  | 
| 65 | 
            +
                  def configured_class_relationships
         | 
| 66 | 
            +
                    unless (relationships = configured_class.relationships).is_a?(Hash)
         | 
| 67 | 
            +
                      relationships         # DataMapper 1.1.x
         | 
| 68 | 
            +
                    else
         | 
| 69 | 
            +
                      relationships.values  # DataMapper 1.0.x
         | 
| 70 | 
            +
                    end
         | 
| 71 | 
            +
                  end
         | 
| 72 | 
            +
             | 
| 65 73 | 
             
                end
         | 
| 66 74 | 
             
              end
         | 
| 67 75 | 
             
            end
         | 
| @@ -41,63 +41,58 @@ module FriendlyId | |
| 41 41 |  | 
| 42 42 | 
             
                      after :update, :update_scope
         | 
| 43 43 | 
             
                      after :update, :update_dependent_scopes
         | 
| 44 | 
            -
                    end
         | 
| 45 44 |  | 
| 46 | 
            -
             | 
| 47 | 
            -
             | 
| 48 | 
            -
                      if options.respond_to?(:to_hash)
         | 
| 49 | 
            -
                        args.pop
         | 
| 50 | 
            -
                        options.to_hash.dup
         | 
| 51 | 
            -
                      else
         | 
| 52 | 
            -
                        {}
         | 
| 45 | 
            +
                      before(:destroy) do
         | 
| 46 | 
            +
                        slugs.destroy!
         | 
| 53 47 | 
             
                      end
         | 
| 54 48 | 
             
                    end
         | 
| 55 49 |  | 
| 56 | 
            -
                     | 
| 57 | 
            -
                       | 
| 58 | 
            -
             | 
| 59 | 
            -
             | 
| 60 | 
            -
                         | 
| 61 | 
            -
             | 
| 62 | 
            -
             | 
| 63 | 
            -
             | 
| 64 | 
            -
                           | 
| 50 | 
            +
                    base.class_eval <<-RUBY, __FILE__, __LINE__ + 1
         | 
| 51 | 
            +
                      def self.get(*key)
         | 
| 52 | 
            +
                        options = key.extract_options!
         | 
| 53 | 
            +
             | 
| 54 | 
            +
                        if key.size == 1
         | 
| 55 | 
            +
                          return super if key.first.is_a?(Array) || key.first.unfriendly_id?
         | 
| 56 | 
            +
                          name, sequence = key.first.to_s.parse_friendly_id
         | 
| 57 | 
            +
             | 
| 58 | 
            +
                          if !friendly_id_config.scope? && friendly_id_config.cache_column?
         | 
| 59 | 
            +
                            result = self.first(friendly_id_config.cache_column => key.first)
         | 
| 60 | 
            +
                          end
         | 
| 61 | 
            +
             | 
| 62 | 
            +
                          conditions = {
         | 
| 63 | 
            +
                            slugs.name     => name,
         | 
| 64 | 
            +
                            slugs.sequence => sequence
         | 
| 65 | 
            +
                          }
         | 
| 66 | 
            +
                          conditions.merge!({
         | 
| 67 | 
            +
                            slugs.scope    => (options[:scope].to_param if options[:scope] && options[:scope].respond_to?(:to_param))
         | 
| 68 | 
            +
                          }) if friendly_id_config.scope?
         | 
| 69 | 
            +
             | 
| 70 | 
            +
                          result ||= self.first(conditions)
         | 
| 71 | 
            +
                          return super unless result
         | 
| 72 | 
            +
                          result.friendly_id_status.name = name
         | 
| 73 | 
            +
                          result.friendly_id_status.sequence = sequence
         | 
| 74 | 
            +
                          result
         | 
| 75 | 
            +
                        else
         | 
| 76 | 
            +
                          super
         | 
| 65 77 | 
             
                        end
         | 
| 66 | 
            -
             | 
| 67 | 
            -
                        conditions = {
         | 
| 68 | 
            -
                          slugs.name     => name,
         | 
| 69 | 
            -
                          slugs.sequence => sequence
         | 
| 70 | 
            -
                        }
         | 
| 71 | 
            -
                        conditions.merge!({
         | 
| 72 | 
            -
                          slugs.scope    => (options[:scope].to_param if options[:scope] && options[:scope].respond_to?(:to_param))
         | 
| 73 | 
            -
                        }) if friendly_id_config.scope?
         | 
| 74 | 
            -
             | 
| 75 | 
            -
                        result ||= self.first(conditions)
         | 
| 76 | 
            -
                        return super unless result
         | 
| 77 | 
            -
                        result.friendly_id_status.name = name
         | 
| 78 | 
            -
                        result.friendly_id_status.sequence = sequence
         | 
| 79 | 
            -
                        result
         | 
| 80 | 
            -
                      else
         | 
| 81 | 
            -
                        super
         | 
| 82 78 | 
             
                      end
         | 
| 83 | 
            -
                    end
         | 
| 84 79 |  | 
| 85 | 
            -
             | 
| 86 | 
            -
             | 
| 87 | 
            -
             | 
| 88 | 
            -
             | 
| 89 | 
            -
             | 
| 90 | 
            -
             | 
| 91 | 
            -
             | 
| 92 | 
            -
             | 
| 93 | 
            -
             | 
| 94 | 
            -
             | 
| 95 | 
            -
             | 
| 96 | 
            -
             | 
| 97 | 
            -
             | 
| 80 | 
            +
                      def self.get!(*key)
         | 
| 81 | 
            +
                        return super unless friendly_id_config.scope?
         | 
| 82 | 
            +
             | 
| 83 | 
            +
                        result = get(*key)
         | 
| 84 | 
            +
                        if result
         | 
| 85 | 
            +
                          result
         | 
| 86 | 
            +
                        else
         | 
| 87 | 
            +
                          options = key.extract_options!
         | 
| 88 | 
            +
                          scope   = options[:scope]
         | 
| 89 | 
            +
                          message = "Could not find \#{self.name} with key \#{key.inspect}"
         | 
| 90 | 
            +
                          message << " and scope \#{scope.inspect}" if scope
         | 
| 91 | 
            +
                          message << ". Scope expected but none given." unless scope
         | 
| 92 | 
            +
                          raise(::DataMapper::ObjectNotFoundError, message)
         | 
| 93 | 
            +
                        end
         | 
| 98 94 | 
             
                      end
         | 
| 99 | 
            -
                     | 
| 100 | 
            -
             | 
| 95 | 
            +
                    RUBY
         | 
| 101 96 | 
             
                  end
         | 
| 102 97 |  | 
| 103 98 | 
             
                  def slug
         | 
    
        data/test/test_helper.rb
    CHANGED
    
    | @@ -1,19 +1,12 @@ | |
| 1 | 
            -
             | 
| 2 | 
            -
             | 
| 3 | 
            -
             | 
| 4 | 
            -
             | 
| 5 | 
            -
             | 
| 6 | 
            -
              require 'bundler'
         | 
| 7 | 
            -
              Bundler.setup
         | 
| 8 | 
            -
            end
         | 
| 9 | 
            -
             | 
| 10 | 
            -
            require "friendly_id"
         | 
| 11 | 
            -
            require "friendly_id/test"
         | 
| 12 | 
            -
            require "logger"
         | 
| 13 | 
            -
            require "test/unit"
         | 
| 14 | 
            -
            require "mocha"
         | 
| 1 | 
            +
            $LOAD_PATH << './lib'
         | 
| 2 | 
            +
            require 'rubygems'
         | 
| 3 | 
            +
            require 'bundler/setup'
         | 
| 4 | 
            +
            require 'test/unit'
         | 
| 5 | 
            +
            require 'mocha'
         | 
| 15 6 |  | 
| 16 | 
            -
            require ' | 
| 7 | 
            +
            require 'friendly_id'
         | 
| 8 | 
            +
            require 'friendly_id/datamapper'
         | 
| 9 | 
            +
            require 'friendly_id/test'
         | 
| 17 10 |  | 
| 18 11 | 
             
            require 'dm-core'
         | 
| 19 12 | 
             
            require 'dm-validations'
         | 
| @@ -26,12 +19,9 @@ require 'dm-active_model' | |
| 26 19 | 
             
            DataMapper::Logger.new('dm.log', :debug)
         | 
| 27 20 | 
             
            DataMapper.setup(:default, 'sqlite3::memory:')
         | 
| 28 21 |  | 
| 29 | 
            -
            $LOAD_PATH << './lib'
         | 
| 30 | 
            -
             | 
| 31 | 
            -
            require 'friendly_id_datamapper'
         | 
| 32 22 | 
             
            require File.expand_path('../core',    __FILE__)
         | 
| 33 23 | 
             
            require File.expand_path('../slugged', __FILE__)
         | 
| 34 | 
            -
             | 
| 35 24 | 
             
            require File.expand_path('../support/models', __FILE__)
         | 
| 25 | 
            +
             | 
| 36 26 | 
             
            DataMapper.finalize
         | 
| 37 27 | 
             
            DataMapper.auto_migrate!
         | 
    
        metadata
    CHANGED
    
    | @@ -1,95 +1,70 @@ | |
| 1 | 
            -
            --- !ruby/object:Gem::Specification | 
| 1 | 
            +
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: friendly_id_datamapper
         | 
| 3 | 
            -
            version: !ruby/object:Gem::Version | 
| 4 | 
            -
               | 
| 5 | 
            -
               | 
| 6 | 
            -
              - 3
         | 
| 7 | 
            -
              - 1
         | 
| 8 | 
            -
              - 0
         | 
| 9 | 
            -
              - beta1
         | 
| 10 | 
            -
              version: 3.1.0.beta1
         | 
| 3 | 
            +
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            +
              version: 3.2.0
         | 
| 5 | 
            +
              prerelease: 
         | 
| 11 6 | 
             
            platform: ruby
         | 
| 12 | 
            -
            authors: | 
| 7 | 
            +
            authors:
         | 
| 13 8 | 
             
            - Norman Clarke
         | 
| 14 9 | 
             
            - Alex Coles
         | 
| 15 10 | 
             
            autorequire: 
         | 
| 16 11 | 
             
            bindir: bin
         | 
| 17 12 | 
             
            cert_chain: []
         | 
| 18 | 
            -
             | 
| 19 | 
            -
            date: 2010-09-13 00:00:00 +02:00
         | 
| 13 | 
            +
            date: 2011-08-08 00:00:00.000000000 +02:00
         | 
| 20 14 | 
             
            default_executable: 
         | 
| 21 | 
            -
            dependencies: | 
| 22 | 
            -
            - !ruby/object:Gem::Dependency | 
| 15 | 
            +
            dependencies:
         | 
| 16 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 23 17 | 
             
              name: friendly_id
         | 
| 24 | 
            -
               | 
| 25 | 
            -
              requirement: &id001 !ruby/object:Gem::Requirement 
         | 
| 18 | 
            +
              requirement: &70132685181020 !ruby/object:Gem::Requirement
         | 
| 26 19 | 
             
                none: false
         | 
| 27 | 
            -
                requirements: | 
| 20 | 
            +
                requirements:
         | 
| 28 21 | 
             
                - - ~>
         | 
| 29 | 
            -
                  - !ruby/object:Gem::Version | 
| 30 | 
            -
                     | 
| 31 | 
            -
                    - 3
         | 
| 32 | 
            -
                    - 1
         | 
| 33 | 
            -
                    - 0
         | 
| 34 | 
            -
                    version: 3.1.0
         | 
| 22 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 23 | 
            +
                    version: '3.2'
         | 
| 35 24 | 
             
              type: :runtime
         | 
| 36 | 
            -
              version_requirements: *id001
         | 
| 37 | 
            -
            - !ruby/object:Gem::Dependency 
         | 
| 38 | 
            -
              name: dm-core
         | 
| 39 25 | 
             
              prerelease: false
         | 
| 40 | 
            -
               | 
| 26 | 
            +
              version_requirements: *70132685181020
         | 
| 27 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 28 | 
            +
              name: dm-core
         | 
| 29 | 
            +
              requirement: &70132685180520 !ruby/object:Gem::Requirement
         | 
| 41 30 | 
             
                none: false
         | 
| 42 | 
            -
                requirements: | 
| 31 | 
            +
                requirements:
         | 
| 43 32 | 
             
                - - ~>
         | 
| 44 | 
            -
                  - !ruby/object:Gem::Version | 
| 45 | 
            -
                     | 
| 46 | 
            -
                    - 1
         | 
| 47 | 
            -
                    - 0
         | 
| 48 | 
            -
                    - 0
         | 
| 49 | 
            -
                    version: 1.0.0
         | 
| 33 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 34 | 
            +
                    version: '1.0'
         | 
| 50 35 | 
             
              type: :runtime
         | 
| 51 | 
            -
              version_requirements: *id002
         | 
| 52 | 
            -
            - !ruby/object:Gem::Dependency 
         | 
| 53 | 
            -
              name: dm-validations
         | 
| 54 36 | 
             
              prerelease: false
         | 
| 55 | 
            -
               | 
| 37 | 
            +
              version_requirements: *70132685180520
         | 
| 38 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 39 | 
            +
              name: dm-validations
         | 
| 40 | 
            +
              requirement: &70132685180060 !ruby/object:Gem::Requirement
         | 
| 56 41 | 
             
                none: false
         | 
| 57 | 
            -
                requirements: | 
| 42 | 
            +
                requirements:
         | 
| 58 43 | 
             
                - - ~>
         | 
| 59 | 
            -
                  - !ruby/object:Gem::Version | 
| 60 | 
            -
                     | 
| 61 | 
            -
                    - 1
         | 
| 62 | 
            -
                    - 0
         | 
| 63 | 
            -
                    - 0
         | 
| 64 | 
            -
                    version: 1.0.0
         | 
| 44 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 45 | 
            +
                    version: '1.0'
         | 
| 65 46 | 
             
              type: :runtime
         | 
| 66 | 
            -
              version_requirements: *id003
         | 
| 67 | 
            -
            - !ruby/object:Gem::Dependency 
         | 
| 68 | 
            -
              name: dm-transactions
         | 
| 69 47 | 
             
              prerelease: false
         | 
| 70 | 
            -
               | 
| 48 | 
            +
              version_requirements: *70132685180060
         | 
| 49 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 50 | 
            +
              name: dm-transactions
         | 
| 51 | 
            +
              requirement: &70132685179600 !ruby/object:Gem::Requirement
         | 
| 71 52 | 
             
                none: false
         | 
| 72 | 
            -
                requirements: | 
| 53 | 
            +
                requirements:
         | 
| 73 54 | 
             
                - - ~>
         | 
| 74 | 
            -
                  - !ruby/object:Gem::Version | 
| 75 | 
            -
                     | 
| 76 | 
            -
                    - 1
         | 
| 77 | 
            -
                    - 0
         | 
| 78 | 
            -
                    - 0
         | 
| 79 | 
            -
                    version: 1.0.0
         | 
| 55 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 56 | 
            +
                    version: '1.0'
         | 
| 80 57 | 
             
              type: :runtime
         | 
| 81 | 
            -
               | 
| 58 | 
            +
              prerelease: false
         | 
| 59 | 
            +
              version_requirements: *70132685179600
         | 
| 82 60 | 
             
            description: An adapter for using DataMapper::Resource with FriendlyId.
         | 
| 83 | 
            -
            email: | 
| 61 | 
            +
            email:
         | 
| 84 62 | 
             
            - norman@njclarke.com
         | 
| 85 63 | 
             
            - alex@alexbcoles.com
         | 
| 86 64 | 
             
            executables: []
         | 
| 87 | 
            -
             | 
| 88 65 | 
             
            extensions: []
         | 
| 89 | 
            -
             | 
| 90 66 | 
             
            extra_rdoc_files: []
         | 
| 91 | 
            -
             | 
| 92 | 
            -
            files: 
         | 
| 67 | 
            +
            files:
         | 
| 93 68 | 
             
            - lib/friendly_id/datamapper_adapter/configuration.rb
         | 
| 94 69 | 
             
            - lib/friendly_id/datamapper_adapter/simple_model.rb
         | 
| 95 70 | 
             
            - lib/friendly_id/datamapper_adapter/slug.rb
         | 
| @@ -118,38 +93,29 @@ files: | |
| 118 93 | 
             
            has_rdoc: true
         | 
| 119 94 | 
             
            homepage: http://github.com/myabc/friendly_id_datamapper
         | 
| 120 95 | 
             
            licenses: []
         | 
| 121 | 
            -
             | 
| 122 96 | 
             
            post_install_message: 
         | 
| 123 97 | 
             
            rdoc_options: []
         | 
| 124 | 
            -
             | 
| 125 | 
            -
            require_paths: 
         | 
| 98 | 
            +
            require_paths:
         | 
| 126 99 | 
             
            - lib
         | 
| 127 | 
            -
            required_ruby_version: !ruby/object:Gem::Requirement | 
| 100 | 
            +
            required_ruby_version: !ruby/object:Gem::Requirement
         | 
| 128 101 | 
             
              none: false
         | 
| 129 | 
            -
              requirements: | 
| 130 | 
            -
              - -  | 
| 131 | 
            -
                - !ruby/object:Gem::Version | 
| 132 | 
            -
                   | 
| 133 | 
            -
             | 
| 134 | 
            -
                  version: "0"
         | 
| 135 | 
            -
            required_rubygems_version: !ruby/object:Gem::Requirement 
         | 
| 102 | 
            +
              requirements:
         | 
| 103 | 
            +
              - - ! '>='
         | 
| 104 | 
            +
                - !ruby/object:Gem::Version
         | 
| 105 | 
            +
                  version: '0'
         | 
| 106 | 
            +
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 136 107 | 
             
              none: false
         | 
| 137 | 
            -
              requirements: | 
| 138 | 
            -
              - -  | 
| 139 | 
            -
                - !ruby/object:Gem::Version | 
| 140 | 
            -
                   | 
| 141 | 
            -
                  - 1
         | 
| 142 | 
            -
                  - 3
         | 
| 143 | 
            -
                  - 1
         | 
| 144 | 
            -
                  version: 1.3.1
         | 
| 108 | 
            +
              requirements:
         | 
| 109 | 
            +
              - - ! '>='
         | 
| 110 | 
            +
                - !ruby/object:Gem::Version
         | 
| 111 | 
            +
                  version: '0'
         | 
| 145 112 | 
             
            requirements: []
         | 
| 146 | 
            -
             | 
| 147 | 
            -
             | 
| 148 | 
            -
            rubygems_version: 1.3.7
         | 
| 113 | 
            +
            rubyforge_project: ! '[none]'
         | 
| 114 | 
            +
            rubygems_version: 1.6.2
         | 
| 149 115 | 
             
            signing_key: 
         | 
| 150 116 | 
             
            specification_version: 3
         | 
| 151 117 | 
             
            summary: A DataMapper adapter for FriendlyId
         | 
| 152 | 
            -
            test_files: | 
| 118 | 
            +
            test_files:
         | 
| 153 119 | 
             
            - test/basic_slugged_model_test.rb
         | 
| 154 120 | 
             
            - test/cached_slug_test.rb
         | 
| 155 121 | 
             
            - test/custom_normalizer_test.rb
         |