Changes between Version 2 and Version 3 of R1/Beta5/ReleaseNotes


Ignore:
Timestamp:
Sep 1, 2024, 12:16:30 AM (4 months ago)
Author:
jscipione
Comment:

Fill out release notes using contract/update reports from Jan 2023-July 2024 and GSoC 2023 reports

Legend:

Unmodified
Added
Removed
Modified
  • R1/Beta5/ReleaseNotes

    v2 v3  
    1 The 5th beta release of Haiku fixes a number of bugs and issues as well as adding new support for more hardware in order to provide our users and developers with an up to date and stable platform to work on.
     1=== Haiku R1Beta5 Release Notes ===
    22
    3 Please keep in mind that this is beta-quality software, which means it is feature complete but still contains known and unknown bugs. While we are mostly confident in its stability, we cannot provide assurances against data loss.
     3The fifth beta release of Haiku introduces a wide range of updates, bug fixes and feature enhancements. This release includes significant improvements across various components: developer tools, hardware support, system performance, and user experience with contributions from the Google Summer of Code (GSoC) 2023 projects.
    44
    5 = System requirements =
     5'''Important Notice:''' This is beta-quality software, which means it is feature-complete but may contain known and unknown bugs. Users should exercise caution as there remains a risk of data loss.
    66
    7 This release is available on the x86 32-bit platform and x86_64 platform. Note that BeOS R5 compatibility is only provided on the 32-bit platform. The 64bit version is recommended if you don't need BeOS compatibility.
     7==== System Requirements ====
    88
    9 == MINIMUM (32-bit) ==
     9This release is available for both x86 32-bit and x86_64 platforms. BeOS R5 compatibility is only supported on the 32-bit platform. The 64-bit version is recommended unless BeOS compatibility is required.
    1010
    11 * **Processor:** Intel Pentium II; AMD Athlon
    12 * **Memory:** 256MB
    13 * **Monitor:** 800x600
    14 * **Storage:** 2GB
     11'''Minimum (32-bit):'''
    1512
    16 == RECOMMENDED (64-bit) ==
     13* '''Processor:''' Intel Pentium II; AMD Athlon
     14* '''Memory:''' 256MB
     15* '''Monitor:''' 800x600
     16* '''Storage:''' 2GB
    1717
    18 * **Processor:** Intel Core i3; AMD Phenom II
    19 * **Memory:** 2GB
    20 * **Monitor:** 1366x768
    21 * **Storage:** 16GB
     18'''Recommended (64-bit):'''
    2219
    23 SSE2 support is required to use the WebPositive web browser. On machines where this is not available, it is recommended to install the NetSurf browser instead.
     20* '''Processor:''' Intel Core i3; AMD Phenom II
     21* '''Memory:''' 2GB
     22* '''Monitor:''' 1366x768
     23* '''Storage:''' 16GB
    2424
    25 = Highlights =
     25SSE2 support is required for the WebPositive web browser. For systems without SSE2, the NetSurf browser is recommended.
    2626
    27 == Installation process ==
     27==== Key Highlights ====
    2828
     29'''Installation Process:'''
    2930
    30 == Package management ==
     31* Improved installer interface with better error handling and feedback mechanisms to ensure a smoother user experience during installation.
     32* Lowered inital memory usage.
    3133
     34'''Package Management:'''
    3235
    33 == User interface ==
     36* Enhanced package management system with improved dependency resolution and conflict handling, contributing to overall system stability.
    3437
    35 - Assisted color theme configuration in Appearance preferences
    36 - Improved dark mode support (AboutSystem logos)
    37 - AboutSystem replicant
    38 - Consistent use of the menu font in DeskBar
    39 - Icon-O-Matic GSoC 2023 work (perspective transforms and other things)
    40 - PowerStatus: warnings for low and critical battery, auto install in DeskBar, "not charging" state for batteries (in addition to charging and discharging), save performance mode across reboots
    41 - Improved localization of numbers: more use of string_for_size, use of multiplication signs, deployment of BNumberFormat
    42 - Tracker: better handling of read only folders (grey background + disabled menu items), use of "half star" in media rating attribute display
    43 - Deskbar: Twitcher team icon size from 32 to 48
    44 - AboutSystem: Consolidate info, remove inaccessible memory
     38'''User Interface:'''
    4539
    46 == app_server (graphics server) ==
     40* Assisted color theme configuration in Appearance preferences for more intuitive customization.
     41* Improved dark mode support, adjustments to logos in AboutSystem.
     42* Consistent font usage across DeskBar menus for a unified look and feel.
     43* Icon-O-Matic Enhancements: Significant updates to Icon-O-Matic: new features like perspective transformations, enabling users to apply complex 3D-like transformations to vector icons. This functionality enhances the tool's versatility and creativity. Additional improvements were made to the handling of icons and shapes, along with bug fixes and performance enhancements. These updates were part of the '''GSoC 2023''' project focused on enhancing this key application.
     44* PowerStatus improvements: new battery status notifications for low and critical levels, automatic integration into DeskBar, improved recognition of "not charging" states, and persistent performance mode settings across reboots.
     45* Localization improvements with BNumberFormat, ensuring consistent numerical formatting across applications.
     46* Tracker file manager enhancements: better handling of read-only folders and improved media rating displays with "half star" symbols.
     47* DeskBar improvements: increase the Twitcher team icon size from 32 to 48 pixels, make twitcher font sensitive. New other workspace window icons.
     48* Consolidated AboutSystem information removing inaccessible memory.
    4749
    48 - Rework of window update validation logic to reduce tearing, flickering, and display of empty white areas
    49 - Switched the default font from Noto Sans Display to Noto Sans
    50 - Support for variable fonts
    51 - Support for dynamically loading fonts (for example web fonts loaded by the web browser)
     50**app_server:**
    5251
    53 == Web browser ==
     52* Major overhaul of window update validation logic to reduce screen tearing, flickering, and empty areas, significantly enhancing visual performance.
     53* Switched default system font from Noto Sans Display to Noto Sans for improved readability.
     54* Added support for variable fonts and dynamically loaded web fonts, enhancing typographic flexibility.
    5455
    55 Update of WebKit engine, nothing else worth mentioning
     56'''Web Positive:'''
    5657
    57 == APIs ==
     58* Updated WebKit engine powering the WebPositive browser, delivering enhanced performance, security, and compatibility with modern web standards.
    5859
    59 - BMessageRunner can send messages with periods shorter than 50ms
    60 - Recent application and document list in registrar is now properly limited in size
    61 - BMenu: stable sorting of items, support for updating a menu while it is open, fixed keyboard navigation
    62 - BSpinner now sends an usable message when its value changes (it previously always had a be:value of 0)
    63 - rgb_color::Brightness now uses "perceptual brightness" algorithm. The private perceptual_brightness function is removed.
    64 - Introduction of BBufferedIO and BAdapterIO
     60'''APIs:'''
    6561
    66 == Storage and file systems ==
     62* Enhanced BMessageRunner to support intervals shorter than 50ms, improving application responsiveness.
     63* Proper size management of recent applications and document lists in the registrar.
     64* BMenu improvements, keyboard navigation.
     65* Enhanced BSpinner control now sends accurate messages upon value changes, fixing a previous issue.
     66* RGB color brightness calculation updated to use a perceptual brightness algorithm, improving color rendering accuracy.
     67* Introduction of BBufferedIO and BAdapterIO classes for more efficient data handling.
    6768
    68 - Full read-only support of FreeBSD UFS2
    69 - F_SETFL implemented in ext2/3/4 driver
    70 - Replaced FAT driver with FreeBSD implementation
    71 - Fixes on ramfs: properly implement preallocate, clear trailing space at the end of mmapped files
    72 - Unified query parser code between ramfs, packagefs and bfs
     69'''Storage and File Systems:'''
    7370
    74 == BeOS compatibility ==
     71* Full read-only support for FreeBSD UFS2, expanding file system compatibility.
     72* Replaced FAT driver with a more robust implementation from FreeBSD improving stability and performance.
     73* RAMFS improvements for better file handling including proper preallocation implementation and clearing of trailing spaces.
     74* Unified query parser code across RAMFS, packagefs and BFS for consistent file system behavior.
    7575
    76 - Update to ffmpeg 6
    77 - Fixed various problems in Media Kit (rounding errors, ...) to improve BeOS compatibility
     76'''BeOS Compatibility:'''
    7877
    79 == POSIX compatibility ==
     78* Updated to FFmpeg 6 for better multimedia support.
     79* Multiple Media Kit fixes addressing rounding errors and other issues, enhancing compatibility with BeOS applications.
     80* Reintroduction of the list view auto-scroll feature.
    8081
    81 - getentropy
    82 - Fix locking problems in malloc after a fork
    83 - Implementation of locale_t
    84 - static_assert (C11)
    85 - stpncpy
    86 - open() on a symlink pointing to a non-existing file can now create the target file
    87 - stpncpy
    88 - mmap on files larger than available memory can work without having to specify MAP_NORESERVE
    89 - Using rename to rename a file to itself does not trigger an error
    90 - pthread_sigqueue
     82'''POSIX Compatibility:'''
    9183
    92 BSD and GNU extensions:
     84* Added support for various POSIX functions, such as getentropy, static_assert (C11), stpncpy, and better handling of symbolic links and memory mapping.
     85* Improved pthread_sigqueue and other functions to meet POSIX standards more closely.
    9386
    94 - arc4random
     87'''BSD and GNU Extensions:'''
    9588
    96 == System performance ==
     89* Implemented arc4random for more secure random number generation.
    9790
    98 - DNS resolver synchronized with NetBSD
    99 - Fix crashes when attempting to use IPv4 multicast
    100 - Many fixes to the network stack: TCP optimization, finalize implementaiton of SACK, fix window sizing. Reduce buffer copies between drivers and stack.
    101 - KDL event loop now uses the PAUSE instruction to reduce power use of the machine during kernel debugging sessions
    102 - Improvement of kernel page allocator to keep free pages in-order and allocate them as larger contiguous blocks, easing DMA transfers
    103 - APIs for forcing CPU affinity for each thread
     91'''System Performance:'''
    10492
    105 == Internationalization ==
     93* DNS resolver synchronized with NetBSD, enhancing network performance and reliability.
     94* Various network stack improvements: TCP optimizations, finalized SACK implementation, and window sizing fixes. Reduced buffer copies between drivers and the stack for better efficiency.
     95* Kernel Debugger Land (KDL) event loop now uses the PAUSE instruction, reducing power usage during debugging sessions.
     96* Kernel page allocator improved to maintain free pages in order, enabling larger contiguous memory blocks for more efficient DMA transfers.
     97* New APIs for setting CPU affinity for threads, optimizing performance in multi-core environments.
    10698
    107 - BNumberFormat with support for configurable separators
     99'''Internationalization:'''
    108100
    109 TODO update on list of available languages since Beta 4.
     101* Enhanced BNumberFormat functionality with customizable numeric separators, improving localization and internationalization support.
    110102
    111 == Hardware compatibility ==
     103'''Developer Tools:'''
    112104
    113 === CPUs and chipset ===
     105* .NET Port: As part of '''GSoC 2023''' Haiku has introduced initial support for the .NET platform porting core components of the .NET runtime to run .NET applications natively on Haiku. This addition opens up Haiku to a wider range of developers and software applications.
     106* Debugger Improvements: Enhanced support for DWARF-4 and DWARF-5 debugging formats providing better debugging capabilities.
     107* Git Integration: Updated Git version bundled with Haiku to offer better compatibility with recent Git features and improvements.
     108* Package Build Improvements: Improved support for building packages from source, better error reporting and handling.
     109* Compiler Toolchain: Updated GCC toolchain and better integration with Haiku's build system providing developers with a more robust and up-to-date environment.
     110* New Developer Utilities: Introduction of new tools and utilities to aid in software development, debugging and performance profiling.
    114111
    115 - PCH thermal driver for more Intel devices
    116 - Mitigations for AMD Zenbleed
    117 - Updated ACPICA to 20230628
    118 - Finding RDTSC cycle duration using CPUID instead of PIT calibration
     112'''Network and Connectivity:'''
    119113
    120 === Sound ===
     114* '''TUN/TAP Driver Support:''' Development of TUN/TAP driver support has been completed as part of '''GSoC 2023''' enabling virtual network interface functionality. This is crucial for VPN support, tunneling, and various other networking applications, expanding Haiku's networking capabilities significantly. This update reflects a focused effort on improving network virtualization and security features.
    121115
    122 - USB Audio driver
    123 - Cleanup of PCI audio drivers to share more code
     116'''Hardware Compatibility:'''
    124117
    125 === Mass storage ===
     118'''CPUs and Chipsets:'''
    126119
    127 - virtio_block
    128 - enumeration of SDHCI devices (SD card readers) over ACPI in addition to PCI
     120* Added new PCH thermal driver support for more Intel devices, improving thermal management.
     121* Implemented mitigations for the AMD Zenbleed vulnerability, enhancing security for AMD systems.
     122* Updated ACPICA (Advanced Configuration and Power Interface Component Architecture) to the latest release, improving system compatibility and stability.
    129123
    130 === Network ===
     124'''Sound:'''
    131125
    132 - Synchronized FreeBSD drivers with FreeBSD
    133 - Use of OpenBSD drivers to support more network devices
    134 - TUN/TAP driver for VPN support (and other uses)
     126* New USB Audio driver added, expanding support for more audio devices.
     127* Refactored PCI audio drivers to share more code, improving maintainability and compatibility.
    135128
    136 === USB ===
     129'''Mass Storage:'''
    137130
    138 - Support for "minimum" attribute in USB HID report descriptors
    139 - Quirk for use of 6th button on Elecom trackballs
     131* Added virtio_block driver for better storage support in virtualized environments.
     132* Improved enumeration of SDHCI devices (SD card readers) over both ACPI and PCI, expanding compatibility.
    140133
    141 === Graphics ===
     134'''Network:'''
    142135
    143 - virtio_gpu
     136* Synchronized FreeBSD network drivers with the latest FreeBSD release supporting more network hardware.
     137* Integrated OpenBSD drivers to expand support for additional network devices.
     138* Expanded TUN/TAP driver support for VPNs and other networking applications, significant improvements in network security and virtualization.
    144139
    145 == Debugging tools ==
     140'''USB:'''
    146141
    147 - DWARF-4 and DWARF-5 support in Debugger
    148 - Support for iovec and other things in strace
     142* Improved support for USB HID report descriptors with the "minimum" attribute enhancing device compatibility.
     143* Added support for the 6th button on Elecom trackballs and improved user experience.
    149144
    150 = Known issues and workarounds =
     145'''Graphics:'''
    151146
    152 There are no known major bugs.
     147* Added support for virtio_gpu enhancing graphics capabilities in virtualized environments.
     148
     149'''Debugging Tools:'''
     150
     151* Enhanced Debugger with DWARF-4 and DWARF-5 support and better integration with system libraries.
     152* Expanded strace support for iovec and other structures, enhancing system call tracing.
     153
     154==== Known Issues and Workarounds ====
     155
     156There are currently no major bugs reported. This is a beta release, users should report any issues to help improve future versions.