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
48 changes: 0 additions & 48 deletions .changeset/experimental-auto-flush.md

This file was deleted.

2 changes: 0 additions & 2 deletions .changeset/lemon-moons-arrive.md

This file was deleted.

14 changes: 0 additions & 14 deletions .changeset/prettier-eslint-fix.md

This file was deleted.

14 changes: 14 additions & 0 deletions packages/config-prettier/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,19 @@
# @ciolabs/config-prettier

## 0.0.2

### Patch Changes

- [#28](https://github.com/customerio/ciolabs/pull/28) [`273de45`](https://github.com/customerio/ciolabs/commit/273de45c3d9e3156464c36d41a771494a35599fb) Thanks [@avigoldman](https://github.com/avigoldman)! - Remove Prettier import sorting plugin to resolve conflict with ESLint import/order rule

## Changes
- Removed `@trivago/prettier-plugin-sort-imports` plugin
- Removed `importOrder` and `importOrderSeparation` configuration
- ESLint's `import/order` rule now handles all import organization
- Fixes conflict where Prettier and ESLint were fighting over import formatting

This allows both tools to work together harmoniously without conflicting changes.

## 0.0.1

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/config-prettier/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@ciolabs/config-prettier",
"version": "0.0.1",
"version": "0.0.2",
"description": "Shared Prettier configuration for Customer.io projects",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
Expand Down
44 changes: 44 additions & 0 deletions packages/html-mod/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,49 @@
# @ciolabs/html-mod

## 0.1.0

### Minor Changes

- [#28](https://github.com/customerio/ciolabs/pull/28) [`3f7b86b`](https://github.com/customerio/ciolabs/commit/3f7b86b55dc567aa75cf39c98e3fd41d17c7f194) Thanks [@avigoldman](https://github.com/avigoldman)! - Add experimental auto-flush implementation that eliminates manual `flush()` calls

## New Features

### Experimental Auto-Flush Implementation
- **Import path**: `@ciolabs/html-mod/experimental`
- Automatically synchronizes AST after every modification
- No manual `flush()` calls required
- Element references stay valid across modifications
- 2.16x faster for modify+query patterns (most common in visual editors)

### Dataset API (Both Versions)
- Added `dataset` property to `HtmlModElement`
- Full Proxy-based implementation with camelCase ↔ kebab-case conversion
- Compatible with standard DOM `DOMStringMap` interface
- Supports all dataset operations: get, set, delete, enumerate

## Performance

**Benchmarks (vs stable version):**
- Parse + setAttribute: 1.19x faster
- Modify + query pattern: 2.16x faster
- Real-world templates: 1.29x faster
- Batched modifications: 3.07x slower (rare pattern)

## Documentation
- See `EXPERIMENTAL.md` for complete feature comparison
- Migration guide included for switching from stable to experimental
- Comprehensive deployment recommendations

## Testing
- 624 tests passing (vs 196 in stable)
- Includes adversarial testing, stress testing, and real-world scenarios
- Zero drift over 10,000+ consecutive operations
- Handles malformed HTML gracefully

## Breaking Changes

None - fully backward compatible. The experimental version is available at a separate import path (`/experimental`).

## 0.0.4

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/html-mod/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@ciolabs/html-mod",
"version": "0.0.4",
"version": "0.1.0",
"description": "Manipulate HTML strings with a Browser-like API",
"author": "Customer.io <[email protected]>",
"license": "Apache-2.0 WITH Commons-Clause",
Expand Down