RemObjects Elements Releases

Learn what's new across releases, with details of features, enhancements, and resolved issues.

Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
RemObjects Elements v13.0.0.3125Sep 12, 2026
Features
  • Core:
    • Added native callback bridge for DebugEngine events and lifecycle management.
    • Apply global function name mangling regardless of owner type.
    • Preserve mangled global symbols in Toffee FX metadata.
    • Support Toffee global function name mangling and Added namespace collision regression test.
    • Merged EBuild.
    • Merged Marzipan.
    • Merged RTL2.
    • Merged RTL2.Web.
  • Fire, Water & Earth:
    • Added managed debug engine callback bridge.
    • Canonicalize shared project references.
    • Fire: Added native PDF file preview.
    • Fire: Added shortcut for 'Run Without Rebuilding'.
    • Fire: Improved application termination speed by forgoing cleanup.
    • Handle folder projects that happen to contain code files w/o licensing.
    • Improved Markdown rendering styles for blockquotes, alerts, and tables.
    • Iterate CrossBox server keys directly when collecting devices.
    • Map projected project-group nodes back to their source nodes before handling tree drag-and-drop operations.
    • Migrate all Markdown rendering to Elements.Markdown.
    • Prevent duplicate solution reloads.
    • Refresh CrossBox menus asynchronously.
    • Synchronize live folder contents with filesystem changes.
    • Track cache changes and avoid unnecessary saves.
    • Wait for pending file writes during application termination.
  • CodeBot
    • Added overnight CodeBot processing with OpenAI Flex pricing.
    • Added slash command completion to CodeBot prompts.
    • Allow unrestricted CodeBot primary pane width while preserving secondary layout limits.
    • CodeBot Avatar: Open files using the resolved application URL and activate it after successful launch.
    • CodeBot: Render Speed-to-text transcription tool results inline.
    • Fire & Campfire: Added native macOS PDF CodeBot functions.
    • Improved media model account resolution across accounts.
    • Improved tag completion.
    • Prefer the selected AI account for media model resolution and Added coverage.
    • Recall the last sent CodeBot message with Command-Up.
    • Show inherited CodeBot media models in preferences.
    • Update supported CodeBot generation capabilities.
    • Validate assistant responses and avoid showing internal Json.
  • Earth Preview
    • Earth: Improved GTK background and 80s Blue theme text contrast.
  • EBuild
    • Supports CoreCLR mixed debugging for native Darwin projects (wip).
  • Elements RTL:
    • Added multipart upload support and HTTP response callbacks across Cocoa platforms, with new upload probes for in-memory and file-based multipart requests.
Fixes
  • Core:
    • Unable to make changes in Oxygene WinForms user interface controls.
    • Fix for Toffee case type of expressions.
    • Fix Invoke binder to preserve flags and Added constructor invocation coverage.
    • Toffee: tolerate missing if-statement flow data.
    • Units of Measure auto-conversions failed for imported property setters.
  • Fire, Water & Earth:
    • Fire: Fix for stray jump bar separator if Fire was launched w/ empty solution.
    • Fire: Preserve editor scroll positions during resizing (regression fix).
    • Fix solution tree updates for grouped projects.
  • Earth Preview
    • Earth: Resolve bundled dotnet host through DOTNET_ROOT.
    • Earth: Resolve compiler paths for local Linux builds.
    • Linux: Prevent reentrant update installation requests.
  • Elements RTL:
    • Darwin: fix callbacks and progress for uploads.
    • Fix Thread.Abort mapping for Cooper, since modern Java lacks a safe forced-stop equivalent.
RemObjects Elements v13.0.0.3123Sep 4, 2026
Features
  • Core:
    • Improved message for missing libToffee reference diagnostics.
    • Merged CodeGen4.
    • Merged EBuild.
    • Merged EUnit.
    • Merged InternetPack.
    • Merged RTL2.
    • Merged RTL2.Web.
  • Fire & Water:
    • Jump Bar navigation didn't always react for classic implemented methods.
    • Added App Store Connect account integration (wip).
    • Canvas: Keep a file open if edits were made in Canvas mode.
    • Canvas: Make debug canvas clearing thread-safe and defer transient canvas unregistration to the UI thread.
    • Canvas: Refresh debug frame type resolution.
    • CodeBot: Added a native bug-triage workflow with filtered queues, checkpointed progress, safe ticket handling, verification requirements, and complete outcome reporting.
    • CodeBot: Added CrossBox controls.
    • CodeBot: Avoid synchronous main-thread dispatch deadlock.
    • CodeBot: Enforce connected project-management accounts.
    • CodeBot: Improved file, search, and terminal tools.
    • CodeBot: Integrate transcript with search UI.
    • CodeBot: Preserve welcome state when restoring (welcome-only) cached HTML.
    • CodeBot: Refine investigation and delegation guidance for coding agents.
    • Fire: Improved responsive pane layout during live window resizing.
    • Fire: Improved window frame restoration and persistence.
    • Improved project group drag-and-drop handling.
    • Added support for deleting groups.
    • Improved recent template selection matching across platforms.
    • NRE proofing.
    • Support grouping shared projects with host projects in the solution tree and persist their layout.
    • Support multiple grouped shared projects and improved tree drag-and-drop handling.
    • Water/Windows: Move dragged files between project folders.
    • Water: Improved visual drag-and-drop visuals for tables and trees.
    • Water: Improved compact New Project layout by showing suggested templates exclusively in very small windows.
    • Water: Sync editor themes w/ Windows system appearance.
  • Earth Preview:
    • Make modal window decorations follow the selected theme.
    • Added Tools menu action for showing the Welcome window.
    • Bundle Mono SDK for standalone project builds.
    • Enabled remote CrossBox servers on Linux when Toffee projects are present.
    • Improved GTK image scaling and HiDPI ICO handling.
    • Improved GTK primary-action button styling for light and dark themes.
    • Improved tree icon rendering on high-density displays.
    • Workaround for broken GTK popup handling.
  • EBuild:
    • Improved simulator boot handling with xcrun simctl fallback and continue boot status monitoring when Simulator.app is unavailable.
    • Support class-only WebHandler directives in .ashx files.
  • Elements RTL:
    • Added cross-platform culture and Unicode support with formatting, comparison, normalization, and character classification APIs.
    • Added native Regex parsing, matching, replacement, splitting, and comprehensive test coverage.
    • Added predicate-based List removal with matching-item test coverage.
    • Implement Cocoa field reflection, including field enumeration, names, and cached type metadata.
    • Return error-bearing HttpResponse objects for non-throwing synchronous requests instead of nullable results.
    • Skip Json parsing for synchronous HTTP error responses.
    • Toffee: Drain process stdout and stderr concurrently to prevent pipe deadlocks, preserving exit codes and complete output for string and byte APIs.
