metanorma-cli 1.3.3 → 1.3.7

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.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/dependent_repos.env +3 -0
  3. data/.github/workflows/macos.yml +38 -0
  4. data/.github/workflows/ubuntu.yml +72 -0
  5. data/.github/workflows/windows.yml +40 -0
  6. data/.gitignore +21 -0
  7. data/.hound.yml +3 -0
  8. data/.rspec +2 -0
  9. data/.rubocop.yml +515 -0
  10. data/docs/installation.adoc +61 -0
  11. data/docs/navigation.adoc +7 -0
  12. data/docs/usage.adoc +74 -0
  13. data/lib/metanorma/cli/command.rb +25 -1
  14. data/lib/metanorma/cli/setup.rb +9 -30
  15. data/lib/metanorma/cli/version.rb +1 -1
  16. data/metanorma-cli.gemspec +24 -19
  17. data/templates/base/.github/workflows/docker.yml +74 -0
  18. data/templates/base/.github/workflows/macos.yml +50 -0
  19. data/templates/base/.github/workflows/ubuntu.yml +55 -0
  20. data/templates/base/.github/workflows/windows.yml +42 -0
  21. data/templates/base/.gitlab-ci.yml +34 -4
  22. data/templates/base/Makefile +111 -59
  23. data/templates/base/Makefile.win +136 -36
  24. data/templates/base/metanorma.yml +1 -1
  25. metadata +49 -83
  26. data/05-020r26.rxl +0 -75
  27. data/05-020r26.xml.zip +0 -0
  28. data/Gemfile.lock +0 -336
  29. data/a +0 -3
  30. data/a.json +0 -33
  31. data/a.rb +0 -13
  32. data/a.rxl +0 -45
  33. data/b +0 -85
  34. data/csd-tofix 2.zip +0 -0
  35. data/csd-tofix.zip +0 -0
  36. data/exe/metanorma.old +0 -178
  37. data/extract/sourcecode/sourcecode-0000.txt +0 -5
  38. data/files.zip +0 -0
  39. data/relaton/cache/version +0 -1
  40. data/rice.rxl +0 -51
  41. data/sourcecode/0 +0 -5
  42. data/templates/base/.travis.yml +0 -30
  43. data/templates/base/appveyor.yml +0 -29
  44. data/test.rxl +0 -52
  45. data/tmp/my-custom-csd/Gemfile +0 -4
  46. data/tmp/my-custom-csd/Makefile +0 -144
  47. data/tmp/my-custom-csd/Makefile.win +0 -116
  48. data/tmp/my-custom-csd/appveyor.yml +0 -29
  49. data/tmp/my-custom-csd/metanorma.yml +0 -4
  50. data/tmp/my-document/Gemfile +0 -4
  51. data/tmp/my-document/Makefile +0 -144
  52. data/tmp/my-document/Makefile.win +0 -116
  53. data/tmp/my-document/appveyor.yml +0 -29
  54. data/tmp/my-document/metanorma.yml +0 -4
  55. data/tmp/my-local-document/Gemfile +0 -4
  56. data/tmp/my-local-document/Makefile +0 -144
  57. data/tmp/my-local-document/Makefile.win +0 -116
  58. data/tmp/my-local-document/appveyor.yml +0 -29
  59. data/tmp/my-local-document/metanorma.yml +0 -4
