Skip to content
Merged

v0.10.1 #1683

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
2 changes: 1 addition & 1 deletion Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ GIT
PATH
remote: .
specs:
herb (0.10.0)
herb (0.10.1)

GEM
remote: https://rubygems.org/
Expand Down
4 changes: 2 additions & 2 deletions docs/docs/bindings/java/reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -280,7 +280,7 @@ Returns the full version information including Herb, Prism, and JNI details:
import org.herb.Herb;

System.out.println(Herb.version());
// Output: "herb java v0.10.0, libprism v1.9.0, libherb v0.10.0 (Java JNI)"
// Output: "herb java v0.10.1, libprism v1.9.0, libherb v0.10.1 (Java JNI)"
```
:::

Expand All @@ -293,7 +293,7 @@ Returns just the Herb library version:
import org.herb.Herb;

System.out.println(Herb.herbVersion());
// Output: "0.10.0"
// Output: "0.10.1"
```
:::

Expand Down
2 changes: 1 addition & 1 deletion docs/docs/bindings/rust/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Add the dependency to your `Cargo.toml`:
:::code-group
```toml [Cargo.toml]
[dependencies]
herb = "0.10.0"
herb = "0.10.1"
```
:::

Expand Down
4 changes: 2 additions & 2 deletions docs/docs/bindings/rust/reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -348,7 +348,7 @@ Returns the full version information including Herb, Prism, and FFI details:
use herb::version;

println!("{}", version());
// Output: "herb rust v0.10.0, libprism v1.9.0, libherb v0.10.0 (Rust FFI)"
// Output: "herb rust v0.10.1, libprism v1.9.0, libherb v0.10.1 (Rust FFI)"
```
:::

Expand All @@ -361,7 +361,7 @@ Returns just the Herb library version:
use herb::herb_version;

println!("{}", herb_version());
// Output: "0.10.0"
// Output: "0.10.1"
```
:::

Expand Down
2 changes: 1 addition & 1 deletion docs/docs/projects/dev-server.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ The dev server consists of two parts:

⚠️ Experimental: The dev server is experimental and may not work correctly in all cases.