Fixes
  • Core:
    • Error 'Virtual generic methods not supported on Island' provides no location.
    • Fixed string/char conversion on macOS and NRE.
    • Fixed: assigned() for a nil Delphi-style event handler (code and data) returned True.
    • Parameter passed to wrong-named method partial if type mismatches.
    • CC: Restored compiler-directive completion with nil context.
    • Fixed Cooper enum code model with incomplete references.
    • Fixed Cooper unit metadata and record code-model loading.
    • Fixed Island array constructor member kind.
    • Fixed LLVM target initialization for arm64 targets when buildling on Linux.
    • HI Regression: Resolved absolute framework headers to logical import names for correct namespaces.
  • Fire & Water:
    • CodeBot: Fixed queueing for interactive CodeBot prompts.
    • CodeBot: Fixed UI thread delay/hang caused by transcript cache persistence.
    • Fixed shared project child matching during tree layout updates.
  • Earth Preview:
    • Fixed GTK startup in WSLg Flatpak environments without DRM.
    • Prevent delayed menu popovers from overlapping.
  • EBuild:
    • Fixed project reference target metadata handling.
  • Island RTL:
    • Fixed String comparisons by using Compare.
RemObjects Elements v13.0.0.3101Jul 24, 2026
Features
  • Core
    • Oxygene: Units of Measure.
    • IE: on Island Windows.
    • Added a Unix-friendly CoreCLR debughost.
    • Header Importer: Handles framework binaries with missing .tbd (e.g. UIUtilities).
    • You can now import Swift async ABI metadata.
    • Setup will now offer to install .NET Core and link the appropriate Water/Core instance in the start menu.
    • Added support for derived unit operator lookup.
    • Swift ABI: wip.
    • Toffee: Honor ToString/description for boxed structs.
    • Merged EBuild.
    • Merged EUnit.
    • Merged Everwood5.
    • Merged IslandDelphi.
    • Merged libToffee.
    • Merged RTL2.
  • Fire & Water
    • CodeBot Avatar: Added persistent avatar snooze options for one hour, three hours, or the rest of the day.
    • CodeBot Avatar: You can now allow media thumbnail drag-and-drop.
    • CodeBot: Added Aurelo AI provider account and model strategy support.
    • CodeBot: Added CodeBot Server AI account support.
    • CodeBot: Added NVIDIA NIM account support with API key authentication.
    • CodeBot: Added Perplexity account support and model strategies.
    • CodeBot: Enabled scheduling in Fire, not just Campfire.
    • CodeBot: Finalized canceled tool progress messages.
    • CodeBot: Improved account login dialogs and service branding.
    • CodeBot: Improved CodeBot preferences layout.
    • CodeBot: Added Style AI account suffixes in provider menus.
    • CodeBot: Updated OpenAI model strategies for GPT-5.6.
    • Enabled copy-local references for Island projects.
    • Fire: You can now ignore metadata-only filesystem change notifications.
    • Fire: You can now preserve solution format when AppKit provides extensionless URLs.
    • Fire: Refreshed and exposed source-control status.
    • Fire: You can now stop debugging when dismissing the exception sheet with Command-.
    • Improved Android tooling validation and run gating for modern JDKs/SDKs.
    • Made improvements to auto-update logic in Fire, Water, GitBrowser.
    • Increased solution build message limit.
    • Trimmed build status labels before displaying them.
  • EBuild
    • Added configurable .NET Core executable path override for debug settings.
    • Cooper: Added support for modern JDK/Android SDK layouts and enabled Android Run in Fire.
    • Derived Mono base path from the detected Mono executable location.
    • Expanded Linux Mono path detection to support additional library locations.
    • Improved Apple device identification with type detection and product model mapping.
    • Improved EBuild path discovery across Echoes and platform-specific installations.
    • Marked project, target, and context references as weak to avoid retain cycles and improved object lifetime management.
  • Elements RTL
    • Added controllable HTTP response streaming with callback cancellation and transport cleanup.
    • Added cross-platform keychain password helper (moved from EBuild).
    • Added Milliseconds-based overloads for thread sleep and DateTime arithmetic.
    • Added unit-based TimeSpan.From overloads and deprecated legacy conversion methods.
    • Added unit-typed time APIs, improved timeout handling, and extended duration and Unix-time support with tests.
    • Adopted strongly typed time units across HTTP requests, time spans, stopwatches, and thread joins, while deprecating integer-based timeout overloads.
    • Defined standard Units of Measure.
    • Echoes: Drained process output asynchronously to prevent pipe deadlocks, with regression coverage for large concurrent stdout and stderr streams.
    • You can now preserve XML formatting options and line endings on parsed documents without retaining the parser instance.
    • You can now return the process exit code after capturing standard error output.
Fixes
  • Core
    • Confusing error when assigning void.
    • Island: Case on type var doesn't work with mapped version (fine on Echoes).
    • Line after missing semicolon gets ignored.
    • Elements13 define was missing.
    • Fixed CoreCLR native debugging on Unix by disabling named memory maps while retaining Windows cache reuse.
    • Header Importer: Fix for multi-character enum constant byte order.
    • Island: Corrected export visibility handling for value types, globals, and member owners in .fx.
  • Fire & Water
    • Account manager: Fixed base URL field visibility when login sheet loads (Windows).
    • CodeBot: Fixed scheduled prompt countdown cancellation.
    • Fire: Synchronized file buffer access and URL updates with locking to avoid rare crash on load.
    • Water: NRE fix.
    • Water: Title fix for License manager window.
  • EBuild
    • Cooper: Fixed bundletool aapt2 extraction on modern JDKs.
    • Fix for SDK zipm extraction failure on some Linux systems.
    • Fixed malformed Mono base folder error message.
  • Elements RTL
    • Display fix in Convert.MillisecondsToTimeString.
    • Echoes: HTTP requests follow HttpRequest.Timeout, not HttpClient's default.
    • Fixed process output capture and returned the task exit code.
    • Http: PathAndQueryString part was ignored in Windows/Island.
  • Island RTL
    • Fixed Swift runtime loading paths and lazily resolved string type metadata.
  • IslandDelphi Support
    • Temporarily disabled two helpers due to bad E793 Untyped parameters require Delphi Compatibility Mode.
RemObjects Elements v13.0.0.3095Jun 26, 2026
Features
  • Core
    • Debugger: Added local Linux gdbserver debugging support.
    • Debugger: You can now use libdl.so.2 for Linux symbol loading and ignore missing gdbserver working directories.
    • Debugger: You can now validate debugger and runtime executables before launch, with clearer startup failures.
    • Improved debugger handling for native and MI backends, refining process state updates and error reporting.
    • Improved debugger selection and diagnostics by routing Mono/non-Windows .NET Core runs through MI when appropriate.
    • Improved debugger startup diagnostics and Mono/.NET Core host selection.
    • Native Debugger: You can now separate cached memory-mapped files from view accessors & reuse file maps across views.
    • Templates: Removed bad/unnecessary default architecture settings from Linux templates.
    • Merged EBuild.
    • Merged Everwood5.
    • Merged RTL2.
  • Fire & Water
    • CodeBot Avatar: You can now double-click to bring pending requests forward or hide the avatar.
    • CodeBot: Added a file copy function with project integration.
    • CodeBot: Added work plan support, footer status, and planning-profile support.
    • CodeBot: Handles pending media generation continuations only for structured action responses.
    • CodeBot: You can now keep prompt availability independent of send lock while blocking Enter shortcuts during locked sends.
    • CodeBot: Made generated image annotations clickable.
    • CodeBot: You can now track user-visible output for scheduled runs.
    • CodeBot: Updated codebot subagent manifest for code research profile.
    • CodeBot: You can now use QuickLook previews for local CodeBot images in Fire/Mac.
    • Fire: You can now assign a keyboard shortcut to Copy all Error Messages.
    • Fire: You can now clean up unused file change notification entries when watched files or folders are removed.
    • You can now share Cocoa file change event streams by repository root, dispatch events to registered managers, and clean up streams when watchers are removed.
    • Improved CodeBot avatar bubble handling and pulse logging.
    • Improved CodeBot continuation handling.
    • Improved CodeBot response formatting guidance.
    • Improved image generation workflow metadata handling.
    • You can now pass image generation requests through the requested save handling.
    • Water: Added the possibility to delete recent projects from the main menu and welcome window (Favorites).
    • Water: You can now guard FCETableView interactions against out-of-range row indices.
    • Water: Added XAML preview toggle UI and commands.
  • EBuild
    • Added local Linux CrossBox server support and register it in the server factory.
    • Added NuGet fallback for locating app host templates and support native runtime paths.
    • Handles in-Terminal process execution differently on Windows and other Echoes platforms.
    • Improved .NET Core base path detection, especially on Linux, and validate app host prerequisites.
    • Improved Mono path detection on Linux by falling back to /usr/local/bin and deriving the base directory from the executable when available.
    • You can now invalidate Xcode cache when the developer folder changes and scope persisted cache to the active Xcode path.
    • Added support for conditional define filtering when expanding paths.
    • Added support for ElementsCompilerDll setting when resolving compiler path.
  • Elements RTL
    • Added nullable TryGetString decoding APIs while making GetString return non-null strings and consistently raise FormatException when decoding fails.
    • Cocoa: Handles process launch failures on Toffee with proper error propagation, cleanup, and finished callbacks; also default stdin to null device to avoid blocking.
    • You can now validate trimmed JSON object delimiters before parsing strings in JsonObject.TryFromString.
  • Island RTL
    • Updated Swift runtime bindings for absolute dylib paths and safer array/string interop.
Fixes
  • Core
    • Internal error: System.InvalidCastException while compiling (wip).
    • Wrong H11 warning "local variable unread", when it is returned.
    • Debugger: WebAssembly: Error when reading wasm file (unknown instruction fc).
    • Debugger: WebAssembly: Exception on Pause and Set Breakpoint during idle state.
  • Fire & Water
    • CodeBot: Pasting a screenshot would sometimes send the message (Fire).
    • Water: Diagnostics sometimes gets error.
  • Island RTL
    • Fixed foreign exception record cleanup.
