-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
25 lines (25 loc) · 20.5 KB
/
index.html
File metadata and controls
25 lines (25 loc) · 20.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<!doctype html><html lang=en dir=ltr class="plugin-pages plugin-id-default" data-has-hydrated=false><head><meta charset=UTF-8><meta name=generator content="Docusaurus v3.9.2"><title data-rh=true>Pantsbuild</title><meta data-rh=true property=og:title content=Pantsbuild /><meta data-rh=true name=viewport content="width=device-width, initial-scale=1.0"/><meta data-rh=true name=twitter:card content=summary_large_image /><meta data-rh=true property=og:image content=https://www.pantsbuild.org/img/social-card.png /><meta data-rh=true name=twitter:image content=https://www.pantsbuild.org/img/social-card.png /><meta data-rh=true property=og:url content=https://www.pantsbuild.org/ /><meta data-rh=true property=og:locale content=en /><meta data-rh=true name=docusaurus_locale content=en /><meta data-rh=true name=docusaurus_tag content=default /><meta data-rh=true name=docsearch:language content=en /><meta data-rh=true name=docsearch:docusaurus_tag content=default /><link data-rh=true rel=icon href=/img/favicon.ico /><link data-rh=true rel=canonical href=https://www.pantsbuild.org/ /><link data-rh=true rel=alternate href=https://www.pantsbuild.org/ hreflang=en /><link data-rh=true rel=alternate href=https://www.pantsbuild.org/ hreflang=x-default /><link data-rh=true rel=preconnect href=https://QD9KY1TRVK-dsn.algolia.net crossorigin=anonymous /><script data-rh=true>document.addEventListener("DOMContentLoaded",function(){void 0===window.docusaurus&&insertBanner()});function insertBanner(){var n=document.createElement("div");n.id="__docusaurus-base-url-issue-banner-container",n.innerHTML='\n<div id="__docusaurus-base-url-issue-banner" style="border: thick solid red; background-color: rgb(255, 230, 179); margin: 20px; padding: 20px; font-size: 20px;">\n <p style="font-weight: bold; font-size: 30px;">Your Docusaurus site did not load properly.</p>\n <p>A very common reason is a wrong site <a href="https://docusaurus.io/docs/docusaurus.config.js/#baseUrl" style="font-weight: bold;">baseUrl configuration</a>.</p>\n <p>Current configured baseUrl = <span style="font-weight: bold; color: red;">/</span> (default value)</p>\n <p>We suggest trying baseUrl = <span id="__docusaurus-base-url-issue-banner-suggestion-container" style="font-weight: bold; color: green;"></span></p>\n</div>\n',document.body.prepend(n);var e=document.getElementById("__docusaurus-base-url-issue-banner-suggestion-container"),s=window.location.pathname;e.innerHTML="/"===s.substr(-1)?s:s+"/"}</script><link rel=alternate type=application/rss+xml href=/blog/rss.xml title="Pantsbuild RSS Feed"><link rel=alternate type=application/atom+xml href=/blog/atom.xml title="Pantsbuild Atom Feed"><link rel=preconnect href=https://www.google-analytics.com><link rel=preconnect href=https://www.googletagmanager.com><script async src="https://www.googletagmanager.com/gtag/js?id=G-SEHBXJRF42"></script><script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-SEHBXJRF42",{anonymize_ip:!0})</script><link rel=search type=application/opensearchdescription+xml title=Pantsbuild href=/opensearch.xml><link rel=stylesheet href=/assets/css/styles.b71b45ed.css /><script src=/assets/js/runtime~main.43acf77f.js defer></script><script src=/assets/js/main.636c7439.js defer></script></head><body class=navigation-with-keyboard><svg style="display: none;"><defs>
<symbol id=theme-svg-external-link viewBox="0 0 24 24"><path fill=currentColor d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{for(var[t,e]of new URLSearchParams(window.location.search).entries())if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id=__docusaurus><div role=region aria-label="Skip to main content"><a class=skipToContent_lucK href=#__docusaurus_skipToContent_fallback>Skip to main content</a></div><nav aria-label=Main class="theme-layout-navbar navbar navbar--fixed-top"><div class=navbar__inner><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded=false class="navbar__toggle clean-btn" type=button><svg width=30 height=30 viewBox="0 0 30 30" aria-hidden=true><path stroke=currentColor stroke-linecap=round stroke-miterlimit=10 stroke-width=2 d="M4 7h22M4 15h22M4 23h22"/></svg></button><a class=navbar__brand href=/><div class=navbar__logo><img src=/img/logo.svg alt="My Site Logo" class="themedComponent_x_jL themedComponent--light_WGb9"/><img src=/img/logo.svg alt="My Site Logo" class="themedComponent_x_jL themedComponent--dark_oBxQ"/></div><b class="navbar__title text--truncate">Pantsbuild</b></a><a class="navbar__item navbar__link" href=/stable/docs/introduction/welcome-to-pants>Docs</a><a class="navbar__item navbar__link" href=/stable/reference/global-options>Reference</a><a class="navbar__item navbar__link" href=/blog>Blog</a><a class="navbar__item navbar__link" href=/sponsors>Sponsors</a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a class=navbar__link aria-haspopup=true aria-expanded=false role=button href=/stable/docs/introduction/welcome-to-pants>2.30</a><ul class=dropdown__menu><li><a class=dropdown__link href=/prerelease/docs/introduction/welcome-to-pants>2.31 (prerelease)</a><li><a class=dropdown__link href=/stable/docs/introduction/welcome-to-pants>2.30</a><li><a class=dropdown__link href=/2.29/docs/introduction/welcome-to-pants>2.29</a><li><a class=dropdown__link href=/2.28/docs/introduction/welcome-to-pants>2.28 (deprecated)</a><li class=""><hr class=dropdown-separator><li><a class=dropdown__link href=/versions>All Versions</a></ul></div><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a href=# aria-haspopup=true aria-expanded=false role=button class=navbar__link>Slack</a><ul class=dropdown__menu><li><a href=https://pantsbuild.slack.com target=_blank rel="noopener noreferrer" class=dropdown__link>Workspace<svg width=12 height=12 aria-label="(opens in new tab)" class=iconExternalLink_QvT7><use href=#theme-svg-external-link /></svg></a><li><a href="https://docs.google.com/forms/d/e/1FAIpQLSf9zgf-MXRnVDJbrVEST3urqneq7LCcy0zw8qU-GH4hPMn52A/viewform?usp=sf_link" target=_blank rel="noopener noreferrer" class=dropdown__link>Workspace Invite<svg width=12 height=12 aria-label="(opens in new tab)" class=iconExternalLink_QvT7><use href=#theme-svg-external-link /></svg></a><li><a href=https://chat.pantsbuild.org target=_blank rel="noopener noreferrer" class=dropdown__link>Linen Mirror<svg width=12 height=12 aria-label="(opens in new tab)" class=iconExternalLink_QvT7><use href=#theme-svg-external-link /></svg></a></ul></div><a href=https://github.com/pantsbuild/pants target=_blank rel="noopener noreferrer" class="navbar__item navbar__link">GitHub<svg width=13.5 height=13.5 aria-label="(opens in new tab)" class=iconExternalLink_QvT7><use href=#theme-svg-external-link /></svg></a><div class=navbarSearchContainer_Mydu><button type=button class="DocSearch DocSearch-Button" aria-label="Search (Meta+k)" aria-keyshortcuts=Meta+k><span class=DocSearch-Button-Container><svg width=20 height=20 class=DocSearch-Search-Icon viewBox="0 0 24 24" aria-hidden=true><circle cx=11 cy=11 r=8 stroke=currentColor fill=none stroke-width=1.4 /><path d="m21 21-4.3-4.3" stroke=currentColor fill=none stroke-linecap=round stroke-linejoin=round /></svg><span class=DocSearch-Button-Placeholder>Search</span></span><span class=DocSearch-Button-Keys></span></button></div><div class="toggle_AwgP colorModeToggle_rXRM"><button class="clean-btn toggleButton_kTC9 toggleButtonDisabled_N4X8" type=button disabled title="system mode" aria-label="Switch between dark and light mode (currently system mode)"><svg viewBox="0 0 24 24" width=24 height=24 aria-hidden=true class="toggleIcon_X8HE lightToggleIcon_cay9"><path fill=currentColor d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"/></svg><svg viewBox="0 0 24 24" width=24 height=24 aria-hidden=true class="toggleIcon_X8HE darkToggleIcon_B6hH"><path fill=currentColor d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"/></svg><svg viewBox="0 0 24 24" width=24 height=24 aria-hidden=true class="toggleIcon_X8HE systemToggleIcon_k4zv"><path fill=currentColor d="m12 21c4.971 0 9-4.029 9-9s-4.029-9-9-9-9 4.029-9 9 4.029 9 9 9zm4.95-13.95c1.313 1.313 2.05 3.093 2.05 4.95s-0.738 3.637-2.05 4.95c-1.313 1.313-3.093 2.05-4.95 2.05v-14c1.857 0 3.637 0.737 4.95 2.05z"/></svg></button></div></div></div><div role=presentation class=navbar-sidebar__backdrop></div></nav><div id=__docusaurus_skipToContent_fallback class="theme-layout-main main-wrapper mainWrapper_GzA5"><header class="hero hero--primary heroBanner_qdFl"><div class=container><header><h1><span class=hero__title> Pantsbuild: The ergonomic build system </span></h1></header><p class=hero__subtitle>Welcome to the Pants documentation hub!<p>Pants is a fast, scalable, user-friendly build system for codebases of all sizes.
It's currently focused on Python, Go, Java, Scala, Kotlin, Shell, and Docker,
with support for other languages and frameworks coming soon.<p>Here you'll find guides to help you get started with Pants, comprehensive documentation on how to
configure, run and customize Pants, and information on how to get help from the Pants community.</div></header>
<section style="padding:2rem 0"><div class=container><div class="row padding-vert--md"><div class=col><div class=padding-horiz--md><h2 class="anchor anchorTargetStickyNavbar_UrHV" id=why-adopt-the-pants-build-system>Why adopt the Pants build system?<a href=#why-adopt-the-pants-build-system class=hash-link aria-label="Direct link to Why adopt the Pants build system?" title="Direct link to Why adopt the Pants build system?" translate=no></a></h2><p>A lot of effort has gone into making Pants easy to adopt, easy to use and easy to extend.
We're super excited to bring Pants' distinctive features to Go, Java, Python, Scala, Kotlin, and Shell users:</div></div></div><div class="row padding-vert--md"><div class="col col--4"><div class="text--left padding-horiz--md"><h3 class="anchor anchorTargetStickyNavbar_UrHV" id=much-easier-to-adopt-and-maintain>Much easier to adopt and maintain.<a href=#much-easier-to-adopt-and-maintain class=hash-link aria-label="Direct link to Much easier to adopt and maintain." title="Direct link to Much easier to adopt and maintain." translate=no></a></h3><p>Pants requires very minimal BUILD file metadata/boilerplate.
It uses a combination of static analysis and sensible defaults to infer most of that information on the fly.
So your BUILD files can be very minimal — and even those can be
generated and updated for you!</div></div><div class="col col--4"><div class="text--left padding-horiz--md"><h3 class="anchor anchorTargetStickyNavbar_UrHV" id=resistant-to-supply-chain-attacks>Resistant to supply chain attacks.<a href=#resistant-to-supply-chain-attacks class=hash-link aria-label="Direct link to Resistant to supply chain attacks." title="Direct link to Resistant to supply chain attacks." translate=no></a></h3><p>Pants has out-of-the-box support for multiple dependency resolves and their corresponding lockfiles,
so you can have hermetic, repeatable builds that are resilient to supply chain attacks,
even in complex situations where you have multiple versions of the same dependencies in different parts of the codebase.</div></div><div class="col col--4"><div class="text--left padding-horiz--md"><h3 class="anchor anchorTargetStickyNavbar_UrHV" id=meets-you-where-you-are>Meets you where you are.<a href=#meets-you-where-you-are class=hash-link aria-label="Direct link to Meets you where you are." title="Direct link to Meets you where you are." translate=no></a></h3><p>Pants operates, underneath it all, at the file level. So even if you have fine-grained dependency
tangles (or even cycles!) that prevent you from creating modular BUILD targets and dependencies,
Pants can work with that.</div></div></div><div class="row padding-vert--md"><div class="col col--4"><div class="text--left padding-horiz--md"><h3 class="anchor anchorTargetStickyNavbar_UrHV" id=easy-to-extend>Easy to extend.<a href=#easy-to-extend class=hash-link aria-label="Direct link to Easy to extend." title="Direct link to Easy to extend." translate=no></a></h3><p>Pants has a rich plugin API that uses idiomatic async Python 3, in case you need any customizations.
In fact the built-in rules use that same API.</div></div><div class="col col--4"><div class="text--left padding-horiz--md"><h3 class="anchor anchorTargetStickyNavbar_UrHV" id=git-friendly>Git-friendly.<a href=#git-friendly class=hash-link aria-label="Direct link to Git-friendly." title="Direct link to Git-friendly." translate=no></a></h3><p>Pants natively speaks git, so you can do things like "run all the tests affected by changes between
main and my current branch".</div></div><div class="col col--4"><div class="text--left padding-horiz--md"><h3 class="anchor anchorTargetStickyNavbar_UrHV" id=first-class-python>First-class Python.<a href=#first-class-python class=hash-link aria-label="Direct link to First-class Python." title="Direct link to First-class Python." translate=no></a></h3><p>You'll find no subsets like Starlark here. Pants empowers you with full support for Python.</div></div></div><div class="row padding-vert--md"><div class=col><div class=padding-horiz--md><h2 class="anchor anchorTargetStickyNavbar_UrHV" id=pants-is-a-multilingual-multitool>Pants is a multilingual multitool.<a href=#pants-is-a-multilingual-multitool class=hash-link aria-label="Direct link to Pants is a multilingual multitool." title="Direct link to Pants is a multilingual multitool." translate=no></a></h2><p>Pants supports Python, Docker, Go, Java, Kotlin, Pex, Protodoc, Scala, Shell, Thrift, Protobuf, Helm, many linting and formatting tools, packaging, coverage, and more. <a href=/stable/docs/introduction/welcome-to-pants> Learn more.</a></div></div></div><div class="row padding-vert--md"><div class="col col--4"><div class="text--left padding-horiz--md"><h3 class="anchor anchorTargetStickyNavbar_UrHV" id=responsive-community>Responsive community.<a href=#responsive-community class=hash-link aria-label="Direct link to Responsive community." title="Direct link to Responsive community." translate=no></a></h3><p>Pants community is welcoming, quick to answer questions, and genuinely interested in your thoughts
and contributions. So come say hi on the Slack
and tell us what you need next!</div></div><div class="col col--4"><div class="text--left padding-horiz--md"><h3 class="anchor anchorTargetStickyNavbar_UrHV" id=case-studies>Case studies.<a href=#case-studies class=hash-link aria-label="Direct link to Case studies." title="Direct link to Case studies." translate=no></a></h3><p>Learn how others have handled the practical issues of migrating legacy codebases, from case studies
by <a href=https://blog.pantsbuild.org/astranis-case-study-wrangling-python-in-a-monorepo/ target=_blank rel="noopener noreferrer" class="">Astranis</a>,
<a href=https://developer.ibm.com/blogs/case-study-incrementally-migrating-a-python-monorepo-from-bazel-to-pants/ target=_blank rel="noopener noreferrer" class="">IBM</a>,
<a href=https://g-cassie.github.io/2021/10/02/django-pants.html target=_blank rel="noopener noreferrer" class="">iManage</a>,
and <a class="" href=/spotlight/media#case-studies>more</a>.</div></div><div class="col col--4"><div class="text--left padding-horiz--md"><h3 class="anchor anchorTargetStickyNavbar_UrHV" id=enterprise-quality>Enterprise quality.<a href=#enterprise-quality class=hash-link aria-label="Direct link to Enterprise quality." title="Direct link to Enterprise quality." translate=no></a></h3><p>Pants is trusted by organizations of all sizes, including Coinbase, IBM, Orca Security, Rippling,
Slack, Salesforce, and <a class="" href=/spotlight/users>many others</a></div></div></div></div></section></div><footer class="theme-layout-footer footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="theme-layout-footer-column col footer__col"><div class=footer__title>Spotlight</div><ul class="footer__items clean-list"><li class=footer__item><a class=footer__link-item href=/spotlight/users>Users</a><li class=footer__item><a class=footer__link-item href=/spotlight/testimonials>Testimonials</a><li class=footer__item><a class=footer__link-item href=/spotlight/media>Media</a><li class=footer__item><a class=footer__link-item href=/spotlight/service-providers>Service Providers</a></ul></div><div class="theme-layout-footer-column col footer__col"><div class=footer__title>Connect</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://github.com/pantsbuild/pants target=_blank rel="noopener noreferrer" class=footer__link-item>GitHub<svg width=13.5 height=13.5 aria-label="(opens in new tab)" class=iconExternalLink_QvT7><use href=#theme-svg-external-link /></svg></a><li class=footer__item><a href=https://twitter.com/pantsbuild target=_blank rel="noopener noreferrer" class=footer__link-item>Twitter<svg width=13.5 height=13.5 aria-label="(opens in new tab)" class=iconExternalLink_QvT7><use href=#theme-svg-external-link /></svg></a><li class=footer__item><a href=https://www.youtube.com/@pantsbuild target=_blank rel="noopener noreferrer" class=footer__link-item>YouTube<svg width=13.5 height=13.5 aria-label="(opens in new tab)" class=iconExternalLink_QvT7><use href=#theme-svg-external-link /></svg></a><li class=footer__item><a href=https://groups.google.com/forum/#!forum/pants-devel target=_blank rel="noopener noreferrer" class=footer__link-item>Mailing List<svg width=13.5 height=13.5 aria-label="(opens in new tab)" class=iconExternalLink_QvT7><use href=#theme-svg-external-link /></svg></a></ul></div><div class="theme-layout-footer-column col footer__col"><div class=footer__title>More</div><ul class="footer__items clean-list"><li class=footer__item><a class=footer__link-item href=/blog>Blog</a><li class=footer__item><a class=footer__link-item href=/sponsors>Sponsors</a></ul></div><div class="theme-layout-footer-column col footer__col"><div class=footer__title>Community</div><ul class="footer__items clean-list"><li class=footer__item><a class=footer__link-item href=/community/getting-help>Getting Help</a><li class=footer__item><a class=footer__link-item href=/community/members>Members</a><li class=footer__item><a class=footer__link-item href=/community/code-of-conduct>Code of Conduct</a><li class=footer__item><a class=footer__link-item href=/community/meet-the-team>Meet the Team</a><li class=footer__item><a class=footer__link-item href=/community/maintainers>Maintainers</a><li class=footer__item><a class=footer__link-item href=/community/contentious-decisions>Contentious Decisions</a></ul></div></div><div class="footer__bottom text--center"><div class=footer__copyright>Copyright © Pants project contributors. <a href=https://github.com/pantsbuild/pantsbuild.org>Website source</a> @ <a href=https://github.com/pantsbuild/pantsbuild.org/commit/a274212dfdcfe1657dd5eae4836420db8cdf9099>a27421</a>.</div></div></div></footer></div></body>