fiscal_year 0.5.0 → 0.6.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
  SHA256:
3
- metadata.gz: b2a44c87e166920493e3723924cdf5c0a20cbdca0f148fb87e32a69aee645267
4
- data.tar.gz: c6a17528d17f0cb3de8143a01227b06c7e8e527eee3a7ccc5677b637b7b3c41a
3
+ metadata.gz: '0917960fc403b45d283863bad77ac8e35fc8b5a3c216a13f1ca2cdb68c95410a'
4
+ data.tar.gz: 68506d80a59973356f41d5bd1c55af3164542378ec8d9bea7d31be14bd90e302
5
5
  SHA512:
6
- metadata.gz: 5ade0c96554bc2670317108bb74851ccfd485cf4932709eafe479de937db7fab43c864a8372d895b99d774cebe6bb08520191e5015ca4ef38eb1a85a19f3d8f4
7
- data.tar.gz: ca421f4b2fa6fd74c319bab2eb739203391f3c71d0fcd592e78018a62900e72edfcc838e7480e1d2a80af1256266c9863e014ec2873f6e8169e1a52dfbe8d1c8
6
+ metadata.gz: 74e0c8c7ddff795d9c64754dde60b462073f45afd04892dcad3e1595970d1bc2a7ac4ebf3bc464ccc112f10bfe33393023bf008cf08b349c27839994a00c4199
7
+ data.tar.gz: 50c1f1e00478c28ee72bc301ab8ab5fe42c1d142e822cc2d8747ff25f631ff62aff2e3e457e8bb852cde09676b38c0826057f8dedd503e5ad8ad2c3ad37a7e90
data/.rubocop.yml CHANGED
@@ -1,5 +1,5 @@
1
1
  AllCops:
2
- TargetRubyVersion: 2.6
2
+ TargetRubyVersion: 3.1
3
3
  Exclude:
4
4
  - 'Steepfile'
5
5
  - 'vendor/**/*'
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ## [0.6.0] - 2024-05-15
2
+ - [BREAK] Ruby 3.0.x, 2.7.x and 2.6.x has no longer support.
3
+ - add `FiscalYear.range_by` method
4
+
1
5
  ## [0.5.0] - 2024-03-18
2
6
  - [BREAK] rename and move `FiscalYear::Half.normalize_year_by_month` to `FiscalYear.increase_year_by_month`
3
7
  - add `FiscalYear.decrease_year_by_month` method
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module FiscalYear
4
- VERSION = "0.5.0"
4
+ VERSION = "0.6.0"
5
5
  end
@@ -21,16 +21,13 @@ module FiscalYear
21
21
  months = FiscalYear.months[(0..month_index)]
22
22
  raise StandardError if months.nil?
23
23
 
24
- pair = []
25
- [date.year].product(months).each do |e|
26
- pair << if FiscalYear.cross_year_month?(month)
27
- (FiscalYear.cross_year_month?(e.second) ? e : [e.first - 1, e.second])
28
- else
29
- e
30
- end
24
+ [date.year].product(months).map do |e|
25
+ if FiscalYear.cross_year_month?(month)
26
+ (FiscalYear.cross_year_month?(e.second) ? e : [e.first - 1, e.second])
27
+ else
28
+ e
29
+ end
31
30
  end
32
-
33
- pair
34
31
  end
35
32
 
36
33
  # TODO: fit to Abc size
data/lib/fiscal_year.rb CHANGED
@@ -68,5 +68,13 @@ module FiscalYear
68
68
  year
69
69
  end
70
70
  end
71
+
72
+ def range_by(date)
73
+ year = date.year
74
+ month = date.month
75
+ normalized_year = decrease_year_by_month(year, month)
76
+
77
+ FiscalYear::Half.first_range_by(normalized_year).first..FiscalYear::Half.second_range_by(normalized_year).last
78
+ end
71
79
  end
72
80
  end
@@ -1,5 +1,6 @@
1
1
  module FiscalYear
2
2
  class Config
3
3
  attr_reader start_month: Integer
4
+ def initialize: -> Integer
4
5
  end
5
6
  end
data/sig/fiscal_year.rbs CHANGED
@@ -12,4 +12,5 @@ module FiscalYear
12
12
  def self.quarters: () -> [Array[Integer], Array[Integer], Array[Integer], Array[Integer]]
13
13
  def self.increase_year_by_month: (Integer, Integer) -> Integer
14
14
  def self.decrease_year_by_month: (Integer, Integer) -> Integer
15
+ def self.range_by: (Date) -> Range
15
16
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fiscal_year
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tsubasa Kawajiri
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-03-18 00:00:00.000000000 Z
11
+ date: 2024-05-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -70,7 +70,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
70
70
  requirements:
71
71
  - - ">="
72
72
  - !ruby/object:Gem::Version
73
- version: 2.6.0
73
+ version: 3.1.0
74
74
  required_rubygems_version: !ruby/object:Gem::Requirement
75
75
  requirements:
76
76
  - - ">="