Files
boostlook/preview/contributor-guide/release-process.html

468 lines
19 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1">
<style>html.fonts-loading{visibility:hidden;opacity:0}</style>
<script>document.documentElement.classList.add('fonts-loading');</script>
<link rel="preload" href="../_/font/NotoSansDisplay.woff2" as="font" type="font/woff2" crossorigin="anonymous" />
<link rel="preload" href="../_/font/NotoSansDisplay-Italic.woff2" as="font" type="font/woff2" crossorigin="anonymous" />
<link rel="preload" href="../_/font/MonaspaceNeon-Var.woff2" as="font" type="font/woff2" crossorigin="anonymous" />
<link rel="preload" href="../_/font/MonaspaceXenon-Var.woff2" as="font" type="font/woff2" crossorigin="anonymous" />
<script>
(function() {
'use strict';
var revealed = false;
var reveal = function() {
if (revealed) return;
revealed = true;
document.documentElement.classList.remove('fonts-loading');
};
setTimeout(reveal, 3000);
if (!('FontFace' in window) || !('fonts' in document)) {
setTimeout(reveal, 100);
return;
}
var uiRoot = '../_';
var fonts = [
{
family: 'Noto Sans',
url: uiRoot + '/font/NotoSansDisplay.woff2',
descriptors: { style: 'normal', weight: '100 900', stretch: '62.5% 100%' }
},
{
family: 'Noto Sans',
url: uiRoot + '/font/NotoSansDisplay-Italic.woff2',
descriptors: { style: 'italic', weight: '100 900', stretch: '62.5% 100%' }
},
{
family: 'Monaspace Neon',
url: uiRoot + '/font/MonaspaceNeon-Var.woff2',
descriptors: { style: 'normal', weight: '400' }
},
{
family: 'Monaspace Xenon',
url: uiRoot + '/font/MonaspaceXenon-Var.woff2',
descriptors: { style: 'italic', weight: '400' }
}
];
var loadPromises = fonts.map(function(f) {
try {
var face = new FontFace(f.family, 'url("' + f.url + '")', f.descriptors);
return face.load().then(function(loaded) {
document.fonts.add(loaded);
return loaded;
}).catch(function() {
return null;
});
} catch (e) {
return Promise.resolve(null);
}
});
Promise.all(loadPromises)
.then(function() {
return document.fonts.ready;
})
.then(reveal)
.catch(reveal);
})();
</script> <title>Release Process :: Boost Site Docs</title>
<link rel="canonical" href="https://boost.revsys.dev/contributor-guide/release-process.html">
<link rel="prev" href="docs/logo-policy-media-guide.html">
<link rel="next" href="release-notes.html">
<meta name="generator" content="Antora 3.1.14">
<link rel="stylesheet" href="../_/css/boostlook.css">
<link rel="stylesheet" href="../_/css/site.css">
<link rel="stylesheet" href="../_/css/vendor/tabs.css">
<script>
(function() {
if (window.self !== window.top) return;
var theme = localStorage.getItem('antora-theme');
if (!theme && window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
theme = 'dark';
}
if (theme === 'dark') document.documentElement.classList.add('dark');
})();
</script>
<script>var uiRootPath = '../_'</script>
<link rel="icon" href="../_/img/favicons/favicon.ico" type="image/x-icon">
<!-- Favicon configuration -->
<link rel="apple-touch-icon" sizes="180x180" href="../_/img/favicons/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="../_/img/favicons/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="../_/img/favicons/favicon-16x16.png">
<link rel="manifest" href="../_/img/favicons/site.webmanifest">
<link rel="shortcut icon" href="../_/img/favicons/favicon.ico">
</head>
<body class="article toc2 toc-left">
<div class="boostlook">
<script type="module">import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.esm.min.mjs'; mermaid.initialize({"startOnLoad":true});</script> <div id="header">
<div id="toc" class="nav-container toc2" data-component="contributor-guide" data-version="">
<aside class="nav">
<button class="nav-close"></button>
<div class="panels">
<div class="nav-panel-menu is-active" data-panel="menu">
<nav class="nav-menu">
<div class="title-row">
<h3 class="title"><a href="index.html">Contributor Guide</a></h3>
<button class="theme-toggle" aria-label="Toggle dark mode" title="Toggle theme" style="display:none">
<i class="fas fa-sun theme-icon-light"></i>
<i class="fas fa-moon theme-icon-dark"></i>
</button> </div>
<ul class="nav-list">
<ul class="nav-list">
<li class="" data-depth="1">
<a class="nav-link" href="getting-involved.html">Getting Involved</a>
</li>
<li class="" data-depth="1">
<a class="nav-link" href="contributors-faq.html">Contributors FAQ</a>
</li>
<li class="" data-depth="1">
<span class="nav-text">Requirements</span>
</li>
<ul class="nav-list">
<li class="" data-depth="2">
<a class="nav-link" href="requirements/library-requirements.html">Library</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="requirements/license-requirements.html">License</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="requirements/portability-requirements.html">Portability</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="requirements/organization-requirements.html">Organization</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="requirements/library-metadata.html">Metadata</a>
</li>
</ul>
<li class="" data-depth="1">
<span class="nav-text">Design</span>
</li>
<ul class="nav-list">
<li class="" data-depth="2">
<a class="nav-link" href="design-guide/design-best-practices.html">Best Practices</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="design-guide/headers.html">Headers</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="design-guide/backwards-compatibility.html">Backwards Compatibility</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="design-guide/separate-compilation.html">Separate Compilation</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="design-guide/dependencies.html">Dependencies</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="design-guide/borland.html">Borland Portability</a>
</li>
</ul>
<li class="" data-depth="1">
<span class="nav-text">Development</span>
</li>
<ul class="nav-list">
<li class="" data-depth="2">
<a class="nav-link" href="version-control.html">Version Control</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="best-practices.html">Best Practices</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="debug-visualisers.html">Debug Visualizers</a>
</li>
</ul>
<li class="" data-depth="1">
<span class="nav-text">Testing</span>
</li>
<ul class="nav-list">
<li class="" data-depth="2">
<a class="nav-link" href="testing/intro.html">Introduction</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="testing/test-policy.html">Test Policy</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="testing/boost-test-matrix.html">Test Matrix</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="testing/regression-tests.html">Local Regression Tests</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="testing/writing-tests.html">Writing Tests</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="testing/sanitizers.html">Sanitizers</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="testing/continuous-integration.html">Continuous Integration</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="testing/fuzzing.html">Fuzzing</a>
</li>
</ul>
<li class="" data-depth="1">
<span class="nav-text">The Super-Project</span>
</li>
<ul class="nav-list">
<li class="" data-depth="2">
<a class="nav-link" href="superproject/overview.html">Layout</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="superproject/getting-started.html">Getting Started</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="superproject/library-maintenance.html">Library Maintenance</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="superproject/library-workflow.html">Library Workflow</a>
</li>
</ul>
<li class="" data-depth="1">
<span class="nav-text">Writing Documentation</span>
</li>
<ul class="nav-list">
<li class="" data-depth="2">
<a class="nav-link" href="docs/layout.html">Guidelines</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="docs/content.html">Content</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="docs/components.html">Components</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="docs/antora.html">Antora Guide</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="docs/asciidoc.html">AsciiDoc Style Guide</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="docs/logo-policy-media-guide.html">Logo Policy and Media Guide</a>
</li>
</ul>
<li class="" data-depth="1">
<span class="nav-text">Releases</span>
</li>
<ul class="nav-list">
<li class=" is-current-page" data-depth="2">
<a class="nav-link" href="release-process.html">Release Process</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="release-notes.html">Release Notes</a>
</li>
</ul>
<li class="" data-depth="1">
<span class="nav-text">Contributor Community</span>
</li>
<ul class="nav-list">
<li class="" data-depth="2">
<a class="nav-link" href="contributor-community-introduction.html">Introduction</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="oversight-committee.html">Fiscal Sponsorship Committee</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="tweeting.html">Tweeting</a>
</li>
<li class="" data-depth="2">
<a class="nav-link" href="site-docs-style-guide.html">Site-docs Style Guide</a>
</li>
</ul>
<li class="" data-depth="1">
<span class="nav-text">Appendices</span>
</li>
<ul class="nav-list">
<li class="" data-depth="2">
<a class="nav-link" href="organization-guide.html">Organization Guide</a>
</li>
</ul>
</ul>
</ul>
</nav>
</div>
</div>
</aside>
</div>
</div> <div id="content">
<article class="doc max-width-reset">
<div class="toolbar" role="navigation">
<button class="nav-toggle"></button>
<nav class="breadcrumbs" aria-label="breadcrumbs">
<ul>
<li>
<a href="index.html" aria-label="Home: Contributor Guide">
<svg xmlns="http://www.w3.org/2000/svg" width="1rem" height="1rem" viewBox="0 -960 960 960" fill="#000000" aria-hidden="true"><path d="M160-120v-480l320-240 320 240v480H560v-280H400v280H160Z"/></svg>
</a>
</li>
<li>Releases</li>
<li><a href="release-process.html">Release Process</a></li>
</ul>
</nav>
<div class="spirit-nav">
<a accesskey="p" href="docs/logo-policy-media-guide.html">
<span class="material-symbols-outlined" title="Previous: Logo Policy and Media Guide">arrow_back</span>
</a>
<a class="disabled" accesskey="u" aria-disabled="true" tabindex="-1">
<span class="material-symbols-outlined" title="Up:">arrow_upward</span>
</a>
<a accesskey="n" href="release-notes.html">
<span class="material-symbols-outlined" title="Next: Release Notes">arrow_forward</span>
</a>
</div></div>
<h1 class="page">Release Process</h1>
<div id="preamble">
<div class="sectionbody">
<div class="paragraph">
<p>The Boost libraries are released publicly three times per year:</p>
</div>
<div class="ulist circle">
<ul class="circle">
<li>
<p>Second week of April</p>
</li>
<li>
<p>Second week of August</p>
</li>
<li>
<p>Second week of December</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Each release will contain updates to existing libraries, and some releases will contain new libraries. The release is built from the <strong>master</strong> branch of Boost&#8217;s GitHub site: <a href="https://github.com/boostorg/boost" class="bare">https://github.com/boostorg/boost</a>.</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="#_preparing_for_a_boost_release">Preparing for a Boost Release</a></p>
</li>
<li>
<p><a href="#_boost_regression_testing">Boost Regression Testing</a></p>
</li>
<li>
<p><a href="#_milestones_in_the_release_cycle">Milestones in the Release Cycle</a></p>
</li>
<li>
<p><a href="#_see_also">See Also</a></p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_preparing_for_a_boost_release"><a class="anchor" href="#_preparing_for_a_boost_release"></a>Preparing for a Boost Release</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The release managers set the release timeline, which involves planning deadlines for library submissions, reviews, and incorporation into the repository.</p>
</div>
<div class="paragraph">
<p>Once the release timeline is set, library maintainers work to prepare their libraries for the release. This involves updating documentation, fixing bugs, and addressing any compatibility issues. Additionally, library maintainers ensure that their libraries pass the Boost regression tests, which help identify potential problems before the release.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_boost_regression_testing"><a class="anchor" href="#_boost_regression_testing"></a>Boost Regression Testing</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Boost regression testing is an essential part of the release process, ensuring the quality and compatibility of the libraries. The Boost community maintains a set of regression tests, which are run on a diverse range of platforms and compilers. The tests are performed by volunteers who contribute their computing resources to the project.</p>
</div>
<div class="paragraph">
<p>The results of the regression tests are published on the Boost website, providing library maintainers and users with up-to-date information about the library&#8217;s compatibility and performance. Library maintainers use this information to identify and fix any issues before the release.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_milestones_in_the_release_cycle"><a class="anchor" href="#_milestones_in_the_release_cycle"></a>Milestones in the Release Cycle</h2>
<div class="sectionbody">
<div class="paragraph">
<p>There is a strict countdown to a public release.</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1">7 Weeks Prior to Release Date</dt>
<dd>
<p>The <strong>master</strong> branch is closed to all check ins, except bug fixes and quality checks.</p>
</dd>
<dt class="hdlist1">6 Weeks Prior to Release Date</dt>
<dd>
<p>The <strong>master</strong> branch is closed to major code changes. There can be no rewrites of code, even to fix issues.</p>
</dd>
<dt class="hdlist1">5 Weeks Prior to Release Date</dt>
<dd>
<p>The <strong>master</strong> branch is closed to all check ins, except with permission from the release committee.</p>
</dd>
<dt class="hdlist1">4 days Prior to Beta Release Date</dt>
<dd>
<p>The <strong>master</strong> branch is closed. Beta release candidates are built.</p>
</dd>
<dt class="hdlist1">4 Weeks Prior to Release Date</dt>
<dd>
<p>The Beta release is published to the Boost site. The <strong>master</strong> branch is opened to small bug fixes and documentation changes. Permission from the release committee is required for larger changes.</p>
</dd>
<dt class="hdlist1">1 Week Prior to Release Date</dt>
<dd>
<p>The <strong>master</strong> branch is closed to all check ins, except high-priority fixes.</p>
</dd>
<dt class="hdlist1">4 Days Prior to Release Date</dt>
<dd>
<p>The <strong>master</strong> branch is closed. Release candidates are built.</p>
</dd>
<dt class="hdlist1">Day of Release</dt>
<dd>
<p>The release candidate is published to the Boost site. The <strong>master</strong> branch is opened for all check ins.</p>
<div class="paragraph">
<p>If issues are found with a release candidate that are important enough to address quickly (that is, before the next full public release), then a point release will be built when fixes are available and tested. This will not typically result in the <strong>master</strong> branch being closed to other check ins.</p>
</div>
</dd>
</dl>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_see_also"><a class="anchor" href="#_see_also"></a>See Also</h2>
<div class="sectionbody">
<div class="paragraph">
<p>For details of the Release Process that are pertinent to users, refer to the
User Guide <a href="../user-guide/release-process.html" class="xref page">Release Process</a>.</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="testing/boost-test-matrix.html" class="xref page">Test Matrix</a></p>
</li>
<li>
<p><a href="../formal-reviews/review-results.html" class="xref page">Formal Review Schedule</a></p>
</li>
</ul>
</div>
</div>
</div>
<div class="edit-this-page">
<a href="file:///Users/julio/dev/website-v2-docs/contributor-guide/modules/ROOT/pages/release-process.adoc">Edit this Page</a>
</div>
<nav class="pagination">
<span class="prev"><a href="docs/logo-policy-media-guide.html">Logo Policy and Media Guide</a></span>
<span class="next"><a href="release-notes.html">Release Notes</a></span>
</nav>
</article>
</div>
<div id="footer">
<script id="site-script" src="../_/js/site.js" data-ui-root-path="../_"></script>
<script async src="../_/js/vendor/highlight.js"></script>
<script async src="../_/js/vendor/tabs.js" data-sync-storage-key="preferred-tab"></script>
</div>
</div>
</body>
</html>