async-rails 0.2.5.1 → 0.2.6

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: 7159311da85235086c4ab9741afc660c6139d551
4
- data.tar.gz: 4203217437464e326084bc933c87b1cd10c72c00
3
+ metadata.gz: e0e7b0d13a37da98039e8da88e88f0e257e3e8f9
4
+ data.tar.gz: 2e09d2e96d2ea2731bd2e59c300be4a9eb3291b0
5
5
  SHA512:
6
- metadata.gz: 7b726f1f38c79fc32b50953ec024b36040c7a4eda0920c4d9c710f2e02aa835bd8273eecb789e5cad73e0209581c40ae315d35388d169da574edd198a0feec93
7
- data.tar.gz: 058633959611be21bc291d0267bccc5b4735c5b6ad47f3bbcaa356c9b9f707542de41dbc19b0d2d7ef0b4ab120f4c8bd4c976c13a8d6fe001958c14024486dfc
6
+ metadata.gz: 47b7cde97618644cf4efc612fa62a25f0b6f8b98d60a80620f5a149f625d6ae14e36df6a05b348892c949a33a80efd6eec6afb1aa901c7d60c7fcadfb71fd435
7
+ data.tar.gz: 991eefa9d4bd8581e02a136bea290d4dfb2c439e4bb587d010ab76181dcf981edf480bb772e7f972b3b7fee07259dbd1a7b9cc41ba33a4bc11f8da7edd923347
@@ -1,5 +1,5 @@
1
1
  module Async
2
2
  module Rails
3
- VERSION = "0.2.5.1"
3
+ VERSION = "0.2.6"
4
4
  end
5
5
  end
@@ -425,16 +425,21 @@
425
425
  _each(keys, function (k) {
426
426
  var task = (tasks[k] instanceof Function) ? [tasks[k]]: tasks[k];
427
427
  var taskCallback = function (err) {
428
+ var args = Array.prototype.slice.call(arguments, 1);
429
+ if (args.length <= 1) {
430
+ args = args[0];
431
+ }
428
432
  if (err) {
429
- callback(err);
433
+ var safeResults = {};
434
+ _each(_keys(results), function(rkey) {
435
+ safeResults[rkey] = results[rkey];
436
+ });
437
+ safeResults[k] = args;
438
+ callback(err, safeResults);
430
439
  // stop subsequent errors hitting callback multiple times
431
440
  callback = function () {};
432
441
  }
433
442
  else {
434
- var args = Array.prototype.slice.call(arguments, 1);
435
- if (args.length <= 1) {
436
- args = args[0];
437
- }
438
443
  results[k] = args;
439
444
  async.nextTick(taskComplete);
440
445
  }
@@ -693,6 +698,9 @@
693
698
  };
694
699
 
695
700
  async.queue = function (worker, concurrency) {
701
+ if (concurrency === undefined) {
702
+ concurrency = 1;
703
+ }
696
704
  function _insert(q, data, pos, callback) {
697
705
  if(data.constructor !== Array) {
698
706
  data = [data];
@@ -937,6 +945,25 @@
937
945
  };
938
946
  };
939
947
 
948
+ async.applyEach = function (fns /*args...*/) {
949
+ var go = function () {
950
+ var that = this;
951
+ var args = Array.prototype.slice.call(arguments);
952
+ var callback = args.pop();
953
+ return async.each(fns, function (fn, cb) {
954
+ fn.apply(that, args.concat([cb]));
955
+ },
956
+ callback);
957
+ };
958
+ if (arguments.length > 1) {
959
+ var args = Array.prototype.slice.call(arguments, 1);
960
+ return go.apply(this, args);
961
+ }
962
+ else {
963
+ return go;
964
+ }
965
+ };
966
+
940
967
  // AMD / RequireJS
941
968
  if (typeof define !== 'undefined' && define.amd) {
942
969
  define([], function () {
@@ -952,4 +979,4 @@
952
979
  root.async = async;
953
980
  }
954
981
 
955
- }());
982
+ }());
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: async-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5.1
4
+ version: 0.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Chen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-07-07 00:00:00.000000000 Z
11
+ date: 2013-08-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: railties
@@ -55,7 +55,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
55
55
  version: '0'
56
56
  requirements: []
57
57
  rubyforge_project:
58
- rubygems_version: 2.0.2
58
+ rubygems_version: 2.0.0
59
59
  signing_key:
60
60
  specification_version: 4
61
61
  summary: Rails asset pipeline wrapper for async.js