aipp 2.0.1 → 2.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 95bc27987486f7d35d5f31109d6186de455061960d55086067d340136f4156ed
4
- data.tar.gz: 0d029bbe0a9205dbae86782ceb674d6a6bc3ba1f51a412fa5e121962d7e69e36
3
+ metadata.gz: 4d5b1987ad76642974e3525037cd251b9d191e6ddf3bb355452c06fc31c47734
4
+ data.tar.gz: b282045f0717e48248e8c876bc0b117fee79c394f751bf3c20cf4c1e96597a3a
5
5
  SHA512:
6
- metadata.gz: 1f40f1d6c1daf97dba669366e9047ea677eab26a7568e893f93fb9da6445cca88853c8ba2c4d900c6362b9d8402fd58f4162a8380776a63cd4003562e8df97d9
7
- data.tar.gz: 5a6e5a5a34b2d6550fcc5f1953c6f6707d253f2e9de16d41505cc57f3a0e797c7faa1bddcb2e1657a6266bc971b2564cd55210725aae219796deffdccf7cb360
6
+ metadata.gz: 80481622154b8a77f614758d41bddc1190d38bed8530f55dc08a6736e9852dac5cbf0bd6d767025dfdf1d73b8e727bb567c193a390546b4f8080d5686ce5163a
7
+ data.tar.gz: dc7991927db97747f7e643ec7484420c741e8d64e33e57187e8c63a361ab45b0ea21666b7ff6e72c464283eee6670bea7f49e9e9ccbe1aeece75aedfdcad4396
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -2,10 +2,25 @@
2
2
 
3
3
  Nothing so far
4
4
 
5
+ ## 2.0.3
6
+
7
+ #### Breaking Changes
8
+ * THR/DTHR fixes from AIXM gem
9
+ * Improve filters of delegated airspaces (region LF)
10
+
11
+ ## 2.0.2
12
+
13
+ #### Additions
14
+ * Support for Ruby 3.2
15
+
16
+ #### Fixes
17
+ * Improve hack to fix braindead years on D-items
18
+
5
19
  ## 2.0.1
6
20
 
7
21
  #### Fixes
8
22
  * Fix ineffective rescue when parsing a NOTAM fails in force mode
23
+ * Hack to fix braindead years on D-items
9
24
 
10
25
  ## 2.0.0
11
26
 
