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
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,11 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.15.0] - 2026-04-22

### Changed
- The TypeScript generator now emits type-only imports where applicable.

## [0.14.0] - 2026-04-19

### Changed
Expand Down
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "typical"
version = "0.14.0"
version = "0.15.0"
authors = ["Stephan Boyer <stephan@stephanboyer.com>"]
edition = "2024"
description = "Data interchange with algebraic data types."
Expand Down
2 changes: 1 addition & 1 deletion MAINTAINERS.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ The GitHub workflow will fail initially because the jobs which test the installe

Releasing a new version is a four-step process:

1. Run `(cd integration_tests/typescript_web && npm ci && npm run main && open dist/index.html)` to run the browser-based integration tests. This is the only test suite that doesn't run in the GitHub workflow.
1. Run `(cd integration_tests/typescript_web && npm ci && npm run serve)` and open [http://localhost:5173/](http://localhost:5173/) in a browser to run the browser-based integration tests. This is the only test suite that doesn't run in the GitHub workflow.
2. Bump the version in `[file:Cargo.toml]`, run `cargo build` to update `[file:Cargo.lock]`, and update `[file:CHANGELOG.md]` with information about the new version. Ship those changes as a single commit.
3. Once the GitHub workflow has finished on the `main` branch, update the version in `[file:install.sh]` to point to the new release.
4. Create a pull request in the `Homebrew/homebrew-core` repository on GitHub to bump the version in [this file](https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/t/typical.rb).
1 change: 0 additions & 1 deletion benchmarks/typescript/.prettierrc.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
module.exports = {
proseWrap: 'always',
singleQuote: true,
trailingComma: 'all',
};
2 changes: 1 addition & 1 deletion benchmarks/typescript/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@
"outDir": "dist",
"types": ["node"]
},
"include": ["src/**/*.ts"]
"include": ["src"]
}
2 changes: 1 addition & 1 deletion examples/typescript/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@
"outDir": "dist",
"types": ["node"]
},
"include": ["src/**/*.ts"]
"include": ["src"]
}
1 change: 0 additions & 1 deletion integration_tests/typescript_node/.prettierrc.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
module.exports = {
proseWrap: 'always',
singleQuote: true,
trailingComma: 'all',
};
2 changes: 1 addition & 1 deletion integration_tests/typescript_node/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@
"outDir": "dist",
"types": ["node"]
},
"include": ["src/**/*.ts"]
"include": ["src"]
}
105 changes: 0 additions & 105 deletions integration_tests/typescript_web/.eslintrc.js

This file was deleted.

1 change: 0 additions & 1 deletion integration_tests/typescript_web/.prettierrc.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
module.exports = {
proseWrap: 'always',
singleQuote: true,
trailingComma: 'all',
};
20 changes: 20 additions & 0 deletions integration_tests/typescript_web/eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
import js from '@eslint/js';
import globals from 'globals';
import tseslint from 'typescript-eslint';
import { defineConfig } from 'eslint/config';

export default defineConfig([
{
linterOptions: {
reportUnusedDisableDirectives: 'error',
reportUnusedInlineConfigs: 'error',
},
},
{
files: ['**/*.{js,mjs,cjs,ts,mts,cts}'],
plugins: { js },
extends: ['js/recommended'],
languageOptions: { globals: globals.browser },
},
tseslint.configs.recommended,
]);
13 changes: 13 additions & 0 deletions integration_tests/typescript_web/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Typical integration test</title>
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/main.ts"></script>
</body>
</html>
Loading
Loading