it's right there in the changelog.. about 40% in total of what was updated was fixing bugs. Release 6 days after 0.8.8
The following was changed since the last release:
- A number of bugs were fixed, including:
- A data abort was fixed when mounting certain partitions on NAND.
- All Stratosphère system modules now only maintain a connection to sm when actively using it.
- This helps mitigate the scenario where sm hits the limit of 64 active connections and crashes.
- This sometimes caused crashes when custom non-Atmosphère sysmodules were active and the user played certain games (ex: Smash's Stage Builder).
- fatal now uses the 8.0.0+ clkrst API, instead of silently failing to adjust clock rates on that firmware version.
- A wait loop is now performed when trying to get a session to sm, in the case where sm: is not yet registered.
- This fixes a race condition that could cause a failure to boot under certain circumstances.
- libstratosphere's handling of domain object closing has been improved.
- Previously, this code could cause crashes/extremely odd behavior (misinterpreting what object a service is) under certain circumstances.
the rest being:
- An optional automatic reboot timer was added to fatal.
- By setting the system setting atmosphere!fatal_auto_reboot_interval to a non-zero u64 value, fatal can be made to automatically reboot after a certain number of milliseconds.
- If the setting is zero or not present, fatal will wait for user input as usual.
- Atmosphère now provides a reimplementation of the ro system module.
- ro is responsible for loading dynamic libraries (NROs) on 3.0.0+.
- On 1.0.0-2.3.0, this is handled by loader.
- Atmosphere's ro provides this functionality (ldr:ro, ro:dmnt) on all firmware versions.
- An extension was implemented to provide support for applying IPS patches to NROs.
- All patches at paths like /atmosphere/nro_patches/<user-defined patch name>/<Hex Build-ID for NRO to patch>.ips will be applied, allowing for easy distribution of patches.
- Both the IPS and IPS32 formats are supported.
- Atmosphère now provides a reimplementation of the spl system module.
- spl (Secure Platform Services) is responsible for cryptographic operations, including all communications with the secure monitor (exosphère).
- In the future, this may be used to provide extensions to the API for interacting with exosphère from userland.
- General system stability improvements to enhance the user's experience.
But the main point is that saying something is STABLE, no matter how many numbers you throw at it in it's version name - means absolutely nothing.
Until the devs decide that all initial design bullet points have been met, the software passes use and or rigourous QA testing and then the app is let loose and generally new pursuits are followed, occasionally with a little post release tinkering here and there.