underscore_extensions 0.2.0 → 0.2.1

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/.rvmrc CHANGED
@@ -1 +1 @@
1
- rvm 1.9.3-p125-perf@underscore_extensions --create
1
+ rvm 1.9.3-p327-perf@underscore_extensions --create
@@ -13,39 +13,7 @@
13
13
  }, obj);
14
14
  }
15
15
 
16
- function mergeSort(array, comparison) {
17
- function merge(left, right, comparison) {
18
- var result = [];
19
- while ((left.length > 0) && (right.length > 0)) {
20
- if (comparison(left[0], right[0]) <= 0) {
21
- result.push(left.shift());
22
- } else {
23
- result.push(right.shift());
24
- }
25
- }
26
- while (left.length > 0) {
27
- result.push(left.shift());
28
- }
29
- while (right.length > 0) {
30
- result.push(right.shift());
31
- }
32
- return result;
33
- }
34
-
35
- if (array.length < 2) {
36
- return array;
37
- }
38
- var middle = Math.ceil(array.length / 2);
39
- return merge(mergeSort(array.slice(0, middle), comparison), mergeSort(array.slice(middle), comparison), comparison);
40
- }
41
-
42
16
  _.mixin({
43
- classify: function(str) {
44
- var s = _(str).trim().replace(/(\-|_|\s)+(.)?/g, function(match, separator, chr) {
45
- return chr ? chr.toUpperCase() : '';
46
- });
47
- return s.charAt(0).toUpperCase() + s.substring(1);
48
- },
49
17
  namespace: function(obj, ns) {
50
18
  if (arguments.length === 2) {
51
19
  if (_(ns).isArray()) {
@@ -56,30 +24,6 @@
56
24
  } else {
57
25
  return namespace(obj, Array.prototype.slice.call(arguments, 1));
58
26
  }
59
- },
60
- stableSortBy: function(obj, val, context) {
61
- var iterator = _.isFunction(val) ? val : function(obj) {
62
- return obj[val];
63
- };
64
- var toSort = _.map(obj, function(value, index, list) {
65
- return {
66
- value: value,
67
- criteria: iterator.call(context, value, index, list)
68
- };
69
- });
70
- var comparator = function(left, right) {
71
- var a = left.criteria, b = right.criteria;
72
- if (a === void 0) {
73
- return 1;
74
- }
75
- if (b === void 0) {
76
- return -1;
77
- }
78
- return a < b ? -1 : a > b ? 1 : 0;
79
- };
80
-
81
- toSort = mergeSort(toSort, comparator);
82
- return _.pluck(toSort, 'value');
83
27
  }
84
28
  });
85
29
 
@@ -1,5 +1,5 @@
1
1
  module UnderscoreExtensions
2
- VERSION = '0.2.0'
2
+ VERSION = '0.2.1'
3
3
  UNDERSCORE_VERSION = '1.4.2'
4
4
  UNDERSCORE_STRING_VERSION = '2.3.0'
5
5
  end
@@ -92,12 +92,4 @@ describe('_', function() {
92
92
  expect(_('foos').singularize({skip: 'foos'})).toEqual('foos');
93
93
  });
94
94
  });
95
-
96
- describe("#stableSortBy", function() {
97
- it("should sort the items by the provided iterator, through a stable sort", function() {
98
- var toSort = [{a: 1}, {b: 1}, {c: 1}, {d: 1}, {e: 2}, {f:1}, {g: 1}];
99
- var sorted = _(toSort).stableSortBy(function(obj) { return _(obj).values()[0]; });
100
- expect(sorted).toEqual([{a: 1}, {b: 1}, {c: 1}, {d: 1}, {f:1}, {g: 1}, {e: 2}]);
101
- });
102
- });
103
95
  });
@@ -23,5 +23,4 @@ Gem::Specification.new do |s|
23
23
  s.add_development_dependency 'jshint_on_rails'
24
24
  s.add_development_dependency 'thin'
25
25
  s.add_runtime_dependency 'rails', '>= 3.1'
26
- s.add_runtime_dependency 'rails', '>= 3.1'
27
26
  end
@@ -494,7 +494,7 @@
494
494
  slugify: function(str) {
495
495
  if (str == null) return '';
496
496
 
497
- var from = "ąàáäâãåæćęèéëêìíïîłńòóöôõøùúüûñçżź",
497
+ var from = "ąà áäâãåæćęèéëêìíïîłńòóöôõøùúüûñçżź",
498
498
  to = "aaaaaaaaceeeeeiiiilnoooooouuuunczz",
499
499
  regex = new RegExp(defaultToWhiteSpace(from), 'g');
500
500
 
@@ -597,4 +597,4 @@
597
597
  root._.string = root._.str = _s;
598
598
  }
599
599
 
600
- }(this, String);
600
+ }(this, String);
metadata CHANGED
@@ -1,112 +1,96 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: underscore_extensions
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
5
4
  prerelease:
5
+ version: 0.2.1
6
6
  platform: ruby
7
7
  authors:
8
8
  - Ryan Dy
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-10-14 00:00:00.000000000 Z
12
+ date: 2012-12-17 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
+ version_requirements: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ! '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ none: false
21
+ prerelease: false
15
22
  name: fuubar
16
23
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
24
  requirements:
19
25
  - - ! '>='
20
26
  - !ruby/object:Gem::Version
21
27
  version: '0'
28
+ none: false
22
29
  type: :development
23
- prerelease: false
30
+ - !ruby/object:Gem::Dependency
24
31
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
32
  requirements:
27
33
  - - ! '>='
28
34
  - !ruby/object:Gem::Version
29
- version: '0'
30
- - !ruby/object:Gem::Dependency
35
+ version: 1.2.1
36
+ none: false
37
+ prerelease: false
31
38
  name: jasmine
32
39
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
40
  requirements:
35
41
  - - ! '>='
36
42
  - !ruby/object:Gem::Version
37
43
  version: 1.2.1
44
+ none: false
38
45
  type: :development
39
- prerelease: false
46
+ - !ruby/object:Gem::Dependency
40
47
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
48
  requirements:
43
49
  - - ! '>='
44
50
  - !ruby/object:Gem::Version
45
- version: 1.2.1
46
- - !ruby/object:Gem::Dependency
51
+ version: '0'
52
+ none: false
53
+ prerelease: false
47
54
  name: jshint_on_rails
48
55
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
56
  requirements:
51
57
  - - ! '>='
52
58
  - !ruby/object:Gem::Version
53
59
  version: '0'
60
+ none: false
54
61
  type: :development
55
- prerelease: false
62
+ - !ruby/object:Gem::Dependency
56
63
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
64
  requirements:
59
65
  - - ! '>='
60
66
  - !ruby/object:Gem::Version
61
67
  version: '0'
62
- - !ruby/object:Gem::Dependency
68
+ none: false
69
+ prerelease: false
63
70
  name: thin
64
71
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
72
  requirements:
67
73
  - - ! '>='
68
74
  - !ruby/object:Gem::Version
69
75
  version: '0'
70
- type: :development
71
- prerelease: false
72
- version_requirements: !ruby/object:Gem::Requirement
73
76
  none: false
74
- requirements:
75
- - - ! '>='
76
- - !ruby/object:Gem::Version
77
- version: '0'
77
+ type: :development
78
78
  - !ruby/object:Gem::Dependency
79
- name: rails
80
- requirement: !ruby/object:Gem::Requirement
81
- none: false
82
- requirements:
83
- - - ! '>='
84
- - !ruby/object:Gem::Version
85
- version: '3.1'
86
- type: :runtime
87
- prerelease: false
88
79
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
80
  requirements:
91
81
  - - ! '>='
92
82
  - !ruby/object:Gem::Version
93
83
  version: '3.1'
94
- - !ruby/object:Gem::Dependency
84
+ none: false
85
+ prerelease: false
95
86
  name: rails
96
87
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
88
  requirements:
99
89
  - - ! '>='
100
90
  - !ruby/object:Gem::Version
101
91
  version: '3.1'
102
- type: :runtime
103
- prerelease: false
104
- version_requirements: !ruby/object:Gem::Requirement
105
92
  none: false
106
- requirements:
107
- - - ! '>='
108
- - !ruby/object:Gem::Version
109
- version: '3.1'
93
+ type: :runtime
110
94
  description: Adds extensions to the underscore javascript library. It adds the javascript
111
95
  as a rails engine to be included in to a Rails 3+ project. To use it make sure require
112
96
  underscore, underscore.string and underscore.extensions.
@@ -140,20 +124,26 @@ rdoc_options: []
140
124
  require_paths:
141
125
  - lib
142
126
  required_ruby_version: !ruby/object:Gem::Requirement
143
- none: false
144
127
  requirements:
145
128
  - - ! '>='
146
129
  - !ruby/object:Gem::Version
147
130
  version: '0'
148
- required_rubygems_version: !ruby/object:Gem::Requirement
131
+ segments:
132
+ - 0
133
+ hash: -3121695875512196244
149
134
  none: false
135
+ required_rubygems_version: !ruby/object:Gem::Requirement
150
136
  requirements:
151
137
  - - ! '>='
152
138
  - !ruby/object:Gem::Version
153
139
  version: '0'
140
+ segments:
141
+ - 0
142
+ hash: -3121695875512196244
143
+ none: false
154
144
  requirements: []
155
145
  rubyforge_project: underscore_extensions
156
- rubygems_version: 1.8.19
146
+ rubygems_version: 1.8.24
157
147
  signing_key:
158
148
  specification_version: 3
159
149
  summary: Extensions to underscore javascript library as a rails engine