RemObjects Elements v13.0.0.3093Jun 20, 2026
Features
  • Core
    • Debugger: Added support for delegate variables (Cooper).
    • Merged EBuild.
    • Merged InternetPack.
    • Merged RTL2.
  • Fire & Water
    • Water: Added the possibility to delete recent and favorite projects from main menu and welcome window.
    • Added assembly reference diagnostics option for Echoes (fixes).
    • Added a new menu command to only copy all build error messages.
    • CodeBot: Added prompt send-lock controls.
    • Added CodeBot Avatar: A standalone macOS companion character for Fire, Campfire, CodeBot CLI and GitBrowser, with animated UI, status bubbles, approval prompts and more.
    • CodeBot: Added Beads backlog tool support.
    • CodeBot: Added Kling account and image/video generation support.
    • CodeBot: Added support for prompt queuing.
    • CodeBot: Added new and improved prompt action controls (send, queue, steer, cancel) in Fire.
    • CodeBot: Model Strategies: Use "gpt-5.4-mini" as simple-task model in default OpenAI strategy.
    • CodeBot: Added support for prompt steering.
    • CodeBot: Model Strategies: Updated Claude latest strategy to use Sonnet 4.6 by default and routed review/deep reasoning to Opus 4.8.
    • Editor: Added build message action menus and richer fix-it labels (tweaks).
    • GitBrowser: Added CodeBot Avatar support (only if running).
    • GitBrowser: Added Git operation timeout support.
    • GitBrowser: Added repository tree worktree nodes.
    • GitBrowser: Added worktree selection and cleanup actions.
    • GitBrowser: You can now detect worktree inventory changes and refresh worktree icons for popup updates.
    • GitBrowser: Expanded worktree context actions and cross-worktree analysis.
    • GitBrowser: GitNavigationPanelViewController should be the ITreeControllerDelegate.
    • GitBrowser: Guarded against null repository during branch popup loading and author highlighting.
    • GitBrowser: Improved worktree tree selection and labels.
    • GitBrowser: Made remote branch popup selection more robust.
    • GitBrowser: You can now preserve the actual folder when dispatching Git operations asynchronously.
    • GitBrowser: You can now refresh status by directly updating the repository instead of triggering the status changed handler.
    • GitBrowser: Added support for repository folder dragging from tree.
    • GitBrowser: Routed worktree comparison action through a reusable comparison handler.
    • GitBrowser: Now uses the actual worktree path for context menu actions, script discovery, solution scanning, and shell execution to correctly target active worktree folders instead of the repository root.
    • GitBrowser: Windows: Dropped unneccessary settings.
    • GitBrowser: Windows: Enabled and refreshed repository menu actions based on repository.
    • GitBrowser: Windows: Improved menu labels for repository groups and IDE-specific solution opening.
    • GitBrowser: Windows: Added prefix commit tags with pin markers.
    • GitBrowser: Windows: You can now use navigation panel controller.
    • Internal: Renamed question event enum cases in status mapping.
    • NRE proofing.
    • CodeBot models are now refreshed when account settings change.
    • Now returns social post create results with completed status and published ID side effect.
    • Reverted "Water: workaround for Account loading on .NET Core".
    • Provider model choices are now sorted case-insensitively for consistent UI ordering.
    • Updated video generation model mapping to grok-imagine-video-1.5.
    • Water: Made image tweaks for codebot tab and in-editor actions.
  • EBuild
    • Added remote/local LLD path support for Toffee builds.
  • Elements RTL
    • Added Cancel support to HTTP requests.
    • Added Echoes.Core target and renamed classic Echoes.Full configuration.
    • Added HTTP upload/download progress callbacks (Cocoa).
    • Added proxy support (none, system, custom).
    • Consolidated platform-specific RTL projects into a unified cross-platform build and add a separate legacy solution preserving the previous split project layout.
    • DateTime.ToUnixDate.
    • Echoes: Use UTF-8 encoding for redirected process stdout and stderr.
    • Exposed Pid on Process (Echoes and Cocoa).
    • Exposed Pid on Process (Island).
    • Added Forgot= Island WebAssembly target configuration.
    • Hardened HTTP response streaming and Cocoa callback error handling.
    • Improved Convert.MillisecondsToTimeString to handle says too.
    • JSON: Allow nil filename for .TryFromFile.
    • Made process output handling nullable-safe and guard event signaling.
    • You can now parse JSON integers directly to Int64 with overflow fallback to floats, and replace locale-based Toffee Int64 parsing with strict digit validation to avoid misclassifying numeric tokens.
    • Process: Guarded process output parsing against nil UTF-8 string conversion results.
    • Process: Improved quoting and unquoting of command line parameters for all platforms.
    • Process: You can now prevent async process completion from hanging by signaling output handlers reliably and closing stalled output pipes after a timeout before invoking the finished callback.
    • You can now read stdout and stderr asynchronously during process execution to prevent blocking and ensure both streams are fully captured before converting and closing the handles.
    • You can now reuse JSON string escaping for property names by adding a shared render helper and applying it during serialization, ensuring names are quoted and escaped consistently with string values.
    • Serialization: You can now allow registering decoder types explicitly and fall back to the registry when the lookup misses.
    • Simplified configuration-specific build settings for Debug and Release.
    • Added tests for CollapseSpace.
  • Internet Pack
    • Removed AllowPartiallyTrustedCallers assembly attribute from non-Compact Framework builds.
  • RemObjects Infrastructure
    • Added fallback single-model strategy selection when configured strategy is missing.
    • Added Kling AI client for image and video generation with task polling, model support, and JWT bearer auth via access/secret keys, plus configuration support for new credentials.
    • Added runtime tests ensuring tool-result success checks allow non-tool method mentions and suggested action examples without blocking completed assistant responses.
    • Added steering-message support (wip).
    • Added tests for child side-effect success and stale lease recovery.
    • Adopted Codable-based agent event and approval JSON serialization.
    • Clamped model output tokens and stop exposing server ISE details.
    • Clarified run recovery behavior after interruptions and model requests.
    • ComfyUI: Adjusted fallback queue progress to report queued state.
    • Delayed remote tool dispatch until run is waiting.
    • Exposed usage tracking helper as public.
    • Honored background routing for child runs and skip conversation history on isolated background threads.
    • You can now log agent prompt size breakdowns.
    • Normalized provider-prefixed media model names for resolved clients by stripping matching provider prefixes before creating model references and assigning the client model.
    • Prefer structured progress callbacks over byte progress when available (also mitigating possible AV).
    • You can now record notice events for unverified tool-backed success claims instead of failing runs.
    • Refactored runtime initialization to lazily ensure and reuse the agent runtime during settings updates, reset runtime/worker when starting a new chat, and guard model strategy access when no runtime is active.
    • Removed unused session-memory overview summaries.
    • Removed useless custom JSON conversion helpers.
    • Restored missing Memory classes.
    • You can now revert bad rename for question event types to asked/response across AI session handling.
    • Subagent titles have much better descriptions of what child tasks do and why.
    • Added support for media model aliases when resolving AI clients by falling back from suffixed model names to their base model before lookup.
    • You can now track tool side-effect metadata in function results and events, and use completed side effects to verify tool-backed success claims with more precise final-response detection.
    • You can now track usage request lifecycle events.
    • You can now use typed side-effect status enums with wire-format conversion and validation, replacing raw string handling in serialization and runtime checks.
