zakuro 0.1.3 → 0.1.4
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 +4 -4
- data/lib/zakuro/calculation/cycle/abstract_solar_term.rb +30 -8
- data/lib/zakuro/calculation/monthly/initialized_month.rb +9 -4
- data/lib/zakuro/calculation/monthly/month.rb +8 -5
- data/lib/zakuro/calculation/monthly/operated_month.rb +12 -4
- data/lib/zakuro/calculation/range/full_range.rb +5 -5
- data/lib/zakuro/calculation/range/operated_range.rb +16 -6
- data/lib/zakuro/calculation/range/transfer/western_date_allocation.rb +10 -4
- data/lib/zakuro/calculation/range/transfer/year_boundary.rb +9 -5
- data/lib/zakuro/version.rb +1 -1
- data/lib/zakuro/version/senmyou/range/annual_range.rb +6 -3
- data/lib/zakuro/version/senmyou/stella/solar_average.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2b346e15da34df44ce5692780edbd4b73a46161f8ab9c52a0a3b5e11708f60c9
|
4
|
+
data.tar.gz: 664d457a7e3a5a271073633bba9d2b85c94c1edc35d2ceaa5a0649d10c628202
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 95779bea84d41f42027b8974742a924050c9b668f258a116d564b94991987ff5ac81554a6d8e518f8d7cc2bcd018eb9f082df6a997819d43fa475bfd3cd6f1bd
|
7
|
+
data.tar.gz: 4624affe06f638a930c36f80c357deb8ce311af730a67e2a296491efab1b3c648e3a5f5473b3f5fbfd6e9e088644bc7a29741204a9aac71517d1b4aef2dc3568
|
@@ -80,7 +80,15 @@ module Zakuro
|
|
80
80
|
(@index == -1 && @remainder.invalid?)
|
81
81
|
end
|
82
82
|
|
83
|
-
|
83
|
+
#
|
84
|
+
# 有効な二十四節気番号か
|
85
|
+
#
|
86
|
+
# @param [Integer] index 連番
|
87
|
+
#
|
88
|
+
# @return [True] 有効
|
89
|
+
# @return [False] 無効
|
90
|
+
#
|
91
|
+
def self.index?(index)
|
84
92
|
result = ORDER.fetch(index, -1)
|
85
93
|
|
86
94
|
result != -1
|
@@ -89,11 +97,18 @@ module Zakuro
|
|
89
97
|
#
|
90
98
|
# 次の二十四節気に進める
|
91
99
|
#
|
92
|
-
def
|
100
|
+
def next_term!
|
101
|
+
@remainder = next_term
|
102
|
+
end
|
103
|
+
|
104
|
+
#
|
105
|
+
# 次の二十四節気に進める
|
106
|
+
#
|
107
|
+
def next_term
|
93
108
|
@index += 1
|
94
109
|
@index = 0 if @index >= ORDER.size
|
95
110
|
|
96
|
-
@remainder.add
|
111
|
+
@remainder.add(@average)
|
97
112
|
end
|
98
113
|
|
99
114
|
#
|
@@ -102,7 +117,7 @@ module Zakuro
|
|
102
117
|
# @param [Integer] index 連番
|
103
118
|
#
|
104
119
|
def next_by_index(index)
|
105
|
-
return ArgumentError.new, 'invalid index' unless index?(index)
|
120
|
+
return ArgumentError.new, 'invalid index' unless AbstractSolarTerm.index?(index)
|
106
121
|
|
107
122
|
loop do
|
108
123
|
return if @index == index
|
@@ -117,23 +132,30 @@ module Zakuro
|
|
117
132
|
# @param [Integer] index 連番
|
118
133
|
#
|
119
134
|
def prev_by_index(index)
|
120
|
-
return ArgumentError.new, 'invalid index' unless index?(index)
|
135
|
+
return ArgumentError.new, 'invalid index' unless AbstractSolarTerm.index?(index)
|
121
136
|
|
122
137
|
loop do
|
123
138
|
return if @index == index
|
124
139
|
|
125
|
-
|
140
|
+
prev_term!
|
126
141
|
end
|
127
142
|
end
|
128
143
|
|
129
144
|
#
|
130
145
|
# 前の二十四節気に戻る
|
131
146
|
#
|
132
|
-
def
|
147
|
+
def prev_term!
|
148
|
+
@remainder = prev_term
|
149
|
+
end
|
150
|
+
|
151
|
+
#
|
152
|
+
# 前の二十四節気に戻る
|
153
|
+
#
|
154
|
+
def prev_term
|
133
155
|
@index -= 1
|
134
156
|
@index = 23 if @index.negative?
|
135
157
|
|
136
|
-
@remainder.sub
|
158
|
+
@remainder.sub(@average)
|
137
159
|
end
|
138
160
|
|
139
161
|
#
|
@@ -19,24 +19,29 @@ module Zakuro
|
|
19
19
|
# @return [Integer] 月齢(朔月、上弦、望月、下弦)
|
20
20
|
attr_reader :phase_index
|
21
21
|
|
22
|
-
# :reek:
|
22
|
+
# :reek:BooleanParameter And :reek:LongParameterList {max_params: 6}
|
23
|
+
# rubocop:disable Metrics/ParameterLists
|
23
24
|
|
24
25
|
#
|
25
26
|
# 初期化
|
26
27
|
#
|
28
|
+
# @param [Context] context 暦コンテキスト
|
27
29
|
# @param [MonthLabel] month_label 月表示名
|
28
30
|
# @param [Array<SolarTerm>] solar_terms 二十四節気
|
29
31
|
# @param [FirstDay] first_day 月初日(朔日)
|
30
32
|
# @param [True, False] is_last_year 昨年の月/今年の月
|
31
33
|
# @param [Integer] phase_index 月齢(朔月、上弦、望月、下弦)
|
32
34
|
#
|
33
|
-
def initialize(month_label: MonthLabel.new, solar_terms: [],
|
34
|
-
is_last_year: false, phase_index: -1)
|
35
|
-
super(month_label: month_label, solar_terms: solar_terms,
|
35
|
+
def initialize(context:, month_label: MonthLabel.new, solar_terms: [],
|
36
|
+
first_day: FirstDay.new, is_last_year: false, phase_index: -1)
|
37
|
+
super(context: context, month_label: month_label, solar_terms: solar_terms,
|
38
|
+
first_day: first_day)
|
36
39
|
@is_last_year = is_last_year
|
37
40
|
@phase_index = phase_index
|
38
41
|
end
|
39
42
|
|
43
|
+
# rubocop:enable Metrics/ParameterLists
|
44
|
+
|
40
45
|
# :reek:TooManyStatements { max_statements: 6 }
|
41
46
|
|
42
47
|
#
|
@@ -1,7 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require_relative '../cycle/abstract_solar_term'
|
4
|
-
|
5
3
|
require_relative './first_day'
|
6
4
|
require_relative './month_label'
|
7
5
|
|
@@ -15,6 +13,8 @@ module Zakuro
|
|
15
13
|
# Month 月情報
|
16
14
|
#
|
17
15
|
class Month
|
16
|
+
# @return [Context] 暦コンテキスト
|
17
|
+
attr_reader :context
|
18
18
|
# @return [MonthLabel] 月表示名
|
19
19
|
attr_reader :month_label
|
20
20
|
# @return [FirstDay] 月初日(朔日)
|
@@ -25,11 +25,14 @@ module Zakuro
|
|
25
25
|
#
|
26
26
|
# 初期化
|
27
27
|
#
|
28
|
+
# @param [Context] context 暦コンテキスト
|
28
29
|
# @param [MonthLabel] month_label 月表示名
|
29
30
|
# @param [FirstDay] first_day 月初日(朔日)
|
30
31
|
# @param [Array<SolarTerm>] solar_terms 二十四節気
|
31
32
|
#
|
32
|
-
def initialize(month_label: MonthLabel.new, first_day: FirstDay.new,
|
33
|
+
def initialize(context:, month_label: MonthLabel.new, first_day: FirstDay.new,
|
34
|
+
solar_terms: [])
|
35
|
+
@context = context
|
33
36
|
@month_label = month_label
|
34
37
|
@first_day = first_day
|
35
38
|
@solar_terms = solar_terms
|
@@ -142,7 +145,7 @@ module Zakuro
|
|
142
145
|
return term if term.index.even?
|
143
146
|
end
|
144
147
|
|
145
|
-
|
148
|
+
context.resolver.solar_term.new
|
146
149
|
end
|
147
150
|
|
148
151
|
#
|
@@ -155,7 +158,7 @@ module Zakuro
|
|
155
158
|
return term if term.index.odd?
|
156
159
|
end
|
157
160
|
|
158
|
-
|
161
|
+
context.resolver.solar_term.new
|
159
162
|
end
|
160
163
|
|
161
164
|
#
|
@@ -20,22 +20,30 @@ module Zakuro
|
|
20
20
|
# @return [OperatedSolarTerms] 運用時二十四節気
|
21
21
|
attr_reader :operated_solar_terms
|
22
22
|
|
23
|
+
# :reek:LongParameterList {max_params: 6}
|
24
|
+
# rubocop:disable Metrics/ParameterLists
|
25
|
+
|
23
26
|
#
|
24
27
|
# 初期化
|
25
28
|
#
|
29
|
+
# @param [Context] context 暦コンテキスト
|
26
30
|
# @param [OperatedSolarTerms] operated_solar_terms 運用時二十四節気
|
27
31
|
# @param [MonthLabel] month_label 月表示名
|
28
32
|
# @param [FirstDay] first_day 月初日(朔日)
|
29
33
|
# @param [Array<SolarTerm>] solar_terms 二十四節気
|
30
34
|
# @param [Operation::MonthHistory] history 変更履歴(月)
|
31
35
|
#
|
32
|
-
def initialize(operated_solar_terms:, month_label: MonthLabel.new,
|
33
|
-
solar_terms: [],
|
34
|
-
|
36
|
+
def initialize(context:, operated_solar_terms:, month_label: MonthLabel.new,
|
37
|
+
first_day: FirstDay.new, solar_terms: [],
|
38
|
+
history: Operation::MonthHistory.new)
|
39
|
+
super(context: context, month_label: month_label, first_day: first_day,
|
40
|
+
solar_terms: solar_terms)
|
35
41
|
@history = history
|
36
42
|
@operated_solar_terms = operated_solar_terms
|
37
43
|
end
|
38
44
|
|
45
|
+
# rubocop:enable Metrics/ParameterLists
|
46
|
+
|
39
47
|
#
|
40
48
|
# 書き換える
|
41
49
|
#
|
@@ -176,7 +184,7 @@ module Zakuro
|
|
176
184
|
def rewrite_remainder(days:)
|
177
185
|
remainder = first_day.remainder.clone
|
178
186
|
remainder.add!(
|
179
|
-
|
187
|
+
context.resolver.remainder.new(day: days, minute: 0, second: 0)
|
180
188
|
)
|
181
189
|
|
182
190
|
remainder
|
@@ -30,6 +30,8 @@ module Zakuro
|
|
30
30
|
# * この再計算が必要になるのは、元号が切り替わる年のみである
|
31
31
|
#
|
32
32
|
class FullRange
|
33
|
+
# @return [Context] 暦コンテキスト
|
34
|
+
attr_reader :context
|
33
35
|
# @return [Western::Calendar] 開始日
|
34
36
|
attr_reader :start_date
|
35
37
|
# @return [Western::Calendar] 終了日
|
@@ -40,8 +42,6 @@ module Zakuro
|
|
40
42
|
attr_reader :new_year_date
|
41
43
|
# @return [Integer] 西暦年
|
42
44
|
attr_reader :western_year
|
43
|
-
# @return [Context] 暦コンテキスト
|
44
|
-
attr_reader :context
|
45
45
|
|
46
46
|
# @return [Output::Logger] ロガー
|
47
47
|
LOGGER = Output::Logger.new(location: 'full_range')
|
@@ -85,12 +85,12 @@ module Zakuro
|
|
85
85
|
return [] if invalid?
|
86
86
|
|
87
87
|
years = Transfer::YearBoundary.get(
|
88
|
-
annual_ranges: annual_ranges
|
88
|
+
context: @context, annual_ranges: annual_ranges
|
89
89
|
)
|
90
90
|
years = update_gengou(years: years)
|
91
91
|
|
92
92
|
Transfer::WesternDateAllocation.update_first_day(
|
93
|
-
years: years
|
93
|
+
context: @context, years: years
|
94
94
|
)
|
95
95
|
|
96
96
|
years
|
@@ -112,7 +112,7 @@ module Zakuro
|
|
112
112
|
((oldest_date.year)..(newest_date.year + 2)).each do |year|
|
113
113
|
years.push(
|
114
114
|
annual_range.collect_annual_range_after_last_november_1st(
|
115
|
-
western_year: year
|
115
|
+
context: @context, western_year: year
|
116
116
|
)
|
117
117
|
)
|
118
118
|
end
|
@@ -54,7 +54,8 @@ module Zakuro
|
|
54
54
|
|
55
55
|
years.each do |year|
|
56
56
|
operated_year = OperatedRange.rewrite_year(
|
57
|
-
|
57
|
+
context: context, year: year,
|
58
|
+
operated_solar_terms: @operated_solar_terms
|
58
59
|
)
|
59
60
|
operated_years.push(operated_year)
|
60
61
|
end
|
@@ -65,18 +66,20 @@ module Zakuro
|
|
65
66
|
#
|
66
67
|
# 年を書き換える
|
67
68
|
#
|
69
|
+
# @param [Context] context 暦コンテキスト
|
68
70
|
# @param [Year] year 年
|
69
71
|
# @param [OperatedSolarTerms] operated_solar_terms 運用時二十四節気
|
70
72
|
#
|
71
73
|
# @return [Year] 年
|
72
74
|
#
|
73
|
-
def self.rewrite_year(year:, operated_solar_terms:)
|
75
|
+
def self.rewrite_year(context:, year:, operated_solar_terms:)
|
74
76
|
result = Base::Year.new(
|
75
77
|
multi_gengou: year.multi_gengou, new_year_date: year.new_year_date
|
76
78
|
)
|
77
79
|
year.months.each do |month|
|
78
80
|
result.push(month: resolve_month(
|
79
|
-
|
81
|
+
context: context, month: month,
|
82
|
+
operated_solar_terms: operated_solar_terms
|
80
83
|
))
|
81
84
|
end
|
82
85
|
|
@@ -88,34 +91,40 @@ module Zakuro
|
|
88
91
|
#
|
89
92
|
# 履歴情報の有無に応じた月にする
|
90
93
|
#
|
94
|
+
# @param [Context] context 暦コンテキスト
|
91
95
|
# @param [Month] month 月
|
92
96
|
# @param [OperatedSolarTerms] operated_solar_terms 運用時二十四節気
|
93
97
|
#
|
94
98
|
# @return [Month] 月
|
95
99
|
#
|
96
|
-
def self.resolve_month(month:, operated_solar_terms:)
|
100
|
+
def self.resolve_month(context:, month:, operated_solar_terms:)
|
97
101
|
history = Operation.specify_history(western_date: month.western_date)
|
98
102
|
|
99
103
|
return month if history.invalid?
|
100
104
|
|
101
105
|
OperatedRange.rewrite_month(
|
102
|
-
month: month, history: history,
|
106
|
+
context: context, month: month, history: history,
|
107
|
+
operated_solar_terms: operated_solar_terms
|
103
108
|
)
|
104
109
|
end
|
105
110
|
|
111
|
+
# :reek:LongParameterList {max_params: 4}
|
112
|
+
|
106
113
|
#
|
107
114
|
# 月を運用結果に書き換える
|
108
115
|
#
|
116
|
+
# @param [Context] context 暦コンテキスト
|
109
117
|
# @param [Month] month 月
|
110
118
|
# @param [Operation::MonthHistory] history 変更履歴
|
111
119
|
# @param [OperatedSolarTerms] operated_solar_terms 運用時二十四節気
|
112
120
|
#
|
113
121
|
# @return [Month] 月(運用結果)
|
114
122
|
#
|
115
|
-
def self.rewrite_month(month:, history:, operated_solar_terms:)
|
123
|
+
def self.rewrite_month(context:, month:, history:, operated_solar_terms:)
|
116
124
|
return month unless month.western_date == history.western_date
|
117
125
|
|
118
126
|
operated_month = Monthly::OperatedMonth.new(
|
127
|
+
context: context,
|
119
128
|
month_label: month.month_label, first_day: month.first_day,
|
120
129
|
solar_terms: month.solar_terms, history: history,
|
121
130
|
operated_solar_terms: operated_solar_terms
|
@@ -124,6 +133,7 @@ module Zakuro
|
|
124
133
|
operated_month.rewrite
|
125
134
|
|
126
135
|
Monthly::Month.new(
|
136
|
+
context: context,
|
127
137
|
month_label: operated_month.month_label, first_day: operated_month.first_day,
|
128
138
|
solar_terms: operated_month.solar_terms
|
129
139
|
)
|
@@ -15,12 +15,13 @@ module Zakuro
|
|
15
15
|
#
|
16
16
|
# 月初日の西暦日を更新する
|
17
17
|
#
|
18
|
+
# @param [Context] context 暦コンテキスト
|
18
19
|
# @param [Array<Year>] years 完全範囲(月初日なし)
|
19
20
|
#
|
20
21
|
# @return [Array<Year>] 完全範囲(月初日あり)
|
21
22
|
#
|
22
|
-
def self.get(years:)
|
23
|
-
update_first_day(years: years)
|
23
|
+
def self.get(context:, years:)
|
24
|
+
update_first_day(context: context, years: years)
|
24
25
|
|
25
26
|
years
|
26
27
|
end
|
@@ -28,14 +29,16 @@ module Zakuro
|
|
28
29
|
#
|
29
30
|
# 月初日の西暦日を更新する
|
30
31
|
#
|
32
|
+
# @param [Context] context 暦コンテキスト
|
31
33
|
# @param [Array<Year>] years 完全範囲(月初日なし)
|
32
34
|
#
|
33
|
-
def self.update_first_day(years:)
|
35
|
+
def self.update_first_day(context:, years:)
|
34
36
|
years.each_with_index do |year, index|
|
35
37
|
new_year_date = year.new_year_date.clone
|
36
38
|
|
37
39
|
months = year.months
|
38
40
|
update_first_day_within_all_months(
|
41
|
+
context: context,
|
39
42
|
new_year_date: new_year_date, months: months
|
40
43
|
)
|
41
44
|
|
@@ -49,13 +52,16 @@ module Zakuro
|
|
49
52
|
#
|
50
53
|
# 全ての月で月初日の西暦日を更新する
|
51
54
|
#
|
55
|
+
# @param [Context] context 暦コンテキスト
|
52
56
|
# @param [Western::Calendar] new_year_date 元旦
|
53
57
|
# @param [Array<Month>] months 月データ
|
54
58
|
#
|
55
|
-
def self.update_first_day_within_all_months(
|
59
|
+
def self.update_first_day_within_all_months(context:,
|
60
|
+
new_year_date:, months:)
|
56
61
|
date = new_year_date.clone
|
57
62
|
months.each_with_index do |month, index|
|
58
63
|
updated_month = Monthly::Month.new(
|
64
|
+
context: context,
|
59
65
|
month_label: month.month_label,
|
60
66
|
first_day: Monthly::FirstDay.new(
|
61
67
|
remainder: month.first_day.remainder,
|
@@ -20,12 +20,13 @@ module Zakuro
|
|
20
20
|
#
|
21
21
|
# 年間範囲内の年データの開始月を変更する
|
22
22
|
#
|
23
|
+
# @param [Context] context 暦コンテキスト
|
23
24
|
# @param [Array<Year>] annual_ranges 年データ(冬至基準)
|
24
25
|
#
|
25
26
|
# @return [Array<Year>] 年データ(元旦基準)
|
26
27
|
#
|
27
|
-
def self.get(annual_ranges:)
|
28
|
-
categorize(annual_ranges: annual_ranges)
|
28
|
+
def self.get(context:, annual_ranges:)
|
29
|
+
categorize(context: context, annual_ranges: annual_ranges)
|
29
30
|
rearranged_years(annual_ranges: annual_ranges)
|
30
31
|
end
|
31
32
|
|
@@ -51,11 +52,12 @@ module Zakuro
|
|
51
52
|
#
|
52
53
|
# 年間範囲を昨年/今年で分類する
|
53
54
|
#
|
55
|
+
# @param [Context] context 暦コンテキスト
|
54
56
|
# @param [Array<Year>] annual_range 1年データ
|
55
57
|
#
|
56
|
-
def self.categorize(annual_ranges:)
|
58
|
+
def self.categorize(context:, annual_ranges:)
|
57
59
|
annual_ranges.each do |annual_range|
|
58
|
-
categorize_year(annual_range: annual_range)
|
60
|
+
categorize_year(context: context, annual_range: annual_range)
|
59
61
|
end
|
60
62
|
end
|
61
63
|
private_class_method :categorize
|
@@ -63,14 +65,16 @@ module Zakuro
|
|
63
65
|
#
|
64
66
|
# 各月を昨年/今年で分類する
|
65
67
|
#
|
68
|
+
# @param [Context] context 暦コンテキスト
|
66
69
|
# @param [Array<Month>] annual_range 1年データ
|
67
70
|
#
|
68
|
-
def self.categorize_year(annual_range:)
|
71
|
+
def self.categorize_year(context:, annual_range:)
|
69
72
|
is_last_year = true
|
70
73
|
annual_range.each_with_index do |month, index|
|
71
74
|
is_last_year = false if month.number == 1
|
72
75
|
|
73
76
|
annual_range[index] = Monthly::InitializedMonth.new(
|
77
|
+
context: context,
|
74
78
|
month_label: month.month_label, first_day: month.first_day,
|
75
79
|
solar_terms: month.solar_terms, phase_index: month.phase_index,
|
76
80
|
is_last_year: is_last_year
|
data/lib/zakuro/version.rb
CHANGED
@@ -62,12 +62,13 @@ module Zakuro
|
|
62
62
|
# * 対象年に対して、前年11月-当年11月までを出力する
|
63
63
|
# * 対象年(西暦)と計算年(元号x年)の紐付けは行わない
|
64
64
|
#
|
65
|
+
# @param [Context] context 暦コンテキスト
|
65
66
|
# @param [Integer] western_year 西暦年
|
66
67
|
#
|
67
68
|
# @return [Array<Month>] 1年データ
|
68
69
|
#
|
69
|
-
def self.collect_annual_range_after_last_november_1st(western_year:)
|
70
|
-
annual_range = initialized_annual_range(western_year: western_year)
|
70
|
+
def self.collect_annual_range_after_last_november_1st(context:, western_year:)
|
71
|
+
annual_range = initialized_annual_range(context: context, western_year: western_year)
|
71
72
|
|
72
73
|
apply_big_and_small_of_the_month(annual_range: annual_range)
|
73
74
|
|
@@ -111,11 +112,12 @@ module Zakuro
|
|
111
112
|
#
|
112
113
|
# 1年データを取得する
|
113
114
|
#
|
115
|
+
# @param [Context] context 暦コンテキスト
|
114
116
|
# @param [Integer] western_year 西暦年
|
115
117
|
#
|
116
118
|
# @return [Array<Month>] 1年データ
|
117
119
|
#
|
118
|
-
def self.initialized_annual_range(western_year:)
|
120
|
+
def self.initialized_annual_range(context:, western_year:)
|
119
121
|
result = []
|
120
122
|
lunar_phase = Monthly::LunarPhase.new(western_year: western_year)
|
121
123
|
|
@@ -125,6 +127,7 @@ module Zakuro
|
|
125
127
|
|
126
128
|
result.push(
|
127
129
|
Calculation::Monthly::InitializedMonth.new(
|
130
|
+
context: context,
|
128
131
|
month_label: Calculation::Monthly::MonthLabel.new,
|
129
132
|
first_day: Calculation::Monthly::FirstDay.new(remainder: adjusted),
|
130
133
|
phase_index: 0
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zakuro
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- pldb
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-05-
|
11
|
+
date: 2021-05-03 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: mainly lunar solar calendar
|
14
14
|
email:
|