artic 1.0.4 → 1.0.5

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
- SHA1:
3
- metadata.gz: e18da08890902ac99b52b4ee952434f9d9baef93
4
- data.tar.gz: 606c1607c71979d04b61911d218c7a0ecaaae49a
2
+ SHA256:
3
+ metadata.gz: 9b52794a1039644f03d1cb60c9144ef80b55f035801d7878be046706549fdebd
4
+ data.tar.gz: b79ac5ce424566b1971c64d485340e1f27638d00781cad84eee8366efbac122e
5
5
  SHA512:
6
- metadata.gz: 67f52f2416b9970a1d700a8983d3e733d86556d15e703b9abac15c8609e5ad97afe64856df71a3606db0377e297f1e40b3d8e30edb82f1a79600f8ca408d9f42
7
- data.tar.gz: c5efdc1b8f7aa7f2e6526034968143f3dcb9880ef401f66d89daef5fab910e69feb602b0c10bea36d964b1993089eb08fe4999bc479b507278f06b0744de21a4
6
+ metadata.gz: 3a84e8f0f353b98f3f5e4f86af2821e7bacde6327dd04a8ea0f80efcffc68b8bc99ce37b00bbf5ed6a6fecba6a7f06975172b763108abcdeb05370ed15fef830
7
+ data.tar.gz: 05e5cd7002ffe467261477d145463acccb0952beca0e7754573eb62f72bfc02f882db20b6424bb4a31a68d7bb5d57d9642c7b0ae393d109559e637b534caf04a
@@ -13,33 +13,37 @@ AllCops:
13
13
  - 'spec/rails_helper.rb'
14
14
  - 'spec/support/**/*'
15
15
  - 'config/**/*'
16
- - 'Rakefile'
17
- - 'Gemfile'
16
+ - '**/Rakefile'
17
+ - '**/Gemfile'
18
+
19
+ RSpec/DescribeClass:
20
+ Exclude:
21
+ - 'spec/requests/**/*'
18
22
 
19
23
  Style/BlockDelimiters:
20
24
  Exclude:
21
25
  - 'spec/**/*'
22
26
 
23
- Style/AlignParameters:
27
+ Layout/AlignParameters:
24
28
  EnforcedStyle: with_fixed_indentation
25
29
 
26
- Style/ClosingParenthesisIndentation:
30
+ Layout/ClosingParenthesisIndentation:
27
31
  Enabled: false
28
32
 
29
33
  Metrics/LineLength:
30
34
  Max: 100
31
35
  AllowURI: true
32
36
 
33
- Style/FirstParameterIndentation:
37
+ Layout/FirstParameterIndentation:
34
38
  Enabled: false
35
39
 
36
- Style/MultilineMethodCallIndentation:
40
+ Layout/MultilineMethodCallIndentation:
37
41
  EnforcedStyle: indented
38
42
 
39
- Style/IndentArray:
43
+ Layout/IndentArray:
40
44
  EnforcedStyle: consistent
41
45
 
42
- Style/IndentHash:
46
+ Layout/IndentHash:
43
47
  EnforcedStyle: consistent
44
48
 
45
49
  Style/SignalException:
@@ -49,14 +53,53 @@ Style/BracesAroundHashParameters:
49
53
  EnforcedStyle: context_dependent
50
54
 
51
55
  Lint/EndAlignment:
52
- AlignWith: variable
56
+ EnforcedStyleAlignWith: variable
53
57
  AutoCorrect: true
54
58
 
55
59
  Style/AndOr:
56
60
  EnforcedStyle: conditionals
57
61
 
62
+ Style/MultilineBlockChain:
63
+ Enabled: false
64
+
65
+ RSpec/NamedSubject:
66
+ Enabled: false
67
+
68
+ RSpec/ExampleLength:
69
+ Enabled: false
70
+
71
+ Layout/MultilineMethodCallBraceLayout:
72
+ Enabled: false
73
+
58
74
  Metrics/MethodLength:
