relaton-cli 1.13.0 → 1.14.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 67074e0aa3fa8c3f3badfa9cd924ff0f861aaf14fb456f7a051668be827f5f78
4
- data.tar.gz: b01b4c8710566bbffaa64ffd16ac3ce2f4e5a0d1fa24b1f8924b1d2ada4321db
3
+ metadata.gz: 2ce962bd33e29dc88c310af3cf05bccd843c57a8b729f1579d3d965cf221ce37
4
+ data.tar.gz: e3168dee95d3efe4ac61678ec2fa29b8a073d19a44a97958c0043bf3047e43e4
5
5
  SHA512:
6
- metadata.gz: f2e2eff22baaca6079ffd6ce9fa07abac954db8bbb16138e740c910ccf8f5b5fada43c3809616e2f810fdc0f6eb54e281eff95d29d7b417ec888e6cf778053e1
7
- data.tar.gz: dcaf6f5e5fe0d708ee02b0671beb0906f6173e8e69e9334f77b41526b3c2ec0c6a5cd506d17226cc15080ee038cc6d7cdac5264b1c7fb3a32c954f70e158ab5f
6
+ metadata.gz: 6c46aba4bfd39f2006b69634dad27bc434ef669cfca55f831a2fa75de5b62a50d67a96fb514be124931a8e8fe3004027e506a01efa70aceccee503501f2f910d
7
+ data.tar.gz: b670592e721a5b98e077dcb49c3f0fa3c22c1984246fea09541c713a2888a283bd88ddc2d26c499398cadc86dc10c294b6ba81814a8286e613065e8133490e56
@@ -5,7 +5,6 @@ name: rake
5
5
  on:
6
6
  push:
7
7
  branches: [ master, main ]
8
- tags: [ v* ]
9
8
  pull_request:
10
9
 
11
10
  jobs:
@@ -15,31 +15,8 @@ on:
15
15
 
16
16
  jobs:
17
17
  release:
18
- runs-on: ubuntu-latest
19
- steps:
20
- - uses: actions/checkout@v2
21
-
22
- - uses: ruby/setup-ruby@v1
23
- with:
24
- ruby-version: '2.6'
25
- bundler-cache: true
26
-
27
- - run: gem install gem-release
28
-
29
- - run: |
30
- git config user.name github-actions
31
- git config user.email github-actions@github.com
32
-
33
- - if: github.event_name == 'workflow_dispatch' && github.event.inputs.next_version != 'skip'
34
- run: gem bump --version ${{ github.event.inputs.next_version }} --tag --push
35
-
36
- - name: publish to rubygems.org
37
- env:
38
- RUBYGEMS_API_KEY: ${{secrets.RELATON_CI_RUBYGEMS_API_KEY}}
39
- run: |
40
- envsubst << 'EOF' > ~/.gem/credentials
41
- ---
42
- :rubygems_api_key: ${RUBYGEMS_API_KEY}
43
- EOF
44
- chmod 0600 ~/.gem/credentials
45
- gem release
18
+ uses: relaton/support/.github/workflows/release.yml@master
19
+ with:
20
+ next_version: ${{ github.event.inputs.next_version }}
21
+ secrets:
22
+ rubygems-api-key: ${{ secrets.RELATON_CI_RUBYGEMS_API_KEY }}
data/docs/README.adoc CHANGED
@@ -10,7 +10,7 @@ Please refer to https://github.com/relaton/relaton.
10
10
 
11
11
  == Commands
12
12
 
13
- Each command has an option `--verbose` (short form is `-v`). Use the option to get warnings in the commands outpput.
13
+ Each command has an option `--verbose` (the short form is `-v`). Use the option to get warnings in the commands output.
14
14
  The following commands are provided.
15
15
 
16
16
  === relaton concatenate
@@ -23,7 +23,7 @@ $ relaton concatenate Source-Directory Relaton-Collection-File -t TITLE -g ORGAN
23
23
  Iterates through all the Relaton files (YAML and XML) in `Source-Directory`, and concatenates them into a Relaton Collection file. The extension of the Collection file can be set using the `Relaton-Collection-File` file name (i.e, if it uses an extension of `yaml`, a Relaton YAML file will be created; if `rxl`, a Relaton XML file will be created, or via the `-x [ext]` (or `--extension`) option.
24
24
 
25
25
  For each Relaton input file in the `Source-Directory`, if a document file with the same base name is identified (i.e. an XML, HTML, PDF or DOC
26
- file), a link to that file is inserted.
26
+ file) a link to that file is inserted.
27
27
 
