Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
G
Grpc
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
tci-gateway-module
Grpc
Commits
d13a780b
Commit
d13a780b
authored
8 years ago
by
Siddharth Shukla
Browse files
Options
Downloads
Patches
Plain Diff
Add project overview for gsoc submission
parent
6cfc80ed
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
summerofcode/2016/siddharth_shukla.md
+65
-0
65 additions, 0 deletions
summerofcode/2016/siddharth_shukla.md
with
65 additions
and
0 deletions
summerofcode/2016/siddharth_shukla.md
0 → 100644
+
65
−
0
View file @
d13a780b
Project Overview
================
The project, titled 'GRPC Python compatibility support', involved
collaborating with the GRPC team to improve the library compatibility
for the GRPC Python library.
Python is, originally, a specification for a programming language. This
specification has been implemented differently in different
implementations of the
[
language specification
](
https://docs.python.org/3/reference/
)
.
A small, and by no means exhaustive, list of some major python implementations
is:
-
[
CPython
](
https://www.python.org/
)
: The reference implementation
-
[
Jython
](
http://www.jython.org/
)
: Python implemented in Java
-
[
Python for .NET
](
http://pythonnet.sourceforge.net/
)
: CPython implementation that enables .NET library usage
-
[
IronPython
](
http://ironpython.net/
)
: Python implemented in .NET
-
[
PyPy
](
http://pypy.org/
)
: Python implemented completely in Python
-
[
Stackless
](
https://bitbucket.org/stackless-dev/stackless/wiki/Home
)
: Replaces the dependency for the C call stack with it's own stack
The development in this project revolved around
introducing changes to the codebase that enable support for latest
stable as well as development releases of the reference implementation
(CPython) of the Python programming language namely
`Python 3.4`
,
`Python 3.5`
,and
`Python 3.6`
as well as the stable releases of the
PyPy implementation. Special changes were required to enable PyPy
support because PyPy has a non-deterministic garbage collector that does
not rely on reference counting unlike the CPython garbage collector.
The changes to the codebase involved changes to the library code as well
as changes to the tests and scripts in the test infrastructure which
resulted in both the library as well as the testing infrastructure being
Python 3.x and PyPy compatible.
The list of merged commits, as of 22.08.2016 23:59 CEST, is summarized
here for the perusal of those interested:
-
[
Enable py35 and py36 testing
](
https://github.com/grpc/grpc/commit/c478214e475e103c5cdf477f0adc18bba2c03903
)
-
[
Make testing toolchain python 3.x compliant
](
https://github.com/grpc/grpc/commit/0589e533cd65a2ca9e0e610cc1b284d016986572
)
-
[
Add .idea folder to .gitignore
](
https://github.com/grpc/grpc/commit/365ef40947e22b5438a63f123679ae9a5474c47c
)
-
[
Fix the ThreadPoolExecutor: max_workers can't be 0
](
https://github.com/grpc/grpc/commit/de84d566b8fad6808e5263a25a17fa231cb5713c
)
-
[
Add PyPy to testing toolchain
](
https://github.com/grpc/grpc/commit/2135a1b557f8b992186d5317cb767ac4dbcdfe5c
)
-
[
Switch init/shutdown: lib-wide -> per-object
](
https://github.com/grpc/grpc/commit/9eedb4ffd74aed8d246a07f8007960b2bc167f55
)
-
[
Skip test run if running with pypy
](
https://github.com/grpc/grpc/commit/f0f58e68738abbc317f7f449c5104f7fbbff26bd
)
The list of unmerged pull requests is as follows:
-
[
Add PyPy 5.3.1 to dockerfile and template
](
https://github.com/grpc/grpc/pull/7763
)
-
[
remove skipIf from TypeSmokeTest (issue 7672)
](
https://github.com/grpc/grpc/pull/7831
)
The list of tasks that have pending unsubmitted pull requests is as follows:
-
Modify run_tests.py to enable testing of new languages without
affecting old branches.
Project Details
===============
-
Title: GRPC Python compatibility support
-
Student:
[
Siddharth Shukla
](
https://github.com/thunderboltsid
)
-
Mentors:
[
Nathaniel Manista
](
https://github.com/nathanielmanistaatgoogle
)
,
[
Masood Malekghassemi
](
https://github.com/soltanmm
)
-
Duration: May 23 - August 23
-
Hat tip:
[
Ken Payson
](
https://github.com/kpayson64
)
,
[
Jan Tattermusch
](
https://github.com/jtattermusch
)
,
[
Nicolas Noble
](
https://github.com/nicolasnoble
)
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment