Skip to content

Commit 43b0d7e

Browse files
author
Alex J Lennon
committed
docs(release): v0.2.0-dev.1 development cut, changelog, and lockfile
Bump version to 0.2.0-dev.1; rewrite CHANGELOG with current capabilities; add RELEASING.md maintainer checklist. README: releases section, docs index, project layout, status line; CONTRIBUTING links. Track Cargo.lock for reproducible builds (stop ignoring). Refresh crate description; note board_test_app validation version. Made-with: Cursor
1 parent 0a5606c commit 43b0d7e

8 files changed

Lines changed: 1509 additions & 38 deletions

File tree

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ examples/board_test_app/board_test_app
55
/target/
66
**/*.rs.bk
77
*.pdb
8-
Cargo.lock
98

109
# IDE
1110
.vscode/

CHANGELOG.md

Lines changed: 19 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,34 @@
11
# Changelog
22

3-
All notable changes to this project will be documented in this file.
3+
All notable changes to this project are documented in this file.
44

55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

88
## [Unreleased]
99

10-
### Added
11-
- Initial project structure and repository setup
12-
- Basic GDB Remote Serial Protocol (RSP) packet parser
13-
- Module structure for proxy, protocol, breakpoints, state, logger, backends, recorder, and UI
14-
- CLI interface with clap
15-
- Comprehensive documentation (README, CONTRIBUTING)
16-
- CI/CD pipeline with GitHub Actions
17-
- Dual MIT/Apache-2.0 licensing
18-
- Unit tests for protocol parsing
19-
- **Priority 1 Enhancements:**
20-
- Complete GDB command parsing (query, set, memory, breakpoints, execution control)
21-
- Tokio codec for packet streaming with ACK/NACK support
22-
- Comprehensive configuration system with TOML support
23-
- Enhanced error handling with specific error types
24-
- Configuration validation and environment variable support
25-
- Example configuration file (rsgdb.toml.example)
26-
- 22 passing unit tests
10+
Nothing yet.
2711

28-
### Changed
29-
- N/A
12+
## [0.2.0-dev.1] - 2026-03-27
3013

31-
### Deprecated
32-
- N/A
14+
First **development** release: the proxy is usable end-to-end for TCP, managed local stubs, and **remote Linux targets** over SSH. Pre-release semver (`-dev.N`) signals API and CLI may still evolve before **0.2.0**.
3315

34-
### Removed
35-
- N/A
16+
### Added
3617

37-
### Fixed
38-
- N/A
18+
- **`transport = remote_ssh`**: run `gdbserver` on a remote host via OpenSSH; optional **`upload_local` / `upload_remote`** to **`scp`** the ELF before connect; optional **`RSGDB_SSH_PASSWORD`** + **`sshpass`** for non-interactive password auth.
19+
- **Example** [`examples/board_test_app/`](examples/board_test_app/README.md): tiny aarch64 Linux smoke binary, [`rsgdb.remote.toml`](examples/board_test_app/rsgdb.remote.toml), [`install_ssh_key.sh`](examples/board_test_app/install_ssh_key.sh), [`debug_remote.sh`](examples/board_test_app/debug_remote.sh) (SSH key preflight + GDB batch smoke).
20+
- **Design principles** (README): ease, automation, reliability for embedded remote debugging.
21+
- **Documentation**: Linux target SSH setup, CONTRIBUTING cross-links, config examples for `remote_ssh`.
3922

40-
### Security
41-
- N/A
23+
### Changed
4224

43-
## [0.1.0] - 2026-03-27
25+
- **Configuration** (`[backend.remote_ssh]`, validation): user, optional host override, SSH port, identity, upload paths, gdbserver argv with `{port}` placeholder.
26+
- **Proxy**: backend connect path supports remote SSH session lifecycle alongside TCP and native spawn.
4427

45-
### Added
46-
- Initial release
47-
- Project foundation and structure
28+
### Notes
29+
30+
- **Stability**: Suitable for daily development and field trials; treat semver pre-releases as **unstable** for automation that pins exact versions.
31+
- **Validation**: `./scripts/validate_local.sh` matches CI (fmt, `cargo test --all-features`, clippy `-D warnings`, `cargo doc`).
32+
33+
[Unreleased]: https://github.com/DynamicDevices/rsgdb/compare/v0.2.0-dev.1...HEAD
34+
[0.2.0-dev.1]: https://github.com/DynamicDevices/rsgdb/releases/tag/v0.2.0-dev.1

CONTRIBUTING.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,10 @@ From the repo root, run the same checks CI uses (fmt, tests with `--all-features
5454

5555
This runs **`cargo tree -d`** (duplicate transitive versions — often benign, e.g. `thiserror` v1 via `svd-parser` and v2 via `tracing-appender`), **`cargo audit`** against [RustSec](https://github.com/RustSec/advisory-db) (install: `cargo install cargo-audit`), and **`cargo outdated --workspace`** if `cargo-outdated` is installed (`cargo install cargo-outdated`). Major upgrades (e.g. `toml` 0.8 → 1.x) need a deliberate PR, not blind `cargo update`.
5656

57+
### Release tags and changelog (maintainers)
58+
59+
Version bumps, changelog entries, and git tags are summarized in [`RELEASING.md`](RELEASING.md); user-facing notes accumulate in [`CHANGELOG.md`](CHANGELOG.md).
60+
5761
### Phase A — RSP-only regression (fast, no `gdb` binary)
5862

5963
Codec framing + proxy TCP integration tests only (~1s):

0 commit comments

Comments
 (0)