28
28
  If the `TITLE` or `ORGANIZATION` options are given, they are added to the `Collection-File` output as the
29
29
  title and author of the `Relaton-Collection-File` document.
@@ -47,12 +47,12 @@ $ relaton fetch CODE -t TYPE -f FORMAT -y YEAR -r RETRIES --all-parts --keep-yea
47
47
 
48
48
  Fetch the Relaton XML entry corresponding to the document identifier `CODE`.
49
49
 
50
- * `YEAR` is optional, and specifies the year of publication of the standard.
51
- * `FORMAT` is optional, and specifies the output format; the recognised values for `FORMAT` are `xml` (default), yaml, `bibtex`.
52
- * `TYPE` is optional, specifies the standards class library to be used, that the identifier is part of. The recognised values for `TYPE` are `3GPP, BIPM, BSI, CC, CEN, CIE, CN, ECMA, IANA, IEC, IEEE, IETF, IHO, ISO, ITU, NIST, OGC, OMG, UN, W3C`.
50
+ * `YEAR` is optional and specifies the year of publication of the standard.
51
+ * `FORMAT` is optional, and specifies the output format; the recognized values for `FORMAT` are `xml` (default), yaml, `bibtex`.
52
+ * `TYPE` is optional and specifies the standards class library to be used, that the identifier is part of. The recognized values for `TYPE` are `3GPP, BIPM, BSI, CC, CEN, CIE, CN, ECMA, IANA, IEC, IEEE, IETF, IHO, ISO, ITU, NIST, OGC, OMG, UN, W3C`.
53
53
  * `RETRIES` is optional, number of network retries (default 1).
54
54
  * `--all-parts` fetch all parts.
55
- * `--keep-year` undated reference should return actual reference with year.
55
+ * `--keep-year` undated reference should return an actual reference with year.
56
56
 
57
57
  === relaton fetch-data
58
58
 
@@ -61,25 +61,26 @@ Fetch the Relaton XML entry corresponding to the document identifier `CODE`.
61
61
  $ relaton fetch-data DATASET -o DIR -f FORMAT
62
62
  ----
63
63
 
64
- Fetch all the documents from a `DATASET` source and save them to a folder `DIR` in format `FORMAT`.
64
+ Fetch all the documents from a `DATASET` source and save them to a folder `DIR` in the format `FORMAT`.
65
65
 
66
- Foloowing datasets are availabe:
66
+ The following datasets are available:
67
67
 
68
68
  * `nist-tech-pubs` - https://raw.githubusercontent.com/usnistgov/NIST-Tech-Pubs/nist-pages/xml/allrecords.xml
69
69
  * `cie-techstreet` - https://www.techstreet.com/cie/searches/31156444
70
70
  * `calconnect-org` - https://standards.calconnect.org/relaton/index.yaml
71
71
  * `ogc-naming-authority` - https://raw.githubusercontent.com/opengeospatial/NamingAuthority/master/incubation/bibliography/bibliography.json
72
- * `ieee-rawbib` - looks for the IEEE dataset in local `./ieee-rawbib` directory. The dataset could be downloaded from https://github.com/ietf-ribose/ieee-rawbib repository
72
+ * `ieee-rawbib` - looks for the IEEE dataset in the local `./ieee-rawbib` directory. The dataset could be downloaded from https://github.com/ietf-ribose/ieee-rawbib repository
73
73
  * `w3c-rdf` - http://www.w3.org/2002/01/tr-automation/tr.rdf
74
74
  * `w3c-tr-archive` - looks for the W3C archive dataset in local `./w3c-tr-archive` directory. The dataset could be downloaded from https://github.com/relaton/w3c-tr-archive repository
75
75
  * `iana-registries` - https://github.com/ietf-ribose/iana-registries
76
- * `status-smg-3GPP` - ftp://www.3gpp.org/Information/Databases/Spec_Status/
76
+ * `status-smg-3GPP` - updates previously downloaded data if a new archive is available in ftp://www.3gpp.org/Information/Databases/Spec_Status/
77
+ * `status-smg-3GPP-force` - download data from the latest archive in ftp://www.3gpp.org/Information/Databases/Spec_Status/
77
78
  * `ietf-rfcsubseries` - https://www.rfc-editor.org/rfc-index.xml (`<bcp-entry>`, `<fyi-entry>`, `<std-entry>`)
