Commit Graph
180 Commits
Author SHA1 Message Date
mirkobrombin b946b68095 feat: add an own ICU library for programs that import it
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: icu.dll with its forwarders, written from the public ICU API documentation and UAX #11, #14 and #29, with its test
2026-11-01 21:17:19 +00:00
mirkobrombin f5eda87880 feat: add Unicode normalization
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote NormalizeString and IsNormalizedString on UAX #15, the table generator and the test.
2026-11-01 17:01:32 +00:00
mirkobrombin f923e63650 feat: add MDI windows and the running object table 2026-10-31 20:21:55 +00:00
mirkobrombin 9d3621a4db feat: add own rpcrt4 2026-10-31 14:09:33 +00:00
mirkobrombin 8e50498947 feat: add own riched20 2026-10-31 12:46:51 +00:00
mirkobrombin f784c4bd35 feat: add own gdiplus 2026-10-31 11:11:27 +00:00
mirkobrombin 916cd25c6f feat: add own windowscodecs 2026-10-31 10:56:40 +00:00
mirkobrombin b07118579d feat: add own msvfw32
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote the msvfw32 component, its provisioning and its license entries.
2026-10-31 08:36:12 +00:00
mirkobrombin da4b7e22ae chore: merge pull request #88 from rayzorben/feat/winsqlite3 2026-10-31 08:15:54 +00:00
mirkobrombin 1adc182ba7 chore: build the installer stack from the own components
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Switched provisioning and packaging to the own components, removed the replaced ReactOS sources and the xmllite patch that no longer applied.
2026-10-31 07:10:22 +00:00
mirkobrombin 31a3704ebd chore: replace the ReactOS comctl32 2026-10-31 07:05:36 +00:00
Raymond Bennett 0c7cd11934 feat: ship SQLite as winsqlite3.dll for 64-bit programs
Windows has carried SQLite as winsqlite3.dll since Windows 10, and
programs such as winget keep their package index in it.
scripts/provision-sqlite.py builds the pinned public-domain
amalgamation (3.54.1, SHA3-256 checked) with MinGW, exporting the
unsuffixed sqlite3_* interface; the runtime places it in the system
directory like its other components.

Only the 64-bit library for now: Windows' 32-bit winsqlite3 uses the
standard calling convention for its interface and callbacks, which the
published amalgamation does not declare.

Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: provisioning script, CMake wiring, license records and the sqlite_client test
2026-10-30 08:17:47 -07:00
mirkobrombin 9401355749 chore: replace the ReactOS user32 controls
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote the window controls, dialog manager, message boxes, text layout, drawing helpers and generated resources as own code from Microsoft's documentation, using published test expectations for behaviour only; removed the retired text component and its layout tests.
2026-10-30 14:46:09 +00:00
mirkobrombin 7606d2ff64 chore: replace the ReactOS RTL
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote the guest heap, kernel32 fast paths, generic tables and memory functions as own code, with stress tests against the documented behaviour.
2026-10-30 13:58:51 +00:00
mirkobrombin 84f770404c chore: replace the ReactOS xmllite
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote the XmlLite reader and writer as own code from Microsoft's public documentation of the interfaces.
2026-10-30 13:31:25 +00:00
mirkobrombin b293259f54 chore: replace the ReactOS cabinet
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote cabinet.dll as own code from the public Microsoft Cabinet Format, LZX and Quantum descriptions and the documented FCI and FDI interfaces.
2026-10-30 13:09:48 +00:00
mirkobrombin 7b645bce72 chore: replace the ReactOS regsvr32
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote regsvr32 as a new command-line tool from its public description, with tests for its documented exit codes.
2026-10-30 12:43:02 +00:00
mirkobrombin f4c3da131b feat: add rundll32
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote rundll32 as a new command-line tool from its public description, listed it for prefixes and packages, and added tests.
2026-10-30 10:34:51 +00:00
mirkobrombin b17b15c5df chore: merge pull request #84 from SoapyMan/main 2026-10-30 06:33:00 +00:00
mirkobrombin 18f26ca3f5 chore: merge pull request #41 from rayzorben/feat/free-threaded-marshaler 2026-10-30 06:32:58 +00:00
mirkobrombin 1d561e2ecd fix: give each window its own GPU surface, hidden ones included 2026-10-29 23:18:44 +00:00
SoapyMan bb892c7c73 fix: generate the Vulkan chain table under any compiler locale
Availability was decided by matching the structure names quoted in the
compiler diagnostics. GCC quotes them with «» outside the English locales,
so nothing matched, the trimming loop made no progress and generation
failed on VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_METERING_FEATURES_NV,
which the headers provide only under VK_ENABLE_BETA_EXTENSIONS.

The same matching also mistook a spelling suggestion for a missing name and
silently dropped VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV
from the table.

Read the preprocessed header instead, so the table lists what the headers
really provide whatever language the compiler speaks, and keep one syntax
check so incomplete structures still fail here.

Checked by generating the table with ru_RU.UTF-8 and LC_ALL=C (identical
output, 367 structures, present barrier kept, present metering excluded)
and by building native with the regenerated table.

