blob: 8c3c680205afcd27a635c8af0a20b5a6908e7e58 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
+++
rss = "GSoC 2020: First Check-In"
date = Date(2020, 6, 1)
+++
@def tags = ["pip", "gsoc"]
# First Check-In
Hi everyone, I am McSinyx, a Vietnamese undergraduate student
who loves [free software]. This summer I am working with
the maintainers and the contributors of `pip` to make
the package manager {{pip 825 "download in parallel"}}.
## What did I do during the community bonding period?
Aside from bonding with `pip`'s maintainers and contributors as well as
with my mentors, I was also experimenting on the theoretical and technical
obstacles blocking this GSoC project. Pradyun Gedam (a mentor of mine)
suggested making [a proof of concept] to determine if parallel downloading
can play nicely with ResolveLib_'s abstraction and we are reviewing it
together. On the technical side, we `pip`'s committers are exploring
{{pip 8169 "available options for parallelization"}} and I made an attempt to
{{pip 8320 "make use of Python's standard worker pool in a portable way"}}.
## Did I get stuck anywhere?
Yes, of course! Neither of the experiments above is finished as of
this moment. Though, I am optimistic that the issues will not be
real blockers and we will figure that out in the next few days.
## What is coming up next?
As planned, this week I am going to refactor the package downloading code
in `pip`. The main purpose is to decouple the networking code from
the package preparation operation and make sure that it is thread-safe.
In addition, I am also continuing mentioned experiments to have a better
confidence on the future of this GSoC project.
To other GSoC students, mentors and admins reading this, I am wishing
you all good health and successful projects this summer!
[free software]: https://www.gnu.org/philosophy/free-sw.html
[a proof of concept]: https://gist.github.com/McSinyx/513dbff71174fcc79f1cb600e09881af
[ResolveLib]: https://pypi.org/project/resolvelib
|