{"id":203,"date":"2025-12-09T01:31:06","date_gmt":"2025-12-08T14:31:06","guid":{"rendered":"https:\/\/securelang.net\/cms\/?p=203"},"modified":"2025-12-09T01:31:06","modified_gmt":"2025-12-08T14:31:06","slug":"release-planning-1-x-x","status":"publish","type":"post","link":"https:\/\/securelang.net\/cms\/blog\/2025\/12\/09\/release-planning-1-x-x\/","title":{"rendered":"Release Planning 1.x.x"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Platform-First Planning<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The main goal is to develop a usable general-purpose operating system platform, not to finish one individual component to perfection or to achieve complete technological self-sufficiency. However, being very interdependent, the OS &#8220;release versions&#8221; should coincide with some individual components becoming more stable.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Necessary &amp; Nice Features<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">For an okay-ish release version it will be <strong>necessary<\/strong> to finish some things:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>More documentation (especially of bugs\/limitations)<\/li>\n\n\n\n<li>Reasonably stable kernel<\/li>\n\n\n\n<li>Reliable demos<\/li>\n\n\n\n<li>Some useful drivers\/modules<\/li>\n\n\n\n<li>Build system improvements for &#8220;release builds&#8221;<\/li>\n\n\n\n<li>Downloads &amp; backups for each release<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">For a perfect release version it would be <strong>nice<\/strong> to have:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Fully new kernel code<\/li>\n\n\n\n<li>Bug-free C compiler<\/li>\n\n\n\n<li>Fully self-hosting codebase edit\/compile\/test<\/li>\n\n\n\n<li>Extensive manual pages<\/li>\n\n\n\n<li>Usable graphics\/networking support<\/li>\n\n\n\n<li>Full packaging &amp; versioning of each component<\/li>\n\n\n\n<li>Lots of new kernel features like dynamic modules<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">A Modest 1.x Release Plan<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The &#8220;necessary&#8221; features can be thrown together very easily in a limited form if need be but working towards &#8220;nice&#8221; features should dictate the actual targets for a meaningful &#8220;point zero&#8221; release.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So I&#8217;ll revise my planning a little as I do further tests but I&#8217;ll probably drop a &#8220;first full release&#8221; version once I&#8217;ve finished off some more &#8220;nice&#8221; features.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">A Possible Trick<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">As most of the code doesn&#8217;t currently have a versioning scheme but is already in a mostly working state, one trick I might use is to just bump up the kernel version automatically to 1.x.x based on the xx% replacement of legacy code and base the platform version on that.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This would make the initial releases smooth 1.x.x values starting around 1.7.0 or 1.8.0 while avoiding any possibility of perpetual &#8220;0.9.9 final beta 10 almost finished&#8221; type releases, while an eventual 2.0 release down the track would be the &#8220;fully new kernel code &amp; stable API&#8221; release.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">On the other hand if these milestones approach too quickly it would be pointless to call a final version 2.0 I might as well just do 0.8, 0.9, 1.0. So I&#8217;ll see how I go with some upcoming features and work from there!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Platform-First Planning The main goal is to develop a usable general-purpose operating system platform, not to finish one individual component to perfection or to achieve complete technological self-sufficiency. However, being very interdependent, the OS &#8220;release versions&#8221; should coincide with some individual components becoming more stable. Necessary &amp; Nice Features For an okay-ish release version it [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"pagelayer_contact_templates":[],"_pagelayer_content":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-203","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/securelang.net\/cms\/wp-json\/wp\/v2\/posts\/203","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/securelang.net\/cms\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/securelang.net\/cms\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/securelang.net\/cms\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/securelang.net\/cms\/wp-json\/wp\/v2\/comments?post=203"}],"version-history":[{"count":1,"href":"https:\/\/securelang.net\/cms\/wp-json\/wp\/v2\/posts\/203\/revisions"}],"predecessor-version":[{"id":204,"href":"https:\/\/securelang.net\/cms\/wp-json\/wp\/v2\/posts\/203\/revisions\/204"}],"wp:attachment":[{"href":"https:\/\/securelang.net\/cms\/wp-json\/wp\/v2\/media?parent=203"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/securelang.net\/cms\/wp-json\/wp\/v2\/categories?post=203"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/securelang.net\/cms\/wp-json\/wp\/v2\/tags?post=203"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}