Skip to content

Commit 71e05f6

Browse files
committed
chore: prepare for public release
1 parent 2609702 commit 71e05f6

File tree

4,017 files changed

+101363
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

4,017 files changed

+101363
-0
lines changed

.claude/settings.local.json

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
{
2+
"permissions": {
3+
"allow": [
4+
"WebSearch",
5+
"WebFetch(domain:github.com)",
6+
"WebFetch(domain:crates.io)",
7+
"WebFetch(domain:docs.rs)",
8+
"WebFetch(domain:raw.githubusercontent.com)",
9+
"Bash(cargo check:*)",
10+
"Bash(cargo test:*)",
11+
"Bash(cargo fmt:*)",
12+
"Bash(cargo clippy:*)",
13+
"WebFetch(domain:hub.docker.com)",
14+
"Bash(cargo search:*)",
15+
"Bash(cargo update:*)",
16+
"Bash(docker pull apache/iggy:server-0.5.0)",
17+
"Bash(docker pull:*)",
18+
"WebFetch(domain:iggy.apache.org)",
19+
"Bash(docker run:*)",
20+
"Bash(cargo doc:*)",
21+
"Bash(cargo tree:*)",
22+
"Bash(cargo build:*)",
23+
"Bash(rustc --version:*)",
24+
"Bash(cargo --version:*)",
25+
"Bash(find:*)",
26+
"Bash(RUST_LOG=debug cargo test:*)",
27+
"Bash(RUST_BACKTRACE=1 RUST_LOG=iggy_sample=debug,integration_tests=debug cargo test:*)",
28+
"Bash(cargo fuzz:*)",
29+
"Bash(rustup run nightly rustc:*)",
30+
"Bash(cargo +nightly fuzz:*)",
31+
"Bash(cargo +nightly install:*)",
32+
"Bash(cargo deny check:*)",
33+
"Bash(for:*)",
34+
"Bash(do echo \"=== $file ===\" grep -n '#\\[cfg(test)\\]' \"$file\")",
35+
"Bash(git config:*)",
36+
"Bash(git check-ignore:*)",
37+
"Bash(cargo metadata:*)",
38+
"Bash(cargo publish:*)",
39+
"Bash(cat:*)",
40+
"Bash(test:*)",
41+
"Bash(cargo package:*)"
42+
],
43+
"deny": [],
44+
"ask": []
45+
}
46+
}

.commitlintrc.json

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
{
2+
"extends": ["@commitlint/config-conventional"],
3+
"rules": {
4+
"type-enum": [
5+
2,
6+
"always",
7+
[
8+
"feat",
9+
"fix",
10+
"docs",
11+
"style",
12+
"refactor",
13+
"perf",
14+
"test",
15+
"build",
16+
"ci",
17+
"chore",
18+
"revert"
19+
]
20+
],
21+
"type-case": [2, "always", "lower-case"],
22+
"subject-case": [2, "never", ["upper-case", "pascal-case"]],
23+
"subject-empty": [2, "never"],
24+
"subject-full-stop": [2, "never", "."],
25+
"header-max-length": [2, "always", 72],
26+
"body-leading-blank": [2, "always"],
27+
"body-max-line-length": [2, "always", 100],
28+
"footer-leading-blank": [2, "always"]
29+
}
30+
}

.env.example

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Server Configuration
2+
HOST=0.0.0.0
3+
PORT=3000
4+
5+
# Iggy Configuration
6+
# Connection string format: iggy://username:password@host:port
7+
IGGY_CONNECTION_STRING=iggy://iggy:iggy@localhost:8090
8+
9+
# Default stream and topic names
10+
IGGY_STREAM=sample-stream
11+
IGGY_TOPIC=events
12+
13+
# Number of partitions for the default topic
14+
IGGY_PARTITIONS=3
15+
16+
# Logging level (trace, debug, info, warn, error)
17+
RUST_LOG=info,iggy_sample=debug

