Download Elements. A new build of Elements comes out every week. | RemObjects Software

Weekly Progress

Elements Channels

A new Elements build comes out every week. Pick the channel that matches how close to the edge you want to work.

Major Features:

  • Enable ChatGPT account logging (no API key) for CodeBot (Fire & Water)
  • Experimental Fuchsia OS platform support
  • Fire now internally uses .NET Core instead of Mono
  • Markdown (.md) file previews
  • New Code Canvas feature for Debugging, Refactor/Rename and Manually
  • New Island SDKs for Android, Windows, Linux
  • Support for IL Disassembly view when debugging .NET
  • Support for IR intermediate language view when debugging Island and Cocoa

Core

  • T67538: CC: LINQ range-variable completion
  • T80413: Complete qualified attribute namespaces
  • E27776: Debugger Int64 precision in Water
  • E27772: Delphi-Compatibility: Allow Delphi property modifiers
  • E27775: Delphi-Compatibility: Allow parsing message Expression
  • E27761: Parameter passed to wrong named method partial if type msmatches (additional fix)
  • T78420: Preserve inferred local types
  • T74602: Suppress stray Swift init completion
  • Add comprehensive Elements Island SDK import workflow and skill documentation covering platform-specific generation, validation, packaging, GC separation, and CI2 publication
  • Add managed disassembly and instruction stepping support
  • Avoid recursive conditional scope equality
  • Expand EUnit coverage for Oxidizer language conversions, units parsing, header importing, tokenizer behavior, class completion, and refactoring; register new test suites and simplify NUnit execution.
  • Fix C# IDE indentation calculation for class definitions inside namespaces
  • Fix call generation for expanded generic types
  • Fix code block position handling and attribute bounds checks
  • Fix COM interface vtable ordering for patched interfaces and add regression coverage
  • Fix fully qualified Cirrus attribute resolution
  • Fix function typedef pointer resolution and dereferenced expression type inference
  • Fix Island instancetype handling outside Darwin
  • Fix Stack Overflow in C# conditional directives in object initializers and add regression coverage
  • Fully qualify generic collection type references to avoid namespace resolution issues
  • Generalize Island GC reference copying to include all platform folders
  • Guard generic parameter resolution against out-of-range indices and malformed arity during constraint validation
  • Handle cast l-values during Toffee ARC simplification
  • Improve header import
  • Improve measure operator resolution with expected operand types, handle dimensionless results correctly, and report type-mismatch errors when no compatible operator exists.
  • Keep Cirrus aspect types in one load context
  • Make the dimension keyword contextual
  • Preserve Island GC platform roots
  • Prevent debugger termination and disposal deadlocks by notifying outside locks
  • Resolve constant string interpolations as mapped String type
  • Restore Windows COM by-value ABI without changing Linux
  • Ship RTL2.Web
  • Support strong-name signing on .NET Core
  • Units: Better support for measuring scalar values in conditional expressions
  • Units: Support division of matching measure units as scalar values, with tests for day/hour, millisecond/second, and meter/kilometer ratios.
  • Merged DelphiRTL
  • Merged EBuild
  • Merged EUnit
  • Merged Everwood5
  • Merged GoBaseLibrary
  • Merged InternetPack
  • Merged IslandDelphi
  • Merged IslandRTL
  • Merged MercuryBaseLibrary
  • Merged RTL2
  • Merged RTL2.Web
  • Merged SwiftBaseLibrary

Fire & Water

  • E27774 Water: Tool access... combobox isn't shown as disabled
  • E27759 Water: Copy file path (CTRL+C) on references doesn't work
  • E27712 Water: Dark settings gear in the dark theme
  • E27773 Water: Search panel: show dropdown mark for each file
  • Add editable debugger code canvas
  • Add generated LLVM IR debugging support
  • Add managed assembly metadata inspection
  • Add rename refactor canvas preview
  • Always Use .NET Core DebugHost from Fire and Earth
  • Expose GeneratePDB Setting for Island/Windows
  • Fire now internally uses .NET Core instead of Mono
  • Fire: Disambiguate duplicate solution document names in tabs
  • Fire: Guard document callback invocation against null values
  • Fire: Improve CrossBox server registration dialog layout
  • Fire: Tweaked compiler setting for Core vs Mono
  • Git: Save file buffer before retrieving blame information
  • Improve managed assembly diagnostics and load the managed helper assembly
  • Improve relative date formatting for today and recent weekdays
  • Improved Git Blame view w/ CodeBot attribution
  • Initialize Git repository status per solution
  • Markdown file previews
  • Persistent canvases
  • Register CrossBox: Use default key file only when it exists
  • Support for IL Disassembly view on .NET
  • Support Fuchsia CrossBox devices and restrict server popup updates to Toffee
  • Treat near-bottom console scroll position as bottom to keep newly appended rows visible
  • Trim bundled legacy Mono payload to retain runtime and GAC support
  • Use Cecil-based metadata inspection for managed assembly diagnostics
  • Water & Earth: Preserve and allow removal of unexpected project setting values
  • Water: Use disabled text color for disabled controls

