Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,28 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

---

## [2.0.0.1] — 2026-09-15 — **Release Report + Formatter Fixes**

> **Release Tag:** `v2.0.0.1`

### Added

- Full release report in `docs/ReleaseNotes.md` covering tags, highlights, fixes, and rollout notes.
- Updated release documentation to consistently reference `v2.0.0.1`.

### Fixed

- Reduced formatter allocation overhead in `tools/formatter/src/lib.rs` by replacing temporary formatting strings with direct buffered writes.
- Improved formatter hot-path efficiency for expression and numeric formatting output.

### Changed (Release Docs)

- `RELEASE_PROCESS.md` now documents tag formats for both `vMAJOR.MINOR.PATCH` and `vMAJOR.MINOR.PATCH.REVISION`.
- `VERSIONING.md` now clarifies that a release revision segment (for example `v2.0.0.1`) is a release-tag convention layered on top of SemVer.
- Updated installation/get-started docs to show current release examples for `v2.0.0.1`.

---

## [2.0.0] — 2026-07-26 — **Syntax Freeze**

> _No breaking syntax changes will be made after this release in the 2.x series._
Expand Down
6 changes: 3 additions & 3 deletions RELEASE_PROCESS.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,18 +31,18 @@ Before triggering a release, the Release Manager must ensure:
- [ ] The `CHANGELOG.md` has been updated with a list of user-facing changes since the last release.

### 2. Tagging & Versioning
Releases are marked with git tags in the format `v*.*.*`.
Releases are marked with git tags in the format `v*.*.*` (standard) or `v*.*.*.*` (release revision).
1. Update version numbers in:
- All `Cargo.toml` files in the workspace crates.
- Installer configurations.
- Documentation version headers.
2. Commit version bumps:
```bash
git commit -am "chore: bump version to 0.1.0"
git commit -am "chore: bump version to 2.0.0.1"
```
3. Tag the commit:
```bash
git tag -a v0.1.0 -m "Release v0.1.0 (Alpha)"
git tag -a v2.0.0.1 -m "Release v2.0.0.1"
```
4. Push the tag to GitHub:
```bash
Expand Down
2 changes: 1 addition & 1 deletion SUPPORTED_VERSIONS.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@ The following table outlines support lifetimes for TechScript releases:

| Version | Status | Release Date | End of Support |
|:---:|:---:|:---:|:---|
| **v2.0.x** | ✅ Supported (Active) | 2026-07-26 | - |
| **v2.0.x** | ✅ Supported (Active) | 2026-09-15 | - |
| **v1.0.x** | ❌ Deprecated | 2026-06-01 | 2026-07-26 |
| **< v1.0.0**| ❌ Deprecated | 2026-03-10 | 2026-06-01 |
6 changes: 6 additions & 0 deletions VERSIONING.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,12 @@ $$\text{MAJOR}.\text{MINOR}.\text{PATCH}$$
* **MINOR** version: Incremented when adding functionality in a backwards-compatible manner (e.g., adding a new standard library module, new keyword extensions, optimization passes).
* **PATCH** version: Incremented when introducing backwards-compatible bug fixes or minor compiler performance tweaks.

For release publication, tags may include an optional **release revision segment** when needed for packaging/reporting updates:

$$\text{MAJOR}.\text{MINOR}.\text{PATCH}.\text{REVISION}$$

Example: `v2.0.0.1` indicates the first release revision on top of the `2.0.0` compatibility baseline.

---

## Pre-Release Phase Tagging
Expand Down
20 changes: 20 additions & 0 deletions docs/ReleaseNotes.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,26 @@ Detailed release logs and features added across major TechScript versions.

---

## 🚀 Version 2.0.0.1 (2026-09-15)

**Release tag:** `v2.0.0.1`
**Base compatibility line:** `v2.0.x`

### What's New
* Added a complete release report section for this version, including release scope, tags, and rollout-facing notes.
* Improved release documentation consistency across changelog, versioning, and installation references.

### What’s Fixed
* Formatter internals now avoid temporary string allocations in high-frequency formatting paths.
* Expression and numeric output formatting now write directly to buffers, reducing overhead in formatter execution.

### Full Report
* **Area:** Tooling performance and release documentation hardening.
* **Impact:** Faster formatter behavior under repeated formatting operations and clearer release/tag guidance for maintainers.
* **Upgrade note:** Existing 2.0 scripts remain compatible; this release focuses on fixes and release-quality documentation updates.

---

## 🚀 Version 2.0.0 (2026-07-26)
* **Syntax Freeze**: Established canonical keywords (`do`, `send`, `when`, `loop`, `repeat`, `for`, `in`, `match`, `try`, `catch`, `throw`, `use`, `class`, `struct`, `enum`, `trait`, `interface`, `const`, `null`, `say`, `ask`, `break`, `continue`, `else`, `async`, `await`, `parallel`, `end`, `new`, `self`, `true`, `false`, `typeof`, `with`).
* **Formatters**: Added built-in format linter checks and `tech fmt` tools.
Expand Down
2 changes: 1 addition & 1 deletion docs/SUPPORTED_VERSIONS.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@ The following table outlines support lifetimes for TechScript releases:

| Version | Status | Release Date | End of Support |
|:---:|:---:|:---:|:---|
| **v2.0.x** | ✅ Supported (Active) | 2026-07-26 | - |
| **v2.0.x** | ✅ Supported (Active) | 2026-09-15 | - |
| **v1.0.x** | ❌ Deprecated | 2026-06-01 | 2026-07-26 |
| **< v1.0.0**| ❌ Deprecated | 2026-03-10 | 2026-06-01 |
7 changes: 7 additions & 0 deletions docs/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,13 @@ For the detailed keep-a-changelog layout, see the root [CHANGELOG.md](../CHANGEL

---

## [2.0.0.1] - 2026-09-15 (Release Report + Formatter Fixes)
* **Tags**: Published as `v2.0.0.1` for release revision tracking in the 2.0 line.
* **Formatter**: Reduced allocation overhead by switching hot-path string formatting to direct buffered writes.
* **Docs**: Updated release, installation, and versioning documentation to align with `v2.0.0.1`.

---

## [2.0.0] - 2026-07-26 (Syntax Freeze)
* **Language Freeze**: Inverted deprecated and canonical keyword lists. Verified syntax is locked for major version 2.x.
* **New Keywords**: Added `loop`, `parallel`, `default` as canonical keywords.
Expand Down
2 changes: 1 addition & 1 deletion docs/getting-started/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Validate your installation:
```bash
tech version
```
This should output the current version of the language (e.g., `TechScript v2.0.0`).
This should output the current version of the language (e.g., `TechScript v2.0.0.1`).

---

Expand Down
4 changes: 2 additions & 2 deletions docs/getting-started/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ TechScript is designed to install cleanly on multiple platforms with zero extern

### Option 1: Setup Wizard (Recommended)
1. Go to the [Releases](https://github.com/Tcode-Motion/techscript/releases) page on GitHub.
2. Download **`TechScript_v2.0.0_x64.exe`** (or the latest setup file).
2. Download **`TechScript_v2.0.0.1_x64.exe`** (or the latest setup file).
3. Double-click to execute the installer. The wizard will automatically:
* Install the native Rust compiler and VM binaries.
* Add the `tech` command-line executable to your system environment `PATH` variables.
Expand Down Expand Up @@ -59,4 +59,4 @@ Verify that the `tech` executable is correctly configured in your `PATH` by runn
```bash
tech version
```
This should output the current active release version (e.g. `TechScript v2.0.0`).
This should output the current active release version (e.g. `TechScript v2.0.0.1`).
Loading