78
- * `ietf-internet-drafts` - looks for the Internet-Drafts dataset in local `./bibxml-ids` directory. The dataset could be downloaded using `rsync -avcizxL rsync.ietf.org::bibxml-ids ./bibxml-ids` command.
79
+ * `ietf-internet-drafts` - looks for the Internet-Drafts dataset in the local `./bibxml-ids` directory. The dataset could be downloaded using `rsync -avcizxL rsync.ietf.org::bibxml-ids ./bibxml-ids` command.
79
80
  * `ietf-rfc-entries` - https://www.rfc-editor.org/rfc-index.xml (`<rfc-entry>`)
80
81
  * `oasis-open` - https://www.oasis-open.org/standards/
81
- * `bipm-data-outcomes` - looks for the BIPM dataset in local `./bipm-data-outcomes` directory. The dataset could be downloaded from https://github.com/metanorma/bipm-data-outcomes repository
82
- * `si-brochure` - looks for the SI-Brochure dataset in local `./bipm-si-brocure` directory. The dataset could be downloaded from https://github.com/metanorma/bipm-si-brochure repository
82
+ * `bipm-data-outcomes` - looks for the BIPM dataset in the local `./bipm-data-outcomes` directory. The dataset could be downloaded from https://github.com/metanorma/bipm-data-outcomes repository
83
+ * `si-brochure` - looks for the SI-Brochure dataset in the local `./bipm-si-brocure` directory. The dataset could be downloaded from https://github.com/metanorma/bipm-si-brochure repository
83
84
 
84
85
  Options:
85
86
 
@@ -116,7 +117,7 @@ There are two templates necessary:
116
117
 
117
118
  ** Index template (`_index.liquid_`)
118
119
 
119
- *** The HTML Template file `_index.liquid` recognises the following parameters:
120
+ *** The HTML Template file `_index.liquid` recognizes the following parameters:
120
121
  *** `css`: where the CSS stylesheet `stylesheet` is injected
121
122
  *** `title`: the Title of the collection, `./relaton-collection/title` in `relaton-xml`
122
123
  *** `author`: the Author of the collection, `./relaton-collection/contributor[role/@type = 'author']/organization/name` in `relaton-xml`
@@ -124,7 +125,7 @@ There are two templates necessary:
124
125
 
125
126
  ** Individual bibliographic entries template (`_document.liquid`)
126
127
 
127
- *** This template recognises attributes of a bibliographic entry (`document`) which follow the naming convention of <<relaton-yaml,Relaton YAML>>; e.g. `document.html` is the HTML URI for the document.
128
+ *** This template recognizes attributes of a bibliographic entry (`document`) that follow the naming convention of <<relaton-yaml,Relaton YAML>>; e.g. `document.html` is the HTML URI for the document.
128
129
 
129
130
  The default stylesheet and templates are given (which also demonstrates the structure) in the `templates` directory.
130
131
 
@@ -186,7 +187,7 @@ $ relaton yaml2xml YAML -o OUTPUT-DIRECTORY -x RELATON_EXTENSION -p PREFIX -r LI
186
187
  Convert a Relaton YAML file (`filename.yaml`) into a Relaton XML file (`filename.xml`). If the Relaton YAML file specifies multiple bibliograph items, and `OUTPUT-DIRECTORY` is nominated, also convert the file into a list of Relaton XML files for each entry, stored in that directory. The document identifier is used as the name of each Relaton XML file; the Relaton XML filename is suffixed with `RELATON_EXTENSION` (default `.rxl`) and prefixed with `PREFIX` (default empty). Any libraries that need to be required for the conversion are specified in `LIBRARY` as a space-delimited list.
187
188
 
188
189
  [[relaton-yaml]]
189
- A Relaton Collection YAML file contains some initial metadata, and a list of metadata about each bibliographic entry:
190
+ A Relaton Collection YAML file contains some initial metadata and a list of metadata about each bibliographic entry:
190
191
 
191
192
  [source,yaml]
192
193
  ----
@@ -109,7 +109,7 @@ module Relaton
109
109
  @relaton_collection ||= Bibcollection.from_xml(nokogiri_document(nil, source))
110
110
  end
111
111
 
112
- def extract_and_write_to_files
112
+ def extract_and_write_to_files # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
113
113
  select_source_files.each do |file|
114
114
  xml = nokogiri_document(nil, file)
115
115
  xml.remove_namespaces!
@@ -7,8 +7,8 @@ module Relaton
7
7
  class_option :verbose, aliases: :v, type: :boolean, desc: "Output warnings"
8
8
 
9
9
  desc "create COLLECTION", "Create collection"