Assisted-by: opencode:deepseek-v4.1-flash-free
AI-Scope: diagnosed the locale-dependent diagnostics parsing and the
suggestion false positive in scripts/generate-vulkan-chains.py, and wrote
the preprocessor-based availability check plus the size syntax check.
2026-10-30 00:47:58 +03:00
mirkobrombin 957b4f38c0 feat: export OpenThemeDataForDpi 2026-10-29 20:58:27 +00:00
mirkobrombin bf43c24725 feat: keep the licenses programs install in the protection store
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote the protection store license install and query functions and the system client test.
2026-10-29 18:34:55 +00:00
mirkobrombin 0bb7dd6f04 feat: serve Windows Runtime system classes Office asks for at startup
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote the twinapi Windows Runtime system classes, their shell and netlist hooks and the twinapi client test, after Office stopped at startup on missing runtime classes.
2026-10-29 17:10:05 +00:00
mirkobrombin ba02478235 feat: compile HLSL through an own d3dcompiler_47 2026-10-29 11:10:04 +00:00
Raymond Bennett 9cdba187a8 feat: add CoCreateFreeThreadedMarshaler
starship and watchexec, through the windows crate's agile objects, import it
from combase. The marshaler is an aggregatable object whose IMarshal passes an
interface pointer to another apartment of the process as the pointer itself;
a destination outside the process is refused, since no other process takes
COM calls here. combase.dll now lists the function, which raven-shell serves.

Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: the marshaler, from the COM documentation of IMarshal and CoCreateFreeThreadedMarshaler
(cherry picked from commit fee6c66a3a43ecd7afcfc725f7752999f1855e1c)
2026-10-28 23:14:32 -07:00
mirkobrombin 84a58b75f2 chore: merge main into the command-line tools 2026-10-28 16:32:10 +00:00
mirkobrombin 112039c823 feat: add the remaining license client entry points programs resolve 2026-10-28 10:37:23 +00:00
mirkobrombin d636b4305b feat: add DirectWrite font sets and face references
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote the font sets, face references and string lists and the newer collection, family and font interfaces from the public headers.
2026-10-28 14:46:45 +00:00
mirkobrombin bcc1754c77 feat: resolve Click-to-Run components in the installer service 2026-10-28 09:01:38 +00:00
mirkobrombin 6c7acf5ddb feat: add the Software Protection Platform client with no licenses 2026-10-28 06:16:06 +00:00
Raymond Bennett 39e1ca33f0 feat: add the command-line tools a prompt has beside cmd
find, findstr, more, sort, where, xcopy, attrib, timeout, choice, whoami, hostname, tasklist, taskkill and reg, one program
each for both widths, copied into System32 and SysWOW64.

Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote the fourteen tools and their shared runtime from Microsoft's public command reference, and the batch-file test.
2026-10-27 23:19:39 -04:00
Raymond Bennett ef953e9325 feat: start console programs on the terminal and give every prefix a cmd.exe
A console program started from a terminal gets it as its console without --stdio=inherit. CreateProcess runs .bat and .cmd
files through cmd /c, as Windows does. The console code pages start as UTF-8, since Raven has no table for code page 437.

Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Wrote the subsystem check, the batch-file launch, a first command processor from Microsoft's public cmd documentation and its test.
2026-10-27 23:19:39 -04:00
mirkobrombin 36e0c036bc feat: add CoCreateInstanceEx and CoGetTreatAsClass 2026-10-27 19:41:46 +00:00
mirkobrombin b669e7f064 fix: export D2D1CreateFactory as ordinal 1 2026-10-27 16:38:44 +00:00
mirkobrombin 6dc4e2a318 feat: add MSXML 6 and XmlLite to the installer components
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Added the MSXML 6 classes and XmlLite to the ReactOS component build, a libxml2 regexp patch and the tests.
2026-10-27 12:07:27 +00:00
mirkobrombin 7a8f280f1f feat: add Windows Runtime strings and app package queries
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Fixed the string header layout and wrote the activation factory registry, device family and package queries from the public headers.
2026-10-27 09:20:47 +00:00
mirkobrombin d64fb3247b build: publish the system functions the new handlers need
Assisted-by: Claude Code:claude-opus-5-5
AI-Scope: Added libraries and names to the export generator and regenerated the export, argument and word tables.
2026-10-27 08:38:26 +00:00
mirkobrombin 2df3ae0720 fix: let child windows draw their own borders in WM_NCPAINT 2026-10-27 05:44:20 +00:00
mirkobrombin 592900d2d8 feat: answer the dark mode functions uxtheme publishes by number 2026-10-27 05:44:20 +00:00
mirkobrombin 870ca1a029 feat: draw a dark window frame when DWM is asked for one 2026-10-27 04:10:44 +00:00
mirkobrombin 44a593867c feat: run an SSH client's terminal and file transfer windows 2026-10-26 23:13:38 +00:00
mirkobrombin 609a4ae4c4 feat: receive socket messages and wait on socket events 2026-10-26 14:17:43 +00:00
mirkobrombin 2df1eed4b4 feat: secure connections through Schannel 2026-10-26 14:17:43 +00:00
mirkobrombin f3d6dee656 fix: build the installer components with newer MinGW toolchains
Closes #15
Closes #20
2026-10-25 20:54:15 +00:00
mirkobrombin 5fe10418db fix: find MinGW tools on the path when the compiler is reached through a wrapper
Closes #16
2026-10-25 20:54:15 +00:00
mirkobrombin 5ca60c6e94 feat: add an experimental X11 desktop backend
Refs #10

Assisted-by: Claude Code:claude-opus-5.5
AI-Scope: wrote the XCB presentation, Vulkan and EGL surface support, the --desktop=x11 option and the Xvfb tests from the issue #10 plan
2026-10-25 16:17:49 +00:00
mirkobrombin 288c3ea3c3 fix: import installer assertions directly from msvcrt
Closes #14
2026-10-25 14:47:36 +00:00
Skye Soss 17a9043704 fix: avoid string replacement on mingw's gcc directory (#13)
Using string replacement doesn't work properly if the directory name
contains the string "gcc".

Assisted-by: Claude Code:claude-opus-5.5
AI-Scope: wrote the fix after a packaging build ran a nonexistent objcopy path
2026-10-25 15:38:11 +01:00