sidetiq-timezone 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 77951f7328c7ac832dd8577121f5fd28cad1ae83
4
- data.tar.gz: afd8474dd8bb0655c0d708618b2aa5b29400de58
3
+ metadata.gz: ac8d5781927373d6dcaa3dea796031d957791bde
4
+ data.tar.gz: af7ce935a4a00c85d225611a4d488279c282f560
5
5
  SHA512:
6
- metadata.gz: f765e9d7aab0f72846ccbe1c5b78766a7728b39b4c652c787486e003bbcb182fd06d1160790533b1fb234a350bfb163f1c3b99c86ee355769c0150d5cc9dbda1
7
- data.tar.gz: 9e833226a249b5946f1c4bfc8dd0b1f8771bb20d15e37e0122b1fef7a75768b6c49b4b8eaefdb9971ab03905491e36fcaf2798521342aa7ef5f0c77bf471aa60
6
+ metadata.gz: e2fd3da0ac7a6f88d423fec82364f4143c7571bd492ba356e15c31fb519201a8d16a14b56990af403d20a1f8a8cdeb49b9280c136cba6252f06b7c139e32510a
7
+ data.tar.gz: b5eaa65e7500a7ae6512246ed98851cc6403643f7e73c866917ba044d713297c14c5186840b25a3403f582e4fc24a40706f7332e7b03346543f2459368cdc5ad
data/README.md CHANGED
@@ -48,9 +48,14 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
48
48
 
49
49
  ## Version History
50
50
 
51
+ - 0.3.0
52
+
53
+ Change the namespace from Sidetiq::Timezone to SidetiqTimezone and
54
+ sidetiq/timezone to sidetiq-timezone to avoid pollution
55
+
51
56
  - 0.2.0
52
57
 
53
- Support Sidetiq 0.8 (no functional change, just dependency updates)
58
+ Support Sidetiq 0.7 (no functional change, just dependency updates)
54
59
 
55
60
  - 0.1.0
56
61
 
@@ -0,0 +1,13 @@
1
+ # :markup: markdown
2
+
3
+ require 'sidetiq'
4
+ require 'active_support/time'
5
+
6
+ # Adds time zone support to Sidetiq.
7
+ module SidetiqTimezone
8
+ end
9
+
10
+ require 'sidetiq-timezone/version'
11
+ require 'sidetiq-timezone/clock'
12
+ require 'sidetiq-timezone/schedule'
13
+ require 'sidetiq-timezone/schedulable'
@@ -0,0 +1,36 @@
1
+ # :markup: markdown
2
+
3
+ module SidetiqTimezone
4
+ # Adds an accessor `time_zone`.
5
+ module Clock
6
+ attr_accessor :time_zone
7
+
8
+ def time_zone=(time_zone)
9
+ info "Using the time zone: #{time_zone ? time_zone.name : 'none'}"
10
+ @time_zone = time_zone
11
+ end
12
+
13
+ def gettime
14
+ if @time_zone
15
+ @time_zone.now
16
+ else
17
+ super
18
+ end
19
+ end
20
+ end
21
+ end
22
+
23
+ class Sidetiq::Clock
24
+ prepend SidetiqTimezone::Clock
25
+
26
+ ##
27
+ # :attr_accessor: time_zone
28
+ #
29
+ # Time zone for Sidetiq. If you don't set this, it is
30
+ # automatically set to `Time.zone` when the first class to include
31
+ # `Sidetiq::Schedulable` is defined.
32
+ #
33
+ # ```ruby
34
+ # Sidetiq.clock.time_zone = ActiveSupport::TimeZone['Tokyo']
35
+ # ```
36
+ end
@@ -0,0 +1,27 @@
1
+ # :markup: markdown
2
+
3
+ module SidetiqTimezone
4
+ module Schedulable
5
+ # Automatically sets the application time zone for Sidetiq when
6
+ # a (first) worker is defined.
7
+ module ClassMethods
8
+ def included(klass)
9
+ super
10
+ Sidetiq.clock.time_zone ||= Time.zone
11
+ end
12
+ end
13
+ end
14
+ end
15
+
16
+ module Sidetiq::Schedulable
17
+ class << self
18
+ prepend SidetiqTimezone::Schedulable::ClassMethods
19
+ end
20
+
21
+ module ClassMethods
22
+ # Returns Sidetiq.clock.time_zone.
23
+ def time_zone
24
+ Sidetiq.clock.time_zone
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,23 @@
1
+ # :markup: markdown
2
+
3
+ module SidetiqTimezone
4
+ module Schedule
5
+ # Makes start_time adopt the application time zone.
6
+ module ClassMethods
7
+ def start_time
8
+ start_time = super
9
+ if time_zone = Sidetiq.clock.time_zone
10
+ time_zone.local(start_time.year, start_time.month, start_time.day)
11
+ else
12
+ start_time
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+
19
+ class Sidetiq::Schedule
20
+ class << self
21
+ prepend SidetiqTimezone::Schedule::ClassMethods
22
+ end
23
+ end
@@ -0,0 +1,5 @@
1
+ # :markup: markdown
2
+
3
+ module SidetiqTimezone
4
+ VERSION = "0.3.0"
5
+ end
@@ -1,11 +1,11 @@
1
1
  # coding: utf-8