59
- Max: 15
75
+ Enabled: false
76
+
77
+ Metrics/AbcSize:
78
+ Enabled: false
79
+
80
+ Metrics/PerceivedComplexity:
81
+ Enabled: false
82
+
83
+ Metrics/CyclomaticComplexity:
84
+ Enabled: false
85
+
86
+ Metrics/ClassLength:
87
+ Enabled: false
88
+
89
+ Metrics/BlockLength:
90
+ Enabled: false
91
+
92
+ Style/Documentation:
93
+ Enabled: false
94
+
95
+ Naming/MethodName:
96
+ Enabled: false
97
+
98
+ Naming/AccessorMethodName:
99
+ Enabled: false
100
+
101
+ RSpec/MessageSpies:
102
+ EnforcedStyle: receive
60
103
 
61
- RSpec/MessageExpectation:
104
+ Style/GuardClause:
62
105
  Enabled: false
@@ -1,9 +1,5 @@
1
+ sudo: false
2
+ language: ruby
1
3
  rvm:
2
- - 2.3.0
3
- before_install:
4
- - gem update --system
5
- - gem update bundler
6
- - gem cleanup bundler
7
- branches:
8
- only:
9
- - master
4
+ - 2.5.0
5
+ before_install: gem install bundler -v 1.16.1
@@ -0,0 +1,50 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project
6
+ adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
9
+
10
+ ## [1.0.5]
11
+
12
+ ### Changed
13
+
14
+ - Updated and linted codebase
15
+
16
+ ## [1.0.4]
17
+
18
+ ### Fixed
19
+
20
+ - Fixed `Calendar#free_slots_on` using occupations from other dates
21
+
22
+ ## [1.0.3]
23
+
24
+ ### Fixed
25
+
26
+ - Fixed glitches in `OccupationCollection#bisect`
27
+
28
+ ## [1.0.2]
29
+
30
+ ### Fixed
31
+
32
+ - Fixed `OccupationCollection#bisect` when accumulator is empty
33
+
34
+ ## [1.0.1]
35
+
36
+ ### Fixed
37
+
38
+ - Switched to `Range#begin` and `Range#end` instead of `#min` and `#max`
39
+
40
+ ## [1.0.0]
41
+
42
+ First stable release.
43
+
44
+ [Unreleased]: https://github.com/aldesantis/artic/compare/v1.0.5...HEAD
45
+ [1.0.5]: https://github.com/aldesantis/artic/compare/v1.0.4...v1.0.5
46
+ [1.0.4]: https://github.com/aldesantis/artic/compare/v1.0.3...v1.0.4
47
+ [1.0.3]: https://github.com/aldesantis/artic/compare/v1.0.2...v1.0.3
48
+ [1.0.2]: https://github.com/aldesantis/artic/compare/v1.0.1...v1.0.2
49
+ [1.0.1]: https://github.com/aldesantis/artic/compare/v1.0.0...v1.0.1
50
+ [1.0.0]: https://github.com/aldesantis/artic/tree/v1.0.0
data/README.md CHANGED
@@ -1,9 +1,9 @@
1
1
  # A.R.TI.C.
2
2
 