Herb: 0.10.0
Herb: 0.10.1
Project: /path/to/project
Config: .herb.yml
Files: 453 templates indexed
Expand Down
6 changes: 3 additions & 3 deletions docs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@
"fetch:contributors": "mkdir -p .vitepress/data/ && gh api -X get https://api.github.com/repos/marcoroth/herb/contributors > .vitepress/data/contributors.json"
},
"dependencies": {
"@herb-tools/browser": "0.10.0",
"@herb-tools/core": "0.10.0",
"@herb-tools/node": "0.10.0",
"@herb-tools/browser": "0.10.1",
"@herb-tools/core": "0.10.1",
"@herb-tools/node": "0.10.1",
"medium-zoom": "^1.1.0"
},
"devDependencies": {
Expand Down
4 changes: 2 additions & 2 deletions javascript/packages/browser/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@herb-tools/browser",
"version": "0.10.0",
"version": "0.10.1",
"description": "WebAssembly-based HTML-aware ERB parser for browsers.",
"type": "module",
"license": "MIT",
Expand Down Expand Up @@ -34,7 +34,7 @@
}
},
"dependencies": {
"@herb-tools/core": "0.10.0"
"@herb-tools/core": "0.10.1"
},
"files": [
"package.json",
Expand Down
2 changes: 1 addition & 1 deletion javascript/packages/browser/test/browser.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ describe("@herb-tools/browser", () => {
test("version() returns a string", async () => {
const version = Herb.version
expect(typeof version).toBe("string")
expect(version).toBe("@herb-tools/browser@0.10.0, @herb-tools/core@0.10.0, libprism@1.9.0, libherb@0.10.0 (WebAssembly)")
expect(version).toBe("@herb-tools/browser@0.10.1, @herb-tools/core@0.10.1, libprism@1.9.0, libherb@0.10.1 (WebAssembly)")
})

test("parse() can process a simple template", async () => {
Expand Down
2 changes: 1 addition & 1 deletion javascript/packages/client/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@herb-tools/client",
"version": "0.10.0",
"version": "0.10.1",
"description": "HMR client for Herb templates - connects to herb dev server and applies live DOM patches",
"type": "module",
"license": "MIT",
Expand Down
2 changes: 1 addition & 1 deletion javascript/packages/config/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ bun add @herb-tools/config
The configuration is stored in a `.herb.yml` file in the project root:

```yaml [.herb.yml]
version: 0.10.0
version: 0.10.1

linter:
enabled: true
Expand Down
4 changes: 2 additions & 2 deletions javascript/packages/config/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@herb-tools/config",
"version": "0.10.0",
"version": "0.10.1",
"description": "Shared configuration utilities for Herb tools",
"license": "MIT",
"homepage": "https://herb-tools.dev",
Expand Down Expand Up @@ -30,7 +30,7 @@
}
},
"dependencies": {
"@herb-tools/core": "0.10.0",
"@herb-tools/core": "0.10.1",
"picomatch": "^4.0.4",
"tinyglobby": "^0.2.16",
"yaml": "^2.8.3"
Expand Down
2 changes: 1 addition & 1 deletion javascript/packages/config/src/config-template.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
# GitHub Repo: https://github.com/marcoroth/herb
#

version: 0.10.0
version: 0.10.1

# # Framework and template engine configuration
#
Expand Down
44 changes: 22 additions & 22 deletions javascript/packages/config/test/config.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,12 @@ describe("@herb-tools/config", () => {
})

test("can be instantiated", () => {
const config = new Config(testDir, { version: "0.10.0" })
const config = new Config(testDir, { version: "0.10.1" })
expect(config).toBeInstanceOf(Config)
})

test("sets correct config path", () => {
const config = new Config(testDir, { version: "0.10.0" })
const config = new Config(testDir, { version: "0.10.1" })
expect(config.path).toBe(join(testDir, ".herb.yml"))
})
})
Expand All @@ -66,14 +66,14 @@ describe("@herb-tools/config", () => {

test("returns true when config file exists", () => {
const configPath = join(testDir, ".herb.yml")
writeFileSync(configPath, "version: 0.10.0\n")
writeFileSync(configPath, "version: 0.10.1\n")

expect(Config.exists(testDir)).toBe(true)
})

test("handles explicit .herb.yml path", () => {
const configPath = join(testDir, ".herb.yml")
writeFileSync(configPath, "version: 0.10.0\n")
writeFileSync(configPath, "version: 0.10.1\n")

expect(Config.exists(configPath)).toBe(true)
})
Expand All @@ -83,7 +83,7 @@ describe("@herb-tools/config", () => {
test("reads raw YAML content from config file", () => {
const configPath = join(testDir, ".herb.yml")
const yamlContent = dedent`
version: 0.10.0
version: 0.10.1
linter:
enabled: true
rules:
Expand All @@ -98,7 +98,7 @@ describe("@herb-tools/config", () => {

test("handles explicit .herb.yml path", () => {
const configPath = join(testDir, ".herb.yml")
const yamlContent = "version: 0.10.0\n"
const yamlContent = "version: 0.10.1\n"
writeFileSync(configPath, yamlContent)

const rawYaml = Config.readRawYaml(configPath)
Expand Down Expand Up @@ -191,7 +191,7 @@ describe("@herb-tools/config", () => {
describe("Config.applyMutationToYamlString", () => {
test("applies mutation to existing YAML", () => {
const existingYaml = dedent`
version: 0.10.0
version: 0.10.1
linter:
enabled: true
`
Expand All @@ -206,15 +206,15 @@ describe("@herb-tools/config", () => {

const updatedYaml = Config.applyMutationToYamlString(existingYaml, mutation)

expect(updatedYaml).toContain("version: 0.10.0")
expect(updatedYaml).toContain("version: 0.10.1")
expect(updatedYaml).toContain("enabled: true")
expect(updatedYaml).toContain("html-tag-name-lowercase:")
expect(updatedYaml).toContain("enabled: false")
})

test("merges rules without overwriting existing rules", () => {
const existingYaml = dedent`
version: 0.10.0
version: 0.10.1
linter:
rules:
html-img-require-alt:
Expand All @@ -237,7 +237,7 @@ describe("@herb-tools/config", () => {

test("updates existing rule configuration", () => {
const existingYaml = dedent`
version: 0.10.0
version: 0.10.1
linter:
rules:
html-tag-name-lowercase:
Expand Down Expand Up @@ -1369,15 +1369,15 @@ describe("@herb-tools/config", () => {

describe("Config.configVersion", () => {
test("is undefined when not provided", () => {
const config = new Config(testDir, { version: "0.10.0" })
const config = new Config(testDir, { version: "0.10.1" })

expect(config.configVersion).toBeUndefined()
})

test("preserves explicit configVersion", () => {
const config = new Config(testDir, { version: "0.10.0" }, "0.8.0")
const config = new Config(testDir, { version: "0.10.1" }, "0.8.0")

expect(config.version).toBe("0.10.0")
expect(config.version).toBe("0.10.1")
expect(config.configVersion).toBe("0.8.0")
})

Expand All @@ -1396,24 +1396,24 @@ describe("@herb-tools/config", () => {
test("load preserves user config version from .herb.yml", async () => {
createTestFile(testDir, ".herb.yml", "version: 0.8.0\n\nlinter:\n enabled: true\n")

const config = await Config.load(testDir, { version: "0.10.0", silent: true })
const config = await Config.load(testDir, { version: "0.10.1", silent: true })

expect(config.version).toBe("0.10.0")
expect(config.version).toBe("0.10.1")
expect(config.configVersion).toBe("0.8.0")
})

test("load defaults configVersion to undefined when .herb.yml has no version", async () => {
createTestFile(testDir, ".herb.yml", "linter:\n enabled: true\n")

const config = await Config.load(testDir, { version: "0.10.0", silent: true })
const config = await Config.load(testDir, { version: "0.10.1", silent: true })

expect(config.configVersion).toBeUndefined()
})

test("load defaults configVersion to undefined when no .herb.yml exists", async () => {
createTestFile(testDir, ".git/HEAD", "ref: refs/heads/main\n")

const config = await Config.load(testDir, { version: "0.10.0", silent: true })
const config = await Config.load(testDir, { version: "0.10.1", silent: true })

expect(config.configVersion).toBeUndefined()
})
Expand All @@ -1439,7 +1439,7 @@ describe("@herb-tools/config", () => {
}
})

const config = await Config.load(testDir, { version: "0.10.0", silent: true })
const config = await Config.load(testDir, { version: "0.10.1", silent: true })

expect(config.linter?.rules?.["new-rule-a"]?.enabled).toBe(false)
expect(config.linter?.rules?.["new-rule-b"]?.enabled).toBe(false)
Expand All @@ -1466,7 +1466,7 @@ describe("@herb-tools/config", () => {
}
})

const config = await Config.load(testDir, { version: "0.10.0", silent: true })
const config = await Config.load(testDir, { version: "0.10.1", silent: true })

expect(config.linter?.rules?.["existing-rule"]?.enabled).toBe(false)
expect(config.linter?.rules?.["new-rule"]?.enabled).toBe(false)
Expand All @@ -1484,12 +1484,12 @@ describe("@herb-tools/config", () => {

const { readFileSync, writeFileSync } = await import("fs")
let content = readFileSync(configPath, "utf-8")
content = content.replace(/^version:\s*.+$/m, "version: 0.10.0")
content = content.replace(/^version:\s*.+$/m, "version: 0.10.1")
writeFileSync(configPath, content, "utf-8")

const config = await Config.load(testDir, { version: "0.10.0", silent: true })
const config = await Config.load(testDir, { version: "0.10.1", silent: true })

expect(config.configVersion).toBe("0.10.0")
expect(config.configVersion).toBe("0.10.1")
})
})
})
2 changes: 1 addition & 1 deletion javascript/packages/core/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@herb-tools/core",
"version": "0.10.0",
"version": "0.10.1",
"description": "Core module exporting shared interfaces, AST node definitions, and common utilities for Herb",
"license": "MIT",
"homepage": "https://herb-tools.dev",
Expand Down
4 changes: 2 additions & 2 deletions javascript/packages/dev-tools/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@herb-tools/dev-tools",
"version": "0.10.0",
"version": "0.10.1",
"description": "Development tools for visual debugging in HTML+ERB templates",
"type": "module",
"license": "MIT",
Expand Down Expand Up @@ -30,7 +30,7 @@
}
},
"dependencies": {
"@herb-tools/core": "0.10.0"
"@herb-tools/core": "0.10.1"
},
"files": [
"package.json",
Expand Down
10 changes: 5 additions & 5 deletions javascript/packages/formatter/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@herb-tools/formatter",
"version": "0.10.0",
"version": "0.10.1",
"description": "Auto-formatter for HTML+ERB templates with intelligent indentation, line wrapping, and ERB-aware pretty-printing.",
"license": "MIT",
"homepage": "https://herb-tools.dev",
Expand Down Expand Up @@ -35,10 +35,10 @@
}
},
"dependencies": {
"@herb-tools/config": "0.10.0",
"@herb-tools/core": "0.10.0",
"@herb-tools/printer": "0.10.0",
"@herb-tools/rewriter": "0.10.0",
"@herb-tools/config": "0.10.1",
"@herb-tools/core": "0.10.1",
"@herb-tools/printer": "0.10.1",
"@herb-tools/rewriter": "0.10.1",
"tinyglobby": "^0.2.15"
},
"files": [
Expand Down
4 changes: 2 additions & 2 deletions javascript/packages/herb-language-server/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "herb-language-server",
"description": "Placeholder package to reserve the herb-language-server name on NPM; use @herb-tools/language-server instead.",
"version": "0.10.0",
"version": "0.10.1",
"author": "Marco Roth",
"license": "MIT",
"engines": {
Expand Down Expand Up @@ -45,6 +45,6 @@
"dist/"
],
"dependencies": {
"@herb-tools/language-server": "0.10.0"
"@herb-tools/language-server": "0.10.1"
}
}
6 changes: 3 additions & 3 deletions javascript/packages/highlighter/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@herb-tools/highlighter",
"version": "0.10.0",
"version": "0.10.1",
"description": "Syntax highlighter and diagnostic renderer for HTML+ERB templates.",
"license": "MIT",
"homepage": "https://herb-tools.dev",
Expand Down Expand Up @@ -35,8 +35,8 @@
"prepublishOnly": "yarn clean && yarn build && yarn test"
},
"dependencies": {
"@herb-tools/core": "0.10.0",
"@herb-tools/node-wasm": "0.10.0"
"@herb-tools/core": "0.10.1",
"@herb-tools/node-wasm": "0.10.1"
},
"files": [
"package.json",
Expand Down
Loading
Loading