Skip to content

Commit a8848fe

Browse files
committed
Add CHANGELOG.md and update release documentation [skip ci]
1 parent 3b5c477 commit a8848fe

File tree

3 files changed

+105
-6
lines changed

3 files changed

+105
-6
lines changed

.openapi-generator-ignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,5 @@ LICENSE
2929
README.md
3030
CLAUDE.md
3131
PUBLISHING.md
32+
CHANGELOG.md
3233
.github/dependabot.yml

CHANGELOG.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [Unreleased]
9+
10+
## [0.0.1] - 2026-01-20
11+
12+
### Added
13+
- Initial release of Rootly Java SDK
14+
- Auto-generated Java client for Rootly API v1 using OpenAPI Generator 7.13.0
15+
- Support for Maven and Gradle build systems
16+
- Bearer token authentication support
17+
- Comprehensive API coverage for all Rootly endpoints
18+
- Docker-based code generation workflow
19+
- MIT License
20+
- Dependabot configuration for automated dependency updates
21+
- GitHub Actions workflows for testing and publishing
22+
- Maven Central and GitHub Packages publishing support
23+
- Release management Makefile targets (bump-patch, bump-minor, bump-major)
24+
- Comprehensive documentation (README.md, CLAUDE.md, PUBLISHING.md)
25+
26+
### Changed
27+
- Updated to Maven Central Portal Publisher API
28+
- Migrated to Jakarta EE annotations (jakarta.annotation-api 3.0.0)
29+
- Updated README to be more user-friendly
30+
- Grouped minor and patch updates in Dependabot configuration
31+
32+
### Dependencies
33+
- OkHttp 4.12.0
34+
- Gson 2.13.2
35+
- JUnit Jupiter 5.11.4
36+
- Mockito 5.21.0
37+
- Apache Commons Lang3 3.20.0
38+
- Jakarta Annotation API 3.0.0
39+
- Jakarta WS RS API 4.0.0
40+
- maven-surefire-plugin 3.5.4
41+
- Spotless plugin 7.0.3
42+
43+
### Infrastructure
44+
- GitHub Actions test workflow with JDK 17 and Gradle caching
45+
- Automated publishing to Maven Central and GitHub Packages
46+
- Code formatting with Spotless and Google Java Format (AOSP style)
47+
48+
[Unreleased]: https://github.com/rootlyhq/rootly-java/compare/v0.0.1...HEAD
49+
[0.0.1]: https://github.com/rootlyhq/rootly-java/releases/tag/v0.0.1

CLAUDE.md

Lines changed: 55 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -83,9 +83,12 @@ The generation process:
8383

8484
**Protected files:** These files are protected from regeneration via `.openapi-generator-ignore`:
8585
- `build.gradle` - Custom Gradle configuration
86+
- `pom.xml` - Custom Maven configuration
8687
- `LICENSE` - MIT license
8788
- `README.md` - User-friendly documentation
8889
- `CLAUDE.md` - This file
90+
- `PUBLISHING.md` - Publishing documentation
91+
- `CHANGELOG.md` - Version history
8992
- `.github/dependabot.yml` - Dependency management
9093

9194
## Architecture
@@ -159,15 +162,61 @@ GitHub Actions workflows:
159162
- **maven.yml** - Maven-based build pipeline
160163
- **publish.yml** - Publishes artifacts to Maven Central and GitHub Packages (triggered on releases)
161164

162-
## Publishing
165+
## Publishing & Releases
163166

164167
See [PUBLISHING.md](PUBLISHING.md) for detailed instructions on publishing releases to Maven Central and GitHub Packages.
165168

166-
Quick overview:
167-
1. Update version: `make bump-patch` (or bump-minor/bump-major)
168-
2. Push tag: `make push-tag`
169-
3. Create GitHub release: `gh release create v0.0.2`
170-
4. Workflow automatically publishes to both registries
169+
### Release Process
170+
171+
The release process uses Makefile targets to automate version bumping and tagging:
172+
173+
```bash
174+
# Check current version
175+
make version
176+
177+
# Bump version (updates pom.xml and build.gradle, creates tag)
178+
make bump-patch # 0.0.1 -> 0.0.2
179+
make bump-minor # 0.0.1 -> 0.1.0
180+
make bump-major # 0.0.1 -> 1.0.0
181+
182+
# Push the tag to trigger release workflow
183+
make push-tag
184+
185+
# Create GitHub release (triggers publish.yml workflow)
186+
gh release create v0.0.2 --title "Release 0.0.2" --notes "Release notes here"
187+
```
188+
189+
**Automated workflow:**
190+
1. `make bump-patch` (or minor/major) - Updates version in both pom.xml and build.gradle, commits, and creates tag
191+
2. `make push-tag` - Pushes the tag to GitHub
192+
3. `gh release create` - Creates GitHub release which automatically triggers the publish workflow
193+
4. The workflow publishes to both Maven Central and GitHub Packages
194+
195+
**One-command releases:**
196+
```bash
197+
# These combine bump + push-tag
198+
make release-patch # Bump patch and push tag
199+
make release-minor # Bump minor and push tag
200+
make release-major # Bump major and push tag
201+
202+
# Then create the GitHub release
203+
gh release create v0.0.2
204+
```
205+
206+
**What happens during publish:**
207+
- Runs all tests
208+
- Signs artifacts with GPG
209+
- Deploys to Maven Central Portal (auto-publishes)
210+
- Deploys to GitHub Packages
211+
- Available in Maven Central within 30 minutes
212+
213+
### Version Management
214+
215+
Version is tracked in two files (automatically updated by Makefile):
216+
- `pom.xml` - Line 7: `<version>0.0.1</version>`
217+
- `build.gradle` - Line 7: `version = '0.0.1'`
218+
219+
Git tags follow semver format: `v0.0.1`, `v0.1.0`, `v1.0.0`
171220

172221
## Important Notes
173222

0 commit comments

Comments
 (0)