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
PyLadies Dublin
June 20, 2017
Technology
0
140
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
Tweet
Share
More Decks by PyLadies Dublin
See All by PyLadies Dublin
Python in the Community
pyladiesdublin
0
90
PyLadies Valentines: "Matchmaking for Coders! And why 1+1=3!" by Isabella Hoesch
pyladiesdublin
0
54
PyLadies Dublin Aug Meetup: Text Classification using HuggingFace Transformers
pyladiesdublin
0
49
PyLadies Dublin August Meetup: PySpark 101: Tips and Tricks
pyladiesdublin
0
36
PyLadies Dublin Sep Meetup: Building Conversational Bot using Twilio & Python
pyladiesdublin
0
110
Python imports, reloads, and associated dangers by Sorcha Bowler
pyladiesdublin
0
36
My First Maker Project: Print Your Own Adventure Game
pyladiesdublin
0
57
Introduction to Jupyter Notebooks & Data Analysis using Kaggle
pyladiesdublin
0
100
Big Data Analytics with Time-Series Database kdb+
pyladiesdublin
0
190
Other Decks in Technology
See All in Technology
ソースを読むプロセスの例
sat
PRO
15
9.4k
ビズリーチ求職者検索におけるPLMとLLMの活用 / Search Engineering MEET UP_2-1
visional_engineering_and_design
1
170
CoRL 2025 Survey
harukiabe
1
230
Performance Insights 廃止から Database Insights 利用へ/transition-from-performance-insights-to-database-insights
emiki
0
320
20251014_Pythonを実務で徹底的に使いこなした話
ippei0923
0
220
WEBサービスを成り立たせるAWSサービス
takano0131
1
180
GoでもGUIアプリを作りたい!
kworkdev
PRO
0
160
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.2k
新規事業におけるGORM+SQLx併用アーキテクチャ
hacomono
PRO
0
430
Geospatialの世界最前線を探る [2025年版]
dayjournal
1
260
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.2k
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.8k
Git: the NoSQL Database
bkeepers
PRO
431
66k
A Tale of Four Properties
chriscoyier
161
23k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
Making Projects Easy
brettharned
120
6.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
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!