Releases: stretched-out-software/buoy-releases
Releases · stretched-out-software/buoy-releases
Release list
Buoy v0.38.0
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
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
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
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
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
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
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
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
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
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