[GSoC 2023] First course of action: fix memory leaks

Blog post by Zardshard on Mon, 2023-05-29 09:03

The coding period has started today! In the last blog post related to GSOC, I said “Here are the plans that I currently have. As with all plans, they are subject to change.” They did indeed change since I found a tool to find memory leaks. Before I was accepted into GSOC, I had been thinking about porting AddressSanitizer to Haiku to find memory leaks. I decided against it. During the community bonding period, I found a file called leak_analyser.

[GSoC 2023] .NET Developer Platform - Progress Report #2

Blog post by Trung Nguyen on Sun, 2023-05-28 00:00

Project status overview Completed tasks The .NET SDK has been ported to Haiku after a few hacks. .NET on Haiku now has the ability to run Roslyn and build a simple console application. .NET latest builds for Haiku are being provided at trungnt2910/dotnet-builds. You can follow the instructions there to install and try out .NET. Current plans Before proceeding to the next step, I want to ensure the stability of the current SDK by bootstrapping .

How to find memory leaks

Blog post by Zardshard on Tue, 2023-05-23 10:44

In 2010-2011, mmlr created a new memory allocator: the guarded heap memory allocator. This allocator helps detect various bugs such as writing past the end of allocated memory, reading uninitialized memory, and freeing freed memory. These uses are detailed in “Using malloc_debug to Find Memory Related Bugs”. Later, in 2015, mmlr had a new project: updating the memory allocator to be able to report memory leaks. To use this feature, start by loading libroot_debug.

[GSoC 2023] .NET Developer Platform - Progress Report #1

Blog post by Trung Nguyen on Sun, 2023-05-14 00:00

It is barely a week since the start of GSoC, but there has been so much progress on this port. Ideally, this progress should be coupled with some documentation before my brain’s garbage collector reclaims the reasoning, so that future maintainers can have an easier time rebasing and porting newer versions of .NET. Project status overview Completed tasks My current port has achieved all the tasks that the partial .NET 7 port did last summer, including:

Haiku Activity & Contract Report, April 2023

Blog post by waddlesplash on Fri, 2023-05-12 15:30

As is the usual way of things, the monthly Activity Report is hereby combined with my Contract Report.

This report covers hrev56888 through hrev56961.

The Icon Sets Proposed in the Icon Contest

Blog post by Zardshard on Thu, 2023-05-11 10:01

In 2006, an contest was held to create an original icon set for Haiku to replace the BeOS R5 icons. With the passage of time, much of the content surrounding the event has rotted away, including images of the proposed icon sets. Luckily, the Internet Archive has backups! The Stipi icon set won, with Honey, zuMi and Mc Clintock trailing close behind. 575 Alba Deborah Dropline Neu Garum Honey Ikonki jdawin Kabuto Klapaucius Mc Clintock Miqlas Ponkan Stippi Tango zuMi Sources: Haiku icon set contest idea

[GSoC 2023] VPN Support Project | Haiku Project

Blog post by Pairisto on Mon, 2023-05-08 21:32

About Me Hello everyone! My name is Sean Brady, and I am currently in my Sophomore year at Oregon State University studying Computer Science. In early January of this year, I decided to become a contributor for a Google Summer of Code (GSoC) project focused on operating systems where I researched Haiku and its projects which interested me and the VPN Support Project in particular. From what I can tell, interest in bringing a VPN to Haiku has been in the works since the BeOS days and more recently the tun.

[GSoC 2023] .NET Developer Platform

Blog post by Trung Nguyen on Sat, 2023-05-06 00:00

Introduction Hello everyone! I am Trung Nguyen, also known as @trungnt2910 on GitHub and other social media sites. This year, I am a first-year computer science student at the University of Wollongong in Australia. I have been working with Haiku since 2019 as a Google Code-In participant, and since 2022 with a few occasional contributions. This summer (or actually, winter), as part of the GSoC program, I am very excited to work with my mentor @jessicah, as well as the rest of the Haiku community, to port the .

[GSoC 2023] Plans for improving Icon-O-Matic

Blog post by Zardshard on Fri, 2023-05-05 14:07

Icon-O-Matic is the editor for HVIF files, the format that Haiku’s icons are in. It’s a relatively simple but impressive aplication. It does have room for improvement, however. There are three things I am planning to do during GSoC: fix bugs, refactor the code, and improve the UI. There is a list of known bugs that Icon-O-Matic has over on Trac. You can help, too, by reporting bugs in Icon-O-Matic over there.

Haiku's (Kernel) Condition Variables API: Design & Implementation

Blog post by waddlesplash on Mon, 2023-04-24 13:00

A few months after my contract with Haiku, Inc. began, I rewrote the implementation of the Haiku kernel’s condition variables (as opposed to our userspace condition variables, which are from POSIX.) As this new implementation has run in Haiku for over a year and shipped in the latest release with no sign of any remaining issues, I figured it is high time for a deep-dive on the API, its implementation history, and the design of the new implementation I wrote.

I expect this article will be of broader interest than just to Haiku’s community, because Haiku’s condition variables API has some notable (and powerful) features not found in those of other operating systems, and its implementation is thus likewise unique (at least, as far as I have been able to figure out.)