-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
/
Copy pathpip.in
177 lines (136 loc) · 4.78 KB
/
pip.in
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# Base packages
pip
virtualenv
django~=4.2.0
django-extensions
django-polymorphic
django-autoslug
# NOTE: we cannot use ``psycopg`` (3.x), even if it's supported by Django 4.2
# because New Relic agent is not sending the data of the database to their servers.
psycopg2
# 3.1.0 includes changes that require running `makemigrations`
# https://django-simple-history.readthedocs.io/en/latest/#changes
django-simple-history==3.0.0
djangorestframework
djangorestframework-api-key
# Embed v1 still uses docutils.
# Remove this dependency once we deprecate this API.
docutils
# Filtering for the REST API
django-filter
drf-flex-fields
drf-extensions
django-vanilla-views
# This module is only used on migrations. We are now using Django's official
# JSONField. We should probably squash these migrations and remove this
# dependency as well.
jsonfield
requests
requests-toolbelt
slumber
pyyaml
Pygments
# Used for Redis cache Django backend (`django.core.cache.backends.redis.RedisCache`)
redis
# NOTE: we have to pin to this version because Celery>=5.3.x detects our ``ConfigError`` exception is not picklable
# and creates a ``UnpickleableExceptionWrapper`` which is not what our code expects.
# This may be due to a Python bug which can't pickle/unpickle the exception properly.
# We could consider either:
# - handle ``UnpickleableExceptionWrapper`` in our code and inspect what's the inner exception
# - find a way to disable pickling the exceptions
# - make our custom exception picklable
#
# References:
# - https://github.com/celery/celery/pull/8149
# - https://github.com/celery/celery/blob/2b4b500ca1212016824a5fa2996cfb752f0763a7/celery/utils/serialization.py#L154
# - https://github.com/python/cpython/issues/76877
#
# Reproducible example:
# >>> import pickle
# >>> class MyException(Exception):
# ... def __init__(self, a, b):
# ... self.a = a
# ... self.b = b
# ... super().__init__(a)
# ...
# >>> pickle.loads(pickle.dumps(MyException("a", "b")))
# Traceback (most recent call last):
# File "<stdin>", line 1, in <module>
# TypeError: MyException.__init__() missing 1 required positional argument: 'b'
# >>>
celery==5.2.7
django-celery-beat
# Docker images need a dependency explicity marked for tzdata in order to have
# necessary timezone data.
# https://github.com/readthedocs/readthedocs.org/issues/10453
# TODO: remove this dependency once we upgrade Celery. It should auto-install it.
tzdata
# 0.52.0 requires creating a new email template:
# templates/account/email/acccount_already_exists_message.html
# See https://github.com/readthedocs/readthedocs.org/pull/9853#discussion_r1060496492
django-allauth==0.51.0
requests-oauthlib
# Search
elasticsearch~=8.0
elasticsearch-dsl~=8.0
django-elasticsearch-dsl~=8.0
selectolax
# embed
pyquery
# NOTE: this dep can be removed in python 3.7 in favor of ``date.fromisoformat``
python-dateutil
orjson
# Utils
django-gravatar2
pytz
# We cannot upgrade it until dj-stripe fixes this issue
# https://github.com/dj-stripe/dj-stripe/issues/1842
stripe==4.2.0
regex
# NOTE: djstripe overrides the stripe api version
# globally, when updating make sure our code is compatible
# with the version used by djstripe.
# See STRIPE_API_VERSION https://dj-stripe.dev/reference/settings/.
# dj-stripe==2.7.0 requires some extra actions to be upgrade
# See https://github.com/readthedocs/readthedocs.org/issues/9706
dj-stripe==2.6.3
markdown
# unicode-slugify==0.1.5 is not released on PyPI yet
git+https://github.com/mozilla/unicode-slugify@b696c37#egg=unicode-slugify==0.1.5
# Version 2.4 makes tests to fail with:
# "RecursionError: maximum recursion depth exceeded in comparison"
django-formtools<2.4
# We cannot upgrade to >=2 because it fails with
# django.template.exceptions.TemplateDoesNotExist: bootstrap/field.html
django-crispy-forms<2
# Force to upgrade to a version with a fix for socket timeouts
# https://docker-py.readthedocs.io/en/stable/change-log.html#bugfixes
docker==6.1.2
django-annoying
django-messages-extends
djangorestframework-jsonp
django-taggit
dj-pagination
# Version comparison stuff
packaging
# Allow cross-site requests to some of our APIs.
django-cors-headers
# User agent parsing - used for analytics purposes
user-agents
django-storages[boto3]
# Required only in development and linting
django-debug-toolbar
# For enabling content-security-policy
django-csp
# Upgrading to 3.x requires some extra work
# https://django-structlog.readthedocs.io/en/latest/upgrade_guide.html#upgrading-to-3-0
# NOTE: that django-structlog is in version 6.x now,
# so we should probably consider migrating to avoid incompatibility issues.
django-structlog==2.2.0
# Pining due to a Sentry error we started getting
# https://read-the-docs.sentry.io/issues/4678167578/events/2d9d348729874d67b120b153908ca54c/
django-ipware<6.0.0
structlog
dparse
gunicorn
django-cacheops