data/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  [![Version](https://img.shields.io/gem/v/aipp.svg?style=flat)](https://rubygems.org/gems/aipp)
2
- [![Tests](https://img.shields.io/github/workflow/status/svoop/aipp/Test.svg?style=flat&label=tests)](https://github.com/svoop/aipp/actions?workflow=Test)
2
+ [![Tests](https://img.shields.io/github/actions/workflow/status/svoop/aipp/test.yml?style=flat&label=tests)](https://github.com/svoop/aipp/actions?workflow=Test)
3
3
  [![Donorbox](https://img.shields.io/badge/donate-on_donorbox-yellow.svg)](https://donorbox.org/bitcetera)
4
4
 
5
5
  # AIPP
@@ -109,7 +109,7 @@ module AIPP::LF::AIP
109
109
  runway.surface = surface_from(rwy_node)
110
110
  runway.forth.geographic_bearing = given(rwy_node.(:OrientationGeo)) { AIXM.a(_1.to_f) }
111
111
  runway.forth.xy = given(rwy_node.(:LatThr1), rwy_node.(:LongThr1)) { AIXM.xy(lat: _1.to_f, long: _2.to_f) }
112
- runway.forth.displaced_threshold = given(rwy_node.(:LatDThr1), rwy_node.(:LongDThr1)) { AIXM.xy(lat: _1.to_f, long: _2.to_f) }
112
+ runway.forth.displaced_threshold_xy = given(rwy_node.(:LatDThr1), rwy_node.(:LongDThr1)) { AIXM.xy(lat: _1.to_f, long: _2.to_f) }
113
113
  runway.forth.z = given(rwy_node.(:AltFtDThr1)) { AIXM.z(_1.to_i, :qnh) }
114
114
  runway.forth.z ||= given(rwy_node.(:AltFtThr1)) { AIXM.z(_1.to_i, :qnh) }
115
115
  if rwylgt_node = rwylgt_nodes[0]
@@ -121,7 +121,7 @@ module AIPP::LF::AIP
121
121
  end
122
122
  if rwy_node.(:Rwy).match? '/'
123
123
  runway.back.xy = given(rwy_node.(:LatThr2), rwy_node.(:LongThr2)) { AIXM.xy(lat: _1.to_f, long: _2.to_f) }
124
- runway.back.displaced_threshold = given(rwy_node.(:LatDThr2), rwy_node.(:LongDThr2)) { AIXM.xy(lat: _1.to_f, long: _2.to_f) }
124
+ runway.back.displaced_threshold_xy = given(rwy_node.(:LatDThr2), rwy_node.(:LongDThr2)) { AIXM.xy(lat: _1.to_f, long: _2.to_f) }
125
125
  runway.back.z = given(rwy_node.(:AltFtDThr2)) { AIXM.z(_1.to_i, :qnh) }
126
126
  runway.back.z ||= given(rwy_node.(:AltFtThr2)) { AIXM.z(_1.to_i, :qnh) }
127
127
  if rwylgt_node = rwylgt_nodes[1]
@@ -27,15 +27,17 @@ module AIPP::LF::AIP
27
27
  'REIMS' => 'LFRR'
28
28
  }.freeze
29
29
 
30
+ DELEGATED_RE = /(?:deleg\.|delegated|delegation)/i.freeze
31
+
30
32
  def parse
31
33
  SOURCE_TYPES.each do |source_type, target|
32
34
  verbose_info("processing #{source_type}")
33
35
  AIPP.cache.espace.css(%Q(Espace[lk^="[LF][#{source_type} "])).each do |espace_node|
34
- # Skip all delegated airspaces
35
- next if espace_node.(:Nom).match? /deleg/i
36
+ next if espace_node.(:Nom).match? DELEGATED_RE
36
37
  next if (re = target[:skip]) && espace_node.(:Nom).match?(re)
37
38
  # Build airspaces and layers
38
39
  AIPP.cache.partie.css(%Q(Partie:has(Espace[pk="#{espace_node['pk']}"]))).each do |partie_node|
40
+ next if partie_node.(:NomPartie).match? DELEGATED_RE
39
41
  add(
40
42
  AIXM.airspace(
41
43
  source: source(part: 'ENR', position: espace_node.line),
@@ -23,8 +23,8 @@ end
23
23
 
24
24
  # HACK: remove braindead years from D-item of W-series NOTAM
25
25
  if row['notamRaw'].match? /\AW/
26
- year = Time.now.year + 1
27
- if row['notamRaw'].gsub!(/\s*#{year}\s*(#{NOTAM::Schedule::MONTH_RE})/, ' \1')
26
+ year = Time.now.year
27
+ if row['notamRaw'].gsub!(/\s*(?:#{year}|#{year+1})\s*(#{NOTAM::Schedule::MONTH_RE})/, ' \1')
28
28
  warn("HACK: removed braindead years from D item")
29
29
  end
30
30
  end
data/lib/aipp/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module AIPP
2
- VERSION = "2.0.1".freeze
2
+ VERSION = "2.0.3".freeze
3
3
  end
data/lib/aipp.rb CHANGED
@@ -60,10 +60,3 @@ require_relative 'aipp/aip/parser'
60
60
  require_relative 'aipp/notam/executable'
61
61
  require_relative 'aipp/notam/runner'
62
62
  require_relative 'aipp/notam/parser'
63
-
64
- # Disable "did you mean?" suggestions
65
- #
66
- # @!visibility private
67
- module DidYouMean::Correctable
68
- remove_method :to_s
69
- end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aipp
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sven Schwyn
@@ -29,7 +29,7 @@ cert_chain:
29
29
  kAyiRqgxF4dJviwtqI7mZIomWL63+kXLgjOjMe1SHxfIPo/0ji6+r1p4KYa7o41v
30
30
  fwIwU1MKlFBdsjkd
31
31
  -----END CERTIFICATE-----
32
- date: 2022-12-21 00:00:00.000000000 Z
32
+ date: 2023-01-22 00:00:00.000000000 Z
33
33
  dependencies:
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: airac
@@ -60,7 +60,7 @@ dependencies:
60
60
  version: '1'
61
61
  - - ">="
62
62
  - !ruby/object:Gem::Version
63
- version: 1.3.2
63
+ version: 1.4.0
64
64
  type: :runtime
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
@@ -70,7 +70,7 @@ dependencies:
70
70
  version: '1'
71
71
  - - ">="
72
72
  - !ruby/object:Gem::Version
73
- version: 1.3.2
73
+ version: 1.4.0
74
74
  - !ruby/object:Gem::Dependency
75
75
  name: notam
76
76
  requirement: !ruby/object:Gem::Requirement
@@ -441,7 +441,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
441
441
  - !ruby/object:Gem::Version
442
442
  version: '0'
443
443
  requirements: []
444
- rubygems_version: 3.3.26
444
+ rubygems_version: 3.4.5
445
445
  signing_key:
446
446
  specification_version: 4
447
447
  summary: Parser for aeronautical information publications
metadata.gz.sig CHANGED
Binary file