Skip to content

Releases: stretched-out-software/buoy-releases

Buoy v0.38.0

Choose a tag to compare

@sos-action-bypass sos-action-bypass released this 26 Jul 16:01

v0.38.0

New Features

  • BuoyScript — embeddable Buoy JIT (LLVM ORCv2)
  • Value-returning Event/Handle/RaiseEvent + HTMLView.CancelLoad
  • Add Application.Executable As FileSystemItem
  • Add WindowType, Window.Close(), and Window.ShowModally
  • Autosave Project Build Settings webview
  • Add System.Log / LogLevels
  • Add System.EnvironmentVariable (get/set)
  • Add System.CPUCount
  • Bare Import falls back to a same-named installed package

Bug Fixes

  • Resolve each library in a multi-library package to its own file
  • Bump brace-expansion to 5.0.8 (alert #27)
  • Nest LogLevels inside Class System
  • Include Windows installer exes in published release assets
  • EmitTryUnwind reverse-iterator invalidated by nested Try in a Finally body
  • Stop false-positive property/method name-collision warning on TimeZone.OffsetFromUtc
  • Release Shared Property object slots at exit, stopping false-positive leak reports

Buoy v0.37.0

Choose a tag to compare

@sos-action-bypass sos-action-bypass released this 24 Jul 13:36

v0.37.0

New Features

  • Windows installers for both architectures
  • Exit For / Continue For loop-variable
  • For...Downto descending-loop shorthand

Bug Fixes

  • Return loop frame by value from resolveLoopFrame to avoid dangling pointer
  • Guard Exit/Continue loop-variable rejection on recognized operand

NOTE: This is our first release with Windows installers. We are aware that they are not code signed yet, but if you notice any other issues, please file a bug report on this site.

Buoy 0.35.0

Choose a tag to compare

@sos-action-bypass sos-action-bypass released this 23 Jul 01:03

New Features

  • ByRef works on arrays and every other reference type
  • leak detector reports per-object detail instead of just a count

Bug Fixes

  • retain by-value object/array parameters so reassigning one doesn't free the caller's object
  • debugger shows array and composite values instead of empty rows
  • Linux .so SONAME/f + regex packages; WindowsCRT time exports

Buoy v0.34.0

Choose a tag to compare

@sos-action-bypass sos-action-bypass released this 21 Jul 22:47

v0.34.0

New Features

  • Chained array indexing over nested arrays (theArray(i)(j))
  • Add Locale.ParseNumber for locale-aware string-to-number conversion
  • Add Array.Shuffle in-place shuffle method

Bug Fixes

  • DateTime.MillisFrom1970/SecondsFrom1970 lose all sub-second precision
  • Linux native .so links leak build-machine's absolute cache path into DT_NEEDED
  • Dedupe vendored license files in packaging scripts
  • Claim ownership of array-typed elements in ARC retain/release loops
  • Flush stdio on Linux exit by calling libc exit() from crt0
  • Claim ownership of array-typed Structure/Record fields in ARC
  • Claim array-typed collection ownership in For Each codegen
  • Claim ownership of array-typed elements in IndexAssign/Append/Insert

Buoy v0.33.0

Choose a tag to compare

@sos-action-bypass sos-action-bypass released this 21 Jul 17:55

v0.33.0

New Features

  • Add System.Microseconds() monotonic elapsed-time counter
  • Add Inline function/method modifier for LLVM alwaysinline

Bug Fixes

  • Claim ownership of array-typed elements in array literal codegen
  • Wrap buoy --help output to 75 columns

Buoy v0.32.0

Choose a tag to compare

@sos-action-bypass sos-action-bypass released this 21 Jul 02:26

v0.32.0

New Features

  • AI coding kit — buoy ai init, MCP docs search, VSCode setup command
  • Add xml package (Xerces-C++-backed DOM core)
  • Suggest event names after Handle in completion
  • Locale-aware Number/Currency formatting via Locale.FormatNumber/FormatCurrency
  • Flesh out FileSystemItem + FileSystemDrive / System drive enumeration
  • Locale-aware DateTime.ToString
  • Update zip package's API in ZipReader/ZipWriter
  • Add System.Folders (SpecialFolder) known-folder resolver
  • Add inline If(condition, trueValue, falseValue) conditional expression
  • Add cross-platform DateTimePicker control
  • Add UDP broadcast and multicast support to UDPSocket
  • Port TLS shim (runtime/tls/TlsC.cpp) from Botan to OpenSSL
  • Port crypto package native shim from Botan to OpenSSL
  • Add Postgres package (PostgreSQL backend for Database abstract class)

Bug Fixes

  • Ship only cleaned learning chapters (docs/learning_buoy), not docs/learning
  • Deliver fluenticons as a single compressed .buipkg instead of ~6,238 loose files
  • Default long-form local Array Of T to empty array (urgent segfault)
  • Regression guard + close-loop for macOS window close-box crash (buoy-releases#39)
  • Create Windows named pipe synchronously in ServerSocket.Listen() to close Mode.IPC race
  • Harden DateTimePicker Linux backend against null-deref and floating-ref misuse
  • Call ExitProcess explicitly on Windows so Winsock worker threads can't block exit
  • Extend Linux libc/libpthread stubs for OpenSSL's fuller libc surface
  • Disable OpenSSL async/QUIC, fix Linux atexit versioning, extend macOS libc stubs

Dependency Updates

  • Bump brace-expansion to 1.1.16/2.1.2/5.0.7
  • Bump js-yaml to 4.3.0
  • Bump markdown-it to 14.3.0
  • Bump linkify-it to 5.0.2
  • Bump undici to 7.28.0
  • Bump tmp to 0.2.7
  • Bump form-data to 4.0.6
  • Bump serialize-javascript to 7.0.7

Buoy v0.31.0

Choose a tag to compare

@sos-action-bypass sos-action-bypass released this 19 Jul 03:28

v0.31.0

New Features

  • Add Call statement keyword
  • Rewrite database package as SQLiteDatabase backend of stdlib base
  • Backend-agnostic abstract Database base layer in stdlib
  • Per-project VSCode build config for multi-target Buoy compiles

Bug Fixes

  • Don't let an Abstract method's optional End consume the enclosing End Class
  • Make layout editor control borders visible in dark themes
  • Stop a stray .buoy/ dir from poisoning project-root detection
  • Relocate and package Linux crt0.o for installed toolchains
  • Defer window close callback off AppKit's synchronous teardown to stop close-button crash
  • Copy Windows runtime DLLs correctly when -o has no directory component
  • Alphabetize the control lists in the layout editor
  • Reject Optional =/<> comparison in Sema instead of crashing codegen
  • Default uninitialized Array Of T property to empty array

Buoy v0.30.0

Choose a tag to compare

@sos-action-bypass sos-action-bypass released this 18 Jul 01:00

v0.30.0

New Features

  • Add hotkey legend to layout editor palette
  • Disambiguate layout editor between multiple Window/View blocks in one file
  • Resizable window, multi-select drag, and working snap in layout editor
  • Embed Info.plist in the buoy binary and console-mode macOS executables
  • Add declarative View blocks for "container controls"
  • Add @DatabaseRecord attribute for compile-time database marshaling

Bug Fixes

  • Index Window/View/Control/Constraints as indent-openers in the formatter
  • Correctly update all governing anchors in constraint drag steady-state
  • Only run the solver when resizing the window/view

Buoy v0.29.0

Choose a tag to compare

@sos-action-bypass sos-action-bypass released this 17 Jul 01:11

v0.29.0

New Features

  • add @ControlSize and @ControlIcon class attributes for the layout editor palette
  • add @Serializabl e attribute for compile-time JSON ToJson/FromJson synthesis
  • add Clipboard class for system clipboard access
  • Add declarative layout editor in VSCode. Locks only for now.
  • add Internal access modifier
  • add StatusItem control (macOS/Windows/Linux system tray)
  • implement declarative Constraints block
  • redesign JSON API, add dotted-receiver Assigns setters

Bug Fixes

  • implement Object.TypeName() and Object.Hash() codegen
  • reject bare Shared property reference from instance method
  • reject Shared method calls through an instance receiver

Buoy v0.28.0

Choose a tag to compare

@stretch327 stretch327 released this 15 Jul 23:11

v0.28.0

New Features

  • Add Variant tagged-union value box package (Xojo-conversion shim)
  • Convert DateTime, TimeZone, and TimeInterval to real classes
  • Add buoy --list-deprecations to catalog @deprecated declarations

Bug Fixes

  • Close crypto package native/-source bug report, add regression guard
  • Reject Array.RemoveValue/IndexOf/LastIndexOf/Contains value-type mismatches
  • Statically link libucrt.a for Windows runtime DLL C99 stdio calls
  • Resolve receiver.PropertyName(index) as array-property indexing, not a method call
  • Reject out-of-range float literals instead of crashing the lexer
  • Reject out-of-range integer literals instead of crashing the lexer
  • Reject Weak on Shared Property/field instead of segfaulting at runtime
  • Guard GTK4 popups/dialogs against unrealized/uninitialized toplevel
  • Windows CRT fd-table functions work without special init; add missing stub exports
  • Add missing loop-idiom-recognize libc symbols to Darwin libSystem.tbd stubs
  • Load full certificate chain in server-side TLS
  • Xor on Integer operands emitted invalid LLVM IR