.github/dependabot.yml

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
# Dependabot configuration
2+
#
3+
# Automatically creates PRs to update dependencies.
4+
# https://docs.github.com/en/code-security/dependabot/dependabot-version-updates
5+
6+
version: 2
7+
updates:
8+
# ==========================================================================
9+
# Cargo dependencies
10+
# ==========================================================================
11+
- package-ecosystem: "cargo"
12+
directory: "/"
13+
schedule:
14+
interval: "weekly"
15+
day: "monday"
16+
time: "09:00"
17+
timezone: "UTC"
18+
open-pull-requests-limit: 10
19+
commit-message:
20+
prefix: "deps(cargo)"
21+
labels:
22+
- "dependencies"
23+
- "rust"
24+
reviewers:
25+
- "maxim" # Update with actual GitHub username
26+
groups:
27+
# Group minor/patch updates together
28+
rust-minor:
29+
patterns:
30+
- "*"
31+
update-types:
32+
- "minor"
33+
- "patch"
34+
# Keep major updates separate for review
35+
ignore:
36+
# Ignore pre-release versions
37+
- dependency-name: "*"
38+
update-types: ["version-update:semver-prerelease"]
39+
40+
# ==========================================================================
41+
# GitHub Actions
42+
# ==========================================================================
43+
- package-ecosystem: "github-actions"
44+
directory: "/"
45+
schedule:
46+
interval: "weekly"
47+
day: "monday"
48+
time: "09:00"
49+
timezone: "UTC"
50+
open-pull-requests-limit: 5
51+
commit-message:
52+
prefix: "ci(deps)"
53+
labels:
54+
- "dependencies"
55+
- "github-actions"
56+
groups:
57+
# Group all GitHub Actions updates
58+
github-actions:
59+
patterns:
60+
- "*"

.github/pull_request_template.md

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
## Summary
2+
3+
<!-- Describe your changes in 2-3 sentences. What problem does this solve? -->
4+
5+
## Type of Change
6+
7+
<!-- Mark with [x] all that apply -->
8+
9+
- [ ] Bug fix (non-breaking change that fixes an issue)
10+
- [ ] New feature (non-breaking change that adds functionality)
11+
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
12+
- [ ] Documentation update
13+
- [ ] Refactoring (no functional changes)
14+
- [ ] Performance improvement
15+
- [ ] CI/CD changes
16+
17+
## Changes Made
18+
19+
<!-- List the specific changes made in this PR -->
20+
21+
-
22+
23+
## Testing
24+
25+
<!-- Describe how you tested your changes -->
26+
27+
- [ ] Unit tests added/updated
28+
- [ ] Integration tests added/updated
29+
- [ ] Manual testing performed
30+
31+
**Test commands run:**
32+
```bash
33+
cargo test
34+
cargo clippy
35+
```
36+
37+
## Checklist
38+
39+
<!-- Mark with [x] when complete -->
40+
41+
### Code Quality
42+
- [ ] Code follows project style guidelines (`cargo fmt`)
43+
- [ ] No new Clippy warnings (`cargo clippy -- -D warnings`)
44+
- [ ] Public APIs have documentation comments
45+
- [ ] Error handling is appropriate (no unwrap in production code)
46+
47+
### Testing
48+
- [ ] Tests cover the happy path
49+
- [ ] Tests cover error cases
50+
- [ ] All existing tests pass
51+
52+
### Documentation
53+
- [ ] CLAUDE.md updated (if architectural changes)
54+
- [ ] README updated (if user-facing changes)
55+
- [ ] Code comments explain "why" not "what"
56+
57+
### Security
58+
- [ ] No secrets or credentials committed
59+
- [ ] Input validation added where needed
60+
- [ ] No new security vulnerabilities introduced
61+
62+
## Related Issues
63+
64+
<!-- Link related issues using: Fixes #123, Closes #456 -->
65+
66+
## Screenshots (if applicable)
67+
68+
<!-- Add screenshots for UI changes -->
69+
70+
## Additional Notes
71+
72+
<!-- Any additional context, trade-offs, or future improvements -->

0 commit comments

Comments
 (0)