CINXE.COM

Bazel Q2 2024 Community Update - Bazel

<!DOCTYPE html> <html lang="en" itemscope itemtype="https://schema.org/WebPage"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Bazel Q2 2024 Community Update - Bazel</title> <link rel="canonical" href="/2024/07/22/bazel-q2-2024-community-update.html"> <link rel="alternate" type="application/rss+xml" title="Bazel Blog" href="/feed.xml"> <!-- Webfont --> <link href="//fonts.googleapis.com/css?family=Source+Code+Pro:400,500,700|Open+Sans:400,600,700,800" rel="stylesheet"> <link rel="icon" type="image/png" href="/images/favicon-32x32.png" sizes="32x32"> <link rel="icon" type="image/png" href="/images/favicon-16x16.png" sizes="16x16"> <!-- Bootstrap --> <link href="/assets/css/bootstrap.min.css" rel="stylesheet"> <link href="/assets/css/font-awesome.min.css" rel="stylesheet"> <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> <!-- WARNING: Respond.js doesn't work if you view the page via file:// --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <![endif]--> <!-- Custom stylesheet --> <link rel="stylesheet" type="text/css" href="/css/main.css"> <!-- metadata --> <meta name="og:title" content="Bazel Q2 2024 Community Update"> <meta name="og:image" content="https://bazel.build/images/bazel-og-image.png"> <!-- Twitter card - https://developer.twitter.com/en/docs/tweets/optimize-with-cards/overview/abouts-cards --> <meta name="twitter:card" value="summary" /> </head> <body> <nav id="common-nav" class="navbar navbar-inverse navbar-fixed-top"> <div class="container"> <!-- Brand and toggle get grouped for better mobile display --> <div class="navbar-header"> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="https://bazel.build/"> <img class="navbar-logo" src="/images/bazel-navbar.svg"> </a> </div> <!-- Collect the nav links, forms, and other content for toggling --> <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> <ul class="nav navbar-nav navbar-right"> <li> <a href="https://github.com/bazelbuild/bazel"> <span class="hidden-sm">GitHub</span> <span class="nav-icon visible-sm"><i class="fa fa-github"></i></span> </a> </li> </ul> <form class="navbar-form navbar-right" action="/search.html" id="cse-search-box"> <div class="form-group"> <input type="hidden" name="cx" value="012346921571893344015:xv_nfgpzbu4"> <input type="hidden" name="cof" value="FORID:10"> <input type="hidden" name="ie" value="UTF-8"> <input type="search" name="q" class="form-control input-sm" placeholder="Search"> </div> </form> <ul class="nav navbar-nav navbar-right"> <li> <a href="https://bazel.build/docs">Documentation</a> </li> <li> <a href="https://bazel.build/contributing.html">Contribute</a> </li> <li> <a href="https://blog.bazel.build"> <span class="hidden-sm">Blog</span> <span class="nav-icon visible-sm"><i class="fa fa-rss"></i></span> </a> </li> <li> <a href="https://twitter.com/bazelbuild"> <span class="visible-xs">Twitter</span> <span><i class="nav-icon fa fa-twitter hidden-xs"></i></span> </a> </li> <li> <a href="http://stackoverflow.com/questions/tagged/bazel"> <span class="visible-xs">StackOverflow</span> <span><i class="nav-icon fa fa-stack-overflow hidden-xs"></i></span> </a> </li> </ul> </div><!-- /.navbar-collapse --> </div><!-- /.container-fluid --> </nav> <div class="page-title-bar"> <div class="container"> <h1>Bazel Blog</h1> </div> </div> <div class="container vpad"> <div class="row"> <div class="col-lg-9"> <div class="blog-post"> <h1 class="blog-post-title">Bazel Q2 2024 Community Update</h1> <div class="blog-post-meta"> By <a href="https://github.com/karolinakalin">Karolina Kalin</a> and <a href="https://github.com/keertk">Keerthana Kumar</a> on <span class="text-muted">22 July 2024</span> </div> <div class="blog-post-content"> <h2>Announcements</h2> <h3>BazelCon 2024</h3> <p>The Bazel community, in partnership with The Linux Foundation, is excited to announce <a href="https://blog.bazel.build/2023/05/25/save-the-date-bazelcon2023.html">BazelCon 2024</a>, taking place on October 14-15 at the Computer History Museum in Mountain View, CA.</p> <p>Thanks to our sponsors, Google, BuildBuddy, EngFlow, Trace Machina, AspectBuild, Gradle, Tweag, and VirtusLab, we invite you to join us for two days of insightful presentations, networking opportunities, and engaging discussions on all things Bazel. <a href="https://events.linuxfoundation.org/bazelcon/">Registration</a> is now open.</p> <p>We can’t wait to see you there!</p> <p><img src="/assets/bazel-q2-2024-bazelcon.png"/></p> <h3>Developer satisfaction survey results</h3> <p>Thank you to everyone that participated in our Q1 2024 developer satisfaction survey! We&#39;ve read through all submissions and we hear your feedback. While the majority of respondents expressed satisfaction with Bazel, we acknowledge the concerns raised and recognize the areas for improvement.</p> <p>Key takeaways from the survey include:</p> <ul> <li>Strong satisfaction with remote caching, Starlark, and community engagement.</li> <li>Challenges with IDE integrations and the transition to Bzlmod.</li> <li>High demand for improved documentation on writing rules and multi-platform builds.</li> <li>The need for more beginner-friendly resources and clearer documentation on version-specific features.</li> </ul> <p>Your feedback is invaluable as we prioritize future improvements. We appreciate your patience and continued support as we strive to make Bazel even better. Stay tuned for more updates!</p> <h2>Product updates</h2> <h3>Releases</h3> <p>Bazel <a href="https://github.com/bazelbuild/bazel/releases/tag/7.2.0">7.2.0</a> was released in Q2 ‘24, along with patch releases <a href="https://github.com/bazelbuild/bazel/releases/tag/7.2.1">7.2.1</a> and <a href="https://github.com/bazelbuild/bazel/releases/tag/7.1.2">7.1.2</a>.</p> <p>Bazel 7.3.0 is in progress and scheduled to be released in August. Follow the <a href="https://github.com/bazelbuild/bazel/issues/22677">release tracker issue</a> for updates.</p> <h3>Improvement of versioned docs</h3> <p>Thanks to Fabian Meumertzheim’s contribution (<a href="https://github.com/bazelbuild/bazel/pull/22725">#22725</a>), you can now easily switch between different versions of the same page in the versioned docs. Take a look at the example below.</p> <p><img src="/assets/bazel-q2-2024-versioneddocs.png"/></p> <h3>Enforcement of cherry-pick criteria</h3> <p>To help keep Bazel stable, minimize regressions, and reduce the need for frequent patch releases, we&#39;d like to enforce some of our rules for code changes after the first release candidate is released. This means:</p> <ul> <li>Only high-priority / critical fixes will be accepted</li> <li>New features will be postponed to the next release</li> </ul> <p>Take a look at the <a href="https://bazel.build/release">release page</a> for more details.</p> <h2>Community corner</h2> <p>The community went on a creative spree this quarter! A huge thank you to all the authors that contributed their time and knowledge to create amazing educational content for all Bazel users. 🔥</p> <ul> <li><a href="https://www.buildbuddy.io/blog/debugging-slow-bazel-builds/">Why is my Bazel build so slow?</a> <em>by Maggie Lou (BuildBuddy)</em></li> <li><a href="https://blog.aspect.build/run-tools-installed-by-bazel">Running local tools installed by Bazel</a> <em>by Alex Eagle (AspectBuild)</em></li> <li><a href="https://www.gisli.games/understanding-bazel">Understanding Bazel</a> <em>by Gísli Konráðsson</em></li> <li><a href="https://testdriven.io/blog/bazel-builds/">Reproducible Builds with Bazel</a> <em>by Gaspare Vitta</em></li> <li><a href="https://blog.engflow.com/2024/03/28/bazel-bites-a-tasty-metaphor-for-streamlined-builds/">Bazel Bites: A Tasty Metaphor for Streamlined Builds</a> <em>by Sarah Adams and Shelby Neubeck (EngFlow)</em></li> <li><a href="https://blog.engflow.com/2024/05/13/the-many-caches-of-bazel/">The Many Caches of Bazel</a> <em>by Benjamin Peterson (EngFlow)</em></li> <li><a href="https://steven.casagrande.io/articles/sysroot-generation-toolchains-llvm">Sysroot package generation for use with toolchains_llvm</a> <em>by Steven Casagrande</em></li> <li><a href="https://github.com/bazelbuild/vscode-bazel/issues/1#issuecomment-2177094540">Open-source a language server for .bazelrc config files (demo)</a> <em>by Adrian Vogelsgesang</em></li> </ul> <p><strong>Bazel Pod - Aspect Insights</strong></p> <p>The Aspect Build team, with Alex Eagle as a host, created a Bazel podcast! </p> <ul> <li><a href="https://www.youtube.com/watch?v=-O8VGbjiCF4&list=PLLU28e_DRwdtpojOqWM5UeFyxad7m9gCF&index=1">Bazel&#39;s Tracing and Logging Facilities</a> <em>with Tiago Quelhas</em></li> <li><a href="https://www.youtube.com/watch?v=otOxcuFWBtk&list=PLLU28e_DRwdtpojOqWM5UeFyxad7m9gCF&index=2">What&#39;s new in Bazel 7.2</a> <em>with Brentley Jones</em></li> </ul> <p>You can listen to other episodes in the YouTube <a href="https://www.youtube.com/playlist?list=PLLU28e_DRwdtpojOqWM5UeFyxad7m9gCF">playlist</a>.</p> <p><strong>Amsterdam Bazel Community Day</strong></p> <p>On March 25th, EngFlow (<a href="https://blog.engflow.com/2024/04/30/amsterdam-bazel-community-day---engflow--bookingcom/">recap</a>) and Booking.com (<a href="https://medium.com/booking-com-development/bazelday-amsterdam-2024-at-booking-com-a9d49b88c301">recap</a>) held the 7th Bazel Community in the Booking.com headquarters. Check out the recordings of the sessions:</p> <ul> <li><a href="https://www.youtube.com/watch?v=KJMdI9IaZ3E&list=PLxx_fSA_YtcUJ2_CyNFbKwUEAyvA1CLVC&index=1&t=5s&pp=iAQB">Opening remarks</a> <em>by Helen Altshuler</em></li> <li><a href="https://www.youtube.com/watch?v=a6ySQK1OBUo&list=PLxx_fSA_YtcUJ2_CyNFbKwUEAyvA1CLVC&index=2&pp=iAQB">Adopting Bazel At Booking: A Bumpy Road</a> <em>by Manuel Naranjo (Booking.com)</em></li> <li><a href="https://www.youtube.com/watch?v=jQ_-Xmg-wVA&list=PLxx_fSA_YtcUJ2_CyNFbKwUEAyvA1CLVC&index=3&pp=iAQB">Reproducible Cloud-Based Dev Environments For Bazel</a> <em>by Antonio Di Stefano and Jan Keromnes (EngFlow)</em></li> <li><a href="https://www.youtube.com/watch?v=pBKeHlQClfY&list=PLxx_fSA_YtcUJ2_CyNFbKwUEAyvA1CLVC&index=4&pp=iAQB">Bazel And Intellij 2024: State of IDE Integration</a> <em>by Justin Kaeser (Jetbrains)</em></li> <li><a href="https://www.youtube.com/watch?v=wwK3RIDZYZE&list=PLxx_fSA_YtcUJ2_CyNFbKwUEAyvA1CLVC&index=5&pp=iAQB">Lessons Learned: Adopting Bazel At Salesforce</a> <em>by Gunnar Wagenknecht (Salesforce)</em></li> </ul> <h2>Resources</h2> <ul> <li>GitHub repository: <a href="https://github.com/bazelbuild/bazel">https://github.com/bazelbuild/bazel</a></li> <li>Releases: <a href="https://github.com/bazelbuild/bazel/releases">https://github.com/bazelbuild/bazel/releases</a></li> <li>Slack chat: <a href="https://slack.bazel.build">https://slack.bazel.build</a></li> <li>Google group: bazel-discuss@googlegroups.com</li> <li>Special Interest Groups (SIG):</li> </ul> <p>Reach out the email(s) listed below if you’d like to be added to the SIG calendar invites.</p> <table><thead> <tr> <th><strong>SIG</strong></th> <th><strong>Meeting frequency</strong></th> <th><strong>Point of contact</strong></th> </tr> </thead><tbody> <tr> <td><a href="https://github.com/bazelbuild/community/tree/main/sigs/rules-authors">Rules authors</a></td> <td>Every two weeks</td> <td>bazel-contrib@googlegroups.com</td> </tr> <tr> <td>Android app development</td> <td>Monthly</td> <td>ahumesky@google.com</td> </tr> <tr> <td><a href="https://github.com/bazelbuild/community/tree/main/sigs/bazel-intellij">Bazel plugin for IntelliJ</a></td> <td>Monthly</td> <td>messa@google.com</td> </tr> <tr> <td>Remote execution API working group</td> <td>Monthly</td> <td>chiwang@google.com</td> </tr> </tbody></table> <p>Interested in learning about SIGs or starting a new one? Find more information on our <a href="https://bazel.build/community/sig">website</a>.</p> <p>Want to get your SIG listed? Please add it to the <a href="https://github.com/bazelbuild/community/tree/main/sigs">Community repository</a>.</p> <h2>Ideas, feedback, and submissions are welcome!</h2> <p>Thank you for reading this edition! Let us know if you’d like to see any new information or changes in future community updates by reaching out to product@bazel.build. We look forward to hearing from you.</p> <p>Thanks,</p> <p>Google Bazel team</p> </div> </div> </div> <div class="col-lg-3 hidden-sm hidden-xs"> <h2>Twitter</h2> <p>For more frequent updates, follow us on Twitter.</p> <p><a class="twitter-follow-button" href="https://twitter.com/bazelbuild" data-show-count="false" data-size="large">Follow @bazelbuild</a></p> <h2>Discuss</h2> <p>Join the discussion on our <a href="https://groups.google.com/forum/#!forum/bazel-discuss">mailing list</a>.</p> <h2>Subscribe</h2> <p>Subscribe to our blog via the <a rel="alternate" type="application/rss+xml" href="/feed.xml">RSS Feed</a>. <h2>Contribute</h2> <p>The source for this blog can be found on <a href="https://github.com/bazelbuild/bazel-blog">GitHub</a>.</p> <h2>Archive</h2> <p>Looking for a specific post? Find it on the <a href="/archive.html">Archive</a> page.</p> </div> </div> </div> <footer class="footer"> <div class="container"> <div class="row"> <div class="col-sm-4 col-md-2"> <p>About</p> <ul class="list-unstyled"> <li><a href="https://github.com/bazelbuild/bazel/wiki/Bazel-Users">Who's Using Bazel?</a></li> <li><a href="https://bazel.build/roadmap.html">Roadmap</a></li> <li><a href="https://bazel.build/contributing.html">Contribute</a></li> <li><a href="https://bazel.build/governance.html">Governance Plan</a></li> <li><a href="https://policies.google.com/privacy">Privacy Policy</a></li> </ul> </div> <div class="col-sm-4 col-md-2"> <p>Support</p> <ul class="list-unstyled"> <li><a href="http://stackoverflow.com/questions/tagged/bazel">Stack Overflow</a></li> <li><a href="https://github.com/bazelbuild/bazel/issues">Issue Tracker</a></li> <li><a href="https://bazel.build/docs">Documentation</a></li> <li><a href="https://bazel.build/faq.html">FAQ</a></li> <li><a href="https://bazel.build/support.html">Support Policy</a></li> </ul> </div> <div class="col-sm-4 col-md-2"> <p>Stay Connected</p> <ul class="list-unstyled"> <li><a href="https://twitter.com/bazelbuild">Twitter</a></li> <li><a href="https://blog.bazel.build">Blog</a></li> <li><a href="https://github.com/bazelbuild/bazel">GitHub</a></li> <li><a href="https://groups.google.com/forum/#!forum/bazel-discuss">Discussion group</a></li> </ul> </div> </div> <div class="row"> <div class="col-lg-12"> <p class="text-muted">&copy; 2024 Google</p> </div> </div> </div> </footer> <!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> <!-- Include all compiled plugins (below), or include individual files as needed --> <script src="/assets/js/bootstrap.min.js"></script> <script> var shiftWindow = function() { if (location.hash.length !== 0) { window.scrollBy(0, -50); } }; window.addEventListener("hashchange", shiftWindow); var highlightCurrentSidebarNav = function() { var href = location.pathname; var item = $('#sidebar-nav [href$="' + href + '"]'); if (item) { var li = item.parent(); li.addClass("active"); if (li.parent() && li.parent().is("ul")) { do { var ul = li.parent(); if (ul.hasClass("collapse")) { ul.collapse("show"); } li = ul.parent(); } while (li && li.is("li")); } } }; $(document).ready(function() { // Scroll to anchor of location hash, adjusted for fixed navbar. window.setTimeout(function() { shiftWindow(); }, 1); // Flip the caret when submenu toggles are clicked. $(".sidebar-submenu").on("show.bs.collapse", function() { var toggle = $('[href$="#' + $(this).attr('id') + '"]'); if (toggle) { toggle.addClass("dropup"); } }); $(".sidebar-submenu").on("hide.bs.collapse", function() { var toggle = $('[href$="#' + $(this).attr('id') + '"]'); if (toggle) { toggle.removeClass("dropup"); } }); // Highlight the current page on the sidebar nav. highlightCurrentSidebarNav(); }); </script> <!-- Google Analytics tracking code --> <script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-61082125-1', 'auto'); ga('send', 'pageview'); </script> <!-- JavaScript used by the Follow @bazelbuild on Twitter button on the blog sidebar. Code from: https://dev.twitter.com/web/follow-button --> <script>window.twttr=(function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],t=window.twttr||{};if(d.getElementById(id))return;js=d.createElement(s);js.id=id;js.src="https://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);t._e=[];t.ready=function(f){t._e.push(f);};return t;}(document,"script","twitter-wjs"));</script> <!-- Anchor JS --> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.2.0/anchor.min.js"></script> <script> // Automatically add anchors and links to all header elements that don't already have them. anchors.add(); </script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10