lite-ruby 1.1.5 → 1.1.6
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/.rubocop.yml +1 -0
- data/CHANGELOG.md +6 -0
- data/Gemfile.lock +4 -1
- data/docs/ARRAY.md +8 -0
- data/docs/TIME.md +8 -0
- data/lib/lite/ruby/hash.rb +2 -0
- data/lib/lite/ruby/time.rb +6 -2
- data/lib/lite/ruby/version.rb +1 -1
- data/lite-ruby.gemspec +1 -0
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0b06f7b36c3754751a9e1c761c18907bb26477c24f8a3158f975cb12eb17402f
|
4
|
+
data.tar.gz: 6307adb22344057bbc07fb84c2853c6cb580aad9880a54dd6fccdb76bc21ca9e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9eeeea04d66003344b0897c6d0a6435025dd04070e58927282dac1d295a5f2b8c2424e506cc140bcf9bb61cbb0bf843a9fe917f876fbc05075dfb53db2767020
|
7
|
+
data.tar.gz: 9c77717bcf0d4f5a2904250483b62f9236ce84a5215bebf4dcbdab45d59937f10831f1e98a900d0822ae3e8d72b26d60d5a4570a2c18b4d0d56f7cb506b706fa
|
data/.rubocop.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -6,6 +6,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
6
6
|
|
7
7
|
## [Unreleased]
|
8
8
|
|
9
|
+
## [1.1.6] - 2021-02-17
|
10
|
+
### Added
|
11
|
+
- Added Time => `monotonic`
|
12
|
+
### Changed
|
13
|
+
- Time `elapse` to use monotonic time
|
14
|
+
|
9
15
|
## [1.1.5] - 2021-02-16
|
10
16
|
### Added
|
11
17
|
- Added Array => `divergence`
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
lite-ruby (1.1.
|
4
|
+
lite-ruby (1.1.6)
|
5
5
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
@@ -98,6 +98,8 @@ GEM
|
|
98
98
|
rubocop-performance (1.9.2)
|
99
99
|
rubocop (>= 0.90.0, < 2.0)
|
100
100
|
rubocop-ast (>= 0.4.0)
|
101
|
+
rubocop-rake (0.5.1)
|
102
|
+
rubocop
|
101
103
|
rubocop-rspec (2.2.0)
|
102
104
|
rubocop (~> 1.0)
|
103
105
|
rubocop-ast (>= 1.1.0)
|
@@ -123,6 +125,7 @@ DEPENDENCIES
|
|
123
125
|
rspec
|
124
126
|
rubocop
|
125
127
|
rubocop-performance
|
128
|
+
rubocop-rake
|
126
129
|
rubocop-rspec
|
127
130
|
|
128
131
|
BUNDLED WITH
|
data/docs/ARRAY.md
CHANGED
@@ -137,6 +137,14 @@ Moves a given value to the tail of array.
|
|
137
137
|
[1, 2, 2, 3].demote!(4) #=> [1, 2, 2, 3]
|
138
138
|
```
|
139
139
|
|
140
|
+
`divergence`
|
141
|
+
------
|
142
|
+
Returns a list of elements not found in either array.
|
143
|
+
|
144
|
+
```ruby
|
145
|
+
[1, 2, 2].divergence([2, 3, 4]) #=> [1, 3, 4]
|
146
|
+
```
|
147
|
+
|
140
148
|
`denillify(!)`
|
141
149
|
------
|
142
150
|
Converts `nil` into a given value.
|
data/docs/TIME.md
CHANGED
@@ -35,6 +35,14 @@ Converts a `time` object to `strftime` it using a human readable string.
|
|
35
35
|
Time.now.format('month_name day, year hour:minute ampm') #=> 'January 09, 2014 02:31 pm'
|
36
36
|
```
|
37
37
|
|
38
|
+
`monotonic`
|
39
|
+
------
|
40
|
+
Returns the monotonic time.
|
41
|
+
|
42
|
+
```ruby
|
43
|
+
Time.monotonic #=> 5834550.444132
|
44
|
+
```
|
45
|
+
|
38
46
|
`stamp` aka `to_format`
|
39
47
|
------
|
40
48
|
Converts a `time` object to a predefined format.
|
data/lib/lite/ruby/hash.rb
CHANGED
@@ -274,10 +274,12 @@ if Lite::Ruby.configuration.monkey_patches.include?('hash')
|
|
274
274
|
dup.rename_keys!(*keys)
|
275
275
|
end
|
276
276
|
|
277
|
+
# rubocop:disable Style/HashConversion
|
277
278
|
def rename_keys!(*keys)
|
278
279
|
keys = Hash[*keys]
|
279
280
|
keys.each_with_object(self) { |(key, val), hash| hash[val] = delete(key) if hash[key] }
|
280
281
|
end
|
282
|
+
# rubocop:enable Style/HashConversion
|
281
283
|
|
282
284
|
def sample
|
283
285
|
key = sample_key
|
data/lib/lite/ruby/time.rb
CHANGED
@@ -9,15 +9,19 @@ if Lite::Ruby.configuration.monkey_patches.include?('time')
|
|
9
9
|
class << self
|
10
10
|
|
11
11
|
def elapse(verbose: false)
|
12
|
-
started_at =
|
12
|
+
started_at = monotonic
|
13
13
|
yield
|
14
|
-
ended_at =
|
14
|
+
ended_at = monotonic
|
15
15
|
runtime = ended_at - started_at
|
16
16
|
return runtime unless verbose
|
17
17
|
|
18
18
|
{ started_at: started_at, ended_at: ended_at, runtime: runtime }
|
19
19
|
end
|
20
20
|
|
21
|
+
def monotonic
|
22
|
+
Process.clock_gettime(Process::CLOCK_MONOTONIC)
|
23
|
+
end
|
24
|
+
|
21
25
|
end
|
22
26
|
|
23
27
|
private
|
data/lib/lite/ruby/version.rb
CHANGED
data/lite-ruby.gemspec
CHANGED
@@ -44,5 +44,6 @@ Gem::Specification.new do |spec|
|
|
44
44
|
spec.add_development_dependency 'rspec'
|
45
45
|
spec.add_development_dependency 'rubocop'
|
46
46
|
spec.add_development_dependency 'rubocop-performance'
|
47
|
+
spec.add_development_dependency 'rubocop-rake'
|
47
48
|
spec.add_development_dependency 'rubocop-rspec'
|
48
49
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lite-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Juan Gomez
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-02-
|
11
|
+
date: 2021-02-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -108,6 +108,20 @@ dependencies:
|
|
108
108
|
- - ">="
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: rubocop-rake
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">="
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ">="
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
111
125
|
- !ruby/object:Gem::Dependency
|
112
126
|
name: rubocop-rspec
|
113
127
|
requirement: !ruby/object:Gem::Requirement
|