3
- [![Gem Version](https://img.shields.io/gem/v/artic.svg?maxAge=3600&style=flat-square)](https://rubygems.org/gems/artic)
4
- [![Build Status](https://img.shields.io/travis/alessandro1997/artic.svg?maxAge=3600&style=flat-square)](https://travis-ci.org/alessandro1997/artic)
5
- [![Dependency Status](https://img.shields.io/gemnasium/alessandro1997/artic.svg?maxAge=3600&style=flat-square)](https://gemnasium.com/github.com/alessandro1997/artic)
6
- [![Code Climate](https://img.shields.io/codeclimate/github/alessandro1997/artic.svg?maxAge=3600&style=flat-square)](https://codeclimate.com/github/alessandro1997/artic)
3
+ [![Build Status](https://travis-ci.org/aldesantis/artic.svg?branch=master)](https://travis-ci.org/aldesantis/artic)
4
+ [![Dependency Status](https://gemnasium.com/badges/github.com/aldesantis/artic.svg)](https://gemnasium.com/github.com/aldesantis/artic)
5
+ [![Maintainability](https://api.codeclimate.com/v1/badges/bfcbbf050bd58ab46798/maintainability)](https://codeclimate.com/github/aldesantis/artic/maintainability)
6
+ [![Coverage Status](https://coveralls.io/repos/github/aldesantis/artic/badge.svg?branch=master)](https://coveralls.io/github/aldesantis/artic?branch=master)
7
7
 
8
8
  **A** **R**uby gem for **TI**me **C**omputations.
9
9
 
@@ -134,7 +134,7 @@ will create a git tag for the version, push git commits and tags, and push the `
134
134
 
135
135
  ## Contributing
136
136
 
137
- Bug reports and pull requests are welcome on GitHub at https://github.com/alessandro1997/artic.
137
+ Bug reports and pull requests are welcome on GitHub at https://github.com/aldesantis/artic.
138
138
 
139
139
  ## License
140
140
 
@@ -1,33 +1,35 @@
1
- # coding: utf-8
1
+ # frozen_string_literal: true
2
+
2
3
  lib = File.expand_path('../lib', __FILE__)
3
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
5
  require 'artic/version'
5
6
 
6
7
  Gem::Specification.new do |spec|
7
- spec.name = "artic"
8
+ spec.name = 'artic'
8
9
  spec.version = Artic::VERSION
9
- spec.authors = ["Alessandro Desantis"]
10
- spec.email = ["desa.alessandro@gmail.com"]
10
+ spec.authors = ['Alessandro Desantis']
11
+ spec.email = ['desa.alessandro@gmail.com']
11
12
 
12
- spec.summary = %q{A Ruby gem for time computations.}
13
- spec.homepage = "https://github.com/alessandro1997/artic"
14
- spec.license = "MIT"
13
+ spec.summary = 'A Ruby gem for time computations.'
14
+ spec.homepage = 'https://github.com/alessandro1997/artic'
15
+ spec.license = 'MIT'
15
16
 
16
17
  spec.files = `git ls-files -z`.split("\x0").reject do |f|
17
18
  f.match(%r{^(test|spec|features)/})
18
19
  end
19
- spec.bindir = "exe"
20
+ spec.bindir = 'exe'
20
21
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
21
- spec.require_paths = ["lib"]
22
+ spec.require_paths = ['lib']
22
23
 
23
- spec.add_dependency 'tzinfo', '~> 1.2.2'
24
- spec.add_dependency 'tzinfo-data', '~> 1.2016.7'
24
+ spec.add_dependency 'tzinfo', '~> 1.2'
25
+ spec.add_dependency 'tzinfo-data', '~> 1.2017'
25
26
 
26
- spec.add_development_dependency "bundler"
27
- spec.add_development_dependency "rake"
28
- spec.add_development_dependency "rspec"
29
- spec.add_development_dependency "pry"
30
- spec.add_development_dependency 'rubocop'
31
- spec.add_development_dependency 'rubocop-rspec'
32
- spec.add_development_dependency 'fuubar'
27
+ spec.add_development_dependency 'bundler', '~> 1.16'
28
+ spec.add_development_dependency 'coveralls', '~> 0.8'
29
+ spec.add_development_dependency 'fuubar', '~> 2.3'
30
+ spec.add_development_dependency 'pry', '~> 0.11'
31
+ spec.add_development_dependency 'rake', '~> 12.3'
32
+ spec.add_development_dependency 'rspec', '~> 3.7'
33
+ spec.add_development_dependency 'rubocop', '~> 0.52'
34
+ spec.add_development_dependency 'rubocop-rspec', '~> 1.22'
33
35
  end
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  require 'tzinfo'
3
4
 
4
5
  require 'artic/version'
@@ -1,10 +1,11 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  module Artic
3
4
  # Availability represents a slot of time in a givn day of the week or date when you're available.
4
5
  #
5
6
  # @author Alessandro Desantis
6
7
  class Availability
7
- DAYS_OF_WEEK = %i(monday tuesday wednesday thursday friday saturday sunday).freeze
8
+ DAYS_OF_WEEK = %i[monday tuesday wednesday thursday friday saturday sunday].freeze
8
9
 
9
10
  # @!attribute [r] day_of_week
10
11
  # @todo Rename to +wday+
@@ -80,6 +81,7 @@ module Artic
80
81
  return -1 if date.nil? && !other.date.nil?
81
82
  return 1 if !date.nil? && other.date.nil?
82
83
 
84
+ # rubocop:disable Style/IfInsideElse
83
85
  if date.nil? && other.date.nil? # both availabilities are for a weekday
84
86
  if day_of_week == other.day_of_week # availabilities are for the same weekday
85
87
  time_range.min <=> other.time_range.min # compare times
@@ -96,15 +98,15 @@ module Artic
96
98
  date <=> other.date # compare dates
97
99
  end
98
100
  end
101
+ # rubocop:enable Style/IfInsideElse
99
102
  end
100
103
 
101
104
  private
102
105
 
103
106
  def validate_day_of_week
104
- fail(
105
- ArgumentError,
106
- "#{day_of_week} is not a valid day of the week"
107
- ) unless DAYS_OF_WEEK.include?(day_of_week)
107
+ unless DAYS_OF_WEEK.include?(day_of_week)
108
+ fail ArgumentError, "#{day_of_week} is not a valid day of the week"
109
+ end
108
110
  end
109
111
  end
110
112
  end
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  module Artic
3
4
  # A calendar keeps track of both your availabilities and your occupations.
4
5
  #
@@ -34,9 +35,11 @@ module Artic
34
35
  #
35
36
  # @see Collection::AvailabilityCollection#normalize
36
37
  def available_slots_on(dow_or_date)
38
+ # rubocop:disable Metrics/LineLength
37
39
  if !availabilities.identifier?(dow_or_date) && dow_or_date.is_a?(Date) && availabilities.identifier?(dow_or_date.strftime('%A').downcase)
38
40
  return available_slots_on(dow_or_date.strftime('%A').downcase)
39
41
  end
42
+ # rubocop:enable Metrics/LineLength
40
43
 
41
44
  availabilities.normalize dow_or_date
42
45
  end
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  module Artic
3
4
  module Collection
4
5
  # Keeps a collection of availabilities and performs calculations on them.
@@ -46,9 +47,11 @@ module Artic
46
47
 
47
48
  last_availability = accumulator.pop
48
49
 
49
- next (
50
- accumulator + [last_availability, availability]
51
- ) unless last_availability.time_range.overlaps?(availability.time_range)
50
+ unless last_availability.time_range.overlaps?(availability.time_range)
51
+ next (
52
+ accumulator + [last_availability, availability]
53
+ )
54
+ end
52
55
 
53
56
  new_time_range = Range.new(
54
57
  [last_availability.time_range.min, availability.time_range.min].min,
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  module Artic
3
4
  module Collection
4
5
  # Keeps a collection of occupations.
@@ -45,9 +46,11 @@ module Artic
45
46
 
46
47
  last_occupation = accumulator.pop
47
48
 
48
- next (
49
- accumulator + [last_occupation, occupation]
50
- ) unless last_occupation.time_range.overlaps?(occupation.time_range)
49
+ unless last_occupation.time_range.overlaps?(occupation.time_range)
50
+ next (
51
+ accumulator + [last_occupation, occupation]
52
+ )
53
+ end
51
54
 
52
55
  new_time_range = Range.new(
53
56
  [last_occupation.time_range.min, occupation.time_range.min].min,
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  module Artic
3
4
  # An occupation represents a slot of time in a given date where you are not available.
4
5
  #
@@ -15,7 +16,7 @@ module Artic
15
16
  @time_range = TimeRange.build(time_range)
16
17
  end
17
18
 
18
- # Converts the occupation to a range of +DateTime+ objects.
19
+ # Converts the occupation to a range of +Time+ objects.
19
20
  #
20
21
  # @return [Range]
21
22
  #
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  module Artic
3
4
  # Represents a range of two times in the same day (e.g. 09:00-17:00).
4
5
  #
@@ -49,15 +50,15 @@ module Artic
49
50
  self.begin <= other.begin && self.end >= other.end
50
51
  end
51
52
 
52
- # Returns a range of +DateTime+ objects for this time range.
53
+ # Returns a range of +Time+ objects for this time range.
53
54
  #
54
55
  # @param date [Date] the date to use for the range
55
56
  #
56
57
  # @return [Range]
57
58
  def with_date(date)
58
59
  Range.new(
59
- DateTime.parse("#{date} #{self.begin}"),
60
- DateTime.parse("#{date} #{self.end}")
60
+ Time.parse("#{date} #{self.begin}"),
61
+ Time.parse("#{date} #{self.end}")
61
62
  )
62
63
  end
63
64
 
@@ -113,20 +114,26 @@ module Artic
113
114
  private
114
115
 
115
116
  def validate_range
116
- fail(
117
- ArgumentError,
118
- "#{self.begin} is not a valid time"
119
- ) unless self.begin =~ TIME_REGEX
117
+ unless self.begin =~ TIME_REGEX
118
+ fail(
119
+ ArgumentError,
120
+ "#{self.begin} is not a valid time"
121
+ )
122
+ end
120
123
 
121
- fail(
122
- ArgumentError,
123
- "#{self.end} is not a valid time"
124
- ) unless self.end =~ TIME_REGEX
124
+ unless self.end =~ TIME_REGEX
125
+ fail(
126
+ ArgumentError,
127
+ "#{self.end} is not a valid time"
128
+ )
129
+ end
125
130
 
126
- fail(
127
- ArgumentError,
128
- "#{self.begin} is greater than #{self.end}"
129
- ) if self.begin > self.end
131
+ if self.begin > self.end
132
+ fail(
133
+ ArgumentError,
134
+ "#{self.begin} is greater than #{self.end}"
135
+ )
136
+ end
130
137
  end
131
138
  end
132
139
  end
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  module Artic
3
- VERSION = '1.0.4'
4
+ VERSION = '1.0.5'
4
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: artic
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 1.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alessandro Desantis
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-12-30 00:00:00.000000000 Z
11
+ date: 2018-02-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: tzinfo
@@ -16,126 +16,140 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.2.2
19
+ version: '1.2'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 1.2.2
26
+ version: '1.2'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: tzinfo-data
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.2016.7
33
+ version: '1.2017'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 1.2016.7
40
+ version: '1.2017'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: '1.16'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: '1.16'
55
55
  - !ruby/object:Gem::Dependency
56
- name: rake
56
+ name: coveralls
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
61
+ version: '0.8'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ">="
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
68
+ version: '0.8'
69
69
  - !ruby/object:Gem::Dependency
70
- name: rspec
70
+ name: fuubar
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ">="
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '0'
75
+ version: '2.3'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '0'
82
+ version: '2.3'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: pry
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">="
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '0'
89
+ version: '0.11'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '0'
96
+ version: '0.11'
97
97
  - !ruby/object:Gem::Dependency
98
- name: rubocop
98
+ name: rake
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ">="
101
+ - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '0'
103
+ version: '12.3'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ">="
108
+ - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '0'
110
+ version: '12.3'
111
111
  - !ruby/object:Gem::Dependency
112
- name: rubocop-rspec
112
+ name: rspec
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - ">="
115
+ - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: '0'
117
+ version: '3.7'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - ">="
122
+ - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: '0'
124
+ version: '3.7'
125
125
  - !ruby/object:Gem::Dependency
126
- name: fuubar
126
+ name: rubocop
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - ">="
129
+ - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: '0'
131
+ version: '0.52'
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
- - - ">="
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '0.52'
139
+ - !ruby/object:Gem::Dependency
140
+ name: rubocop-rspec
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '1.22'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
137
151
  - !ruby/object:Gem::Version
138
- version: '0'
152
+ version: '1.22'
139
153
  description:
140
154
  email:
141
155
  - desa.alessandro@gmail.com
@@ -147,6 +161,7 @@ files:
147
161
  - ".rspec"
148
162
  - ".rubocop.yml"
149
163
  - ".travis.yml"
164
+ - CHANGELOG.md
150
165
  - Gemfile
151
166
  - LICENSE.txt
152
167
  - README.md
@@ -182,7 +197,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
182
197
  version: '0'
183
198
  requirements: []
184
199
  rubyforge_project:
185
- rubygems_version: 2.5.1
200
+ rubygems_version: 2.7.4
186
201
  signing_key:
187
202
  specification_version: 4
188
203
  summary: A Ruby gem for time computations.