10
- option :dir, aliases: :d, desc: "Directory to store collection. Default "\
11
- "is $HOME/.relaton/collections."
10
+ option :dir, aliases: :d, desc: "Directory to store collection. " \
11
+ "Default is $HOME/.relaton/collections."
12
12
  option :author, desc: "Author"
13
13
  option :title, desc: "Title"
14
14
  option :doctype, desc: "Documents type"
@@ -20,14 +20,14 @@ module Relaton
20
20
  if File.exist? file_path
21
21
  warn "Collection #{file} aready exist"
22
22
  else
23
- Dir.mkdir dir unless Dir.exist? dir
23
+ FileUtils.mkdir_p dir # unless Dir.exist? dir
24
24
  File.write file_path, col.to_yaml, encoding: "UTF-8"
25
25
  end
26
26
  end
27
27
 
28
28
  desc "info COLLECTION", "View collection information"
29
- option :dir, aliases: :d, desc: "Directory to store collection. Default "\
30
- "is $HOME/.relaton/collections."
29
+ option :dir, aliases: :d, desc: "Directory to store collection. " \
30
+ "Default is $HOME/.relaton/collections."
31
31
 
32
32
  def info(file) # rubocop:disable Metrics/AbcSize
33
33
  path = File.join directory, file
@@ -41,8 +41,8 @@ module Relaton
41
41
  end
42
42
 
43
43
  desc "list", "List collections"
44
- option :dir, aliases: :d, desc: "Directory with collections. Default is "\
45
- "$HOME/.relaton/collections."
44
+ option :dir, aliases: :d, desc: "Directory with collections. Default " \
45
+ "is $HOME/.relaton/collections."
46
46
  option :entries, aliases: :e, type: :boolean, desc: "Show entries"
47
47
 
48
48
  def list
@@ -58,13 +58,13 @@ module Relaton
58
58
  map ls: :list
59
59
 
60
60
  desc "get CODE", "Fetch document from collection by ID"
61
- option :collection, aliases: :c, desc: "Collection to fetch document. "\
61
+ option :collection, aliases: :c, desc: "Collection to fetch document. " \
62
62
  "By default fetch the first match across all collections."
63
- option :dir, aliases: :d, desc: "Directory with collections. Default is "\
64
- "$HOME/.relaton/collections."
65
- option :format, aliases: :f, desc: "Output format (xml, abb). "\
63
+ option :dir, aliases: :d, desc: "Directory with collections. Default " \
64
+ "is $HOME/.relaton/collections."
65
+ option :format, aliases: :f, desc: "Output format (xml, abb). " \
66
66
  "If not defined the output in a human-readable form."
67
- option :output, aliases: :o, desc: "Output to the specified file. The "\
67
+ option :output, aliases: :o, desc: "Output to the specified file. The " \
68
68
  " file's extension (abb, xml) defines output format."
69
69
 
70
70
  def get(docid)
@@ -79,10 +79,10 @@ module Relaton
79
79
  end
80
80
 
81
81
  desc "find TEXT", "Full-text search"
82
- option :collection, aliases: :c, desc: "Collection to search text. "\
82
+ option :collection, aliases: :c, desc: "Collection to search text. " \
83
83
  "By default search across all collections."
84
- option :dir, aliases: :d, desc: "Directory with collections. Default is "\
85
- "$HOME/.relaton/collections."
84
+ option :dir, aliases: :d, desc: "Directory with collections. Default is " \
85
+ "$HOME/.relaton/collections."
86
86
 
87
87
  def find(text)
88
88
  collections.each do |col|
@@ -98,14 +98,14 @@ module Relaton
98
98
  map search: :find
99
99
 
100
100
  desc "fetch CODE", "Fetch a document and store it into a collection"
101
- option :type, aliases: :t, required: true, desc: "Type of standard to "\
102
- "get bibliographic entry for"
103
- option :year, aliases: :y, type: :numeric, desc: "Year the standard was "\
104
- "published"
105
- option :collection, aliases: :c, required: true, desc: "Collection "\
106
- "to store a document"
107
- option :dir, aliases: :d, desc: "Directory with collections. Default is "\
108
- "$HOME/.relaton/collections."
101
+ option :type, aliases: :t, required: true,
102
+ desc: "Type of standard to get bibliographic entry for"
103
+ option :year, aliases: :y, type: :numeric,
104
+ desc: "Year the standard was published"
105
+ option :collection, aliases: :c, required: true,
106
+ desc: "Collection to store a document"
107
+ option :dir, aliases: :d, desc: "Directory with collections. Default is " \
108
+ "$HOME/.relaton/collections."
109
109
 
