Hello there, it’s time for the monthly activity report!
This report covers hrev55343-hrev55451.
app_server
PulkoMandy reworked the way the screen is taken out of DPMS power saving mode when app_server
first starts. This should have no consequences on most hardware since the screen will normally
already be up during the boot screen, but the way it was implemented led to some confusion in
existing drivers, as we tried to turn the screen on before the driver had a chance to set a video
mode on its own. So this code is moved a little later in the setup sequence.
Hi there, let’s do another activity report! You may have noticed that there were a lot of news
since the previous one, but here’s a recap in case you missed it: a new beta release, the
celebration of the 20th birthday of the Haiku project, the end of Google Summer of Code (final
evaluations are being filled in as I write this), and also news from the promotion team which was
re-launched a few months ago and is working on various things (read their own report for more details).
Hey everyone! Since the GSoC period is nearing its end therefore here’s the final report on my GSoC project Coding Style Checker Bot.
Project Description:
Haiku has its own coding guidelines which describe how the code should be formatted. There is a tool (haiku-format tool) for reformatting or checking if code follows these guidelines, but it has to be compiled on the developer machine and then run manually. My project was to create a Coding Style Checker bot that runs haiku-review tool on files submitted as a patchset in our code review system and posts the report in the patchset comments.
GSoC’s coming to an end, so it’s time for a final update: An overview of
what I’ve been working on this summer.
Project
My project was to “modernize” and write a libpurple add-on for
Caya, a multi-protocol chat program.
Ultimately, I hard-forked Caya into
Chat-O-Matic at the request of a
previous maintainer― with the name being suggested by win8linux. :-)
“Modernization” here means three things: Allowing multiple accounts in use
at once, re-orienting the program to support multi-user chats, and giving
add-ons some more flexibility.
It has rightly been said - “All good things come to an end”. Google Summer of Code too was one of the good experiences I’ve had, in the sense that I didn’t know anything about the Open Source world. It provided the exact platform that I needed to kickstart my open source contributions.
About my project:
Haiku has its own coding standards which describe how the code should be formatted. Haiku-format is a tool that reformats code according to Haiku coding style but it is not giving desired results. So, we need to format the code such that when this code is run on Haiku the coding style of code gets updated according to haiku guidelines, but it has to be compiled on the developer machine and then run manually.
Few components of Haiku are as important to the operating system and its functionality as the preferred web browser and internal project: WebPositive.
In recent days, some users have expressed concern about a “disappearing text” bug, where some text on web pages will disappear for undetermined reasons. This issue is now fixed, but highlights the reason why WebPositive is so important.
The history of WebPositive is as intricately woven into Haiku as BeOS was, and has served as a major effort for all the programmers and users of the operating system even as other web browsers are successfully ported, work for a little while, then, unfortunately, lose functionality and are abandoned.
Hello all! This is the third update from the Haiku Promotion Team.
Beta3 Released
As you have noticed, Beta3 has been released! Huge shout out to kallisti5, who was the release coordinator for Beta3. Making a major release of Haiku is a daunting task to all involved!
New Team Members
Since I last wrote in March this year, we welcomed the following members to the Team:
- animortis
- AlwaysLivid
- jeremyf
Switching to IRC/Matrix
It was brought to our attention that the way the Promotion Team communicated was not a very transparent one – we communicated through a group private message on the Haiku forums. Thus, the decision was made to switch to IRC/Matrix, because it is a trusted technology, and it can be accessed from all major platforms including Haiku. Now, anyone can see what we are discussing and working on and can participate in our discussions! If you wish to join, we have a discussion room at #haiku-promo on OFTC, with bridges to Matrix.
This blog will contain all the information about what I have done till now.
I started with the input preferences directory and started solving the issues according to haiku guidelines.
A few changes have been made to clang-format. This work takes a lot of time because it needs a complete understanding of how the llvm code works. As there was number of files, it was difficult to figure out which file should contain the solution of the problem but PulkoMandy really helps me alot.
While working on this project I learn new things which were really good!
Tl;dr I have completed the bot with basic functionality for my local gerrit instance
Link to Introductory blog
Link to Progress 1
Link to Progress 2
As I have said before I divided my project in the following parts
- For every event (change, patch etc.), trigger the Concourse CI pipeline.
- Implement pipeline in concourse CI for fetching the Git repo and running the haiku-format tool on the relevant files and creating appropriate reports out of the tool.
- Implement REST API call to post the result back to Gerrit reviews as a robot comment.
Since last time I started working on creating a report that could be displayed under patchset comments by the bot. I started by looking at various flags of clang-format
command out of which --dry-run
, --Werror
seemed to be working just fine. But I wanted to run the tool only on the files that have been updated/added since last commit and not the entire project. Eventually I found a better way for this i.e. git-clang-format
python script which is already present in the llvm project. After installing clang-format
, we just need to put this script in /usr/bin/
folder. We can invoke the script using git clang-format
directly. git clang-format --diff --style=haiku HEAD~1
would run clang-format
with haiku style on the files that have been updated/added since last commit and showcase the diff of it. In order to use this diff information later I dumped the output of the previous command in a file named diff.txt
. To use it in my concourse workflow, I added the git-clang-format
script on my local server that I created last time using golang to host the clang-format
file. Now this seemed rather promising so I went ahead onto the next task i.e. Implement REST API call to post the result back to Gerrit reviews as a robot comment.