Fixes
  • Core
    • C#/Echoes: Initializer-less local in a goto-target block is re-defaulted, clobbering a value assigned before the goto.
    • RTL2 Char extensions don't work on .NET.
    • Toffee/Oxygene: block destroy helper omits captured block/object slot when nested callback block captures method context plus byref callback holder.
    • Debugger: DebugHost parsing error on function bp with ":" in name.
  • Fire & Water
    • Breakpoints Manager: Could not delete first breakpoint in list.
    • Breakpoints Manager: Auto-layout fix for Fire.
    • CodeBot: solution-file:// links for unknown files should not bubble outside of the app.
    • Fire: Fix for Navigation Pane sometimes going wild after a debug session.
    • GitBrowser: Build fix.
    • GitBrowser: Fixed macOS bundle identifier capitalization.
    • Type in Accountmanager created wrong account type for Perplexity.
    • Unternal: Default uses clause fix.
    • Water: Workaround for Account loading on .NET Core.
  • Elements RTL
    • Account decoding issue.
    • Build fixes for Island & ToffeV2.
    • Don't recycle JSON value nodes when making a unique copy.
    • Echoes: HTTP: Unwrap to show original, and do not crash on an unexpected exception type.
    • Locking fix.
    • Potential Cocoa thread safety issue for Convert with Current/Invariant formatter.
    • Potential thread safety issue for Locale.Current/Invariant.
    • Request cancellation: Locking not required (according to docs); solves compile error locking on Darwin.
    • String.Split(array of char) [has been disabled because it fails to link].
  • RemObjects Infrastructure
    • Bad model type filters for Gemini client.
    • NRE and cast fix.
RemObjects Elements v13.0.0.3081Major versionMay 8, 2026
Features
  • Core
    • Coalesce and Potential null value is now implicitly cast to not nullable String.
    • Merged EBuild.
    • Merged Everwood5.
    • Merged InternetPack.
    • Merged IslandDelphi.
    • Merged RTL2.
  • Fire & Water
    • CodeBit: Diffs in cached approvals are now shown.
    • CodeBot: Added access to search results.
    • CodeBot: Added Action Items.
    • CodeBot: Added MCP function provider support (wip).
    • CodeBot: Added Agent-only skills.
    • CodeBot: Better "not a diff" annotation for new files.
    • CodeBot: Easier global approval for "always save"/readonly shell and git commands.
    • CodeBot: You can now keep active approvals visible outside execution groups.
    • CodeBot: You can now let CodeBot see Codex and Claude skills in the solution folder (readonly).
    • CodeBot: Added new Security review profile & skill.
    • CodeBot: Preferences: You can now reload LM Studio models when URL is changed.
    • CodeBot: Prompt tightening.
    • CodeBot: Run smart-paste via custom agent profile & skill.
    • CodeBot: UI tweaks.
    • CodeBot: Uses proper shell for external commands, to ensure PATHs.
    • Editor: Added dimension keyword for Oxgene.
    • Fire: Added "Show CodeBot" to CodeBot window and revised menu names.
    • Files in the search tree are now expandable by default to "find all.".
    • Water: You can now catch exceptions in dispatch.
    • Water: Renamed button on Accounts Manager for clarity.
    • Water: Added support for headers and sorting indicators in table view.
    • WebProjects: Added a context menu to open current page in browser.
    • Website publishing improvements.
    • Xaml Preview (wip).
  • EBuild
    • ESP: Can now handle <%-- comment blocks.
    • ESP: Can now read web.config directly from the project folder and reuse an existing appSettings node when merging configuration, improving EnableWebConfig handling and avoiding duplicate sections.
    • Can now handle <script runat="server" blocks.
  • Elements RTL
    • Exposed Pid on Process.
    • Http: Added Cancel support to HTTP requests.
    • Http: Added proxy support (none, system, custom).
Fixes
  • Core
    • C#: bad reformat.
    • Mercury sample fails to build.
    • Oxygene: Can't use field after const.
    • Go to Definition NRE fix.
    • Regression: Invalid IR building IslandDelphi.
  • Fire & Water
    • Close old files on reload to avoid dupes in the Search tree.
    • CodeBot: Adding the AL first account would not always activate it.
    • CodeBot: Cursor keys and backspace didn't work in the Question text field.
    • Fire: Auto-layout fix for BuildMessage view.
    • Fire: Bad autolayout on the project references view caused it to shrink.
    • Jumpbar: Nested class is shown twice in the Jumpbar.
    • Solution Tree: Sort on filename w/o extension, first (regression, lose case-insensitivity).
    • Water: Cannot uncheck "invalid" picker value in settings (fine in Fire).
    • Water: Manage accounts option was missing from CodeBot Preferences.
    • Water: Target Framework dropdown list is cut and isn't scrollable.
  • EBuild
    • ESP: Fix for ContentPlaceholders rendering too much.
  • Elements RTL
    • Locking fix.
  • IslandDelphi Support
    • Typo fix.
RemObjects Elements v12.0.0.3071Apr 4, 2026
Features
  • Core
    • Debugger/.NET: Added support for boolean operators.
    • Android: B0undle tool updated to 18.3.
    • Android: Added new Wear OS project templates.
    • Delphi Compatibility: Added support for {$IF Declared(X)} in legacy preprocessor.
  • Fire & Water
    • CodeBot: Added a new replaceSymbol function.
