The ReactOS Project is pleased to announce the release of version 0.4.8
as we continue to work on releasing every three months.

As you may know, our previous 0.4.7 version was the first one developed
in our Git/GitHub repository. 0.4.8 is the nice sequel and a good way to
measure the GitHub impact on the ReactOS project. Since ReactOS reached
GitHub, it has been forked 248 times. A nice amount understanding
ReactOS is not a framework or a library, but a final product. These
forks represent a nice amount of newcomers: translators, designers,
coders and testers. Thanks to all of them, and the ReactOS regular devs,
209 new Pull Requests and 1094 commits have made it through to this
0.4.8 version.

User Experience
ReactOS keeps pushing to bring the best possible user experience.
Therefore the ReactOS User Interface in 0.4.8 has received extra care.

Taskbar settings and dialogs have been rewritten by Giannis so now the
auto-hide, toggle lock and always on top options work. These settings
were visible before but as you might have noticed they've never been
working at all. Meanwhile, David fixed several bugs and glitches of the
notification area. Thanks to him, Giannis and Hermès, now balloon
notifications are properly supported, queued and shown while a range of
tooltip problems have been solved.

Talking about the notification tray, due to Ged’s work, icons of killed
and finished process are now automatically removed, even when apps
crash. This is something that Windows doesn't even provide with Win10,
and many Windows users may have noticed.

Selecting multiple desktop icons was impossible prior 0.4.8. Enjoy it
now thanks to Giannis’ work. His amazing work doesn't stop there, bugs
related to property dialogs have been squashed, like the one preventing
drive and folders capacity from being shown. Deletion and renaming of
folders and files should work reliably after Pierre fixed a major leak.

Additional new features included in this release should also boost the
user experience, such as the shell autocompletion brought to you by
Mark, a nice bonus on top of the improved relative path handling done by
Stanislav. Also, now Network drives can be dismounted directly from
explorer due to Pierre’s work, and Eject and Disconnect menu items are
now implemented thanks to Katayama.

From the visual point of view, several glitches related to the redrawing
of static text elements, scrollbars, button captions, fonts and text
background colors were fixed in this version. As a bonus, now ReactOS
also detects more themes and is much faster when rendering big amounts
of text.

Regarding internationalization, now when changing the language in
ReactOS, the font substitution settings are properly overwritten thanks
to Katayama, and time is now correctly set due to Doug’s work.

Combine all these features with the Kernel and Filesystem fixes that
0.4.8 is bringing and you'll understand why the ReactOS team is so
excited regarding this new release.

NT6+ Software support and Games
With software specifically leaving NT5 behind, ReactOS is expanding its
target to support NT6+ (Vista, Windows 8, Windows 10) software. Colin,
Giannis and Mark are creating the needed logic in NTDLL and LDR for this
purpose. Giannis has finished the side-by-side support and the implicit
activation context, Colin has changed Kernel32 to accept software made
for NT6+, and Mark keeps working on the shim compatibility layer.
Although in a really greenish and experimental state, the new additions
in 0.4.8 should start helping several software pieces created for Vista
and upwards to start working in ReactOS. Microsoft coined the term
backwards compatibility, ReactOS the forward compatibility one.

A new tool, a DrWatson32 alike, has been created by Mark and added to
0.4.8, so now any application crashing will create a log file on the
desktop. This crash dump details the list of modules and threads loaded,
stack traces, hexdumps, and register state. Therefore, this new tool
should help us understand what went wrong when the software crashed.
Adding these reports, plus the debug logs, will provide ReactOS
developers a good amount of information to understand what went wrong
and how to create the needed fixes.

In 0.4.7, several games were having trouble initializing properly when
using native graphics drivers. Jérome has not just fixed this issue but
also a palette regression in DirectX which was garbling colors when
playing games.

Kernel Stability and new features
Kernel stability in this version comes from the Memory Manager, File
system and Cache Manager fixes. The latest Coverity scan, which tracks
old and detects new issues, shows a great evolution since 0.4.7.