CodeBot

  • Add Alibaba Cloud and OpenAI ChatGPT accounts
  • Add built-in diff viewing for CodeBot annotations
  • Add Meta API account support
  • Add unified MCP tool approval settings
  • Avatar: Keep the avatar window visible across screens and reposition it before dragging
  • Default to showing the debug code canvas when a debug session breaks
  • Disable/depcrcate “Convert to X” context menus
  • Enable ChatGPT accounts (Fire, Water and GitBrowser)
  • Ensure MCP server is assigned only after successful startup
  • Improve CodeBot Avatar UI-thread access and suppress expected connection failure logs during internal connection checks.
  • Improve MCP server lifecycle handling and prevent stale settings from restarting outdated instances
  • Tune avatar animation pacing and reset timing across activity transitions

EBuild

  • Add fallback to Microsoft.NETCore.App for default version when resolving unavailable .NET Core runtime type
  • Add Fuchsia packaging pipeline
  • Add hosted ESP website builds and live serving with dependency-aware rebuilding
  • Add Linux support for Java SDK, Android SDK, and Android Studio discovery
  • Add local Linux Fuchsia CrossBox support
  • Clarify missing .NET Core version error and exit immediately when no default can be determined
  • Debugger: Use the local OS architecture for Mono/anycpu, do not assume Intel
  • Don’t allow x86_64 as a supported architectire on macOS 27 and later
  • Drop legacy Android/armabi architecture
  • Drop legacy Linux/armv6 architecture
  • Drop legacy visionOS/x86_64 architecture
  • Fix Android AAR resource generation
  • Improve Fuchsia component deployment lifecycle and repository server cleanup
  • Improve Fuchsia packaging and debugging (wip)
  • Improve SSH key discovery with existing-key fallback and Ed25519 support
  • New IgnoreUnsupportedArchitectures setting
  • New IgnoreUnsupportedArchitectures setting (for Island/Delphi, too)
  • Normalize Fuchsia Intel architecture as x86_64
  • Reject Island and ToffeeV2 watchOS targets
  • Wait for Android services before emulator deployment

Elements RTL

  • Add serialization support for unit measure types by encoding and decoding their scalar representations
  • HTTP Proxy: 'System' setting needs to resolve correctly through PAC, same as CodeBot
  • Improve Json error reporting and cross-platform tests
  • Improve portable date and time formatting
  • More Nullability annotations on Json, Stream, and more
  • Normalize day-format patterns for portable date formatting and add coverage for abbreviated and full weekday names.
  • Refactor variable replacement processing
  • Remove unsupported Island watchOS RTL targets
  • Remove unsupported ToffeeV2 watchOS RTL target
  • Resolve XML namespaces by URI
  • Update URL path compatibility expectations

Island RTL

  • Fix Fuchsia IslandRTL SDK compatibility
  • GC: more threads (eg timers) can cause 'collecting from unknown thread'
  • GC: resolve 'Collecting from unknown thread'
  • Improve POSIX and Android compatibility by using portable errno, signal, file-open, and timer constants, and relax OLE date round-trip precision tests.
  • Normalize Fuchsia Intel architecture as x86_64
  • Normalize POSIX platform type mappings and unwind handling across targets
  • Remove unsupported Island watchOS target
  • Update Android RTL for NDK r29

Internet Pack

  • Remove unsupported Island watchOS Internet Pack target

Island DelphiSupport

  • Set IgnoreUnsupportedArchitectures to build w/o x64 on maxcOS 27

Swift Base Library

  • Add Fuchsia library targets
  • Remove unsupported Island watchOS Swift targets

Go Base Library

  • Remove unsupported Island watchOS Gold target