Fixes
  • Core
    • Android Templates: Visual Studio asks to choose Target Framework, which is not applicable.
    • Android: Fixed Android Sample Projects for build and deployment issues.
    • Cocoa: InstanceType-inferred variable cannot be reassigned.
    • Debugger/Echoes: BreakpointID isn't set correctly in x86 mode.
    • NRE when trying to Go to Definition inside a directive.
    • Raw strings: line 'numbersfor' errors sometimes were off.
    • Refactor: doesn't find all vars.
    • File-scoped must symbols use different mangling on Java ($ not <>).
    • Reloading references fails after they were rebuilt.
    • N13 “Method CreateFromFile exists, is there a semicolon missing?” error with linebreaks in method call.
    • E26513: Wrong error code (E271 custom error) for missing type in method declaration.
    • Android: Fixed "obsolete" warning in the Android’s Tabs app template.
    • Android: Set Android min SDK in the project settings.
    • CC regression: Insert text include "in " when namespace is inserted.
    • HI: don't emit default namespace for each type, for codegen option.
    • Island/Delphi: duplicate symbol: __unnamed_1 at building island/Delphi app -- Use InternalLinkage for the delphi type name in GenerateTypeInfoFor.
    • CC: DisplayText had changed to include the namespace, leading to duplicate info.
    • CM: NRE in GetShortName for method having array result.
    • NRE in Go to Definition.
    • Change nested type name separator to "+" (to match ToString).
    • Confusing error locations for prematurely terminated raw string.
    • Debugger/Island: Get Locals fix.
    • Debugger: CLR: Error when trying to call a non-static member on TypeValue self.
    • Debugger: CLR: fixes for indexer evaluations.
    • Debugger: Island/Darwin Release build doesn't break on exceptions.
    • Debugger: Log exceptions raised when reading debug files.
    • Debugger: NRE when evaluate anonymous method (not supported for now though).
    • Delphi Compatibility: $ZEROBASEDSTRINGS directive is now ignored for OFF, and errors for ON.
    • Delphi Compatibility: const Empty: TEmpty = () recognised as empty named-field record init.
    • Delphi Compatibility: const Lambda: Func<Integer> = () -> 99.
    • Delphi Compatibility: deprecated directive’s message was ignored.
    • Delphi Compatibility: Allow 'label' section after 'var' section (while still allowing 'label' as a variable name).
    • Delphi Compatibility: Fix for include search path being tied to legacy preprocessor; allow relative include search path.
    • Delphi Compatibility: Handle goto label inside case statement.
    • Delphi Compatibility: Ignore additional preprocessor directives: INLINE, LEGACYIFEND, DEFINITIONINFO, J+/J-, O+/O-, T+/T-, X+/X-, A1-A16.
    • Delphi Compatibility: Warn if enum and label names shadow/duplicate).
    • Delphi import: cleaner exception type.
    • Installer: Reset files association to defaults after Elements deinstallation.
    • Internal: Adjustments to “E27569: C#: inconsistent initialization for out vars in Cocoa vs .NET”.
    • NRE fix (ExactBefore and ExactAfter could be nil).
    • Oxygene Delphi Compatibility: absolute keyword (Island, Echoes, Toffee; not implemented for JVM).
    • Oxygene Delphi Compatibility: label keyword recognised after var/const (was interpreted as var/const name).
    • Oxygene Delphi Compatibility: weak keyword/type disambiguation.
    • Oxygene Delphi Compatibility: adjust DCM-gated keywords: Oxygene allows initialization/finalization, cdecl/stdcall (supported for external methods), overload (doc-ed as ignored). 'packed' is DCM, use [Packed].
    • Oxygene Delphi Compatibility: Allow accessing @TType.InstanceMethod (static type, not an instance) as a method pointer.
    • Oxygene Delphi Compatibility: Allow cast from method pointer to pointer and back (requires DCM; unsafe in Echoes).
    • Oxygene Delphi Compatibility: Function name can mean function address in DCM mode (missing @).
    • Oxygene Delphi Compatibility: Legacy Preprocessor: avoid mutating types.
    • Oxygene Delphi Compatibility: Legacy Preprocessor: can resolve sizeof() for compiler inbuilt (e.g., Integer, Pointer) and referenced types (e.g., TMethod).
    • Oxygene Delphi Compatibility: Legacy Preprocessor: Support SizeOf(pointer).
    • Oxygene Delphi Compatibility: Pointers to functions implicitly convert to untyped Pointer in DCM mode.
    • Oxygene Delphi Compatibility: Support $MESSAGE directive (and ignore the $WARNINGS and HINTS directives).
    • Oxygene Delphi Compatibility: support (field: @func) const init syntax in DCM.
    • Oxygene Delphi Compatibility: Support self-referential typed constants (@ConstName.Field in own initializer).
    • Oxygene Delphi Compatibility: Tweaks for generic and non-generic types of the same name.
    • Oxygene: packed is back as a normal keyword (used often).
    • Oxygene: bad reformat.
    • Oxygene: parser fixes for Delphi compatibility.
    • Templates: New Android Tabs-based App added.
    • VS: Internal error when evaluating "x.Where(b-> b = 'a')".
    • C#: inconsistent initialization for out vars in Cocoa vs .NET.
  • Fire & Water
    • Show hints in jumpbar drop-down list.
    • Water: CTRL+D window is sometimes too small (regression).
    • Water: show full file path via hint.
    • Water: when Water is in maximize state, an auto-hidden taskbar cannot be shown.
    • Auto-fix is applied several times for files in shared project.
    • CodeBot: Analysis for selection didn’t use proper line numbers.
    • CodeBot: Minor tweaks for issues identified by Codex.
    • CodeBot: re-format code inserted by CodeBot.
    • CodeBot: run some editor-AI in the background and not the main chat.
    • CodeBot: Some internal cleanup & better prompt for file analysys.
    • Context menu cleanup..
    • Context menu option to open “Intermediate Folder”.
    • Context menu “Copy Path" on References only copied the name.
    • Debugger console: thread frame.
    • Debugger console: option to collapse single-letter commands (efg tfl for thread frame list).
    • Debugger: handle/highlight which thread is “current” dynamically, based on the current stack frame.
    • Editor: packed should be a regular keyword, not DCM.
    • Editor: Allow CC popup to grow further to the left, when invoking CC near the right edge.
    • Editor: CC error messages parsed badly when the filename/path contained parentheses.
    • Editor: CC: types from unused namespaces showed the namespace twice.
    • Editor: Color fix for Strings in white theme.
    • Editor: Detect DelphiCompatibility for highlighting if file has no active target but the setting is set project-wide.
    • Editor: highlight current type too, if available.
    • Editor: NRE proofing for the current block detection code.
    • Editor: Regression: cannot copy message popup with Cmd-C.
    • Editor: Shortcuts/menus to copy current type/block/member.
    • Exception logging proofing.
    • Extended Option-Cmd-Up/Down message navigation to build log.
    • Fire: CC popup is one pixel too small, causing scrolling/jitter.
    • Fire: Menu cleanup.
    • Fire: Restructured the Debug menu to match previous changes to Water.
    • Fire: Show message navigation commands in the menu (Water already did). Also added proper validation to them.
    • Generate Code from .RODL could hang in some cases.
    • Hide "empty" folders in the project tree, if all their files are in other virtual folders (regression: don't hide empty folders that didn't have virtual files.
    • If a project/target has more than one output, show the “Reveal Output _Folder" menu, instead of disabling it.
    • Island/Delphi: allow specifying just "Delphi" w/o number to target the latest available version.
    • Logging for Certificate filtering (for Jeremy ;).
    • Made the per-target target “Manage References" sheet easier to get to in multi-target projects, if the current node is associated with one of the targets.
    • NRE fix in desiredDefaultArchitectureForConfiguration.
    • Project Settings: Crash regression for Toffee/iOS.
    • Project Settings: Don't show unsupported architectures in picker for Island/Delphi (i.e. Windows/arm64 for Delphi 12 and below).
    • Project Settings: Don't use unsupported local device architecture as the default/desired architecture for Island/Delphi.
    • Project Settings: Settings tweaks/cleanjup for Delphi Compatibility.
    • Project Settings: Sort architectures properly and consistently (best first).
    • Regression: Island/Android defaulted to wrong (local computer) architecture.
    • RO/DA: Connect button should enable as soon as a valid URL is typed.
    • RO/DA: Don't generate _Invk for .remoteRODL files, even if the project uses Server.dll.
    • RO/DA: Don't generate ServerAccess file when using local RODL file.
    • RO/DA: Fix the Connect button and Browse dialog in Connect To Remoting SDK Server.
    • RO/DA: Newly generated _Intf files were (sometimes?) creating an implicit Target.
    • Show nested types in the types tree.
    • The type member dropdown was not always sorted consistently.
    • Water: allow filter/search in Exceptions Manager.
    • Water: avoid Internal exception when the webview for Codebot was accessed before being fully initialized.
    • Water: can't open .elements/.sln if it was specified w/o full path in the command line.
    • Water: CodeCompletion message "no match" has the wrong size.
    • Water: CTRL+D window is sometimes too small.
    • Water: don’t capture image for exception sheet, as that hangs (sometimes?).
    • Water: Dropdown list for project creation style fixed.
    • Water: Fixed a duplicate separator in the Target context menu.
    • Water: hide "Open in Service Builder" button for .remoteRODL files.
    • Water: Improved color for tree view disclosure triangles.
    • Water: NRE closing/switching to another project while the current project is debugging.
    • Water: Problems with syntax highlight in XML files.
    • Water: show full file path in treeview hint.
    • Water: some missing icons in the jumpbar.
  • EBuild
    • Android: bundletool updated to 18.3.
    • Delphi Project Import: avoid empty architecture in settings.
    • Delphi Project Import: reference Vcl or Fmx automatically if needed.
    • Delphi Project Import: Set better default uses prefixes for Windows.
    • Delphi Project Import: Set generic "Delphi" SDK version to always use latest.
    • Delphi Project Import: Support for Windows/arm64.
    • Delphi Project Import: Tweaks; enable Island/Delphi mode only for supported platforms.
    • Expose OutputFolder to FinalOutput.xml.
    • Ignore "empty" architectures resulting from a leading or trailing semicolon in the setting.
    • Island/Delphi: Allow specifying just "Delphi" w/o number to target the latest available version.
    • Island/Delphi: More clear errors when trying to build for a platform not supported for Delphi.
    • Island/Delphi: Support for importing Windows/arm64.
    • Island/Delphi: support for importing Windows/arm64 if present (wip, disabled).
    • Island: fixes for renamed debug symbol cache files in macOS 26.4.
    • Provide IntermediateFolder in FinalOutput.xml.
    • Set UseLegacyPreprocessor to true when importing Delphi & Lazarus projects.
    • Sort supported architectures properly and consistently (worst to best/newest).
  • Island Delphi Support
    • DelphiExtended80: Added ToString method and updated Exponent, Fraction, and Sign properties for improved clarity.
    • Implicit casts from integers, floats and TDateTime to Extended.
    • Keywords: change 'packed' (Delphi compatibility keyword) to '[Packed]' attribute.
    • Made all Extended casts implicit.
    • Operators for concatenating char+string.
    • Support for Windows/arm64.
  • Elements RTL
    • Add a constructor withCapacity to the Queue class.
    • Use CallingConvention attribute instead of stdcall directive.
  • Island RTL
    • Don't optimize Island RTL for Windows, until we fix the index out of range issue.
    • IslandRTL: change 'packed' keyword to '[Packed]' attribute (packed is DCM-only).
RemObjects Elements v12.0.0.3059Feb 20, 2026
Features
  • Core
    • Oxygene: Now allows finding .inc files anywhere in the project, if used w/o path (all .inc files need to be added first).
  • Fire & Water
    • CodeBot: Access to error messages in current file.
    • CodeBot: Access to error messages in the current file.
    • Context menu to remove bookmarks.
    • Editor: Added 'field' keyword for Oxygene.
    • Editor: Added another highlighting regression/tweak for raw strings.
    • Editor: Cleaned \u2028 and \u2029 on paste.
    • Expose "Convert Solution to x-style linebreaks" menus like Fire has.
    • Fire: Added consistent icons for Fire, File, and Edit menus on Tahoe.
    • Water: Now shows horizontal scrollbar in tree.
  • EBuild
    • Defaulted to arm64 for all macOS-based platforms, when no actual local arch is known (i.e. on Windows).
    • Merged ROCodeGen.
    • Added support for .NET Core 11.0 (Preview).
  • Island RTL
    • Defined C RTL methods via SymbolName for Linux/WASM targets to be able to link Island-emitted mod/fmod and others.
    • Better ifdef/error for structUnwind_Exception.
    • Better ifdef/error for __struct__Unwind_Exception.
Fixes
  • Core
    • VS: NRE after typing comma in multidim array (array [0..1,]).
    • Wasm: NRE in linker with legacy Delphi RTL library.
    • 'field' as an alternate keyword to 'var' for class fields.
    • 'file' scope on members (C#).
    • Bad autofix for missing end.
    • C#11: 'file' level type visibility.
    • Could not use variable from with matching in LINQ.
    • Cocoa: ARC issue causes AV when inherited ctor call throws an exception.
    • Code completion does not show variable 'i'.
    • Confusing behavior with invalid type declarations inside IF EXISTS.
    • Field-backed properties (C#14, Oxygene).
    • file-scoped members caused Toffee unrecognised selector (removed mangling on members).
    • Fix conditional directive evaluation for type aliases using exists().
    • Go: Regression: Cannot have label and var with the same name.
    • IE with interpolated string.
    • Island: Debugger shows confusing info for nil DateTime (or struct in general).
    • Local Fields (Oxygene).
    • Oxygene: Cannot use colon operator in raw string interpolation.
    • Refactor: Converting from unified to classic implementation lost array dimension.
    • Refactoring: Move body out of class definition works incorrectly with string parameters.
    • Regression fix for changed error message numbers.
    • Store source files checksum into .pdb.
    • Visual Studio: AI suggestions can’t be accepted.
    • VS: All file content in Go/Java/Mercury/C# files collapses to CSharpNamespace.
    • VS: Text paste inserts mixed indentation (6 spaces instead of tabs).
    • Android: ListView templates fix.
    • Fix for Go/Echoes shipping with wrong Echoes dependency.
    • Header Importer: skip wildcard subfolders not found in any include path.
    • Merged CodeGen4.
    • Merged EBuild.
    • Merged EUnit.
    • Merged GoBaseLibrary.
    • Merged IslandRTL.
    • Merged ROCodeGen.
    • Merged RTL2.
    • Reverted E27154 due to regression on C# formatting.
  • Fire & Water
    • Water: Bad default architecture arm64 for watchOS, Water only.
    • Water: Don't "bold" words inside XML comment.
    • Auto-case-fix for E468.
    • Fire: Auto-layout bug caused a maximum size for the Reference view.
    • Menu actions to uppercase/lowercase selection or token.
    • Menu: general menu cleanup and consolidation into 'Edit|Modify' submenu.
    • Regression: Internal NRE opening project with an unknown CrossBox server set.
    • Support automatic fix-it for E468 (case mismatch).
    • Water: Fixed bad default architecture arm64 for watchOS (Fire is fine).
    • Water: Regression: Disabled projects were no longer grayed out.
  • EBuild
    • Bad fallback if DesiredDefaultArchitecture is not available caused Water to show $(DesiredDefaultArchitecture) as default setting.
  • Elements RTL
    • Path fixes in project refs for tests.
    • Test fixes.
    • Regression: Duplicated variable" errors when same type is declared in multiple IFDEfs.
  • Island RTL
    • Fixed IFDEFs for IslandMath to only be used for Windows and macOS.
    • IslandMath linking issues (should not be used) on Linux.
    • Test fixes.
RemObjects Elements v12.0.0.3051Jan 23, 2026
Features
  • Core
    • Visual Studio: Added Java tag to Cooper project templates.
Fixes
  • Core
    • Afterhours: Fix for Oxidizer tests.
    • Bad error handling with extra (escaped) } in interpolated string.
    • CM: Highlighting works incorrectly.
    • Oxygene and C#: Hint for “unused multiline string variable” has incorrect in-editor highlighting range.
    • CodeModel: NRE fix in GetCurrentMember.
    • Debugger: CLR: Could not evaluate fields in nested methods (they have static attribute even if they are not static).
    • Debugger: CLR: Fix in ValuePath for CLRDebugValue.
  • Fire & Water
    • Possibility to go to breakpoints from Breakpoint Manager (fix for Fire).
    • Typo fix.
  • EBuild
    • Conditional defines fix.
RemObjects Elements v12.0.0.3049Jan 16, 2026
Features
  • Core
    • Oxygene & C#: interpolated strings: extra } is added when having double } -- escape } too, for C#.
    • Oxygene raw string issue with } inside interpolation.
    • Support known conditional defined symbols in CC for $IF/#if.
    • Elements: remove Win/i386/FPU option (i386 is always SSE2) for Islanf.
    • Jumpbar: display C# unnamed constructor as "this".
    • Version-based define fixes for Elements 12.
    • Merged EBuild.
  • Fire & Water
    • Support for Raw Strings similar to C#11 (fix for no non-whitespace before curly).
    • Editor: allow code snippets to have a section of text pre-selected to be typed over.
    • Editor: highlighting fixes for C# non-raw interpolated strings to match Oxygene.
    • Editor: highlighting fixes for Swift interpolated strings to match Oxygene.
    • Editor: highlighting fixes/tweaks for Oxygene interpolated and raw strings.
    • Editor: Use #"" in Oxygene snippets.
    • Water: Possibility to go to breakpoints from the Manage Breakpoints dialog.
    • Water: Multiselect row support in sheets with table views.
  • EBuild
    • EBuild: remove i386-FPU (i386 is always SSE2).
RemObjects Elements v12.0.0.3047Jan 9, 2026
Features
  • Fire & Water
    • Editor: Added support for Oxygene Strings.
    • Editor: Now allows code snippets to have section of text pre-selected to be typed over.
  • Island RTL
    • Updated conditional compilation for platform support in math implementation.
Fixes
  • Core
    • C#: 2 bad reformats (trailing closure w/o (), private set).
    • Delphi Compatibility: noreturn keyword, behaves same as existing NoReturn aspect.
    • Oxygene: Final tweaks for Raw Strings.
    • Water/Debugger: It was impossible to the check length of byte[] - A class is not loaded.
    • Debugger: CLR: Would show an empty string if ToString returns nil.
  • Fire & Water
    • Water: Rename file doesn't show old file name.
    • Editor: Highlighting for Delphi compatibility Mode noreturn keyword.
    • Fire: Active tab had wrong color in Dark themes.