import_from 0.1.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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 777b908c81a5507f9af5c24b5eec7502fc52297e33ad931f9b2ad79df07b035b
4
+ data.tar.gz: da800d07e43cd948f8586d01c89fda200fcad7c439449a9e04ce31ec8dc2a0ec
5
+ SHA512:
6
+ metadata.gz: 87e839ff2eb2a7dc29415bf320c00e5f7e2818ba52b0fb8bad8c5f5110bf876d871f531827f0264533ad3bea55c6fd4b4dcd55193158416451013ae1f115ab3a
7
+ data.tar.gz: fb8c4d83b55f00f7d68300ab2fb9a4a8d6c2965d93e1513fac27f07be4d94294a0d7112e83074056b9de460b77762ce1cad6d55363c57c4da676a818b0dd72dc
@@ -0,0 +1,105 @@
1
+ # Document
2
+
3
+ Generates documentation for Ruby code using YARD with 100% coverage enforcement.
4
+
5
+ ## Commands
6
+
7
+ Generate documentation:
8
+ ```bash
9
+ bundle exec rake yard
10
+ ```
11
+
12
+ Format YARD comments:
13
+ ```bash
14
+ bundle exec rake yard:format
15
+ ```
16
+
17
+ Verify 100% documentation coverage:
18
+ ```bash
19
+ bundle exec rake verify_measurements
20
+ ```
21
+
22
+ Check for documentation quality issues:
23
+ ```bash
24
+ bundle exec rake yard:junk
25
+ ```
26
+
27
+ Generate coverage report:
28
+ ```bash
29
+ bundle exec rake yardstick_measure
30
+ ```
31
+
32
+ ## Configuration
33
+
34
+ Requires `.yardstick.yml` in project root with 100% threshold:
35
+ ```yaml
36
+ threshold: 100
37
+ rules:
38
+ ApiTag::Presence: { enabled: true }
39
+ ApiTag::Inclusion: { enabled: true }
40
+ ApiTag::ProtectedMethod: { enabled: true }
41
+ ApiTag::PrivateMethod: { enabled: true }
42
+ ExampleTag: { enabled: true }
43
+ ReturnTag: { enabled: true }
44
+ Summary::Presence: { enabled: true }
45
+ Summary::Delimiter: { enabled: true }
46
+ ```
47
+
48
+ ## Coverage Report
49
+
50
+ After running measurement, check detailed line-by-line issues:
51
+ ```bash
52
+ cat measurements/report.txt
53
+ ```
54
+
55
+ Report shows specific file, line number, method, and documentation issues that need fixing.
56
+
57
+ ## Documentation Standards
58
+
59
+ ### Required Tags
60
+ - Every public/private method, class, and module requires `@api public` or `@api private`
61
+ - All parameters: `@param name [Type] Description`
62
+ - All returns: `@return [Type] Description` (use `[void]` if no return)
63
+ - Examples required for all public methods: `@example Description`
64
+ - Error conditions: `@raise [ExceptionClass] When this occurs`
65
+
66
+ ### Type Notation
67
+ - Use `String` not `string`
68
+ - Arrays: `Array<String>` for string arrays
69
+ - Hashes: `Hash{String=>Object}` for hash types
70
+ - Use `Boolean` not `bool`, `Integer` not `int`
71
+ - Nullable types: `String, nil` or `String|nil`
72
+
73
+ ### Formatting Rules
74
+ - Blank lines required between YARD tag groups
75
+ - Exception: `@param` and `@option` tags can be grouped together
76
+ - Wrap class/method names in `+` markers: `+PrivateKey+`
77
+ - Cross-reference related methods: `@see #other_method`
78
+
79
+ ### Documentation Structure
80
+ ```ruby
81
+ # Brief one-line summary ending with period.
82
+ #
83
+ # @api public
84
+ #
85
+ # @example Description of example
86
+ # code_example
87
+ # result # => expected_output
88
+ #
89
+ # @param name [Type] Description
90
+ # @param other [Type] Other description
91
+ #
92
+ # @return [Type] Description
93
+ #
94
+ # @raise [ExceptionClass] When this exception occurs
95
+ #
96
+ def method_name
97
+ end
98
+ ```
99
+
100
+ ## Integration
101
+
102
+ Documentation verification is included in the quality assurance pipeline:
103
+ ```bash
104
+ bundle exec rake qa
105
+ ```
@@ -0,0 +1,52 @@
1
+ ---
2
+ allowed-tools: Bash(bundle :*), Bash(git :*), Read, Edit, MultiEdit, Glob
3
+ description: Update Gemfile dependencies to latest minor versions
4
+ argument-hint: [gemfile] [commit]
5
+ ---
6
+
7
+ Update the dependencies in the specified Gemfile (or ./Gemfile if no path provided) to their latest minor versions while
8
+ preserving major version constraints. Only update MAJOR.MINOR versions, never PATCH versions unless explicitly needed.
9
+
10
+ Steps:
11
+ 1. Read the Gemfile at the specified path (or ./Gemfile if $ARGUMENTS is empty)
12
+ 2. Read the corresponding Gemfile.lock to get current resolved versions
13
+ 3. Run `bundle outdated --only-explicit` to check for available minor updates of explicitly declared gems
14
+ 4. For each gem in Gemfile, check if Gemfile.lock has a newer minor version than the current Gemfile constraint allows
15
+ 5. Update gem version constraints to match the minor version from Gemfile.lock or latest available, whichever is newer (MAJOR.MINOR format)
16
+ 6. Use pessimistic version constraints (~> MAJOR.MINOR) to prevent automatic patch updates
17
+ 7. Preserve any existing version operators but ensure they follow minor-only update strategy
18
+ 8. Run `bundle update` to apply the changes
19
+ 7. Skip step 8, 9 and 10 if --commit flag is not provided
20
+ 8. Stage Gemfile (only if not gitignored)
21
+ 9. Verify if Gemfile.lock is tracked and not gitignored. If both conditions are met, stage it for commit.
22
+ 10. Create a git commit with message 'Update development dependencies' and a description listing all updated gems with their old and new versions like:
23
+
24
+ <commit-message>
25
+ Updated gems:
26
+ - rubocop: 1.75.2 → 1.78.0
27
+ - rubocop-yard: 0.10.0 → 1.0.0
28
+ </commit-message>
29
+
30
+ 11. If any dependencies were updated, respond only with the update message. And if the user has chose to commit,
31
+ include the update commit message. Otherwise, respond only with the no op message.
32
+
33
+ <update-message>
34
+ Updated gems:
35
+ - rbs: 3.8 → 3.9
36
+ - rubocop: 1.78 → 1.80
37
+ - rubocop-rspec: 3.6 → 3.7
38
+
39
+ <update-commit-message>The changes have been committed with the message "Update development dependencies".</update-commit-message>
40
+ </update-message>
41
+
42
+ <no-op-message>All dependencies are up to date.</no-op-message>
43
+
44
+ Key bundle outdated flags used:
45
+ - `--only-explicit`: Only show gems explicitly listed in Gemfile (not dependencies)
46
+ - No `--local` flag to ensure remote gem sources are checked for latest versions
47
+
48
+ Arguments:
49
+ - `gemfile`: Gemfile path (defaults to ./Gemfile if not provided)
50
+ - `--commit`: Create a git commit after updating dependencies with message 'Update development dependencies' and a description listing all updated gems with their old and new versions
51
+
52
+ Gemfile path: ${ARGUMENTS:-./Gemfile}