aixm 1.4.1 → 1.4.3
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
- checksums.yaml.gz.sig +0 -0
- data/CHANGELOG.md +11 -0
- data/lib/aixm/concerns/memoize.rb +1 -0
- data/lib/aixm/f.rb +7 -0
- data/lib/aixm/schedule/time.rb +9 -4
- data/lib/aixm/shortcuts.rb +3 -0
- data/lib/aixm/version.rb +1 -1
- data/lib/aixm/xy.rb +4 -0
- data.tar.gz.sig +0 -0
- metadata +14 -16
- metadata.gz.sig +1 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e9e8f3bbcf81e3c87a204045d8584260a3e2f847a202e646e6460bcf79ae7e05
|
4
|
+
data.tar.gz: 83016171288807a92acee0673e989aa23c00b28cb2b81bc12552fd1873571013
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 862175b6cbc5f886a820d3613f9a419ada1e9101d1dc6ea5f9ca7e33f13fb6407d04a4d4b7c6d7bbef3fdb32e8cb48883c0e04adf042b07002e56bb0732e1411
|
7
|
+
data.tar.gz: ea726dfb8a05c2fa5fea716885d73d52328b96a9ddc36739194e92e6001524eceade0d5985940eafd3c24f1f04acb4f6417f3f032c13ba7244063947f4d39d38
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,17 @@
|
|
2
2
|
|
3
3
|
Nothing so far
|
4
4
|
|
5
|
+
## 1.4.3
|
6
|
+
|
7
|
+
### Additions
|
8
|
+
* `AIXM::EMERGENCY` shortcut for 121.5 MHz and `AIXM::F#voice_emergency?`
|
9
|
+
* Support Ruby 3.3
|
10
|
+
|
11
|
+
## 1.4.2
|
12
|
+
|
13
|
+
#### Changes
|
14
|
+
* Fix 00:00 vs. 24:00 calculation for times with time zones
|
15
|
+
|
5
16
|
## 1.4.1
|
6
17
|
|
7
18
|
#### Changes
|
data/lib/aixm/f.rb
CHANGED
@@ -84,6 +84,13 @@ module AIXM
|
|
84
84
|
end
|
85
85
|
end
|
86
86
|
|
87
|
+
# Whether this frequency is for emergencies only.
|
88
|
+
#
|
89
|
+
# @return [Boolean]
|
90
|
+
def voice_emergency?
|
91
|
+
self == AIXM::EMERGENCY
|
92
|
+
end
|
93
|
+
|
87
94
|
private
|
88
95
|
|
89
96
|
# Whether this frequency is part of the voice airband for civil aviation
|
data/lib/aixm/schedule/time.rb
CHANGED
@@ -29,7 +29,7 @@ module AIXM
|
|
29
29
|
|
30
30
|
EVENTS = { sunrise: :up, sunset: :down }.freeze
|
31
31
|
PRECEDENCES = { first: :min, last: :max }.freeze
|
32
|
-
DATELESS_DATE = ::Date.parse('
|
32
|
+
DATELESS_DATE = ::Date.parse('0001-01-01').freeze
|
33
33
|
|
34
34
|
# @api private
|
35
35
|
attr_accessor :time
|
@@ -250,10 +250,15 @@ module AIXM
|
|
250
250
|
# @param hour [Integer, String]
|
251
251
|
# @param min [Integer, String]
|
252
252
|
# @param offset [Integer, String] either UTC offset in seconds
|
253
|
-
# (default: 0) or 'UTC'
|
253
|
+
# (default: 0), as '+01:00', '-0300' or 'UTC'
|
254
254
|
# @return [Time]
|
255
255
|
def set_time(hour, min, offset)
|
256
|
-
|
256
|
+
# TODO: Colon-workaround can be removed when support of Ruby 3.0 has ended
|
257
|
+
coloned_offset = offset.is_a?(String) ? offset.sub(/([+-]\d{2})(\d{2})/, '\1:\2') : offset
|
258
|
+
utc = ::Time.new(1, 1, 1, hour, min, 0, coloned_offset || 0).utc
|
259
|
+
# utc = ::Time.new(1, 1, 1, hour, min, 0, offset || 0).utc
|
260
|
+
day_shift = utc.hour.zero? && utc.min.zero? && hour.to_i >= 12 ? 1 : 0
|
261
|
+
@time = ::Time.utc(DATELESS_DATE.year, DATELESS_DATE.month, DATELESS_DATE.day + day_shift, utc.hour, utc.min, 0)
|
257
262
|
end
|
258
263
|
|
259
264
|
def event=(value)
|
@@ -267,7 +272,7 @@ module AIXM
|
|
267
272
|
end
|
268
273
|
|
269
274
|
def end_of_day?
|
270
|
-
@time.day
|
275
|
+
@time.day != DATELESS_DATE.day
|
271
276
|
end
|
272
277
|
|
273
278
|
# @note Necessary to use this class in Range.
|
data/lib/aixm/shortcuts.rb
CHANGED
data/lib/aixm/version.rb
CHANGED
data/lib/aixm/xy.rb
CHANGED
@@ -107,6 +107,7 @@ module AIXM
|
|
107
107
|
|
108
108
|
# Distance to another point as calculated by the Haversine formula
|
109
109
|
#
|
110
|
+
# @param other [AIXM::XY] other point
|
110
111
|
# @return [AIXM::D]
|
111
112
|
def distance(other)
|
112
113
|
if self == other
|
@@ -125,6 +126,7 @@ module AIXM
|
|
125
126
|
|
126
127
|
# Bearing to another point
|
127
128
|
#
|
129
|
+
# @param other [AIXM::XY] other point
|
128
130
|
# @return [AIXM::A]
|
129
131
|
def bearing(other)
|
130
132
|
fail "cannot calculate bearing to identical point" if self == other
|
@@ -141,6 +143,8 @@ module AIXM
|
|
141
143
|
|
142
144
|
# Calculate a new point by adding the distance in the given bearing
|
143
145
|
#
|
146
|
+
# @param distance [AIXM::D]
|
147
|
+
# @param bearing [AIXM::A]
|
144
148
|
# @return [AIXM::XY]
|
145
149
|
def add_distance(distance, bearing)
|
146
150
|
angular_dist = distance.to_m.dim / EARTH_RADIUS
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aixm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sven Schwyn
|
@@ -10,26 +10,24 @@ bindir: exe
|
|
10
10
|
cert_chain:
|
11
11
|
- |
|
12
12
|
-----BEGIN CERTIFICATE-----
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MIIC+jCCAeKgAwIBAgIBAjANBgkqhkiG9w0BAQsFADAjMSEwHwYDVQQDDBhydWJ5
|
14
|
+
L0RDPWJpdGNldGVyYS9EQz1jb20wHhcNMjMxMTEwMTgyMzM2WhcNMjQxMTA5MTgy
|
15
|
+
MzM2WjAjMSEwHwYDVQQDDBhydWJ5L0RDPWJpdGNldGVyYS9EQz1jb20wggEiMA0G
|
16
16
|
CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDcLg+IHjXYaUlTSU7R235lQKD8ZhEe
|
17
17
|
KMhoGlSUonZ/zo1OT3KXcqTCP1iMX743xYs6upEGALCWWwq+nxvlDdnWRjF3AAv7
|
18
18
|
ikC+Z2BEowjyeCCT/0gvn4ohKcR0JOzzRaIlFUVInlGSAHx2QHZ2N8ntf54lu7nd
|
19
19
|
L8CiDK8rClsY4JBNGOgH9UC81f+m61UUQuTLxyM2CXfAYkj/sGNTvFRJcNX+nfdC
|
20
20
|
hM9r2kH1+7wsa8yG7wJ2IkrzNACD8v84oE6qVusN8OLEMUI/NaEPVPbw2LUM149H
|
21
21
|
PVa0i729A4IhroNnFNmw4wOC93ARNbM1+LW36PLMmKjKudf5Exg8VmDVAgMBAAGj
|
22
|
-
|
23
|
-
yoX/
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
kAyiRqgxF4dJviwtqI7mZIomWL63+kXLgjOjMe1SHxfIPo/0ji6+r1p4KYa7o41v
|
30
|
-
fwIwU1MKlFBdsjkd
|
22
|
+
OTA3MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBSfK8MtR62mQ6oN
|
23
|
+
yoX/VKJzFjLSVDANBgkqhkiG9w0BAQsFAAOCAQEAXhT/LpMArF3JRcZSRkJDY+dU
|
24
|
+
GKCRqOefi2iydqh1yIqXyTA9PGR1w5O6O+WS1FvF+sHCwh8fFjCuStg2L8V2RSeo
|
25
|
+
aDtfZ5s80sL8wRFxg3kek69cBuI6ozU+rf9DaXlMES4i8+zASsdv9Y4a2BsbhEdE
|
26
|
+
9AtuMcWn5a45TOO0S4Q8OuV0v705V38Ow15J2RDRvkFRySt+//8/Vd57XAJxPXU0
|
27
|
+
k/QvZU05f6HMYBrPogJgIzHC/C5N/yeE4BVEuBDn+10Zb1iu3aDk8sd0uMgukCY8
|
28
|
+
TUmlP5A6NeGdeDJIoLgromAKs+nvI7TWzhQq9ODs51XhxgUFRCvBqUTpjTQigw==
|
31
29
|
-----END CERTIFICATE-----
|
32
|
-
date:
|
30
|
+
date: 2024-01-13 00:00:00.000000000 Z
|
33
31
|
dependencies:
|
34
32
|
- !ruby/object:Gem::Dependency
|
35
33
|
name: nokogiri
|
@@ -116,7 +114,7 @@ dependencies:
|
|
116
114
|
- !ruby/object:Gem::Version
|
117
115
|
version: '0'
|
118
116
|
- !ruby/object:Gem::Dependency
|
119
|
-
name: minitest-
|
117
|
+
name: minitest-flash
|
120
118
|
requirement: !ruby/object:Gem::Requirement
|
121
119
|
requirements:
|
122
120
|
- - ">="
|
@@ -313,7 +311,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
313
311
|
- !ruby/object:Gem::Version
|
314
312
|
version: '0'
|
315
313
|
requirements: []
|
316
|
-
rubygems_version: 3.4
|
314
|
+
rubygems_version: 3.5.4
|
317
315
|
signing_key:
|
318
316
|
specification_version: 4
|
319
317
|
summary: Builder for AIXM/OFMX aeronautical information
|
metadata.gz.sig
CHANGED
@@ -1,2 +1 @@
|
|
1
|
-
�
|
2
|
-
�mG���r��&�ߋ�j��IR���s�kS��f{At=����
|
1
|
+
�N�Xt��ESH��bګ�%�zYL��
|