relaton-un 1.16.0 → 1.16.2

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: 3c6791ae82b472328fb219a6b7fc1fba4ea6c5b8539120f8131079cf4d66fcee
4
- data.tar.gz: 78eccc13a3e597c377d7e82ad474b8c86345118dfd9119fdfb0ee9830e235cc6
3
+ metadata.gz: be81c113682d65c26375bc01785feb1081d04f0b127046c6e58faa24dfe7754b
4
+ data.tar.gz: 0b5e84ea07955fee78f7b8ac57c95551940b0cceb41103b2891c6fdf7129dc5d
5
5
  SHA512:
6
- metadata.gz: 2d53ebca1c9e6c802953b6598aec20f91ec15fe2c80f1af3ea09f1fae4b502b14713e7442491cdd5ca10c84cb5ac7307e6dbbe967b839527cf1ecbfd05afb34d
7
- data.tar.gz: 9761c548c89ec7a5426f1984e3c3e61003c9869f78c9441333a21070bea317c69f36b46bbbd99ffe791ae084580713f42f5d43797d0b92babff961356b51b9ba
6
+ metadata.gz: 75b2052a163ec18d01a2ed7747846d20346a066c69e4aa57d07be3fb4134b2ccbdf7fa483551ea4514fe95e50ad32615f66d1557a4e909da66157bc1c5f5cff0
7
+ data.tar.gz: 11ec5a1d7a1a4bb4759edbbee5005b9c187b06417507a652dfb61d89ae66cf18e32e095eb35425d23a05cfc9bb828196abb4c72c0aeee73dce279e31b964bc95
data/README.adoc CHANGED
@@ -23,13 +23,24 @@ Or install it yourself as:
23
23
 
24
24
  == Usage
25
25
 
26
- === Search for a standard using keywords
26
+ === Configuration
27
+
28
+ Configuration is optional. The available option is `logger` which is a `Logger` instance. By default, the logger is `Logger.new($stderr)` with `Logger::WARN` level. To change the logger level, use `RelatonUn.configure` block.
27
29
 
28
30
  [source,ruby]
29
31
  ----
30
32
  require 'relaton_un'
31
33
  => true
32
34
 
35
+ RelatonUn.configure do |config|
36
+ config.logger.level = Logger::DEBUG
37
+ end
38
+ ----
39
+
40
+ === Search for a standard using keywords
41
+
42
+ [source,ruby]
43
+ ----
33
44
  hits = RelatonUn::UnBibliography.search("TRADE/CEFACT/2004/32")
34
45
  => <RelatonUn::HitCollection:0x007fc4e6ec2018 @ref=TRADE/CEFACT/2004/32 @fetched=false>
35
46
 
@@ -69,8 +80,8 @@ item.to_xml bibdata: true
69
80
  [source,ruby]
70
81
  ----
71
82
  RelatonUn::UnBibliography.get "UN TRADE/CEFACT/2004/32"
72
- [relaton-un] ("UN TRADE/CEFACT/2004/32") fetching...
73
- [relaton-un] ("UN TRADE/CEFACT/2004/32") found TRADE/CEFACT/2004/32
83
+ [relaton-un] (UN TRADE/CEFACT/2004/32) Fetching from documents.un.org ...
84
+ [relaton-un] (UN TRADE/CEFACT/2004/32) Found: `TRADE/CEFACT/2004/32`
74
85
  => #<RelatonUn::UnBibliographicItem:0x007fdc5f1c3a20
75
86
  ...
76
87
  ----
@@ -0,0 +1,10 @@
1
+ module RelatonUn
2
+ module Config
3
+ include RelatonBib::Config
4
+ end
5
+ extend Config
6
+
7
+ class Configuration < RelatonBib::Configuration
8
+ PROGNAME = "relaton-un".freeze
9
+ end
10
+ end
@@ -6,13 +6,13 @@ require "http-cookie"
6
6
  module RelatonUn
7
7
  # Page of hit collection.
8
8
  class HitCollection < RelatonBib::HitCollection
9
- AGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) "\
10
- "AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36"
9
+ AGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 " \
10
+ "(KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36"
11
11
  DOMAIN = "https://documents.un.org"
12
12
  BOUNDARY = "----WebKitFormBoundaryVarT9Z7AFUzw2lma"
13
13
 
14
14
  # @param text [String] reference to search
