Today
is the last day of our yearly sprint event in Leysin. We had lots of
ideas on how to enhance the current state of PyPy, we went skiing and
had interesting discussions around virtual machines, the Python
ecosystem, and other real world problems.
Why don't you join us next time?
A usual PyPy sprints day goes through the following stages:
- Planning Session: Tasks from previous days that have seen progress or are completed are noted in a shared document. Everyone adds new tasks and then assigns themselves to one or more tasks (usually in pairs). As soon as everybody is happy with their task and has a partner to work with, the planning session is concluded and the work can start.
- Discussions: A sprint is a good occasion to discuss difficult and important topics in person. We usually sit down in a separate area in the sprint room and discuss until a) nobody wants to discuss anymore or b) we found a solution to the problem. The good thing is that usally the outcome is b).
- Lunch: For lunch we prepare sandwiches and other finger food.
- Continue working until dinner, which we eat at a random restaurant in Leysin.
- Goto 1 the next day, if sprint has not ended.
Sprints
are open to everybody and help newcomers to get started with PyPy (we usually
pair you with a developer familiar with PyPy). They are perfect to
discuss and find solutions to problems we currently face. If you are
eager to join next year, please don't hesitate to register next year
around January.
Sprint Summary
Sprint goals included to work on the following topics:- Work towards releasing PyPy 3.5 (it will be released soon)
- CPython Extenion (CPyExt) modules on PyPy
- Have fun in winter sports (a side goal)
Highlights
- We have spent lots of time debugging and fixing memory issues on CPyExt.
- Fruitful discussions and progress how flesh out some details about unicode representation in PyPy. Our current goal is to use utf-8 as unicode representation internally and have fast vectorized (indexing, check if valid, ...).
- PyPy will participate in GSoC 2017 and we will try to allocate more resources to that than last year.
- Profile and think about some details how to reduce the starting size of the interpreter. The starting point would be to the parser and reduce the amount of strings to ke alive.
- Found a topic for a student's master thesis correctly free cpyext reference cycles.
- Run lots of Python3 code on top of PyPy3 and resolve issues we found along the way.
- Initial work on making RPython thread-safe without a GIL.
List of attendees
- Stefan Beyer
- Antonio Cuni
- Maciej Fijalkowski
- Manuel Jacob
- Ronan Lamy
- Remi Meier
- Richard Plangger
- Armin Rigo
- Robert Zaremba
We
would like to thank our donors for the continued support of the PyPy
project and we looking forward to next years sprint in Leysin.
The PyPy Team