chusaku 1.4.2 → 1.5.0
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
- data/README.md +16 -0
- data/lib/chusaku/cli.rb +11 -0
- data/lib/chusaku/version.rb +1 -1
- data/lib/chusaku.rb +3 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 34e6c3d99896a2ad9665c71b82575bb40491b8bcafa507560deeda2bf33b612b
|
|
4
|
+
data.tar.gz: 0ddf816adf5f24ccd5eb29d186db0e4014cd6c349fd11b950b268dd35154c3df
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: fdec79c08e8a227a4e527c4325281a5499ecbbc3a511d9793b089da831aca609d260a60c013b770a1f2b49eb0cf643b222584af25f4f0d7ec719f2915f89a3a1
|
|
7
|
+
data.tar.gz: f48ff79a5d78e5e7a888f99f6e19e5e2a0e11e760f1085a0ec75c17b6f4375571cf48ab52ff9781d52cf6948131ea993bb6cc096ab63eda762df8470402e1aa5
|
data/README.md
CHANGED
|
@@ -17,6 +17,21 @@ def update
|
|
|
17
17
|
end
|
|
18
18
|
```
|
|
19
19
|
|
|
20
|
+
With `--format=rdoc`:
|
|
21
|
+
|
|
22
|
+
```ruby
|
|
23
|
+
# Route:: GET /waterlilies/:id (waterlily)
|
|
24
|
+
def show
|
|
25
|
+
# ...
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# Route:: PATCH /waterlilies/:id (waterlily)
|
|
29
|
+
# Route:: PUT /waterlilies/:id (waterlily)
|
|
30
|
+
def update
|
|
31
|
+
# ...
|
|
32
|
+
end
|
|
33
|
+
```
|
|
34
|
+
|
|
20
35
|
Based on your `routes.rb` file!
|
|
21
36
|
|
|
22
37
|
|
|
@@ -54,6 +69,7 @@ Usage: chusaku [options]
|
|
|
54
69
|
--exit-with-error-on-annotation Fail if any file was annotated
|
|
55
70
|
-c, --controllers-pattern=GLOB Specify alternative controller files glob pattern
|
|
56
71
|
-e, --exclusion-pattern=GLOB Specify controller files exclusion glob pattern
|
|
72
|
+
-f, --format=FORMAT Annotation style: yard (default) or rdoc
|
|
57
73
|
--verbose Print all annotated files
|
|
58
74
|
-v, --version Show Chusaku version number and quit
|
|
59
75
|
-h, --help Show this help message and quit
|
data/lib/chusaku/cli.rb
CHANGED
|
@@ -58,6 +58,7 @@ module Chusaku
|
|
|
58
58
|
add_error_on_annotation_flag(opts)
|
|
59
59
|
add_controllers_pattern_flag(opts)
|
|
60
60
|
add_exclusion_pattern_flag(opts)
|
|
61
|
+
add_format_flag(opts)
|
|
61
62
|
add_verbose_flag(opts)
|
|
62
63
|
add_version_flag(opts)
|
|
63
64
|
add_help_flag(opts)
|
|
@@ -104,6 +105,16 @@ module Chusaku
|
|
|
104
105
|
end
|
|
105
106
|
end
|
|
106
107
|
|
|
108
|
+
# Adds `--format` flag.
|
|
109
|
+
#
|
|
110
|
+
# @param opts [OptionParser] OptionParser instance
|
|
111
|
+
# @return [void]
|
|
112
|
+
def add_format_flag(opts)
|
|
113
|
+
opts.on("-f", "--format=FORMAT", %w[yard rdoc], "Annotation style: yard (default) or rdoc") do |value|
|
|
114
|
+
@options[:format] = value.to_sym
|
|
115
|
+
end
|
|
116
|
+
end
|
|
117
|
+
|
|
107
118
|
# Adds `--verbose` flag.
|
|
108
119
|
#
|
|
109
120
|
# @param opts [OptionParser] OptionParser instance
|
data/lib/chusaku/version.rb
CHANGED
data/lib/chusaku.rb
CHANGED
|
@@ -105,6 +105,7 @@ module Chusaku
|
|
|
105
105
|
return unless group[:type] == :comment
|
|
106
106
|
|
|
107
107
|
group[:body] = group[:body].gsub(/^\s*#\s*@route.*$\n/, "")
|
|
108
|
+
group[:body] = group[:body].gsub(/^\s*#\s*Route::.*$\n/, "")
|
|
108
109
|
group[:body] =
|
|
109
110
|
group[:body].gsub(%r{^\s*# (GET|POST|PATCH/PUT|DELETE) /\S+$\n}, "")
|
|
110
111
|
end
|
|
@@ -134,7 +135,8 @@ module Chusaku
|
|
|
134
135
|
# @param source_path [String] Path to controller file
|
|
135
136
|
# @return [String] "@route <verb> <path> {<defaults>} (<name>)"
|
|
136
137
|
def annotate_route(verb:, path:, name:, defaults:, source_path:)
|
|
137
|
-
|
|
138
|
+
prefix = (@flags[:format] == :rdoc) ? "Route::" : "@route"
|
|
139
|
+
annotation = "#{prefix} #{verb} #{path}"
|
|
138
140
|
if defaults&.any?
|
|
139
141
|
defaults_str =
|
|
140
142
|
defaults
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: chusaku
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.5.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Nishiki Liu
|
|
@@ -127,7 +127,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
127
127
|
- !ruby/object:Gem::Version
|
|
128
128
|
version: '0'
|
|
129
129
|
requirements: []
|
|
130
|
-
rubygems_version: 4.0.
|
|
130
|
+
rubygems_version: 4.0.6
|
|
131
131
|
specification_version: 4
|
|
132
132
|
summary: Annotate your Rails controllers with route info.
|
|
133
133
|
test_files: []
|