Several bugs have been squashed in the ReactOS CC and Freeloader,
allowing it to boot in 96MB hardware (smaller RAM need than our 0.4.7
release). Talking about hardware, Pierre has fixed several bugs when
writing the bootloader to disk and Serge has updated ACPI with extended
features, that should bring some extra compatibility.

In 0.4.7 the initial Cache Manager bugfixing was a great step forward in
terms of stability. From 0.4.7 to 0.4.8, Cache Manager has gone under a
massive review lead by Thomas and Pierre. This work revealed several
bugs thanks to the tests specifically created to ensure this review
doesn't introduce new regressions. Among others, a 17-year-old bug which
was introducing corruption in the file system and which is now finally

However, the Cache Manager work hasn't just been focused on bug-hunting,
but also adding new and needed features. Now the ReactOS 0.4.8 Common
Cache supports Lazy Writing and Read Ahead, which are major steps toward
a performant operating system by reducing file access latencies.

The other major component, the ReactOS Memory Manager, has also received
many fixes thanks to Timo, some revealed by Coverity and others due his
work on the x64 ReactOS port which enforces a pointer-size agnostic
Memory Manager.

Hardware support, NTFS and other drivers
One of the main objectives of each new ReactOS version is to improve the
compatibility with hardware. In case you find any issues running ReactOS
in your real hardware, please don't hesitate to file a bug report at the
ReactOS bugtracker.

Thanks to these logs, we've discovered that old hardware and some
virtual machines were failing to boot when an empty floppy drive was
detected. This bug has now been fixed and these hardware rigs are now
enjoying ReactOS. Also these logs helped to detect several issues in PNP
IRP handling which has been fixed by Thomas for this new version.

Aside from fixing bugs in drivers, ReactOS includes some new ones in
this version, such as a virtual floppy driver and a virtual CD-ROM
driver. Also the CDFS driver has been replaced with the MSPL’ed original
one after a full review. This review, as a curiosity, has revealed at
least one bug, which has been sent upstream to Microsoft GitHub with its
proper fix.

The NTFS driver coded by Trevor, during GSOC 2016/2017, has been finally
added. The NTFS driver has been an ongoing effort started by Hervé and
Pierre, and which needed 2 different Google Summer Of Code to reach its
current state. Under the mentoring of Pierre, Trevor Thomson has been
coding and documenting his titanic NTFS coding efforts. If you're
interested in file systems or how NTFS works and the tools needed to
understand its behavior, you shouldn't miss the blog posts of Trevor.
Thanks to these efforts ReactOS is able to read NTFS partitions in a
more robust way, covering NTFS specific cases, and since 0.4.8, ReactOS
introduces initial NTFS writing support. The NTFS writing feature is
disabled but can be enabled through registry to test its experimental

Third Parties
ReactOS, as part of the open source ecosystem, also uses bits of several
projects. 0.4.8 has been synced with Wine 3.0, Freetype 2.9 and Ext2
0.69, among other projects.

General notes, tests, and changelog for the release can be found at
their respective links. A less technical community changelog for ReactOS
0.4.8 is also available.

ISO images are ready on the ReactOS Download page.

Some statistics
The oldest bug reported in Jira and fixed was CORE-5127 (advapi32:
OpenTraceA (Sysinternals DiskMon2.01 dies with unhandled exception upon
Since 0.4.7, 340 bugs have been resolved: 211 marked as fixed, 37 as
duplicates, 42 as won't fix, 21 as incomplete, 29 as cannot reproduce.
320 bugs fixed were directly related with the operating system, 10 from
ReactOS online services, 5 from ReactOS test suite and 5 from ReactOS
Build Environment.
Pull Requests committed: 209
Forks: 248

- Press Release:
- General Notes:
- Tests:
- Changelog:
- Community Changelog:
- Download page:

Attachment: signature.asc
Description: OpenPGP digital signature

Ros-announce mailing list

Reply via email to