2
2
  lib = File.expand_path('../lib', __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'sidetiq/timezone/version'
4
+ require 'sidetiq-timezone/version'
5
5
 
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "sidetiq-timezone"
8
- spec.version = Sidetiq::Timezone::VERSION
8
+ spec.version = SidetiqTimezone::VERSION
9
9
  spec.authors = ["Akinori MUSHA"]
10
10
  spec.email = ["knu@idaemons.org"]
11
11
 
@@ -28,10 +28,10 @@ EOF
28
28
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
29
29
  spec.require_paths = ["lib"]
30
30
 
31
- spec.add_runtime_dependency "sidetiq", [">= 0.6", "< 0.9"]
31
+ spec.add_runtime_dependency "sidetiq", "~> 0.6"
32
32
  spec.add_runtime_dependency "activesupport", ">= 0"
33
33
 
34
34
  spec.add_development_dependency "bundler", "~> 1.8"
35
- spec.add_development_dependency "rake", "~> 10.0"
35
+ spec.add_development_dependency "rake", ">= 10.0"
36
36
  spec.add_development_dependency "rspec"
37
37
  end
metadata CHANGED
@@ -1,35 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidetiq-timezone
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Akinori MUSHA
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-12-09 00:00:00.000000000 Z
11
+ date: 2016-12-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sidetiq
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0.6'
20
- - - "<"
21
- - !ruby/object:Gem::Version
22
- version: '0.9'
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
- - - ">="
24
+ - - "~>"
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0.6'
30
- - - "<"
31
- - !ruby/object:Gem::Version
32
- version: '0.9'
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: activesupport
35
29
  requirement: !ruby/object:Gem::Requirement
@@ -62,14 +56,14 @@ dependencies:
62
56
  name: rake
63
57
  requirement: !ruby/object:Gem::Requirement
64
58
  requirements:
65
- - - "~>"
59
+ - - ">="
66
60
  - !ruby/object:Gem::Version
67
61
  version: '10.0'
68
62
  type: :development
69
63
  prerelease: false
70
64
  version_requirements: !ruby/object:Gem::Requirement
71
65
  requirements:
72
- - - "~>"
66
+ - - ">="
73
67
  - !ruby/object:Gem::Version
74
68
  version: '10.0'
75
69
  - !ruby/object:Gem::Dependency
@@ -105,11 +99,11 @@ files:
105
99
  - Rakefile
106
100
  - bin/console
107
101
  - bin/setup
108
- - lib/sidetiq/timezone.rb
109
- - lib/sidetiq/timezone/clock.rb
110
- - lib/sidetiq/timezone/schedulable.rb
111
- - lib/sidetiq/timezone/schedule.rb
112
- - lib/sidetiq/timezone/version.rb
102
+ - lib/sidetiq-timezone.rb
103
+ - lib/sidetiq-timezone/clock.rb
104
+ - lib/sidetiq-timezone/schedulable.rb
105
+ - lib/sidetiq-timezone/schedule.rb
106
+ - lib/sidetiq-timezone/version.rb
113
107
  - sidetiq-timezone.gemspec
114
108
  homepage: https://github.com/knu/sidetiq-timezone
115
109
  licenses:
@@ -1,15 +0,0 @@
1
- # :markup: markdown
2
-
3
- require 'sidetiq'
4
- require 'active_support/time'
5
-
6
- module Sidetiq
7
- # Adds time zone support to Sidetiq.
8
- module Timezone
9
- end
10
- end
11
-
12
- require 'sidetiq/timezone/version'
13
- require 'sidetiq/timezone/clock'
14
- require 'sidetiq/timezone/schedule'
15
- require 'sidetiq/timezone/schedulable'
@@ -1,38 +0,0 @@
1
- # :markup: markdown
2
-
3
- module Sidetiq
4
- module Timezone
5
- # Adds an accessor `time_zone`.
6
- module Clock
7
- attr_accessor :time_zone
8
-
9
- def time_zone=(time_zone)
10
- info "Using the time zone: #{time_zone ? time_zone.name : 'none'}"
11
- @time_zone = time_zone
12
- end
13
-
14
- def gettime
15
- if @time_zone
16
- @time_zone.now
17
- else
18
- super
19
- end
20
- end
21
- end
22
- end
23
-
24
- class Clock
25
- prepend Timezone::Clock
26
-
27
- ##
28
- # :attr_accessor: time_zone
29
- #
30
- # Time zone for Sidetiq. If you don't set this, it is
31
- # automatically set to `Time.zone` when the first class to include
32
- # `Sidetiq::Schedulable` is defined.
33
- #
34
- # ```ruby
35
- # Sidetiq.clock.time_zone = ActiveSupport::TimeZone['Tokyo']
36
- # ```
37
- end
38
- end
@@ -1,29 +0,0 @@
1
- # :markup: markdown
2
-
3
- module Sidetiq
4
- module Timezone
5
- module Schedulable
6
- # Automatically sets the application time zone for Sidetiq when
7
- # a (first) worker is defined.
8
- module ClassMethods
9
- def included(klass)
10
- super
11
- Sidetiq.clock.time_zone ||= Time.zone
12
- end
13
- end
14
- end
15
- end
16
-
17
- module Schedulable
18
- class << self
19
- prepend Timezone::Schedulable::ClassMethods
20
- end
21
-
22
- module ClassMethods
23
- # Returns Sidetiq.clock.time_zone.
24
- def time_zone
25
- Sidetiq.clock.time_zone
26
- end
27
- end
28
- end
29
- end
@@ -1,25 +0,0 @@
1
- # :markup: markdown
2
-
3
- module Sidetiq
4
- module Timezone
5
- module Schedule
6
- # Makes start_time adopt the application time zone.
7
- module ClassMethods
8
- def start_time
9
- start_time = super
10
- if time_zone = Sidetiq.clock.time_zone
11
- time_zone.local(start_time.year, start_time.month, start_time.day)
12
- else
13
- start_time
14
- end
15
- end
16
- end
17
- end
18
- end
19
-
20
- class Schedule
21
- class << self
22
- prepend Timezone::Schedule::ClassMethods
23
- end
24
- end
25
- end
@@ -1,7 +0,0 @@
1
- # :markup: markdown
2
-
3
- module Sidetiq
4
- module Timezone
5
- VERSION = "0.2.0"
6
- end
7
- end