110
110
  def fetch(code) # rubocop:disable Metrics/AbcSize
111
111
  doc = Relaton.db.fetch(code, options[:year]&.to_s)
@@ -118,12 +118,13 @@ module Relaton
118
118
  end
119
119
  end
120
120
 
121
- desc "import FILE", "Import document or collection from an XML file "\
122
- "into another collection"
123
- option :collection, aliases: :c, required: true, desc: "Collection to "\
124
- "store a document. If collection doesn't exist then it'll be created."
125
- option :dir, aliases: :d, desc: "Directory with collections. Default is "\
126
- "$HOME/.relaton/collections."
121
+ desc "import FILE", "Import document or collection from an XML file " \
122
+ "into another collection"
123
+ option :collection, aliases: :c, required: true,
124
+ desc: "Collection to store a document. If " \
125
+ "collection doesn't exist then it'll be created."
126
+ option :dir, aliases: :d, desc: "Directory with collections. Default is " \
127
+ "$HOME/.relaton/collections."
127
128
 
128
129
  def import(file) # rubocop:disable Metrics/AbcSize,Metrics/MethodLength
129
130
  collfile = File.join directory, options[:collection]
@@ -143,12 +144,12 @@ module Relaton
143
144
  end
144
145
 
145
146
  desc "export COLLECTION", "Export collection into XML file"
146
- option :dir, aliases: :d, desc: "Directory with collections. Default is "\
147
- "$HOME/.relaton/collections."
147
+ option :dir, aliases: :d, desc: "Directory with collections. Default is " \
148
+ "$HOME/.relaton/collections."
148
149
 
149
150
  def export(file)
150
151
  coll = read_collection File.join(directory, file)
151
- outfile = file.sub(/\.\w+$/, "") + ".xml"
152
+ outfile = "#{file.sub(/\.\w+$/, '')}.xml"
152
153
  File.write outfile, coll.to_xml(bibdata: true), encoding: "UTF-8"
153
154
  end
154
155
 
@@ -194,7 +195,7 @@ module Relaton
194
195
  return unless options[:entries]
195
196
 
196
197
  Relaton::Bibcollection.new(hash["root"]).items.each do |b|
197
- puts " " + b.docidentifier
198
+ puts " #{b.docidentifier}"
198
199
  end
199
200
  end
200
201
 
@@ -1,5 +1,5 @@
1
1
  module Relaton
2
2
  module Cli
3
- VERSION = "1.13.0".freeze
3
+ VERSION = "1.14.1".freeze
4
4
  end
5
5
  end
data/relaton-cli.gemspec CHANGED
@@ -36,7 +36,7 @@ Gem::Specification.new do |spec|
36
36
  spec.add_development_dependency "webmock"
37
37
 
38
38
  spec.add_runtime_dependency "liquid", "~> 4"
39
- spec.add_runtime_dependency "relaton", "~> 1.13.0"
39
+ spec.add_runtime_dependency "relaton", "~> 1.14.0"
40
40
  spec.add_runtime_dependency "thor"
41
41
  spec.add_runtime_dependency "thor-hollaback"
42
42
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaton-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.13.0
4
+ version: 1.14.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-08-21 00:00:00.000000000 Z
11
+ date: 2022-12-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: byebug
@@ -170,14 +170,14 @@ dependencies:
170
170
  requirements:
171
171
  - - "~>"
172
172
  - !ruby/object:Gem::Version
173
- version: 1.13.0
173
+ version: 1.14.0
174
174
  type: :runtime
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
178
  - - "~>"
179
179
  - !ruby/object:Gem::Version
180
- version: 1.13.0
180
+ version: 1.14.0
181
181
  - !ruby/object:Gem::Dependency
182
182
  name: thor
183
183
  requirement: !ruby/object:Gem::Requirement
@@ -256,7 +256,7 @@ homepage: https://github.com/metanorma/relaton-cli
256
256
  licenses:
257
257
  - BSD-2-Clause
258
258
  metadata: {}
259
- post_install_message:
259
+ post_install_message:
260
260
  rdoc_options: []
261
261
  require_paths:
262
262
  - lib
@@ -271,8 +271,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
271
271
  - !ruby/object:Gem::Version
272
272
  version: '0'
273
273
  requirements: []
274
- rubygems_version: 3.2.3
275
- signing_key:
274
+ rubygems_version: 3.1.6
275
+ signing_key:
276
276
  specification_version: 4
277
277
  summary: Relaton Command-line Interface
278
278
  test_files: []