Skip to content

Commit 5f33d47

Browse files
committed
Release 1.1.4 with tokenizer tool and VSCode extension
Includes interactive token comparison tool, ASON language server, syntax highlighting, improved CI/CD with provenance, and multiple bug fixes for tokenizer, CSV, and TOON conversions.
1 parent cda57b4 commit 5f33d47

File tree

4 files changed

+81
-4
lines changed

4 files changed

+81
-4
lines changed

nodejs-compressor/CHANGELOG.md

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,83 @@ All notable changes to this project will be documented in this file.
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

8+
## [1.1.4] - 2025-11-13
9+
10+
### Added
11+
- **Interactive Token Comparison Tool** - `/docs/tokenizer.html`
12+
- Real GPT tokenization using `gpt-tokenizer` library
13+
- Compare token counts across 6 formats: Pretty JSON, JSON, YAML, TOON, ASON, CSV
14+
- Visual token highlighting - each token displayed with unique color
15+
- 16 pastel color palette for token visualization
16+
- Preset datasets: small-simple, small-nested, medium-users, large-complex (Stripe)
17+
- Custom JSON input support with live analysis
18+
- Dynamic baseline comparison (compare any format against any other)
19+
- All permutations comparison table showing all datasets
20+
- Compact Vercel-style UI matching docs design
21+
- Local TOON library integration (`/docs/js/toon.js` + wrapper)
22+
- Interactive hover effects on tokens (scale + shadow)
23+
- Responsive grid layout for format cards
24+
- Key findings section explaining token efficiency
25+
26+
- **VSCode Extension - Language Server**
27+
- ASON language server with LSP features
28+
- Real-time syntax validation and error detection
29+
- Autocomplete for dictionary references (`#0`, `#1`, etc.)
30+
- Autocomplete for object aliases (`&obj0`, `&obj1`, etc.)
31+
- Go to definition for references
32+
- Hover tooltips showing full values
33+
- Smart filtering - typing `#1` filters to `#1`, `#10`, `#11`, etc.
34+
- Context caching for performance
35+
- Proper `textEdit` range replacement (no duplicate insertions)
36+
- Support for `$def:` and `$data:` sections
37+
- Dictionary value detection in both sections
38+
- Fix: Autocomplete now works immediately on file open
39+
40+
- **VSCode Extension - Syntax Highlighting**
41+
- TextMate grammar for `.ason` files
42+
- Syntax highlighting for keys, values, references, sections
43+
- File icon for `.ason` files in explorer
44+
- Professional gradient icon design (teal with `#` symbol and braces)
45+
- Icon theme integration
46+
- Simplified syntax patterns for better color consistency
47+
48+
### Changed
49+
- **CI/CD - Automated Publishing with Provenance**
50+
- Updated `/.github/workflows/npm-publish.yml` with npm provenance support
51+
- Added `--provenance` flag to npm publish command
52+
- Added `permissions.id-token: write` for cryptographic signing
53+
- Package now displays verified checkmark ✓ on npm
54+
- Automated GitHub release creation with `changelogithub`
55+
- Supports both manual releases and git tag triggers (`v*`)
56+
- Node.js 20.x (updated from 18.x)
57+
- Full transparency log and build attestation
58+
59+
- **Documentation Navigation**
60+
- Added "Token Comparison" link to main docs navigation
61+
- Blue highlight for new tokenizer tool link
62+
- Consistent navigation across all doc pages
63+
64+
### Fixed
65+
- **Tokenizer Library Loading**
66+
- Replaced `tiktoken` (ES module issues) with `gpt-tokenizer`
67+
- Added local TOON library at `/docs/js/toon.js`
68+
- Created `/docs/js/toon-wrapper.js` to expose TOON globally
69+
- Removed broken CDN imports
70+
- All libraries now load correctly in browser
71+
- Console logs verify library availability
72+
73+
- **CSV Conversion**
74+
- Improved CSV generator to handle all unique keys
75+
- Added automatic quoting for values containing commas
76+
- Better detection of nested objects (shows "N/A (nested objects)")
77+
- Handles null/undefined values gracefully
78+
79+
- **TOON Conversion**
80+
- Enhanced manual TOON fallback implementation
81+
- Proper handling of non-uniform arrays
82+
- String quoting for values with commas/spaces
83+
- Clear error messages: "N/A (non-uniform)", "N/A (nested objects)"
84+
885
## [1.1.3] - 2025-01-12
986

1087
### Fixed

nodejs-compressor/package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

nodejs-compressor/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@ason-format/ason",
3-
"version": "1.1.3",
3+
"version": "1.1.4",
44
"description": "ASON (Aliased Serialization Object Notation) - Token-optimized JSON compression for LLMs. Reduces tokens by 20-60% while maintaining perfect round-trip fidelity.",
55
"main": "./dist/index.cjs",
66
"module": "./dist/index.js",

nodejs-compressor/scripts/release.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ echo -e "${BLUE}╚════════════════════
1818
echo ""
1919

2020
# Get current version
21-
CURRENT_VERSION=$(node -p "require('./package.json').version")
21+
CURRENT_VERSION=$(node -p "require('../package.json').version")
2222
echo -e "Current version: ${YELLOW}v${CURRENT_VERSION}${NC}"
2323

2424
# Select version bump type

0 commit comments

Comments
 (0)