Why do some of our projects get more updates than others?
Our release cadence involves setting up a set of rules that every release of every project must follow. Nitrocid follows a ten-year release support window for long-term support releases, while short-term releases get 9 months of updates. So, the question here is why do some of our projects, such as Terminaux and Nitrocid, get more releases that focus on improvements and bug fixes than other projects, such as Textify and Magico?
Projects’ release cadence and methods vary from project to project, and goals are set for each project. Some of our projects require constant maintenance as part of following the best practices of testing our projects. Some projects, such as Terminaux, are more complex both in features and in source code, and require constant maintenance to give you the best experience possible, while others like Textify don’t require this much maintenance.
For example, Terminaux gets more and more updates as bugs are spotted and improvements are planned to ensure better application experience for everyone. As part of our commitment into high quality projects, just week, we’ve set a release cadence for future Terminaux releases as we have introduced long-term support versions as its API reached maturity thanks to the latest improvements done in both 7.0 and 8.0.
On the other hand, Textify, Nettify, and other libraries have already maintained static API and didn’t need as much maintenance. Last year, Textify received just fourteen releases to make mild modifications to the library according to the requirements of frequently-updated projects like Terminaux. Update frequency to such projects are often low, and updates are made based on what features are needed.
This is not only the factor that caused this update frequency variation, but project goals, scopes, features, and other factors have also affected the frequency for various projects.
Terminaux, given the goal of the project (which is to provide a console app framework for interactive textual user interface applications and advanced CLI applications), needs to be able to reliably provide various advanced console-related features, such as console resizing in TUIs, mouse support in TUIs, and true color console writing facility with more than 16 million colors (16,777,216 colors). Not only that, but Terminaux needs to be able to provide interactive CLI applications an ability to read a line with some of the advanced features, such as syntax highlighting (reminiscent to that of PowerShell), history system (similar to Bash and ZSH), positional reading for text boxes, and, most importantly, Chinese-Japanese-Korean (CJK) and Emoji support.
Nitrocid provides an operating system simulator, despite its branding as a kernel simulator, because it is a console application that provides simulated components, such as the kernel (when it comes to hardware recognition, booting up), the log-in system, and the shell. Because of its aim to be configurable and flexible, features like the configuration manager and the kernel driver manager were introduced to the simulated environment. Nitrocid, alone, relies on Terminaux and other dependencies to perform basic operations, and, without those dependencies, wouldn’t have been possible. Nitrocid started as a standalone application in 2018 before having some of its code branched out to new libraries, such as Textify and Terminaux.
However, projects like Textify only focus on one goal. For example, Textify focuses on providing text extensions, while also provides some of the addons, such as providing a set of words and names. This is very simple, predictable, and doesn’t require constant maintenance, but we run continuous tests from time to time, and release updates as necessary.
For this reason, you’ll see that some of our projects rely on frequent updates to integrate stability improvements and bug fixes, while others get their updates slowly and when required. Some of the major updates, especially those on Nitrocid, take multiple months to plan blueprints, add features, and fix bugs. Nitrocid 0.1.0 took more than 18 months to finally materialize, given that the release was a foundational release that went through 9 milestones, 3 betas, and a release candidate, because of how complex the plan was. Our mission was to get it out of the “alpha” stage that stayed for six years.
To summarize, complexity in frequently-updated projects often require updates to address issues that may have cropped up during our testing. Of course, user reports also help us in eliminating bugs in our projects.
#bassboom #news #nitrocid #Tech #Technology #terminaux #update