resque-scheduler 4.2.1 → 4.3.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of resque-scheduler might be problematic. Click here for more details.

Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/CODE_OF_CONDUCT.md +74 -0
  3. data/HISTORY.md +7 -0
  4. data/README.md +7 -6
  5. data/{bin → exe}/resque-scheduler +0 -0
  6. data/lib/resque/scheduler/env.rb +5 -1
  7. data/lib/resque/scheduler/version.rb +1 -1
  8. data/resque-scheduler.gemspec +21 -7
  9. metadata +12 -53
  10. data/.gitignore +0 -17
  11. data/.rubocop.yml +0 -18
  12. data/.rubocop_todo.yml +0 -71
  13. data/.simplecov +0 -3
  14. data/.travis.yml +0 -26
  15. data/.vagrant-provision-as-vagrant.sh +0 -15
  16. data/.vagrant-provision.sh +0 -23
  17. data/.vagrant-skel/bash_profile +0 -7
  18. data/.vagrant-skel/bashrc +0 -7
  19. data/Vagrantfile +0 -14
  20. data/examples/Rakefile +0 -2
  21. data/examples/config/initializers/resque-web.rb +0 -37
  22. data/examples/dynamic-scheduling/README.md +0 -28
  23. data/examples/dynamic-scheduling/app/jobs/fix_schedules_job.rb +0 -52
  24. data/examples/dynamic-scheduling/app/jobs/send_email_job.rb +0 -9
  25. data/examples/dynamic-scheduling/app/models/user.rb +0 -16
  26. data/examples/dynamic-scheduling/config/resque.yml +0 -4
  27. data/examples/dynamic-scheduling/config/static_schedule.yml +0 -7
  28. data/examples/dynamic-scheduling/lib/tasks/resque.rake +0 -48
  29. data/examples/run-resque-web +0 -3
  30. data/script/migrate_to_timestamps_set.rb +0 -16
  31. data/tasks/resque_scheduler.rake +0 -2
  32. data/test/cli_test.rb +0 -231
  33. data/test/delayed_queue_test.rb +0 -925
  34. data/test/env_test.rb +0 -47
  35. data/test/multi_process_test.rb +0 -125
  36. data/test/resque-web_test.rb +0 -364
  37. data/test/scheduler_args_test.rb +0 -222
  38. data/test/scheduler_hooks_test.rb +0 -55
  39. data/test/scheduler_locking_test.rb +0 -316
  40. data/test/scheduler_setup_test.rb +0 -141
  41. data/test/scheduler_task_test.rb +0 -72
  42. data/test/scheduler_test.rb +0 -473
  43. data/test/test_helper.rb +0 -147
  44. data/test/util_test.rb +0 -17
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 81fff7dfc51eb7cddf965e33bb199119c5e89654
4
- data.tar.gz: ad07b64387f32238e6d40ddd7a23013909690525
3
+ metadata.gz: f23ec3da33d013e1f2f778c80cecc99d94c319d0
4
+ data.tar.gz: 4d7773093114491ece8819542b74f0458bd8549c
5
5
  SHA512:
6
- metadata.gz: 352f5afdf0b0298c325e69cd2602e327f43f27a32286c5d07c1a7bab3d68848eabfc01d3d7c2b403c1250eaf1f43cee3fc1b0070bed57da3ff152cc322ee70f4
7
- data.tar.gz: 02404afea3608f6280be6f6e7063a08e5eb75177a28506bea7a60960c3792bb68243d4701b76a3a4d62fdc1b052e744eb2c949a23cddc915032a0c137c5df2cb
6
+ metadata.gz: 95d9504189a959f3f409cb625f2a83d2b8cb4e90be3fed271cc9fd6bdac2e4f3b1fe2e81560cf8d7e72cfbc6b9ea3f910eaeb0283401d026afe9ecad4ee23dc5
7
+ data.tar.gz: 6b919517498d28e9f4b6ca4dda8629f801c0e3cd035932191afdd64cd1edbe4a3191fd93abf2c2f323d1944d6b80835517057ce4ecbf2433e674f1339a74c253
@@ -0,0 +1,74 @@
1
+ # Contributor Covenant Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ In the interest of fostering an open and welcoming environment, we as
6
+ contributors and maintainers pledge to making participation in our project and
7
+ our community a harassment-free experience for everyone, regardless of age, body
8
+ size, disability, ethnicity, gender identity and expression, level of experience,
9
+ nationality, personal appearance, race, religion, or sexual identity and
10
+ orientation.
11
+
12
+ ## Our Standards
13
+
14
+ Examples of behavior that contributes to creating a positive environment
15
+ include:
16
+
17
+ * Using welcoming and inclusive language
18
+ * Being respectful of differing viewpoints and experiences
19
+ * Gracefully accepting constructive criticism
20
+ * Focusing on what is best for the community
21
+ * Showing empathy towards other community members
22
+
23
+ Examples of unacceptable behavior by participants include:
24
+
25
+ * The use of sexualized language or imagery and unwelcome sexual attention or
26
+ advances
27
+ * Trolling, insulting/derogatory comments, and personal or political attacks
28
+ * Public or private harassment
29
+ * Publishing others' private information, such as a physical or electronic
30
+ address, without explicit permission
31
+ * Other conduct which could reasonably be considered inappropriate in a
32
+ professional setting
33
+
34
+ ## Our Responsibilities
35
+
36
+ Project maintainers are responsible for clarifying the standards of acceptable
37
+ behavior and are expected to take appropriate and fair corrective action in
38
+ response to any instances of unacceptable behavior.
39
+
40
+ Project maintainers have the right and responsibility to remove, edit, or
41
+ reject comments, commits, code, wiki edits, issues, and other contributions
42
+ that are not aligned to this Code of Conduct, or to ban temporarily or
43
+ permanently any contributor for other behaviors that they deem inappropriate,
44
+ threatening, offensive, or harmful.
45
+
46
+ ## Scope
47
+
48
+ This Code of Conduct applies both within project spaces and in public spaces
49
+ when an individual is representing the project or its community. Examples of
50
+ representing a project or community include using an official project e-mail
51
+ address, posting via an official social media account, or acting as an appointed
52
+ representative at an online or offline event. Representation of a project may be
53
+ further defined and clarified by project maintainers.
54
+
55
+ ## Enforcement
56
+
57
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
58
+ reported by contacting the project team at resque@librelist.com. All
59
+ complaints will be reviewed and investigated and will result in a response that
60
+ is deemed necessary and appropriate to the circumstances. The project team is
61
+ obligated to maintain confidentiality with regard to the reporter of an incident.
62
+ Further details of specific enforcement policies may be posted separately.
63
+
64
+ Project maintainers who do not follow or enforce the Code of Conduct in good
65
+ faith may face temporary or permanent repercussions as determined by other
66
+ members of the project's leadership.
67
+
68
+ ## Attribution
69
+
70
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71
+ available at [http://contributor-covenant.org/version/1/4][version]
72
+
73
+ [homepage]: http://contributor-covenant.org
74
+ [version]: http://contributor-covenant.org/version/1/4/
data/HISTORY.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Resque Scheduler History / ChangeLog / Release Notes
2
2
 
3
+ ## 4.3.0 (2016-06-26)
4
+ * Add Windows testing on Appveyor
5
+ * Silence output by default when daemonizing
6
+ * Update vagrant setup
7
+ * Add a Code of Conduct
8
+ * Update gem metadata per latest Bundler defaults
9
+
3
10
  ## 4.2.1 (2016-06-08)
4
11
  * Optimization of `find_delayed_selection`
5
12
  * More defensive code around redis disconnects
data/README.md CHANGED
@@ -1,10 +1,11 @@
1
1
  resque-scheduler
2
2
  ================
3
3
 
4
- [![Dependency Status](https://gemnasium.com/resque/resque-scheduler.png)](https://gemnasium.com/resque/resque-scheduler)
5
- [![Gem Version](https://badge.fury.io/rb/resque-scheduler.png)](http://badge.fury.io/rb/resque-scheduler)
6
- [![Build Status](https://travis-ci.org/resque/resque-scheduler.png?branch=master)](https://travis-ci.org/resque/resque-scheduler)
7
- [![Code Climate](https://codeclimate.com/github/resque/resque-scheduler.png)](https://codeclimate.com/github/resque/resque-scheduler)
4
+ [![Dependency Status](https://gemnasium.com/badges/github.com/resque/resque-scheduler.svg)](https://gemnasium.com/github.com/resque/resque-scheduler)
5
+ [![Gem Version](https://badge.fury.io/rb/resque-scheduler.svg)](https://badge.fury.io/rb/resque-scheduler)
6
+ [![Build Status](https://travis-ci.org/resque/resque-scheduler.svg?branch=master)](https://travis-ci.org/resque/resque-scheduler)
7
+ [![Windows Build Status](https://ci.appveyor.com/api/projects/status/sxvf2086v5j0absb/branch/master?svg=true)](https://ci.appveyor.com/project/resque/resque-scheduler/branch/master)
8
+ [![Code Climate](https://codeclimate.com/github/resque/resque-scheduler/badges/gpa.svg)](https://codeclimate.com/github/resque/resque-scheduler)
8
9
 
9
10
  ### Description
10
11
 
@@ -608,11 +609,11 @@ with resque could easily work on resque-scheduler.
608
609
 
609
610
  Working on resque-scheduler requires the following:
610
611
 
611
- * A relatively modern Ruby interpreter (MRI 1.9+ is what's tested)
612
+ * A relatively modern Ruby interpreter
612
613
  * bundler
613
614
 
614
615
  The development setup looks like this, which is roughly the same thing
615
- that happens on Travis CI:
616
+ that happens on Travis CI and Appveyor:
616
617
 
617
618
  ``` bash
618
619
  # Install everything
File without changes
@@ -32,7 +32,11 @@ module Resque
32
32
 
33
33
  # Need to set this here for conditional Process.daemon redirect of
34
34
  # stderr/stdout to /dev/null
35
- Resque::Scheduler.quiet = !!options[:quiet]
35
+ Resque::Scheduler.quiet = if options.key?(:quiet)
36
+ !!options[:quiet]
37
+ else
38
+ true
39
+ end
36
40
 
37
41
  unless Process.respond_to?('daemon')
38
42
  abort 'background option is set, which requires ruby >= 1.9'
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Resque
4
4
  module Scheduler
5
- VERSION = '4.2.1'.freeze
5
+ VERSION = '4.3.0'.freeze
6
6
  end
7
7
  end
@@ -6,21 +6,35 @@ require 'resque/scheduler/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = 'resque-scheduler'
8
8
  spec.version = Resque::Scheduler::VERSION
9
- spec.authors = ['Ben VandenBos']
10
- spec.email = ['bvandenbos@gmail.com']
11
- spec.homepage = 'http://github.com/resque/resque-scheduler'
9
+ spec.authors = <<-EOF.split(/\n/).map(&:strip)
10
+ Ben VandenBos
11
+ Simon Eskildsen
12
+ Ryan Biesemeyer
13
+ Dan Buch
14
+ EOF
15
+ spec.email = %w(
16
+ bvandenbos@gmail.com
17
+ sirup@sirupsen.com
18
+ ryan@yaauie.com
19
+ dan@meatballhat.com
20
+ )
12
21
  spec.summary = 'Light weight job scheduling on top of Resque'
13
22
  spec.description = <<-DESCRIPTION
14
23
  Light weight job scheduling on top of Resque.
15
24
  Adds methods enqueue_at/enqueue_in to schedule jobs in the future.
16
25
  Also supports queueing jobs on a fixed, cron-like schedule.
17
26
  DESCRIPTION
27
+ spec.homepage = 'http://github.com/resque/resque-scheduler'
18
28
  spec.license = 'MIT'
19
29
 
20
- spec.files = `git ls-files -z`.split("\0")
21
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
22
- spec.test_files = spec.files.grep(%r{^test/})
23
- spec.require_paths = ['lib']
30
+ spec.files = `git ls-files -z`.split("\0").reject do |f|
31
+ f.match(%r{^(test|spec|features|examples|bin|tasks)/}) ||
32
+ f.match(/^(Vagrantfile|Gemfile\.lock|appveyor\.yml)/) ||
33
+ f.match(/^\.(rubocop|simplecov|travis|vagrant|gitignore)/)
34
+ end
35
+ spec.bindir = 'exe'
36
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
37
+ spec.require_paths = %w(lib)
24
38
 
25
39
  spec.add_development_dependency 'bundler'
26
40
  spec.add_development_dependency 'json'
metadata CHANGED
@@ -1,14 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resque-scheduler
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.2.1
4
+ version: 4.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben VandenBos
8
+ - Simon Eskildsen
9
+ - Ryan Biesemeyer
10
+ - Dan Buch
8
11
  autorequire:
9
- bindir: bin
12
+ bindir: exe
10
13
  cert_chain: []
11
- date: 2016-06-08 00:00:00.000000000 Z
14
+ date: 2016-06-26 00:00:00.000000000 Z
12
15
  dependencies:
13
16
  - !ruby/object:Gem::Dependency
14
17
  name: bundler
@@ -240,39 +243,23 @@ description: |2
240
243
  Also supports queueing jobs on a fixed, cron-like schedule.
241
244
  email:
242
245
  - bvandenbos@gmail.com
246
+ - sirup@sirupsen.com
247
+ - ryan@yaauie.com
248
+ - dan@meatballhat.com
243
249
  executables:
244
250
  - resque-scheduler
245
251
  extensions: []
246
252
  extra_rdoc_files: []
247
253
  files:
248
- - ".gitignore"
249
- - ".rubocop.yml"
250
- - ".rubocop_todo.yml"
251
- - ".simplecov"
252
- - ".travis.yml"
253
- - ".vagrant-provision-as-vagrant.sh"
254
- - ".vagrant-provision.sh"
255
- - ".vagrant-skel/bash_profile"
256
- - ".vagrant-skel/bashrc"
257
254
  - AUTHORS.md
255
+ - CODE_OF_CONDUCT.md
258
256
  - CONTRIBUTING.md
259
257
  - Gemfile
260
258
  - HISTORY.md
261
259
  - LICENSE
262
260
  - README.md
263
261
  - Rakefile
264
- - Vagrantfile
265
- - bin/resque-scheduler
266
- - examples/Rakefile
267
- - examples/config/initializers/resque-web.rb
268
- - examples/dynamic-scheduling/README.md
269
- - examples/dynamic-scheduling/app/jobs/fix_schedules_job.rb
270
- - examples/dynamic-scheduling/app/jobs/send_email_job.rb
271
- - examples/dynamic-scheduling/app/models/user.rb
272
- - examples/dynamic-scheduling/config/resque.yml
273
- - examples/dynamic-scheduling/config/static_schedule.yml
274
- - examples/dynamic-scheduling/lib/tasks/resque.rake
275
- - examples/run-resque-web
262
+ - exe/resque-scheduler
276
263
  - lib/resque-scheduler.rb
277
264
  - lib/resque/scheduler.rb
278
265
  - lib/resque/scheduler/cli.rb
@@ -302,21 +289,6 @@ files:
302
289
  - lib/resque/scheduler/util.rb
303
290
  - lib/resque/scheduler/version.rb
304
291
  - resque-scheduler.gemspec
305
- - script/migrate_to_timestamps_set.rb
306
- - tasks/resque_scheduler.rake
307
- - test/cli_test.rb
308
- - test/delayed_queue_test.rb
309
- - test/env_test.rb
310
- - test/multi_process_test.rb
311
- - test/resque-web_test.rb
312
- - test/scheduler_args_test.rb
313
- - test/scheduler_hooks_test.rb
314
- - test/scheduler_locking_test.rb
315
- - test/scheduler_setup_test.rb
316
- - test/scheduler_task_test.rb
317
- - test/scheduler_test.rb
318
- - test/test_helper.rb
319
- - test/util_test.rb
320
292
  homepage: http://github.com/resque/resque-scheduler
321
293
  licenses:
322
294
  - MIT
@@ -341,18 +313,5 @@ rubygems_version: 2.5.1
341
313
  signing_key:
342
314
  specification_version: 4
343
315
  summary: Light weight job scheduling on top of Resque
344
- test_files:
345
- - test/cli_test.rb
346
- - test/delayed_queue_test.rb
347
- - test/env_test.rb
348
- - test/multi_process_test.rb
349
- - test/resque-web_test.rb
350
- - test/scheduler_args_test.rb
351
- - test/scheduler_hooks_test.rb
352
- - test/scheduler_locking_test.rb
353
- - test/scheduler_setup_test.rb
354
- - test/scheduler_task_test.rb
355
- - test/scheduler_test.rb
356
- - test/test_helper.rb
357
- - test/util_test.rb
316
+ test_files: []
358
317
  has_rdoc:
data/.gitignore DELETED
@@ -1,17 +0,0 @@
1
- /.bundle/
2
- /.idea/
3
- /.yardoc/
4
-
5
- /doc/
6
- /pkg/
7
- nbproject
8
- /Gemfile.lock
9
- /.rvmrc
10
- *.swp
11
-
12
- /coverage/
13
- /.vagrant/
14
- /dump.rdb
15
-
16
- .env
17
- .env.*
@@ -1,18 +0,0 @@
1
- inherit_from: .rubocop_todo.yml
2
-
3
- AllCops:
4
- Include:
5
- - Gemfile
6
- - '**/Rakefile'
7
- - resque-scheduler.gemspec
8
- - bin/resque-scheduler
9
-
10
- Documentation:
11
- Enabled: false
12
-
13
- Style/DoubleNegation:
14
- Enabled: false
15
- Metrics/PerceivedComplexity:
16
- Enabled: false
17
- Metrics/ClassLength:
18
- Max: 110
@@ -1,71 +0,0 @@
1
- # This configuration was generated by
2
- # `rubocop --auto-gen-config`
3
- # on 2016-05-27 14:45:04 -0400 using RuboCop version 0.40.0.
4
- # The point is for the user to remove these configuration records
5
- # one by one as the offenses are removed from the code base.
6
- # Note that changes in the inspected code, or installation of new
7
- # versions of RuboCop, may require this file to be generated again.
8
-
9
- # Offense count: 1
10
- # Configuration parameters: AllowSafeAssignment.
11
- Lint/AssignmentInCondition:
12
- Exclude:
13
- - 'lib/resque/scheduler/env.rb'
14
-
15
- # Offense count: 2
16
- Lint/UselessAccessModifier:
17
- Exclude:
18
- - 'lib/resque/scheduler.rb'
19
-
20
- # Offense count: 16
21
- Metrics/AbcSize:
22
- Max: 36
23
-
24
- # Offense count: 3
25
- Metrics/CyclomaticComplexity:
26
- Max: 12
27
-
28
- # Offense count: 6
29
- # Configuration parameters: AllowHeredoc, AllowURI, URISchemes.
30
- # URISchemes: http, https
31
- Metrics/LineLength:
32
- Max: 96
33
-
34
- # Offense count: 19
35
- # Configuration parameters: CountComments.
36
- Metrics/MethodLength:
37
- Max: 34
38
-
39
- # Offense count: 2
40
- # Configuration parameters: CountComments.
41
- Metrics/ModuleLength:
42
- Max: 314
43
-
44
- # Offense count: 1
45
- Style/CaseEquality:
46
- Exclude:
47
- - 'lib/resque/scheduler.rb'
48
-
49
- # Offense count: 1
50
- Style/EachWithObject:
51
- Exclude:
52
- - 'lib/resque/scheduler.rb'
53
-
54
- # Offense count: 3
55
- # Configuration parameters: ExpectMatchingDefinition, Regex, IgnoreExecutableScripts.
56
- Style/FileName:
57
- Exclude:
58
- - 'examples/config/initializers/resque-web.rb'
59
- - 'lib/resque-scheduler.rb'
60
- - 'test/resque-web_test.rb'
61
-
62
- # Offense count: 1
63
- # Configuration parameters: MinBodyLength.
64
- Style/GuardClause:
65
- Exclude:
66
- - 'lib/resque/scheduler/lock/basic.rb'
67
-
68
- # Offense count: 1
69
- Style/IfInsideElse:
70
- Exclude:
71
- - 'lib/resque/scheduler.rb'
data/.simplecov DELETED
@@ -1,3 +0,0 @@
1
- if ENV['COVERAGE'] && RUBY_PLATFORM !~ /java/
2
- SimpleCov.start { add_filter '/test/' }
3
- end
@@ -1,26 +0,0 @@
1
- language: ruby
2
- sudo: false
3
- rvm:
4
- - 1.9.3
5
- - 2.3.1
6
- - jruby-9.1.1.0
7
- env:
8
- global:
9
- - COVERAGE=1
10
- - JRUBY_OPTS=''
11
- - RUBYOPT='-W0'
12
- matrix:
13
- allow_failures:
14
- - rvm: jruby-9.1.1.0
15
- services:
16
- - redis-server
17
- deploy:
18
- provider: rubygems
19
- api_key:
20
- secure: dM97lL/jTu14mEHD2Ih/vQfZ8cWJWb+DQ8UKZjkD2JfYtvwEAlkPG9RrrDkSHb5qkYxG2VAhjyx/0MZJ0TsVL6wrLMC9gcJb3yomw2Sch2Noj68tEndiSUHnxrB9gKzbhHbjLQXDqYf4Hco9/PHHQp4piFPJhLzNZRehIuTJPcA=
21
- gem: resque-scheduler
22
- on:
23
- tags: true
24
- repo: resque/resque-scheduler
25
- rvm: 2.3.1
26
- all_branches: true