Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Your First Patch! Submitting a Patch to CPython...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
PyLadies Dublin
June 20, 2017
Technology
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Your First Patch! Submitting a Patch to CPython by Lisa Roach, Facebook Production Engineer
PyLadies Dublin @ Facebook
https://www.meetup.com/PyLadiesDublin/events/236605261/
PyLadies Dublin
June 20, 2017
More Decks by PyLadies Dublin
See All by PyLadies Dublin
Python in the Community
pyladiesdublin
0
130
PyLadies Valentines: "Matchmaking for Coders! And why 1+1=3!" by Isabella Hoesch
pyladiesdublin
0
66
PyLadies Dublin Aug Meetup: Text Classification using HuggingFace Transformers
pyladiesdublin
0
68
PyLadies Dublin August Meetup: PySpark 101: Tips and Tricks
pyladiesdublin
0
52
PyLadies Dublin Sep Meetup: Building Conversational Bot using Twilio & Python
pyladiesdublin
0
130
Python imports, reloads, and associated dangers by Sorcha Bowler
pyladiesdublin
0
57
My First Maker Project: Print Your Own Adventure Game
pyladiesdublin
0
78
Introduction to Jupyter Notebooks & Data Analysis using Kaggle
pyladiesdublin
0
130
Big Data Analytics with Time-Series Database kdb+
pyladiesdublin
0
220
Other Decks in Technology
See All in Technology
ロボティクスの技術 / Robotics Technology
ks91
PRO
0
110
【Cyber-sec+】経営層を"動かす"ための考え方
hssh2_bin
0
190
人材育成分科会.pdf
_awache
4
300
2026 TECHFRESH 畢業分享會 - 開發日常大解密!從領域驅動到企業級上線
line_developers_tw
PRO
0
1.3k
気軽に使える"情報のハブ"としてのNotion活用 〜フロー情報の集積点 と、 Claude Code × Notion AI〜
syucream
1
150
【セミナー資料】Claude Code をセキュアに使うための考え方と設定の勘どころ / Claude Code Webinar 20260616
masahirokawahara
2
410
AI-DLCを “そのまま導入しなかった”話 ~組織に合わせてアジャストした 私たちの実践共有~
hiroramos4
PRO
0
180
2026TECHFRESH畢業分享會 - 原生還是跨平台? App 開發踩坑實錄
line_developers_tw
PRO
0
1.3k
GitHub Copilot 最新アップデート – 「一歩先」の実践活用術
moulongzhang
5
1.5k
Chainlitで作るお手軽チャットUI
ynt0485
0
280
MUSUBI 田中裕一『AIと共に行う「しごとのリデザイン」- スモールバックオフィス編』AI Ops Lab #4
musubi
0
260
Oracle Cloud Infrastructure:2026年6月度サービス・アップデート
oracle4engineer
PRO
0
120
Featured
See All Featured
The untapped power of vector embeddings
frankvandijk
2
1.8k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
The SEO identity crisis: Don't let AI make you average
varn
0
490
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
200
30 Presentation Tips
portentint
PRO
1
330
Designing for humans not robots
tammielis
254
26k
Crafting Experiences
bethany
1
180
New Earth Scene 8
popppiees
3
2.3k
RailsConf 2023
tenderlove
30
1.5k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
200
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
240
Transcript
Your First Patch! Submitting a patch to CPython Lisa N
Roach Facebook Production Engineer
Me • Production Engineer at Facebook in Infrastructure Security •
Been contributing to CPython for ~1 year
What is CPython? The main implementation of Python
Two Truths and a Lie 1. CPython is an interpreter
2. The majority of CPython is written in C 3. CPython is the most widely used implementation of Python
Two Truths and a Lie 1. CPython is an interpreter
2. The majority of CPython is written in C 3. CPython is the most widely used implementation of Python
2% C++ 1% C 40% Python 58% Languages of CPython
Patches? But Python is Perfect! • Bug Fixes • Feature
Enhancements • Performance Enhancements • New Features • Documentation Updates
Python Developer’s Guide https://docs.python.org/devguide/
Lifecycle of a Patch 1. Find an issue
Python Issues List http://bugs.python.org/
None
None
None
None
Issue30486: Allow setting cell value
None
None
Lifecycle of a Patch 1. Find an issue 2. Update
the code
Updating the Code 1. Code it 2. Write unit tests
3. Update documentation 4. Update Misc/NEWS
Updating the Code: Code It Objects/cellobject.c
Updating the Code: Write unit tests Lib/test/test_funcattrs.py
Updating the Code: Update documentation Doc/reference/datamodel.rst
Updating the Code: Update Misc/NEWS Misc/NEWS
Lifecycle of a Patch 1. Find an issue 2. Update
the code 3. Submit a Pull Request 4. Receive feedback 5. Make updates 6. Get merged
Pull Request
Get Help! • Slack channel: PyLadies: #cpython-dev • Github: pyladies/pyladies-maintainers
• Mailers: • Core-mentorship-request • Python-ideas
We Need You!