Changelog¶
Note
All packages are feature-complete in main. First publishes
(v0.1.0, schema-v0.1.0, plugin-fs-v0.1.0,
plugin-dialog-v0.1.0) are pending. Each package keeps its own
canonical changelog under packages/<name>/CHANGELOG.md; this
page collects the highlights of the pre-release state across all
of them.
@rescript-tauri/core 0.1.0 (2026-05-12)¶
Canonical: packages/core/CHANGELOG.md
Added¶
12 Phase-1 modules across
packages/core, every one paired with a hand-written.resi:Core— IPC bridge:Raw.invoke, typedCommand(make/invoke/invokeExn), streamingChannel,convertFileSrc. Exposes a publicdecoder<'value>type alias for downstream packages.Event— typed pub/sub withmake,listen,once,emit,emitTo, and aneventTargetdiscriminator. Listener callbacks receiveresult<event<'payload>, string>so decode failures are explicit.Window— opaque handle plus ~80 instance / static methods (theme, cursorIcon, monitor helpers, drag/resize, sixon*handlers, …).Webview— opaque handle, 14 instance methods, and adragDropEventvariant.WebviewWindow— combined Window + Webview surface with zero-costasWindow/asWebviewcasts.Menu— full menu hierarchy (MenuItem,CheckMenuItem,IconMenuItem,PredefinedMenuItem,Submenu,Menu) with anitemKindvariant and apredefinedItemvariant.Tray—TrayIconopaque handle +trayIconEventvariant (Click/DoubleClick/Enter/Move/Leave).Path— 31 path helpers +BaseDirectoryenum.App—getName,getVersion,getTauriVersion,defaultWindowIcon,setTheme, … (stable subset).Image— RGBA-image opaque handle withfromPath,fromBytes,new_,rgba,size.Dpi—LogicalSize,PhysicalSize,LogicalPosition,PhysicalPosition,Size,Positionas opaque JS-class bindings.Mocks—mockIPC,mockWindows,clearMocks.
Tauri.resumbrella module re-exportingCore,Event,Window,Webview,WebviewWindow(PRD §10 row 1, confirmed 2026-05-09).Four buildable examples gated by 3-OS CI:
hello-world,window-management,ipc-typed,streaming-ipc.
@rescript-tauri/schema 0.1.0 (2026-05-12)¶
Canonical: packages/schema/CHANGELOG.md
Added¶
Schema.fromSchemas— typedCore.Command.t<'args, 'result>from a singleS.t<'args>+S.t<'result>pair.Schema.channelFromSchema/Schema.eventFromSchema— schema-decodedCore.ChannelandEventhandles.Schema.toDecoder— lower-levelS.t<'value>→Core.decoder<'value>helper.Schema.Sre-exportsRescriptSchema.Sfor ergonomic access.Runnable example
examples/ipc-typed-with-schemapairing againstexamples/ipc-typed/to compare Layer 2 vs Layer 3.peerDependencies:@rescript-tauri/core ^0.1.0,rescript-schema ^9.0.0.rescript-structis intentionally unsupported (RFC-0002 §2.1).
@rescript-tauri/plugin-fs 0.1.0 (2026-05-12)¶
Canonical: packages/plugin-fs/CHANGELOG.md
Added¶
14 single-shot filesystem functions (
readTextFile/writeTextFile/readFile/writeFile/exists/remove/rename/mkdir/readDir/stat/lstat/truncate/copyFile/size).PluginFs.BaseDirectoryre-exported from@rescript-tauri/core’sPath.BaseDirectory.t.Runnable example
examples/plugin-fs-demoexercising the full surface inside the$APPLOCALDATAsandbox.peerDependencies:@rescript-tauri/core ^0.1.0,@tauri-apps/plugin-fs ^2.5.0.
@rescript-tauri/plugin-dialog 0.1.0 (2026-05-12)¶
Canonical: packages/plugin-dialog/CHANGELOG.md
Added¶
8 native-dialog functions (
openFile/openFiles/openDirectory/openDirectories/save/message/ask/confirm).The TypeScript-level conditional return type of upstream’s
open(options)is unrolled into four ReScript functions so the result type stays static.Runnable example
examples/plugin-dialog-demodriving every public function from one button each.peerDependencies:@rescript-tauri/core ^0.1.0,@tauri-apps/plugin-dialog ^2.7.0.
@rescript-tauri/plugin-shell 0.1.0 (2026-05-12)¶
Canonical: packages/plugin-shell/CHANGELOG.md
Added¶
Bindings for
@tauri-apps/plugin-shellv2.3.5 — 100% of the stable public surface (openPath/Command.{create,createRaw, sidecar,sidecarRaw,spawn,execute,onClose,onError,onStdoutData, onStderrData}/Child.{pid,kill,write}/EventEmitter).Runnable example
examples/plugin-shell-demo.peerDependencies:@rescript-tauri/core ^0.1.0,@tauri-apps/plugin-shell ^2.3.0.
@rescript-tauri/plugin-notification 0.1.0 (2026-05-12)¶
Canonical: packages/plugin-notification/CHANGELOG.md
Added¶
Bindings for
@tauri-apps/plugin-notificationv2.3.3 — 100% of the stable public surface (15 functions + 8 records +Schedulemodule +Importance/Visibility@unboxedvariants).The upstream
sendNotification(Options | string)overload is split intosendNotification/sendNotificationTextso the argument type stays static.Runnable example
examples/plugin-notification-demo.peerDependencies:@rescript-tauri/core ^0.1.0,@tauri-apps/plugin-notification ^2.3.0.
@rescript-tauri/plugin-log 0.1.0 (2026-05-12)¶
Canonical: packages/plugin-log/CHANGELOG.md
Added¶
Bindings for
@tauri-apps/plugin-logv2.8.0 — 100% of the stable public surface (5 log functions +attachLogger+attachConsole+LogLevel@unboxedvariant).LogLevel.tis an@unboxedpolymorphic-variant wrapper over the upstream numeric enum (Trace=1 …Error=5) so the runtime representation stays wire-compatible.Runnable example
examples/plugin-log-demo.peerDependencies:@rescript-tauri/core ^0.1.0,@tauri-apps/plugin-log ^2.0.0.
@rescript-tauri/plugin-os 0.1.0 (2026-05-12)¶
Canonical: packages/plugin-os/CHANGELOG.md
Added¶
Bindings for
@tauri-apps/plugin-osv2.3.2 — 100% of the stable public surface (6 sync getters +OsType.get(sync) +locale/hostname(async) + 4 polymorphic variants).OsType.getlives in anOsTypesubmodule becausetypeis reserved at the top level of a ReScript module.Runnable example
examples/plugin-os-demo.peerDependencies:@rescript-tauri/core ^0.1.0,@tauri-apps/plugin-os ^2.0.0.
@rescript-tauri/plugin-clipboard-manager 0.1.0 (2026-05-12)¶
Canonical: packages/plugin-clipboard-manager/CHANGELOG.md
Added¶
Bindings for
@tauri-apps/plugin-clipboard-managerv2.3.2 — 100% of the stable public surface (6 functions:writeText/readText/writeImage/readImage/writeHtml/clear).readImagereturnsRescriptTauriCore.Image.t(the existing core image handle, reused viapeerDependencies).Runnable example
examples/plugin-clipboard-manager-demo.peerDependencies:@rescript-tauri/core ^0.1.0,@tauri-apps/plugin-clipboard-manager ^2.0.0.
@rescript-tauri/plugin-http 0.1.0 (2026-05-12)¶
Canonical: packages/plugin-http/CHANGELOG.md
Added¶
Bindings for
@tauri-apps/plugin-httpv2.5.9 — 100% of the stable public surface (fetch+ 5 record / variant types:proxy<'proxyValue>/proxyConfig/basicAuth/clientOptions<'proxyValue>/dangerousSettings).The DOM
Request/Response/RequestInittypes are intentionally polymorphic; the call site picks a strategy (annotation /Obj.magic/ external binding).Runnable example
examples/plugin-http-demo.peerDependencies:@rescript-tauri/core ^0.1.0,@tauri-apps/plugin-http ^2.0.0.
Repository-level updates¶
These changes affect the monorepo as a whole and don’t belong to a single package CHANGELOG.
Added¶
GitHub Actions workflows: per-package
tests-{core,schema,plugin-fs,plugin-dialog}-{types,runtime}.yml,examples-buildmatrix covering 7 examples on Linux / macOS / Windows,lint-format(Biome),tests-coverage(vitest v8),compat-tauri-latestandcompat-rescript-prereleasenightlies,release.ymlrecognizingv*/schema-v*/plugin-fs-v*/plugin-dialog-v*tag prefixes.User guide pages for each add-on package (plugin-fs, plugin-dialog, schema).