et-orbi 1.2.7 → 1.2.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/CREDITS.md +3 -0
- data/LICENSE.txt +1 -1
- data/Makefile +4 -4
- data/README.md +0 -1
- data/lib/et-orbi/time.rb +52 -22
- data/lib/et-orbi.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 435f9eb2e9b27822b9ee161fbe2449375cb710e1e01b8f3313c61983424aba85
|
4
|
+
data.tar.gz: a72603974625eb4e8c49e89c3a317002ea8661adbaa461c2d143450bd8b9c40a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b45a1917c605b29254c97d5ab27d1b5e894cb2e9ed01b27594a19b8a52fc16c18fe6f59d56a362cedc0e0d3131278ec2d0d288427a132ce2b5152a7b0404ab22
|
7
|
+
data.tar.gz: dd28bbd9b3fe1ad3feb0088284a01f909453afd1ae56ba3c910215d85d9af793fdf3042adc27fa1789bc646412abb2643f0543c1b7bb2fa8e02aa50a57771f33
|
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,16 @@
|
|
2
2
|
# CHANGELOG.md
|
3
3
|
|
4
4
|
|
5
|
+
## et-orbi 1.2.9 released 2024-03-13
|
6
|
+
|
7
|
+
- Refine #rweek computation, aim at noon instead of midnight, gh-38
|
8
|
+
|
9
|
+
|
10
|
+
## et-orbi 1.2.8 released 2024-03-11 (13 ans)
|
11
|
+
|
12
|
+
- Cache the @ref time used in the #rweek and #rday computation
|
13
|
+
|
14
|
+
|
5
15
|
## et-orbi 1.2.7 released 2022-03-09
|
6
16
|
|
7
17
|
- Fix the wday_in_month computation for floraison/fugit#67
|
data/CREDITS.md
CHANGED
@@ -1,6 +1,9 @@
|
|
1
1
|
|
2
2
|
# et-orbi credits
|
3
3
|
|
4
|
+
* Benjami Darcet @bdarcet https://github.com/floraison/fugit/issues/67 gh-38
|
5
|
+
* @franckduche https://github.com/floraison/fugit/issues/67 gh-38
|
6
|
+
* Igor Viktor https://github.com/gogainda gh-34
|
4
7
|
* phibid, for https://github.com/floraison/fugit/issues/67
|
5
8
|
* Peter Goldstein, https://github.com/petergoldstein GHA 3.3 j9.3, gh-32
|
6
9
|
* harsha-flipp (https://github.com/harsha-flipp) https://github.com/floraison/fugit/issues/63
|
data/LICENSE.txt
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
|
2
|
-
Copyright (c) 2017-
|
2
|
+
Copyright (c) 2017-2024, John Mettraux, jmettraux+flor@gmail.com
|
3
3
|
|
4
4
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
5
5
|
of this software and associated documentation files (the "Software"), to deal
|
data/Makefile
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
|
2
2
|
## gem tasks ##
|
3
3
|
|
4
|
-
NAME
|
5
|
-
|
6
|
-
VERSION
|
7
|
-
|
4
|
+
NAME != \
|
5
|
+
ruby -e "s = eval(File.read(Dir['*.gemspec'][0])); puts s.name"
|
6
|
+
VERSION != \
|
7
|
+
ruby -e "s = eval(File.read(Dir['*.gemspec'][0])); puts s.version"
|
8
8
|
|
9
9
|
count_lines:
|
10
10
|
find lib -name "*.rb" | xargs cat | ruby -e "p STDIN.readlines.count { |l| l = l.strip; l[0, 1] != '#' && l != '' }"
|
data/README.md
CHANGED
@@ -3,7 +3,6 @@
|
|
3
3
|
|
4
4
|
[![tests](https://github.com/floraison/et-orbi/workflows/test/badge.svg)](https://github.com/floraison/et-orbi/actions)
|
5
5
|
[![Gem Version](https://badge.fury.io/rb/et-orbi.svg)](http://badge.fury.io/rb/et-orbi)
|
6
|
-
[![Join the chat at https://gitter.im/floraison/fugit](https://badges.gitter.im/floraison/fugit.svg)](https://gitter.im/floraison/fugit?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
7
6
|
|
8
7
|
Time zones for [fugit](https://github.com/floraison/fugit) and for [rufus-scheduler](https://github.com/jmettraux/rufus-scheduler). Urbi et Orbi.
|
9
8
|
|
data/lib/et-orbi/time.rb
CHANGED
@@ -88,20 +88,34 @@ module EtOrbi
|
|
88
88
|
(defined?(TZInfo::Data) ? '' : "\nand adding gem 'tzinfo-data'")
|
89
89
|
) unless @zone
|
90
90
|
|
91
|
+
touch
|
92
|
+
end
|
93
|
+
|
94
|
+
# Nullify the "caches" used by #to_time, #rweek, and others
|
95
|
+
#
|
96
|
+
def touch
|
97
|
+
|
91
98
|
@time = nil
|
92
|
-
|
99
|
+
@ref = nil
|
93
100
|
end
|
94
101
|
|
95
102
|
def seconds=(f)
|
96
103
|
|
97
|
-
@time = nil
|
98
104
|
@seconds = f
|
105
|
+
|
106
|
+
touch
|
107
|
+
|
108
|
+
f
|
99
109
|
end
|
100
110
|
|
101
111
|
def zone=(z)
|
102
112
|
|
103
|
-
|
113
|
+
|
104
114
|
@zone = self.class.get_tzone(zone || :current)
|
115
|
+
|
116
|
+
touch
|
117
|
+
|
118
|
+
@zone
|
105
119
|
end
|
106
120
|
|
107
121
|
# Returns true if this EoTime instance corresponds to 2 different UTC
|
@@ -230,8 +244,8 @@ module EtOrbi
|
|
230
244
|
def <=(o); @seconds <= _to_f(o); end
|
231
245
|
def <=>(o); @seconds <=> _to_f(o); end
|
232
246
|
|
233
|
-
def add(t); @
|
234
|
-
def subtract(t); @
|
247
|
+
def add(t); @seconds += t.to_f; touch; self; end
|
248
|
+
def subtract(t); @seconds -= t.to_f; touch; self; end
|
235
249
|
|
236
250
|
def +(t); inc(t, 1); end
|
237
251
|
def -(t); inc(t, -1); end
|
@@ -301,19 +315,24 @@ module EtOrbi
|
|
301
315
|
|
302
316
|
def inc(t, dir=1)
|
303
317
|
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
318
|
+
r =
|
319
|
+
case t
|
320
|
+
when Numeric
|
321
|
+
nt = self.dup
|
322
|
+
nt.seconds += dir * t.to_f
|
323
|
+
nt
|
324
|
+
when ::Time, ::EtOrbi::EoTime
|
325
|
+
fail ArgumentError.new(
|
326
|
+
"Cannot add #{t.class} to EoTime") if dir > 0
|
327
|
+
@seconds + dir * t.to_f
|
328
|
+
else
|
329
|
+
fail ArgumentError.new(
|
330
|
+
"Cannot call add or subtract #{t.class} to EoTime instance")
|
331
|
+
end
|
332
|
+
|
333
|
+
touch
|
334
|
+
|
335
|
+
r
|
317
336
|
end
|
318
337
|
|
319
338
|
def localtime(zone=nil)
|
@@ -330,16 +349,22 @@ module EtOrbi
|
|
330
349
|
- count_weeks(EtOrbi.make_time(strftime('%F 12:00:00 %/Z')) , 1) ]
|
331
350
|
end
|
332
351
|
|
352
|
+
# "reference week", used in fugit for cron modulo notation
|
353
|
+
#
|
333
354
|
def rweek
|
334
355
|
|
335
|
-
|
336
|
-
|
356
|
+
@ref ||= EtOrbi.make_time('2019-01-01 12:00:00', @zone)
|
357
|
+
|
358
|
+
((self - @ref) / WEEK_S).floor + 1
|
337
359
|
end
|
338
360
|
|
361
|
+
# "reference week", used in fugit for cron modulo notation
|
362
|
+
#
|
339
363
|
def rday
|
340
364
|
|
341
|
-
|
342
|
-
|
365
|
+
@ref ||= EtOrbi.make_time('2019-01-01 00:00:00', @zone)
|
366
|
+
|
367
|
+
((self - @ref) / DAY_S).floor + 1
|
343
368
|
end
|
344
369
|
|
345
370
|
def reach(points)
|
@@ -374,6 +399,11 @@ module EtOrbi
|
|
374
399
|
t
|
375
400
|
end
|
376
401
|
|
402
|
+
def clone
|
403
|
+
|
404
|
+
EtOrbi::EoTime.new(@seconds, @zone)
|
405
|
+
end
|
406
|
+
|
377
407
|
protected
|
378
408
|
|
379
409
|
# Returns a Ruby Time instance.
|
data/lib/et-orbi.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: et-orbi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Mettraux
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-03-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: tzinfo
|
@@ -82,7 +82,7 @@ metadata:
|
|
82
82
|
bug_tracker_uri: https://github.com/floraison/et-orbi/issues
|
83
83
|
homepage_uri: https://github.com/floraison/et-orbi
|
84
84
|
source_code_uri: https://github.com/floraison/et-orbi
|
85
|
-
post_install_message:
|
85
|
+
post_install_message:
|
86
86
|
rdoc_options: []
|
87
87
|
require_paths:
|
88
88
|
- lib
|
@@ -97,8 +97,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
97
97
|
- !ruby/object:Gem::Version
|
98
98
|
version: '0'
|
99
99
|
requirements: []
|
100
|
-
rubygems_version: 3.
|
101
|
-
signing_key:
|
100
|
+
rubygems_version: 3.4.10
|
101
|
+
signing_key:
|
102
102
|
specification_version: 4
|
103
103
|
summary: time with zones
|
104
104
|
test_files: []
|