resort 0.4.0 → 0.5.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: df24a3c71cbb2f5b1d6691f60260af7aa1f8ad6d
4
- data.tar.gz: f50b1f35d343d61ec0292ebd2bbf47698f2d51a5
3
+ metadata.gz: d5d5826e36decbd7ce65e8146ca2b4bdd0798d08
4
+ data.tar.gz: b2af8aebeedfaa5c721b25dbe8832e7348038608
5
5
  SHA512:
6
- metadata.gz: f0abafb15f476f3e73e108cc7b7ea03070a4ea2b799ee809dcce18196729e3ae1a6f455640c3136fb86fa7a5ed5721dd778d7916138470231604bec7ed328465
7
- data.tar.gz: a6ead2d3393c4b021bcc81f84cd6e3baa6e00283241278f005f80ac5ad5a307d86580a6c1a32a6689260bb93d1730335d930412818663efd82e2d1f7f15aa8ae
6
+ metadata.gz: b7e54325489ea146fc48ec1a4c9d19b72775cbcab8aef1bd00f4323348b6bdbf2b958034df5f81c3189cc44a7eec77e93369ead52b89392c43029f0d047d09e7
7
+ data.tar.gz: 5d15a4f77afccd8c5be80dfb2b7b71c1bdcd9758374d70057c83ec20133f5226035c659359e16e58271a9b6c266d7b8f0e3d7114adaabe0a5cb5e59b4907fca2
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ 2.2.1
data/Readme.md CHANGED
@@ -1,6 +1,6 @@
1
1
  #resort [![Build Status](https://secure.travis-ci.org/codegram/resort.png)](http://travis-ci.org/codegram/resort)
2
2
 
3
- Resort provides sorting capabilities to your Rails 3 models.
3
+ Resort provides sorting capabilities to your Rails models.
4
4
 
5
5
  ##Install
6
6
 
@@ -72,8 +72,10 @@ Moreover, now a `product` responds to the following methods:
72
72
 
73
73
  * `first?` — Returns true if the element is the first of the tree.
74
74
  * `append_to(other_element)` — Appends the element _after_ another element.
75
- * `next` — Returns the next element in the list
76
- * `previous` — Returns the previous element in the list
75
+ * `prepend` — Moves the elemnt to the beggining of the list (sets it as
76
+ first).
77
+ * `next` — Returns the next element in the list.
78
+ * `previous` — Returns the previous element in the list.
77
79
 
78
80
  And the class Product has a new scope named `ordered` that returns the
79
81
  products in order.
@@ -17,7 +17,7 @@ module Resort
17
17
  "%.3d" % (current_migration_number(dirname) + 1)
18
18
  end
19
19
  end
20
-
20
+
21
21
  desc "Creates a Resort migration."
22
22
  source_root File.expand_path("../templates", __FILE__)
23
23
 
data/lib/resort.rb CHANGED
@@ -84,7 +84,7 @@ module Resort
84
84
  all.where(:next_id => nil).first
85
85
  end
86
86
 
87
-
87
+
88
88
  # Returns eager-loaded Components in order.
89
89
  #
90
90
  # OPTIMIZE: Use IdentityMap when available
@@ -102,7 +102,7 @@ module Resort
102
102
  end
103
103
 
104
104
  raise "Multiple or no first items in the list where found. Consider defining a siblings method" if ordered_elements.length != 1 && elements.length > 0
105
-
105
+
106
106
  elements.length.times do
107
107
  ordered_elements << elements[ordered_elements.last.next_id]
108
108
  end
@@ -144,7 +144,7 @@ module Resort
144
144
  self.class.transaction do
145
145
  self.lock!
146
146
  _siblings.count > 0 ? last!\
147
- : prepend
147
+ : prepend
148
148
  end
149
149
  end
150
150
 
@@ -156,8 +156,8 @@ module Resort
156
156
  if _siblings.count > 0
157
157
  delete_from_list
158
158
  old_first = _siblings.first_in_order
