[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. Less obviously, you can also vote for tickets that you would like to be resolved. To do this, click on the ticket that interests you, then click one of the buttons highlighted by the arrow: The buttons are in the upper-right hand corner among the navigation links

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.)

Haiku Activity & Contract Report, March 2023

Blog post by waddlesplash on Thu, 2023-04-06 16:00

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

This report covers hrev56804 through hrev56887.

Haiku Depot Server Technology Modernisation

Blog post by apl on Sun, 2023-04-02 12:00

This article is cross-posted from Andrew Lindesay’s blog here.

Java technology has been moving forward much faster in recent years with more frequent updates. Java 17 Long Term Support (LTS) was introduced in September 2021 and will be followed by Java 21 LTS in September 2023.

With HaikuDepotServer (HDS) still on Java 11 introduced in September 2018, it was time to upgrade to 17 and then also make the transition from Spring 5 to SpringBoot 3 which was released in November 2022. Spring is a base technology for SpringBoot with SpringBoot providing more configuration and functionality by convention.

Haiku Activity & Contract Report, February 2023

Blog post by waddlesplash on Sat, 2023-03-11 23:30

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

This report covers hrev56748 through hrev56803.

Haiku Activity & Contract Report, January 2023

Blog post by waddlesplash on Tue, 2023-02-14 23:30

As is the usual way of things, the monthly Activity Report is hereby combined with my Contract Report. Apologies for the delay in getting this one out; I had originally planned to publish it before the end of last week.

This report covers hrev56682 through hrev56747.

Haiku Activity & Contract Report, December 2022

Blog post by waddlesplash on Thu, 2023-01-12 23:30

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

This report covers hrev56627 through hrev56681.

HTTP Network Services Preview in R1 Beta 4

Blog post by nielx on Fri, 2022-12-30 00:00

The newest beta of Haiku includes a preview of a redesigned, modern HTTP library as the initial part of an renewed Network Services Kit. The primary goal of including the library is to get developers to experiment with it and give feedback on how it works within their software. The secondary goal is to gather some feedback on the use of modern C++ and some additional experimental features. This article provides a background to the new kit, some pointers on how to get started, and some notes on experimental designs that utilize modern C++ features.

Haiku Activity & Contract Report, November 2022

Blog post by waddlesplash on Mon, 2022-12-12 22:30

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

This report covers hrev56565 through hrev56626.

Haiku Activity & Contract Report, October 2022

Blog post by waddlesplash on Mon, 2022-11-14 23:40

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

This report covers hrev56505 to hrev56564.