15
- def initialize(text) # rubocop:disable Metrics/AbcSize
15
+ def initialize(text) # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
16
16
  super
17
17
  @uri = URI.parse DOMAIN
18
18
  @jar = HTTP::CookieJar.new
@@ -24,7 +24,7 @@ module RelatonUn
24
24
  # @param job_number [String, nil]
25
25
  def initialize(**args)
26
26
  if args[:distribution] && !DISTRIBUTIONS.has_value?(args[:distribution])
27
- warn "[relaton-un] WARNING: invalid distribution: #{args[:distribution]}"
27
+ Util.warn "WARNING: Invalid distribution: `#{args[:distribution]}`"
28
28
  end
29
29
  @submissionlanguage = args.delete :submissionlanguage
30
30
  @distribution = args.delete :distribution
@@ -21,13 +21,15 @@ module RelatonUn
21
21
  # @param opts [Hash] options
22
22
  # @return [RelatonUn::UnBibliographicItem]
23
23
  def get(ref, _year = nil, _opts = {})
24
- warn "[relaton-un] (\"#{ref}\") fetching..."
24
+ Util.warn "(#{ref}) Fetching from documents.un.org ..."
25
25
  /^(?:UN\s)?(?<code>.*)/ =~ ref
26
26
  result = isobib_search_filter(code)
27
27
  if result
28
- warn "[relaton-un] (\"#{ref}\") "\
29
- "found #{result.fetch.docidentifier[0].id}"
28
+ Util.warn "(#{ref}) Found: `#{result.fetch.docidentifier[0].id}`"
30
29
  result.fetch
30
+ else
31
+ Util.warn "(#{ref}) Not found."
32
+ nil
31
33
  end
32
34
  end
33
35
 
@@ -0,0 +1,9 @@
1
+ module RelatonUn
2
+ module Util
3
+ extend RelatonBib::Util
4
+
5
+ def self.logger
6
+ RelatonUn.configuration.logger
7
+ end
8
+ end
9
+ end
@@ -1,3 +1,3 @@
1
1
  module RelatonUn
2
- VERSION = "1.16.0".freeze
2
+ VERSION = "1.16.2".freeze
3
3
  end
data/lib/relaton_un.rb CHANGED
@@ -1,6 +1,8 @@
1
1
  require "addressable"
2
2
  require "relaton_bib"
3
3
  require "relaton_un/version"
4
+ require "relaton_un/config"
5
+ require "relaton_un/util"
4
6
  require "relaton_un/un_bibliographic_item"
5
7
  require "relaton_un/un_bibliography"
6
8
  require "relaton_un/hit_collection"
@@ -16,9 +18,9 @@ module RelatonUn
16
18
  # Returns hash of XML reammar
17
19
  # @return [String]
18
20
  def self.grammar_hash
19
- gem_path = File.expand_path "..", __dir__
20
- grammars_path = File.join gem_path, "grammars", "*"
21
- grammars = Dir[grammars_path].sort.map { |gp| File.read gp }.join
22
- Digest::MD5.hexdigest grammars
21
+ # gem_path = File.expand_path "..", __dir__
22
+ # grammars_path = File.join gem_path, "grammars", "*"
23
+ # grammars = Dir[grammars_path].sort.map { |gp| File.read gp }.join
24
+ Digest::MD5.hexdigest RelatonUn::VERSION + RelatonBib::VERSION # grammars
23
25
  end
24
26
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaton-un
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.16.0
4
+ version: 1.16.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-09-03 00:00:00.000000000 Z
11
+ date: 2023-10-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable
@@ -106,6 +106,7 @@ files:
106
106
  - grammars/relaton-un-compile.rng
107
107
  - grammars/relaton-un.rng
108
108
  - lib/relaton_un.rb
109
+ - lib/relaton_un/config.rb
109
110
  - lib/relaton_un/editorialgroup.rb
110
111
  - lib/relaton_un/hash_converter.rb
111
112
  - lib/relaton_un/hit.rb
@@ -114,6 +115,7 @@ files:
114
115
  - lib/relaton_un/session.rb
115
116
  - lib/relaton_un/un_bibliographic_item.rb
116
117
  - lib/relaton_un/un_bibliography.rb
118
+ - lib/relaton_un/util.rb
117
119
  - lib/relaton_un/version.rb
118
120
  - lib/relaton_un/xml_parser.rb
119
121
  - relaton_un.gemspec