159
- raise(ActiveRecord::RecordNotSaved) unless self.update_attribute(:next_id, old_first.id)
160
- raise(ActiveRecord::RecordNotSaved) unless old_first.update_attribute(:first, false)
159
+ raise(ActiveRecord::RecordNotSaved.new("[Resort] - Couldn't set next_id from previous first element.")) unless self.update_attribute(:next_id, old_first.id)
160
+ raise(ActiveRecord::RecordNotSaved.new("[Resort] - Couldn't reset previous firt element")) unless old_first.update_attribute(:first, false)
161
161
  end
162
162
  raise(ActiveRecord::RecordNotSaved) unless self.update_attribute(:first, true)
163
163
  end
@@ -179,10 +179,10 @@ module Resort
179
179
  another.lock!
180
180
  delete_from_list
181
181
  if self.next_id or (another && another.next_id)
182
- raise(ActiveRecord::RecordNotSaved) unless self.update_attribute(:next_id, another.next_id)
182
+ raise(ActiveRecord::RecordNotSaved.new("[Resort] - Couldn't append element")) unless self.update_attribute(:next_id, another.next_id)
183
183
  end
184
184
  if another
185
- raise(ActiveRecord::RecordNotSaved) unless another.update_attribute(:next_id, self.id)
185
+ raise(ActiveRecord::RecordNotSaved.new("[Resort] - Couldn't set this element to another's next")) unless another.update_attribute(:next_id, self.id)
186
186
  end
187
187
  end
188
188
  end
@@ -200,8 +200,8 @@ module Resort
200
200
  raise(ActiveRecord::RecordNotSaved) unless p.update_attribute(:next_id, self.next_id)
201
201
  end
202
202
  unless frozen?
203
- self.first = false
204
- self.next = nil
203
+ self.first = false
204
+ self.next = nil
205
205
  save!
206
206
  end
207
207
  end
@@ -1,4 +1,4 @@
1
1
  module Resort
2
2
  # Resort's version number
3
- VERSION = "0.4.0"
3
+ VERSION = "0.5.0"
4
4
  end
data/resort.gemspec CHANGED
@@ -14,7 +14,7 @@ Gem::Specification.new do |s|
14
14
 
15
15
  s.rubyforge_project = "resort"
16
16
 
17
- s.add_runtime_dependency 'activerecord', '>= 4.0.4'
17
+ s.add_runtime_dependency 'activerecord', '~> 4'
18
18
  s.add_development_dependency 'sqlite3'
19
19
  s.add_development_dependency 'rspec', '~> 2.14.1'
20
20
  s.add_development_dependency 'yard'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resort
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oriol Gual
@@ -10,22 +10,22 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2014-04-03 00:00:00.000000000 Z
13
+ date: 2015-04-12 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activerecord
17
17
  requirement: !ruby/object:Gem::Requirement
18
18
  requirements:
19
- - - ">="
19
+ - - "~>"
20
20
  - !ruby/object:Gem::Version
21
- version: 4.0.4
21
+ version: '4'
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
- - - ">="
26
+ - - "~>"
27
27
  - !ruby/object:Gem::Version
28
- version: 4.0.4
28
+ version: '4'
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: sqlite3
31
31
  requirement: !ruby/object:Gem::Requirement
@@ -105,7 +105,7 @@ extra_rdoc_files: []
105
105
  files:
106
106
  - ".gitignore"
107
107
  - ".rspec"
108
- - ".rvmrc"
108
+ - ".ruby-version"
109
109
  - ".travis.yml"
110
110
  - Gemfile
111
111
  - LICENSE
@@ -138,7 +138,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
138
138
  version: '0'
139
139
  requirements: []
140
140
  rubyforge_project: resort
141
- rubygems_version: 2.2.0
141
+ rubygems_version: 2.4.5
142
142
  signing_key:
143
143
  specification_version: 4
144
144
  summary: Positionless model sorting for Rails 3.
data/.rvmrc DELETED
@@ -1 +0,0 @@
1
- rvm --create use ruby-2.1.1@resort