sidetiq-timezone 0.2.0 → 0.3.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: 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