🔖 chore: establish the 1.x legacy-decorator maintenance line

The 2.x README tells projects on an oxc-based toolchain to stay on 1.x, but no
such line existed — this branch point was version 0.1.0, so the advice pointed
at nothing installable.

- version 1.0.0
- CI runs on this branch as well as main and develop
- README opens with a maintenance-line notice pointing new projects at 2.x and
  naming the one reason to stay here: oxc does not implement the TC39 standard
  decorator transform, while tsc and esbuild do
- CHANGELOG names the release

No functional change: the code is exactly the state merged as PR #3.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SAcqrz3FcadkYr3xG32CjK
This commit is contained in:
Claude
2026-08-05 07:59:00 +00:00
parent 50c08aa556
commit 930694722f
5 changed files with 22 additions and 6 deletions
+2 -2
View File
@@ -2,9 +2,9 @@ name: CI
on: on:
push: push:
branches: [ main, develop ] branches: [ main, develop, 1.x ]
pull_request: pull_request:
branches: [ main, develop ] branches: [ main, develop, 1.x ]
jobs: jobs:
verify: verify:
+7 -1
View File
@@ -5,7 +5,13 @@ All notable changes to this project are documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased] ## [1.0.0] - 2026-08-05
The legacy-decorator line, promoted from 0.1.0 and now maintained in parallel with 2.x.
Functionally identical to the previous unreleased state; only the version and the
maintenance-line notice changed. See the 2.x branch for standard decorators and
compile-time rule checking.
### Added ### Added
+10
View File
@@ -1,5 +1,15 @@
# Cereale # Cereale
> **This is the 1.x maintenance line**, which uses TypeScript's legacy
> `experimentalDecorators`. It is feature-complete and supported for bug fixes.
>
> **New projects should use 2.x**, which moves to TC39 standard decorators and gains
> compile-time checking of validation rules against field types — `@IsString() age: number`
> becomes a compile error rather than a runtime surprise.
>
> Stay on 1.x if your toolchain transpiles with **oxc**, which does not yet implement the
> standard decorator transform. `tsc` and esbuild both do, so most projects can move.
Cereale is a lightweight TypeScript library that provides Spring-like decorators for JSON mapping and validation. Built with ZERO external dependencies, it simplifies the process of converting between plain JSON and class instances with full validation support. Cereale is a lightweight TypeScript library that provides Spring-like decorators for JSON mapping and validation. Built with ZERO external dependencies, it simplifies the process of converting between plain JSON and class instances with full validation support.
## Features ## Features
+2 -2
View File
@@ -1,12 +1,12 @@
{ {
"name": "cereale", "name": "cereale",
"version": "0.1.0", "version": "1.0.0",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "cereale", "name": "cereale",
"version": "0.1.0", "version": "1.0.0",
"license": "MIT", "license": "MIT",
"devDependencies": { "devDependencies": {
"@eslint/js": "^10.0.1", "@eslint/js": "^10.0.1",
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "cereale", "name": "cereale",
"version": "0.1.0", "version": "1.0.0",
"description": "Spring-like decorators for JSON mapping and validation in TypeScript", "description": "Spring-like decorators for JSON mapping and validation in TypeScript",
"type": "module", "type": "module",
"main": "./dist/cjs/index.js", "main": "./dist/cjs/index.js",