@@ -1,116 +0,0 @@
1
- #!make
2
-
3
- FORMAT_MARKER := mn-output-
4
- FORMATS := $(shell grep "$(FORMAT_MARKER)" *.adoc | cut -f 2 -d ' ' | tr ',' '\n' | sort | uniq | tr '\n' ' ')
5
-
6
- SRC := $(filter-out README.adoc, $(wildcard *.adoc))
7
- XML := $(patsubst %.adoc,%.xml,$(SRC))
8
- HTML := $(patsubst %.adoc,%.html,$(SRC))
9
- DOC := $(patsubst %.adoc,%.doc,$(SRC))
10
- PDF := $(patsubst %.adoc,%.pdf,$(SRC))
11
- WSD := $(wildcard models/*.wsd)
12
- XMI := $(patsubst models/%,xmi/%,$(patsubst %.wsd,%.xmi,$(WSD)))
13
- PNG := $(patsubst models/%,images/%,$(patsubst %.wsd,%.png,$(WSD)))
14
-
15
- HOST_SHARE_DIR=$(USERPROFILE)\$(shell for %%I in (.) do echo %%~nxI)
16
- COMPILE_CMD_LOCAL := bundle exec metanorma $(SRC)
17
- COMPILE_CMD_DOCKER := docker run --rm -it -v $(CURDIR):/metanorma/ ribose/metanorma "metanorma $(SRC)"
18
-
19
- ifdef METANORMA_DOCKER
20
- COMPILE_CMD := echo "Compiling via docker..." & $(COMPILE_CMD_DOCKER)
21
- else
22
- COMPILE_CMD := echo "Compiling locally..." & $(COMPILE_CMD_LOCAL)
23
- endif
24
-
25
- _OUT_FILES := $(foreach FORMAT,$(FORMATS),$(shell echo $(FORMAT) | tr '[:lower:]' '[:upper:]'))
26
- OUT_FILES := $(foreach F,$(_OUT_FILES),$($F))
27
-
28
- all: $(OUT_FILES)
29
-
30
- %.xml %.html %.doc %.pdf: %.adoc | bundle
31
- ${COMPILE_CMD}
32
-
33
- images: $(PNG)
34
-
35
- images/%.png: models/%.wsd
36
- plantuml -tpng -o ../images/ $<
37
-
38
- xmi: $(XMI)
39
-
40
- xmi/%.xmi: models/%.wsd
41
- plantuml -xmi:star -o ../xmi/ $<
42
-
43
- define FORMAT_TASKS
44
- OUT_FILES-$(FORMAT) := $($(shell echo $(FORMAT) | tr '[:lower:]' '[:upper:]'))
45
-
46
- open-$(FORMAT):
47
- $$(OUT_FILES-$(FORMAT))
48
-
49
- clean-$(FORMAT):
50
- rm $$(OUT_FILES-$(FORMAT))
51
-
52
- $(FORMAT): clean-$(FORMAT) $$(OUT_FILES-$(FORMAT))
53
-
54
- .PHONY: clean-$(FORMAT)
55
-
56
- endef
57
-
58
- $(foreach FORMAT,$(FORMATS),$(eval $(FORMAT_TASKS)))
59
-
60
- open: open-html
61
-
62
- clean:
63
- rm -rf $(OUT_FILES)
64
-
65
- bundle:
66
- IF "" == "${METANORMA_DOCKER}" bundle
67
-
68
- .PHONY: bundle all open clean
69
-
70
- #
71
- # Watch-related jobs
72
- #
73
-
74
- .PHONY: watch serve watch-serve
75
-
76
- NODE_BINS := onchange live-serve run-p
77
- NODE_BIN_DIR := node_modules/.bin
78
- NODE_PACKAGE_PATHS := $(foreach PACKAGE_NAME,$(NODE_BINS),$(NODE_BIN_DIR)/$(PACKAGE_NAME))
79
-
80
- $(NODE_PACKAGE_PATHS): package.json
81
- npm i
82
-
83
- watch: $(NODE_BIN_DIR)/onchange
84
- make all
85
- $< $(ALL_SRC) -- make all
86
-
87
- define WATCH_TASKS
88
- watch-$(FORMAT): $(NODE_BIN_DIR)/onchange
89
- make $(FORMAT)
90
- $$< $$(SRC_$(FORMAT)) -- make $(FORMAT)
91
-
92
- .PHONY: watch-$(FORMAT)
93
- endef
94
-
95
- $(foreach FORMAT,$(FORMATS),$(eval $(WATCH_TASKS)))
96
-
97
- serve: $(NODE_BIN_DIR)/live-server revealjs-css reveal.js images
98
- set PORT=$${PORT:-8123} & \
99
- set port=$${PORT} & \
100
- for /r %%html in $(HTML) do ( \
101
- $< --entry-file=%%html --port=%port% --ignore="*.html,*.xml,Makefile,Gemfile.*,package.*.json" --wait=1000 & \
102
- set /A port=%port%+1 \
103
- )
104
-
105
- watch-serve: $(NODE_BIN_DIR)/run-p
106
- $< watch serve
107
-
108
- #
109
- # Deploy jobs
110
- #
111
-
112
- publish:
113
- mkdir -p published
114
- xcopy $(basename $(SRC)).* published
115
- copy $(firstword $(HTML)) published\index.html
116
- IF EXIST "images" xcopy /E images published
@@ -1,29 +0,0 @@
1
- version: '{build}'
2
-
3
- environment:
4
- matrix:
5
- - RUBY_VERSION: 25
6
- - RUBY_VERSION: 24
7
- - RUBY_VERSION: _trunk
8
-
9
- matrix:
10
- allow_failures:
11
- - RUBY_VERSION: _trunk
12
-
13
- install:
14
- - ps: . { iwr -useb https://raw.githubusercontent.com/metanorma/metanorma-build-scripts/master/appveyor.ps1 } | iex
15
- - refreshenv
16
-
17
- build_script:
18
- - set PATH=C:\Ruby%RUBY_VERSION%\bin;%PATH%
19
- - bundle update
20
- - bundle install
21
-
22
- before_test:
23
- - ruby -v
24
- - gem -v
25
- - bundle -v
26
-
27
- test_script:
28
- - plantuml -testdot
29
- - make -f Makefile.win clean all publish SHELL=cmd
@@ -1,4 +0,0 @@
1
- ---
2
- metanorma:
3
- deploy:
4
- email: "travis-ci@metanorma.org"
@@ -1,4 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gem "metanorma-cli"
4
- gem "relaton-cli"
@@ -1,144 +0,0 @@
1
- #!make
2
- SHELL := /bin/bash
3
- # Ensure the xml2rfc cache directory exists locally
4
- IGNORE := $(shell mkdir -p $(HOME)/.cache/xml2rfc)
5
-
6
- SRC := $(shell yq r metanorma.yml metanorma.source.files | cut -c 3-999)
7
- ifeq ($(SRC),ll)
8
- SRC := $(filter-out README.adoc, $(wildcard *.adoc))
9
- endif
10
-
11
- FORMAT_MARKER := mn-output-
12
- FORMATS := $(shell grep "$(FORMAT_MARKER)" $(SRC) | cut -f 2 -d ' ' | tr ',' '\n' | sort | uniq | tr '\n' ' ')
13
-
14
- XML := $(patsubst %.adoc,%.xml,$(SRC))
15
- XMLRFC3 := $(patsubst %.adoc,%.v3.xml,$(SRC))
16
- HTML := $(patsubst %.adoc,%.html,$(SRC))
17
- DOC := $(patsubst %.adoc,%.doc,$(SRC))
18
- PDF := $(patsubst %.adoc,%.pdf,$(SRC))
19
- TXT := $(patsubst %.adoc,%.txt,$(SRC))
20
- NITS := $(patsubst %.adoc,%.nits,$(wildcard draft-*.adoc))
21
- WSD := $(wildcard models/*.wsd)
22
- XMI := $(patsubst models/%,xmi/%,$(patsubst %.wsd,%.xmi,$(WSD)))
23
- PNG := $(patsubst models/%,images/%,$(patsubst %.wsd,%.png,$(WSD)))
24
-
25
- COMPILE_CMD_LOCAL := bundle exec metanorma $$FILENAME
26
- COMPILE_CMD_DOCKER := docker run -v "$$(pwd)":/metanorma/ ribose/metanorma "metanorma $$FILENAME"
27
-
28
- ifdef METANORMA_DOCKER
29
- COMPILE_CMD := echo "Compiling via docker..."; $(COMPILE_CMD_DOCKER)
30
- else
31
- COMPILE_CMD := echo "Compiling locally..."; $(COMPILE_CMD_LOCAL)
32
- endif
33
-
34
- _OUT_FILES := $(foreach FORMAT,$(FORMATS),$(shell echo $(FORMAT) | tr '[:lower:]' '[:upper:]'))
35
- OUT_FILES := $(foreach F,$(_OUT_FILES),$($F))
36
-
37
- all: images $(OUT_FILES)
38
-
39
- %.v3.xml %.xml %.html %.doc %.pdf %.txt: %.adoc | bundle
40
- FILENAME=$^; \
41
- ${COMPILE_CMD}
42
-
43
- draft-%.nits: draft-%.txt
44
- VERSIONED_NAME=`grep :name: draft-$*.adoc | cut -f 2 -d ' '`; \
45
- cp $^ $${VERSIONED_NAME}.txt && \
46
- idnits --verbose $${VERSIONED_NAME}.txt > $@ && \
47
- cp $@ $${VERSIONED_NAME}.nits && \
48
- cat $${VERSIONED_NAME}.nits
49
-
50
- %.nits:
51
-
52
- nits: $(NITS)
53
-
54
- images: $(PNG)
55
-
56
- images/%.png: models/%.wsd
57
- plantuml -tpng -o ../images/ $<
58
-
59
- xmi: $(XMI)
60
-
61
- xmi/%.xmi: models/%.wsd
62
- plantuml -xmi:star -o ../xmi/ $<
63
-
64
- define FORMAT_TASKS
65
- OUT_FILES-$(FORMAT) := $($(shell echo $(FORMAT) | tr '[:lower:]' '[:upper:]'))
66
-
67
- open-$(FORMAT):
68
- open $$(OUT_FILES-$(FORMAT))
69
-
70
- clean-$(FORMAT):
71
- rm -f $$(OUT_FILES-$(FORMAT))
72
-
73
- $(FORMAT): clean-$(FORMAT) $$(OUT_FILES-$(FORMAT))
74
-
75
- .PHONY: clean-$(FORMAT)
76
-
77
- endef
78
-
79
- $(foreach FORMAT,$(FORMATS),$(eval $(FORMAT_TASKS)))
80
-
81
- open: open-html
82
-
83
- clean:
84
- rm -f $(OUT_FILES) && rm -rf published
85
-
86
- bundle:
87
- if [ "x" == "${METANORMA_DOCKER}x" ]; then bundle; fi
88
-
89
- .PHONY: bundle all open clean
90
-
91
- #
92
- # Watch-related jobs
93
- #
94
-
95
- .PHONY: watch serve watch-serve
96
-
97
- NODE_BINS := onchange live-serve run-p
98
- NODE_BIN_DIR := node_modules/.bin
99
- NODE_PACKAGE_PATHS := $(foreach PACKAGE_NAME,$(NODE_BINS),$(NODE_BIN_DIR)/$(PACKAGE_NAME))
100
-
101
- $(NODE_PACKAGE_PATHS): package.json
102
- npm i
103
-
104
- watch: $(NODE_BIN_DIR)/onchange
105
- $(MAKE) all
106
- $< $(ALL_SRC) -- $(MAKE) all
107
-
108
- define WATCH_TASKS
109
- watch-$(FORMAT): $(NODE_BIN_DIR)/onchange
110
- $(MAKE) $(FORMAT)
111
- $$< $$(SRC_$(FORMAT)) -- $(MAKE) $(FORMAT)
112
-
113
- .PHONY: watch-$(FORMAT)
114
- endef
115
-
116
- $(foreach FORMAT,$(FORMATS),$(eval $(WATCH_TASKS)))
117
-
118
- serve: $(NODE_BIN_DIR)/live-server revealjs-css reveal.js images
119
- export PORT=$${PORT:-8123} ; \
120
- port=$${PORT} ; \
121
- for html in $(HTML); do \
122
- $< --entry-file=$$html --port=$${port} --ignore="*.html,*.xml,Makefile,Gemfile.*,package.*.json" --wait=1000 & \
123
- port=$$(( port++ )) ;\
124
- done
125
-
126
- watch-serve: $(NODE_BIN_DIR)/run-p
127
- $< watch serve
128
-
129
- #
130
- # Deploy jobs
131
- #
132
-
133
- publish:
134
- $(MAKE) published
135
-
136
- published:
137
- mkdir -p $@ && \
138
- export GLOBIGNORE=$(SRC); \
139
- cp -a $(addsuffix .*,$(basename $(SRC))) $@/; \
140
- unset GLOBIGNORE; \
141
- cp $(firstword $(HTML)) $@/index.html
142
-
143
- .PHONY: publish
144
-
@@ -1,116 +0,0 @@
1
- #!make
2
-
3
- FORMAT_MARKER := mn-output-
4
- FORMATS := $(shell grep "$(FORMAT_MARKER)" *.adoc | cut -f 2 -d ' ' | tr ',' '\n' | sort | uniq | tr '\n' ' ')
5
-
6
- SRC := $(filter-out README.adoc, $(wildcard *.adoc))
7
- XML := $(patsubst %.adoc,%.xml,$(SRC))
8
- HTML := $(patsubst %.adoc,%.html,$(SRC))
9
- DOC := $(patsubst %.adoc,%.doc,$(SRC))
10
- PDF := $(patsubst %.adoc,%.pdf,$(SRC))
11
- WSD := $(wildcard models/*.wsd)
12
- XMI := $(patsubst models/%,xmi/%,$(patsubst %.wsd,%.xmi,$(WSD)))
13
- PNG := $(patsubst models/%,images/%,$(patsubst %.wsd,%.png,$(WSD)))
14
-
15
- HOST_SHARE_DIR=$(USERPROFILE)\$(shell for %%I in (.) do echo %%~nxI)
16
- COMPILE_CMD_LOCAL := bundle exec metanorma $(SRC)
17
- COMPILE_CMD_DOCKER := docker run --rm -it -v $(CURDIR):/metanorma/ ribose/metanorma "metanorma $(SRC)"
18
-
19
- ifdef METANORMA_DOCKER
20
- COMPILE_CMD := echo "Compiling via docker..." & $(COMPILE_CMD_DOCKER)
21
- else
22
- COMPILE_CMD := echo "Compiling locally..." & $(COMPILE_CMD_LOCAL)
23
- endif
24
-
25
- _OUT_FILES := $(foreach FORMAT,$(FORMATS),$(shell echo $(FORMAT) | tr '[:lower:]' '[:upper:]'))
26
- OUT_FILES := $(foreach F,$(_OUT_FILES),$($F))
27
-
28
- all: $(OUT_FILES)
29
-
30
- %.xml %.html %.doc %.pdf: %.adoc | bundle
31
- ${COMPILE_CMD}
32
-
33
- images: $(PNG)
34
-
35
- images/%.png: models/%.wsd
36
- plantuml -tpng -o ../images/ $<
37
-
38
- xmi: $(XMI)
39
-
40
- xmi/%.xmi: models/%.wsd
41
- plantuml -xmi:star -o ../xmi/ $<
42
-
43
- define FORMAT_TASKS
44
- OUT_FILES-$(FORMAT) := $($(shell echo $(FORMAT) | tr '[:lower:]' '[:upper:]'))
45
-
46
- open-$(FORMAT):
47
- $$(OUT_FILES-$(FORMAT))
48
-
49
- clean-$(FORMAT):
50
- rm $$(OUT_FILES-$(FORMAT))
51
-
52
- $(FORMAT): clean-$(FORMAT) $$(OUT_FILES-$(FORMAT))
53
-
54
- .PHONY: clean-$(FORMAT)
55
-
56
- endef
57
-
58
- $(foreach FORMAT,$(FORMATS),$(eval $(FORMAT_TASKS)))
59
-
60
- open: open-html
61
-
62
- clean:
63
- rm -rf $(OUT_FILES)
64
-
65
- bundle:
66
- IF "" == "${METANORMA_DOCKER}" bundle
67
-
68
- .PHONY: bundle all open clean
69
-
70
- #
71
- # Watch-related jobs
72
- #
73
-
74
- .PHONY: watch serve watch-serve
75
-
76
- NODE_BINS := onchange live-serve run-p
77
- NODE_BIN_DIR := node_modules/.bin
78
- NODE_PACKAGE_PATHS := $(foreach PACKAGE_NAME,$(NODE_BINS),$(NODE_BIN_DIR)/$(PACKAGE_NAME))
79
-
80
- $(NODE_PACKAGE_PATHS): package.json
81
- npm i
82
-
83
- watch: $(NODE_BIN_DIR)/onchange
84
- make all
85
- $< $(ALL_SRC) -- make all
86
-
87
- define WATCH_TASKS
88
- watch-$(FORMAT): $(NODE_BIN_DIR)/onchange
89
- make $(FORMAT)
90
- $$< $$(SRC_$(FORMAT)) -- make $(FORMAT)
91
-
92
- .PHONY: watch-$(FORMAT)
93
- endef
94
-
95
- $(foreach FORMAT,$(FORMATS),$(eval $(WATCH_TASKS)))
96
-
97
- serve: $(NODE_BIN_DIR)/live-server revealjs-css reveal.js images
98
- set PORT=$${PORT:-8123} & \
99
- set port=$${PORT} & \
100
- for /r %%html in $(HTML) do ( \
101
- $< --entry-file=%%html --port=%port% --ignore="*.html,*.xml,Makefile,Gemfile.*,package.*.json" --wait=1000 & \
102
- set /A port=%port%+1 \
103
- )
104
-
105
- watch-serve: $(NODE_BIN_DIR)/run-p
106
- $< watch serve
107
-
108
- #
109
- # Deploy jobs
110
- #
111
-
112
- publish:
113
- mkdir -p published
114
- xcopy $(basename $(SRC)).* published
115
- copy $(firstword $(HTML)) published\index.html
116
- IF EXIST "images" xcopy /E images published
@@ -1,29 +0,0 @@
1
- version: '{build}'
2
-
3
- environment:
4
- matrix:
5
- - RUBY_VERSION: 25
6
- - RUBY_VERSION: 24
7
- - RUBY_VERSION: _trunk
8
-
9
- matrix:
10
- allow_failures:
11
- - RUBY_VERSION: _trunk
12
-
13
- install:
14
- - ps: . { iwr -useb https://raw.githubusercontent.com/metanorma/metanorma-build-scripts/master/appveyor.ps1 } | iex
15
- - refreshenv
16
-
17
- build_script:
18
- - set PATH=C:\Ruby%RUBY_VERSION%\bin;%PATH%
19
- - bundle update
20
- - bundle install
21
-
22
- before_test:
23
- - ruby -v
24
- - gem -v
25
- - bundle -v
26
-
27
- test_script:
28
- - plantuml -testdot
29
- - make -f Makefile.win clean all publish SHELL=cmd