claude_agent 0.4.0 → 0.4.3

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: 0df3ed3f8ade7108ed89ab51e5f42ad2f0d358bfa99a63a88919a39899570e89
4
- data.tar.gz: 19ad8e7da48f2ba038deec0b1dc31737009a8cfe8b079da53b34348f55b6fe7b
3
+ metadata.gz: d5fe04480d4ac9e3510d30da98968e5775161e41fad4bdea29cf57b057c98a23
4
+ data.tar.gz: 1aca1e25aadbde128676a0182648df8fb8b6da1e81db8a82d1ea82d035ff00d5
5
5
  SHA512:
6
- metadata.gz: 39138c727a4bf8786302225d9cf1b7415117f9077fb494f6d0afb0c5b6f5aff5121a28696e435cfb321660b6e1ea7fb68f734fb673aca562b9f1fada84229784
7
- data.tar.gz: aabad329d3a406695b9cd0fecc8a774464b23f7794aaa995b60f8755832759145d4a8e7c620939f39d1d3127dcf5a31042350ea473ef1bddfc8a0fcf2942646b
6
+ metadata.gz: 4c657079b59bcd095f3216f99da72d14f326df8b44cab8deb9d618bcf22c589978d319e75d33c4bc8876a81deb77e89f93a28b9d45a08f95e37952a05cf753f0
7
+ data.tar.gz: 9992a0c69e842bd7fd11556b00c8944ff69eb14d418cd8b2cb81ce36cf8cdd74d46f58bd08651e47f028e3b9fe35d98c16bb52f9b3953b513781b1070d426ee5
@@ -12,101 +12,86 @@ Follow [Semantic Versioning 2.0.0](https://semver.org/):
12
12
  | **MINOR** | New features (backward compatible) | `1.0.0` → `1.1.0` |
13
13
  | **PATCH** | Bug fixes (backward compatible) | `1.0.0` → `1.0.1` |
14
14
 
15
- ### Pre-release Versions
16
-
17
- For beta/alpha releases, append a pre-release identifier:
18
-
19
- ```
20
- 1.0.0-alpha.1
21
- 1.0.0-beta.1
22
- 1.0.0-rc.1
23
- ```
24
-
25
15
  ## Changelog Format
26
16
 
27
- Follow [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) format:
28
-
29
- ```markdown
30
- ## [Unreleased]
17
+ Follow [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) format. Add changes to the `[Unreleased]` section as you work. The release script will automatically move them to a versioned section.
31
18
 
32
- ## [1.2.0] - 2025-03-15
33
-
34
- ### Added
35
- - New feature description
36
-
37
- ### Changed
38
- - Modified behavior description
19
+ ## Release Process
39
20
 
40
- ### Deprecated
41
- - Feature scheduled for removal
21
+ ### Prerequisites
42
22
 
43
- ### Removed
44
- - Deleted feature description
23
+ 1. All tests pass (`bundle exec rake`)
24
+ 2. Changes documented in `[Unreleased]` section of CHANGELOG.md
25
+ 3. You have push access to the repository
26
+ 4. Trusted Publishing configured on RubyGems (one-time setup)
45
27
 
46
- ### Fixed
47
- - Bug fix description
28
+ ### Step 1: Prepare Release PR
48
29
 
49
- ### Security
50
- - Security patch description
30
+ ```bash
31
+ bin/release 1.2.0
51
32
  ```
52
33
 
53
- ### Changelog Guidelines
54
-
55
- 1. **Maintain [Unreleased]** - Always keep an Unreleased section at the top
56
- 2. **Add entries as you work** - Don't wait until release time
57
- 3. **User-focused language** - Write for gem users, not developers
58
- 4. **Link to issues/PRs** - Reference GitHub issues when relevant
59
- 5. **Newest first** - Most recent version at top
34
+ This will:
35
+ 1. Create branch `release-1.2.0`
36
+ 2. Update `lib/claude_agent/version.rb`
37
+ 3. Update `Gemfile.lock`
38
+ 4. Move `[Unreleased]` changelog entries to `[1.2.0]`
39
+ 5. Commit, push, and open a PR
60
40
 
61
- ### What to Include
41
+ ### Step 2: Review and Merge
62
42
 
63
- | Include | Exclude |
64
- |---------|---------|
65
- | API additions/changes | Internal refactors |
66
- | Bug fixes users might hit | Code style changes |
67
- | Deprecation notices | Test-only changes |
68
- | Breaking changes (prominent) | Documentation typos |
69
- | Security fixes | Dependency updates (minor) |
43
+ - Review the release PR
44
+ - Ensure CI passes
45
+ - Merge to main
70
46
 
71
- ## Release Process
72
-
73
- ### Prerequisites
47
+ ### Step 3: Publish
74
48
 
75
- Before releasing:
49
+ ```bash
50
+ git checkout main && git pull
51
+ bin/publish 1.2.0
52
+ ```
76
53
 
77
- 1. All tests pass (`bundle exec rake`)
78
- 2. CHANGELOG.md has entry for new version
79
- 3. No uncommitted changes
80
- 4. On `main` branch (or confirm if not)
54
+ This will:
55
+ 1. Verify you're on main with correct version
56
+ 2. Create and push tag `v1.2.0`
57
+ 3. Create GitHub release
58
+ 4. GitHub Actions publishes to RubyGems automatically
81
59
 
82
- ### Release Command
60
+ ### Workflow Diagram
83
61
 
84
- ```bash
85
- bin/release VERSION
86
62
  ```
87
-
88
- Example:
89
- ```bash
90
63
  bin/release 1.2.0
64
+
65
+ ├── Creates branch: release-1.2.0
66
+ ├── Updates version.rb, Gemfile.lock, CHANGELOG.md
67
+ ├── Commits and pushes
68
+ └── Opens PR
69
+
70
+
71
+ [Review & merge PR]
72
+
73
+
74
+ bin/publish 1.2.0
75
+
76
+ ├── Creates tag v1.2.0
77
+ ├── Pushes tag
78
+ └── Creates GitHub release
79
+
80
+
81
+ [GitHub Actions]
82
+
83
+ └── Publishes to RubyGems via Trusted Publishing
91
84
  ```
92
85
 
93
- ### What the Script Does
94
-
95
- 1. Validates version format (semantic versioning)
96
- 2. Checks CHANGELOG.md has entry for version
97
- 3. Updates `lib/claude_agent/version.rb`
98
- 4. Updates `Gemfile.lock`
99
- 5. Commits with message "Release vX.Y.Z"
100
- 6. Creates annotated tag `vX.Y.Z`
101
- 7. Pushes commit and tag to remote
102
- 8. Builds and publishes gem to RubyGems
103
-
104
- ### Post-Release
86
+ ## Setting Up Trusted Publishing (One-Time)
105
87
 
106
- After running `bin/release`:
107
-
108
- 1. Create GitHub release at the new tag
109
- 2. Add `## [Unreleased]` section to CHANGELOG.md
88
+ 1. Go to [rubygems.org](https://rubygems.org) → Your gems → claude_agent → Trusted Publishers
89
+ 2. Add a new publisher:
90
+ - Repository owner: `protocollar`
91
+ - Repository name: `claude_agent-ruby`
92
+ - Workflow filename: `push_gem.yml`
93
+ - Environment: `release`
94
+ 3. Create a GitHub environment named `release` in your repository settings
110
95
 
111
96
  ## Version Bumping Guidelines
112
97
 
@@ -115,7 +100,6 @@ After running `bin/release`:
115
100
  - Removing public methods/classes
116
101
  - Changing method signatures (required params)
117
102
  - Changing return types
118
- - Renaming public constants
119
103
  - Dropping Ruby version support
120
104
 
121
105
  ### When to Bump MINOR (Feature)
@@ -129,49 +113,4 @@ After running `bin/release`:
129
113
 
130
114
  - Bug fixes
131
115
  - Documentation corrections
132
- - Performance improvements (no API change)
133
- - Internal refactoring (no API change)
134
-
135
- ## Example Release Workflow
136
-
137
- ```bash
138
- # 1. Ensure tests pass
139
- bundle exec rake
140
-
141
- # 2. Update CHANGELOG.md
142
- # Add entry under [Unreleased], then rename to version:
143
- ## [1.2.0] - 2025-03-15
144
-
145
- ### Added
146
- - New `Client#foo` method for bar functionality
147
-
148
- ### Fixed
149
- - Resolved timeout issue in subprocess transport
150
-
151
- # 3. Commit changelog
152
- git add CHANGELOG.md
153
- git commit -m "docs: update changelog for 1.2.0"
154
-
155
- # 4. Release
156
- bin/release 1.2.0
157
-
158
- # 5. Add new Unreleased section
159
- # Edit CHANGELOG.md to add:
160
- ## [Unreleased]
161
-
162
- # 6. Commit
163
- git add CHANGELOG.md
164
- git commit -m "docs: add unreleased section"
165
- git push
166
- ```
167
-
168
- ## Gem Metadata
169
-
170
- The gemspec includes these URIs for RubyGems.org:
171
-
172
- ```ruby
173
- spec.metadata["source_code_uri"] = spec.homepage
174
- spec.metadata["changelog_uri"] = "#{spec.homepage}/blob/main/CHANGELOG.md"
175
- ```
176
-
177
- This enables the "Changelog" link on the RubyGems.org gem page.
116
+ - Performance improvements (no API change)
data/CHANGELOG.md CHANGED
@@ -7,6 +7,25 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.4.3] - 2026-01-18
11
+
12
+ ### Changed
13
+ - Updated release workflow to use trusted publisher
14
+
15
+ ## [0.4.2] - 2026-01-18
16
+
17
+ ### Fixed
18
+ - Release script now uses `bundle install` (Bundler 4.x compatibility)
19
+
20
+ ### Changed
21
+ - Release script prompts for RubyGems OTP upfront
22
+ - Release script creates GitHub releases automatically
23
+
24
+ ## [0.4.1] - 2026-01-18
25
+
26
+ ### Changed
27
+ - Simplified release script to match Kamal's approach
28
+
10
29
  ## [0.4.0] - 2026-01-18
11
30
 
12
31
  ### Added
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ClaudeAgent
4
- VERSION = "0.4.0"
4
+ VERSION = "0.4.3"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: claude_agent
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Carr
@@ -92,7 +92,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
92
92
  - !ruby/object:Gem::Version
93
93
  version: '0'
94
94
  requirements: []
95
- rubygems_version: 4.0.3
95
+ rubygems_version: 3.6.9
96
96
  specification_version: 4
97
97
  summary: Ruby SDK for building AI agents with Claude Code
98
98
  test_files: []