Attach to Form 990 or Form 990-EZ.
Go to
www.irs.gov/Form990 for instructions and the latest information.
| (i) Name of supported organization | (ii) EIN | (iii) Type of organization (described on lines 1- 10 above (see instructions)) | (iv) Is the organization listed in your governing document? | (v) Amount of monetary support (see instructions) | (vi) Amount of other support (see instructions) | |
|---|---|---|---|---|---|---|
| Yes | No | |||||
|
Total |
||||||
Calendar year
(or fiscal year beginning in)
![]() |
(a) 2017 | (b) 2018 | (c) 2019 | (d) 2020 | (e) 2021 | (f) Total | |
|---|---|---|---|---|---|---|---|
| 1 | Gifts, grants, contributions, and membership fees received. (Do not include any "unusual grant.") .. | 1,342,014 | 1,398,881 | 2,844,899 | 2,187,746 | 2,093,589 | 9,867,129 |
| 2 | Tax revenues levied for the organization's benefit and either paid to or expended on its behalf.... | 0 | 0 | 0 | 0 | 0 | 0 |
| 3 | The value of services or facilities furnished by a governmental unit to the organization without charge.. | 0 | 0 | 0 | 0 | 0 | 0 |
| 4 | Total. Add lines 1 through 3 | 1,342,014 | 1,398,881 | 2,844,899 | 2,187,746 | 2,093,589 | 9,867,129 |
| 5 | The portion of total contributions by each person (other than a governmental unit or publicly supported organization) included on line 1 that exceeds 2% of the amount shown on line 11, column (f) .. | 1,910,738 | |||||
| 6 | Public support. Subtract line 5 from line 4. | 7,956,391 | |||||
Calendar year
(or fiscal year beginning in)
![]() |
(a) 2017 | (b) 2018 | (c) 2019 | (d) 2020 | (e) 2021 | (f) Total | |
|---|---|---|---|---|---|---|---|
| 7 | Amounts from line 4.. | 1,342,014 | 1,398,881 | 2,844,899 | 2,187,746 | 2,093,589 | 9,867,129 |
| 8 | Gross income from interest, dividends, payments received on securities loans, rents, royalties and income from similar sources... | 840 | 4,361 | 36,001 | 21,518 | 3,295 | 66,015 |
| 9 | Net income from unrelated business activities, whether or not the business is regularly carried on.. | ||||||
| 10 | Other income. Do not include gain or loss from the sale of capital assets (Explain in Part VI.).. | 162 | 181 | 119 | 171 | 106 | 739 |
| 11 | Total support. Add lines 7 through 10 | 9,933,883 | |||||
Calendar year (or fiscal year beginning in) ![]() |
(a) 2017 | (b) 2018 | (c) 2019 | (d) 2020 | (e) 2021 | (f) Total | |
|---|---|---|---|---|---|---|---|
| 1 | Gifts, grants, contributions, and membership fees received. (Do not include any "unusual grants.") . | ||||||
| 2 | Gross receipts from admissions, merchandise sold or services performed, or facilities furnished in any activity that is related to the organization's tax-exempt purpose | ||||||
| 3 | Gross receipts from activities that are not an unrelated trade or business under section 513 ..... | ||||||
| 4 | Tax revenues levied for the organization's benefit and either paid to or expended on its behalf... | ||||||
| 5 | The value of services or facilities furnished by a governmental unit to the organization without charge | ||||||
| 6 | Total. Add lines 1 through 5 | ||||||
| 7a | Amounts included on lines 1, 2, and 3 received from disqualified persons | ||||||
| b | Amounts included on lines 2 and 3 received from other than disqualified persons that exceed the greater of $5,000 or 1% of the amount on line 13 for the year. | ||||||
| c | Add lines 7a and 7b.. | ||||||
| 8 | Public support. (Subtract line 7c from line 6.) | ||||||
Calendar year (or fiscal year beginning in) ![]() |
(a) 2017 | (b) 2018 | (c) 2019 | (d) 2020 | (e) 2021 | (f) Total | |
|---|---|---|---|---|---|---|---|
| 9 | Amounts from line 6... | ||||||
| 10a | Gross income from interest, dividends, payments received on securities loans, rents, royalties and income from similar sources.. | ||||||
| b | Unrelated business taxable income (less section 511 taxes) from businesses acquired after June 30, 1975. | ||||||
| c | Add lines 10a and 10b. | ||||||
| 11 | Net income from unrelated business activities not included on line 10b, whether or not the business is regularly carried on. | ||||||
| 12 | Other income. Do not include gain or loss from the sale of capital assets (Explain in Part VI.) .. | ||||||
| 13 | Total support. (Add lines 9, 10c, 11, and 12.).. | ||||||
| Section A - Adjusted Net Income | (A) Prior Year |
(B) Current Year (optional) |
||||
| 1 | Net short-term capital gain | 1 | ||||
| 2 | Recoveries of prior-year distributions | 2 | ||||
| 3 | Other gross income (see instructions) | 3 | ||||
| 4 | Add lines 1 through 3 | 4 | ||||
| 5 | Depreciation and depletion | 5 | ||||
| 6 | Portion of operating expenses paid or incurred for production or collection of gross income or for management, conservation, or maintenance of property held for production of income (see instructions) | 6 | ||||
| 7 | Other expenses (see instructions) | 7 | ||||
| 8 | Adjusted Net Income (subtract lines 5, 6 and 7 from line 4) | 8 | ||||
| Section B - Minimum Asset Amount | (A) Prior Year |
(B) Current Year (optional) |
||||
| 1 | Aggregate fair market value of all non-exempt-use assets (see instructions for short tax year or assets held for part of year): | 1 | ||||
| a | Average monthly value of securities | 1a | ||||
| b | Average monthly cash balances | 1b | ||||
| c | Fair market value of other non-exempt-use assets | 1c | ||||
| d | Total (add lines 1a, 1b, and 1c) | 1d | ||||
| e |
Discount claimed for blockage or other factors (explain in detail in Part VI): |
|||||
| 2 | Acquisition indebtedness applicable to non-exempt use assets | 2 | ||||
| 3 | Subtract line 2 from line 1d | 3 | ||||
| 4 | Cash deemed held for exempt use. Enter 0.015 of line 3 (for greater amount, see instructions). | 4 | ||||
| 5 | Net value of non-exempt-use assets (subtract line 4 from line 3) | 5 | ||||
| 6 | Multiply line 5 by 0.035 | 6 | ||||
| 7 | Recoveries of prior-year distributions | 7 | ||||
| 8 | Minimum Asset Amount (add line 7 to line 6) | 8 | ||||
| Section C - Distributable Amount | Current Year | |||||
| 1 | Adjusted net income for prior year (from Section A, line 8, Column A) | 1 | ||||
| 2 | Enter 85% of line 1 | 2 | ||||
| 3 | Minimum asset amount for prior year (from Section B, line 8, Column A) | 3 | ||||
| 4 | Enter greater of line 2 or line 3 | 4 | ||||
| 5 | Income tax imposed in prior year | 5 | ||||
| 6 | Distributable Amount. Subtract line 5 from line 4, unless subject to emergency temporary reduction (see instructions) | 6 | ||||
| Section D - Distributions | Current Year | |
|---|---|---|
| 1 Amounts paid to supported organizations to accomplish exempt purposes | 1 | |
|
2
Amounts paid to perform activity that directly furthers exempt purposes of supported organizations, in excess of income from activity |
2 | |
| 3 Administrative expenses paid to accomplish exempt purposes of supported organizations | 3 | |
| 4 Amounts paid to acquire exempt-use assets | 4 | |
| 5 Qualified set-aside amounts (prior IRS approval required - provide details in Part VI) | 5 | |
| 6 Other distributions (describe in Part VI). See instructions | 6 | |
| 7Total annual distributions. Add lines 1 through 6. | 7 | |
|
8
Distributions to attentive supported organizations to which the organization is responsive (provide details in Part VI). See instructions |
8 | |
| 9 Distributable amount for 2021 from Section C, line 6 | 9 | |
| 10 Line 8 amount divided by Line 9 amount | 10 | |
| Section E - Distribution Allocations (see instructions) |
(i) Excess Distributions |
(ii) Underdistributions Pre-2021 |
(iii) Distributable Amount for 2021 |
|
|---|---|---|---|---|
| 1 Distributable amount for 2021 from Section C, line 6 | ||||
|
2
Underdistributions, if any, for years prior to 2021 (reasonable cause required-- explain in Part VI). See instructions. |
||||
| 3 Excess distributions carryover, if any, to 2021: | ||||
| a From 2016....... | ||||
| b From 2017....... | ||||
| c From 2018....... | ||||
| d From 2019....... | ||||
| e From 2020....... | ||||
| fTotal of lines 3a through e | ||||
| g Applied to underdistributions of prior years | ||||
| h Applied to 2021 distributable amount | ||||
|
i
Carryover from 2016 not applied (see instructions) |
||||
| j Remainder. Subtract lines 3g, 3h, and 3i from line 3f. | ||||
| 4Distributions for 2021 from Section D, line 7: | ||||
| $ | ||||
| a Applied to underdistributions of prior years | ||||
| b Applied to 2021 distributable amount | ||||
| c Remainder. Subtract lines 4a and 4b from line 4. | ||||
|
5
Remaining underdistributions for years prior to 2021, if any. Subtract lines 3g and 4a from line 2. If the amount is greater than zero, explain in Part VI. See instructions. |
||||
|
6
Remaining underdistributions for 2021. Subtract lines 3h and 4b from line 1. If the amount is greater than zero, explain in Part VI. See instructions. |
||||
|
7 Excess distributions carryover to 2022. Add lines 3j and 4c. |
||||
| 8 Breakdown of line 7: | ||||
| a Excess from 2017..... | ||||
| b Excess from 2018..... | ||||
| c Excess from 2019..... | ||||
| d Excess from 2020..... | ||||
| e Excess from 2021..... | ||||
| Facts And Circumstances Test |
|---|
| Return Reference | Explanation |
|---|---|
| Schedule A, Part II, Line 10 | Royalties |
| Software ID: | 21013178 |
| Software Version: | v1.00 |
Attach to Form 990 or 990-EZ.
Go to www.irs.gov/Form990 for the latest information.
| Return Reference | Explanation |
|---|---|
| Form 990, Part III, Line 1 | The mission of the Python Software Foundation (PSF) is to promote, protect, and advance the open source Python programming language and to support and facilitate the growth of a diverse and international community of Python programmers. The PSF: (1) Produces the core Python distribution including the Python language, its standard libraries and documentation, installers, source code, educational materials, and assorted tools and applications, (2) Establishes PSF licenses conform to the Open Source Definition and ensures the public to freely obtain, use, redistribute, and modify PSF intellectual property, (3) Protects the Python name, and the names, service marks and trademarks, (4) Raises funds to support PSF programs and services, (5) Publicizes, promotes the adoption of, and facilitates the ongoing development of Python-related technology, research, grants, conferences, and educational resources in the public interest. |
| Form 990, Part III, Line 2 | When adding activities, discontinuing activities, and, annually, the Python Software Foundation's management reviews and analyzes the activity against the approved tax-exempt mission. If any activity is deemed not to fit into the tax-exempt mission, it is documented, discussed with the Board of Directors and disclosed on Form 990. For the tax year ended December 31, 2021, all activities fit into the Python Software Foundation's approved tax-exempt mission. |
| Form 990, Part III, Line 4a | PyCon US is the largest annual gathering for the community that uses and develops the open-source Python programming language. PyCon US 2021 was held online due to COVID-19 restrictions and safety concerns. The conference included high-quality talks, tutorials, keynotes, and virtual meeting spaces for attendees to learn about our sponsors, discover the job market, explore Python projects and meet fellow Python community members. At least 2,650 attendees participated virtually in the online conference with over 100 sessions garnering 23,000 unique views over 5 days. 49 virtual booths including sponsors, startup row companies, open source projects and poster sessions were visited more than 24,000 booth visits |
| Form 990, Part III, Line 4b | The PSF funds programming development efforts to advance and maintain the core Python language, its associated libraries, and significant allied projects central to the Python community. These efforts include the Packaging Work Group, which improves and maintains the Python packaging ecosystem through fundraising and disbursement of raised funds. The Packaging Work Group focuses on efforts such as PyPI, pip, packaging.python.org, setuptools, and cross project efforts. A major 2020 grant from Bloomberg along with other sponsorships centers on advancing the PyPI package repository; one major initiative included brining on a new Python Packaging Project Manager to identify and prioritize new feature development. Another major 2020 grant from Google funded a CPython Developer-in-Residence, who focused on CPython improvements and bug tracking and fixing. The PSF funded the annual CPython Core Developer sprint, held virtually, in Fall 2021. These program initiatives also include funds for trademark and copyright investments. |
| Form 990, Part III, Line 4c | The PSF provides fiscal sponsorship for Python-focused user groups and projects. These groups hold regular education and networking meetings and/or present regional Python conferences. The PSF and each fiscal sponsoree work together to manage donor contributions wisely and maximize our ability to pursue the PSF's charitable mission. Sponsored groups in 2021 included continued support of Pallets (Flask), PyLadies, PyCascades, Boston Python, PhillyPUG, PuPPy, PyBeach, PyHawaii, PyMNtos, and San Diego Python. 3 new fiscal sponsorees joined the PSF in 2021: Jazzband, PyPA, and PyRVA. |
| Form 990, Part III, Line 4d | The PSF funds programming development efforts to advance and maintain the core Python language, its associated libraries, and significant allied projects central to the Python community. These efforts include the Packaging Work Group, which improves and maintains the Python packaging ecosystem through fundraising and disbursement of raised funds. The Packaging Work Group focuses on efforts such as PyPI, pip, packaging.python.org, setuptools, and cross project efforts. Grant resources were dedicated to advancing the PyPI package repository including adding a Python Packaging Project Manager to identify and prioritize new feature development. A CPython Developer-in-Residence has focused on new releases of CPython and handling bug tracker pull requests. These program initiatives also include funds for trademark and copyright investments. |
| Form 990, Part III, Line 4e | The Python Software Foundation relies on volunteer efforts to achieve many of its goals. The PSF Board of Directors offers recognition of work which significantly improves the Foundation's fulfillment of its mission and benefits the broader Python community including contributions of code and efforts in community action. The intention of these awards is to demonstrate that service to the Python community does lead to recognition and reward, rather than to provide a direct incentive to contributors. Python Software Foundation celebrated the efforts of 11 community members through Community Service Awards in 2021. |
| Form 990, Part VI, Section A, Line 2 | The Python Software Foundation is focused on promoting and supporting a diverse, international community. Elected Board Directors usually work at organizations that are part of our community, sponsor the Python Software Foundation, and/or volunteer in some other way. More than one Board member may be employed by the same organization. To prevent a single entity gaining a majority of Python Software Foundation board seats, the Python Software Foundation began community discussions about a bylaw change in 2020. In June 2021, the bylaws were changed to cap common affiliation, or co-affiliation, of Board members at one quarter (1/4) of the total Board. A common affiliation is defined as all organizations that, directly or indirectly through one or more intermediaries, controls, is controlled by, or is under common control with the other entities declared as affiliations by other members of the Board of Directors. |
| Form 990, Part VI, Section A, Line 4 | In June 2021, two changes were made to the Python Software Foundation bylaws; both were voted on and approved by the voting members in June 2021. First, the bylaws were changed to cap common affiliation, or co-affiliation, of Board members at one quarter (1/4) of the total Board. A common affiliation is defined as all organizations that, directly or indirectly through one or more intermediaries, controls, is controlled by, or is under common control with the other entities declared as affiliations by other members of the Board of Directors. Second, the bylaws were updated to allow the Python Software Foundation Board to fully delegate Fellow approvals to the Fellows Work Group. The Fellows Work Group is composed of Fellow members and accepts, votes, and approves Fellows nominations. |
| Form 990, Part VI, Section A, Line 6 | The Python Software Foundation offers five classes of members: Basic Members, Supporting Members, Managing Members, Contributing Members, and Fellows. Supporting Members, Managing Members, Contributing Members, and Fellows are eligible for voting privileges. Basic Members are individuals or entities who are part of the Python language community and who have decided to declare their support for Python and agree to the community Code of Conduct; there is no membership fee to become a Basic Member. Supporting Members make an annual donation to the PSF. Managing members dedicate at least five hours per month working to support the Python ecosystem in one of the PSF's working groups. Contributing members dedicate at least five hours per month working on projects that advance the mission of the PSF; the work relates to the creation or maintenance of open source software available to the public at no charge. Fellows are members nominated from the broader community and elevated by a vote of the members for extraordinary efforts and impact upon Python, the community, and the broader Python ecosystem. |
| Form 990, Part VI, Section A, Line 7a | Supporting Members, Managing Members, Contributing Members, and Fellows are eligible for voting privileges. Voting members elect Fellows and the Board of Directors. Basic Members have no voting rights. |
| Form 990, Part VI, Section B, Line 11b | Form 990 and associated schedules are prepared by the PSF Accounting staff. Copies of the draft Form 990 (including required schedules) are distributed to the Finance Committee in electronic form for review and approval. The PSF Accounting staff make updates as needed. Copies of the updated draft Form 990 are then distributed to the Board of Directors in electronic form for review and approval prior to electronic signature. |
| Form 990, Part VI, Section B, Line 12c | Each Director, Officer, and Key Employees must review and sign the conflict of interest policy and fill out a related questionnaire. The signed documents are kept by the Executive Director. The highest standards of ethics apply for all PSF Members, Officers, and Directors. Possible conflicts of interest are disclosed in writing to all decision-makers prior to any action. Directors, Officers, and Key Employees may recuse themselves from votes to avoid a conflict of interest; Board votes must pass by a majority of the disinterested directors. A full explanation of the conflict of interest policy can be found at the Python Software Foundation's website at https://www.python.org/psf/records/board/policies/conflict/. |
| Form 990, Part VI, Section B, Line 15 | Annually, the Board of Directors reviews the performance and compensation of the Executive Director. The Board Chair leads the review conducted with the Executive Committee. No person with a conflict of interest is involved in the performance review and compensation recommendation. |
| Form 990, Part VI, Section C, Line 19 | No changes have been made to the organizing or governing documents of the Python Software Foundation. Organizing and governing documents, as well as financial records, are available upon request and publicly available at python.org/psf/records. |
| Form 990, Part IX, Line 14 | The Python Software Foundation receives complimentary hosting and other information technology services from several providers including Fastly, Amazon Web Services, Digital Ocean, and Heroku. A major 2020 grant from Bloomberg along with other sponsorships funded a new Python Packaging Project Manager to identify and prioritize new feature development. Another major 2020 grant from Google funded a CPython Developer-in-Residence, who focused on CPython improvements and bug tracking and fixing. |
| Form 990, Part X, Line 2 | The Python Software Foundation (PSF) aims to maintain cash reserves to offset the risk of lower-than-expected attendance at PyCon or fluctuations in individual and corporate giving patterns. |
| Software ID: | 21013178 |
| Software Version: | v1.00 |