As is the usual way of things, the monthly Activity Report is hereby combined with my Contract Report.
This report covers hrev56962 through hrev57061. It was quite a busy month!
I have fixed three memory leaks. Before, leak_analyser.sh found 75 leaks from simply opening and closing Icon-O-Matic. It now reports only 27.
I am now planning to implement a new shape type called “reference images”. This implements ticket #2748. As discussed in the ticket, having a reference image in the background greatly assists in vectorizing it. Reference images are just for reference. They will not be exported to the final HVIF file.
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.sh, which was made for finding memory leaks, exactly like AddressSanitizer! It was a good thing I had decided against porting AddressSanitizer to Haiku. I now want to work on getting rid of the memory leaks from Icon-O-Matic.
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 .NET on Haiku.
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.so
instead of libroot.so
. This can be done using the LD_PRELOAD
environment variable. Once loaded, the MALLOC_DEBUG
environment variable can be used to set various options. PulkoMandy added some notes to the end of “Using malloc_debug to Find Memory Related Bugs” describing what options are available. Relevant to finding memory leaks are enabling the guarded heap with g
, dumping memory that is still allocated on exit (most of which should have been freed before the program exited and are memory leaks) with e
, and telling it to show a stack trace with up to 50 items with s50
. Putting it all together, the command to run a program with memory leak detection is LD_PRELOAD=libroot_debug.so MALLOC_DEBUG=ges50 program
.
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:
As is the usual way of things, the monthly Activity Report is hereby combined with my Contract Report.
This report covers hrev56888 through hrev56961.
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

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.cpp
file about 4 years ago.
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 .NET Developer Platform to Haiku.