Skip to content

v0.4.0

Latest

Choose a tag to compare

@github-actions github-actions released this 13 Apr 11:39
eb36b84

What's Changed

  • fix: use multi_thread runtime for WASM integration tests by @mizzy in #1592
  • fix: pass actual factories to DiagnosticEngine in LSP by @mizzy in #1593
  • fix: eliminate Box::leak memory leak for provider names by @mizzy in #1594
  • fix: add serde(default) to v3 state fields for backward compatibility by @mizzy in #1601
  • fix: clear LSP schemas when all provider blocks are removed by @mizzy in #1602
  • fix: make LSP provider discovery recursive by @mizzy in #1603
  • fix: include file content hash in WASM precompile cache key by @mizzy in #1605
  • fix: refresh orphaned resources before planning in apply command by @mizzy in #1606
  • fix: add post-rename verification to LocalBackend lock renewal by @mizzy in #1607
  • feat: add interpolation support for heredocs (<<EOT vs <<'EOT') by @mizzy in #1608
  • feat: add docs subcommand with embedded documentation by @mizzy in #1612
  • feat: support revision/branch specification in provider source by @mizzy in #1614
  • feat: add skills subcommand with Agent Skills installer by @mizzy in #1615
  • fix: fix broken test_from_file_cached_creates_cache test by @mizzy in #1616
  • feat: add --json flag to validate, plan, and state show commands by @mizzy in #1617
  • fix: resolve CBD reverse dependencies when Delete binding is None by @mizzy in #1618
  • docs: update aws provider reference by @mizzy in #1619
  • fix: error when provider plugin is not loaded during validate by @mizzy in #1623
  • fix: use stderr for provider resolver download messages by @mizzy in #1625
  • fix: show info-level diagnostic for unloaded providers in LSP by @mizzy in #1628
  • fix: detect assignment-syntax struct blocks for LSP completion by @mizzy in #1630
  • fix: show actual error reason instead of generic 'run carina init' message by @mizzy in #1631
  • fix: show struct block snippet instead of builtin functions for Struct-typed attributes by @mizzy in #1633
  • fix: show DSL-format enum completions for WASM providers in LSP by @mizzy in #1635
  • fix: always disable sccache in pre-commit hook by @mizzy in #1636
  • fix: re-resolve revision SHA on carina init --upgrade by @mizzy in #1637
  • docs: update aws provider reference by @mizzy in #1638
  • fix: use bare enum values in LSP completions by @mizzy in #1639
  • refactor: rename carina.lock to carina-providers.lock by @mizzy in #1642
  • fix: correct state lock filename in benchmark script by @mizzy in #1644
  • feat: add serializable ValidatorType for WASM boundary by @mizzy in #1645
  • fix: point validation errors to the specific attribute line in LSP by @mizzy in #1647
  • fix: cap HTTP timeouts for all WASM plugin requests to prevent hang by @mizzy in #1649
  • fix: reject double-namespace in validate_enum_namespace by @mizzy in #1652
  • fix: make validate_enum_namespace strict about part count by @mizzy in #1653
  • fix: run provider config type validation in LSP diagnostics by @mizzy in #1655
  • feat: fallback import matching by name_attribute for anonymous resources by @mizzy in #1657
  • feat: make S3 backend region optional (auto-discover via GetBucketLocation) by @mizzy in #1661
  • feat: detect and block backend configuration changes by @mizzy in #1662
  • fix: detect local → remote backend transition by @mizzy in #1664
  • feat: add carina state migrate command by @mizzy in #1665
  • fix: detect anonymous → named rename to avoid destructive plans by @mizzy in #1667
  • fix: iterate workflow runs to find WASM artifact across workflows by @mizzy in #1669
  • fix: detect rename for resources with no create-only attrs by @mizzy in #1671
  • feat: Provider::read_data_source for input-taking data sources by @mizzy in #1674
  • fix: plumb read_data_source through WASM plugin boundary by @mizzy in #1678
  • fix: report both HTTP and basic instantiation errors in WasmProviderFactory by @mizzy in #1682
  • fix: resolve ResourceRef in data source inputs before refresh by @mizzy in #1684
  • fix: run orphan refresh and anonymous→let rename transfer before phase 2 by @mizzy in #1686
  • fix: remove noisy log::error from core_to_wit_value for expected unresolved refs by @mizzy in #1688
  • fix: display pure move effects in plan output by @mizzy in #1690
  • fix: stop converting underscores to hyphens in enum values by @mizzy in #1691
  • fix: suppress redundant Move nodes in TUI when Update/Replace exists by @mizzy in #1692
  • Replace vendored WIT files with git submodule by @mizzy in #1694
  • docs: add submodule initialization instructions by @mizzy in #1695
  • fix: reject unknown attributes during schema validation by @mizzy in #1697
  • fix: install LSP providers in .crn file's directory, not workspace root by @mizzy in #1699
  • feat: type-check module arguments with provider-defined types by @mizzy in #1704
  • feat: support quoted strings as map/attribute keys by @mizzy in #1705
  • fix: handle quoted string keys in carina fmt by @mizzy in #1708
  • fix: distinguish missing schema from unknown resource type in LSP by @mizzy in #1712
  • feat: scope LSP provider schemas per-directory by @mizzy in #1715
  • fix: create backend-lock.json only when state is written by @mizzy in #1716
  • feat: resolve module providers from callers via import map by @mizzy in #1717
  • fix: LSP state_for_path skipped the config directory itself by @mizzy in #1719
  • fix: type completions inside list()/map() in arguments blocks by @mizzy in #1725
  • fix: enable provider-defined type completions in arguments blocks by @mizzy in #1726
  • fix: rename built-in type cidr to ipv4_cidr by @mizzy in #1732
  • fix: preserve comment position in carina fmt by @mizzy in #1733
  • fix: show Arguments and Attributes separately in resource hover by @mizzy in #1734
  • feat: add hover for module call names by @mizzy in #1735
  • feat: add global plugin cache for provider WASM sharing by @mizzy in #1736
  • fix: add global plugin cache for revision-based providers by @mizzy in #1737
  • feat: LSP uses installed providers only, no auto-download by @mizzy in #1738
  • fix: reload provider schemas when WASM or lock files change by @mizzy in #1740
  • feat: add module binding name completion at top level by @mizzy in #1741
  • feat: add import path completion with filesystem listing by @mizzy in #1742
  • feat: scaffold module call with argument tab stops by @mizzy in #1743
  • feat: add Custom type to WASM provider protocol by @mizzy in #1744
  • feat: validate module argument types against provider-defined custom validators by @mizzy in #1745
  • feat: add validate-custom-type WIT interface for WASM provider plugins by @mizzy in #1746
  • fix(docs): prevent LinkCard hover text from vanishing in light theme by @mizzy in #1748
  • feat: validate attribute parameter ref types against declared type by @mizzy in #1753
  • fix: validate module attribute params before module expansion by @mizzy in #1754
  • fix: include module path in attribute type error and add LSP diagnostic by @mizzy in #1755
  • feat: show structured diff for nested map changes in plan output by @mizzy in #1756
  • feat: support typed Map keys for key-level validation by @mizzy in #1760
  • feat: LSP Map key completions from typed key schema by @mizzy in #1761
  • feat: support struct field completions inside Union types by @mizzy in #1762
  • test: verify LSP diagnostics warn on invalid Map keys by @mizzy in #1763
  • fix: show specific struct field errors in Union type validation by @mizzy in #1765
  • chore: bump version to 0.4.0 by @mizzy in #1766

Full Changelog: v0.3.0...v0.4.0