Requirements ************ .. highlight:: bash Before adding a new requirement to a project: 1. Our core technologies are Django and Ember. 2. Ask... is it really required? We want to re-use good code, but keep requirements to a minimum. 3. Check the project is active i.e. has recent commits and is keeping up with recent releases e.g. Django 2 4. Discuss with the team before adding. Common requirements:: APScheduler==3.9.1 attrs==21.4.0 beautifulsoup4==4.11.1 bleach==4.1.0 # To fix, object has no attribute 'is_ajax' # git+https://github.com/brack3t/django-braces.git@df847c9a517a09d81ccd27609af8b96d20887922#egg=django-braces django-braces==1.15.0 # for linux... django-dramatiq==0.10.0 # do not use - django-dramatiq for Windows (see :doc:`dev-dramatiq`) # kb-django-dramatiq==0.0.06 django-extensions==3.1.5 django-filter==21.1 django-reversion==5.0.0 # https://github.com/jazzband/django-taggit/blob/master/CHANGELOG.rst django-taggit==3.0.0 Django==4.0.5 djangorestframework==3.13.1 dramatiq[redis, watch]==1.13.0 easy-thumbnails==2.8.1 humanize==4.1.0 # for windows # psycopg2-binary==2.7.6.1 psycopg2==2.9.3 python-dateutil==2.8.2 pytz==2021.3 Other requirements:: anytree==2.8.0 boto==2.36.0 celery==4.3.0 # for windows # celery==3.1.26.post2 # try and remove this... # coreapi==2.3.3 cssselect==1.1.0 django-anymail==8.2 django-axes==5.14.0 django-bootstrap3==10.0.1 django-colorful==1.3 django-cookies-samesite==0.8.0 django-cors-headers==3.2.0 django-countries==7.2.1 django-crispy-forms==1.7.2 django-formtools==2.2 # The project is unmaintained! django-mptt==0.13.4 django-nvd3==0.9.7 # no longer using 'django-pyodbc-azure' or 'django-azure-sql-backend' django-mssql-backend==2.8.1 django-recaptcha==3.0.0 # https://www.kbsoftware.co.uk/docs/dev-django.html#django-4 # django-sendfile2==0.6.1 django-sendfile==0.3.11 # 09/06/2020, We need to try 'sendfile2' instead! # django-sendfile2==0.5.1 django-statsd-mozilla==0.3.14 django-storages-redux django-waffle==0.11.1 django-webserver[waitress]==1.2.0 djangoajax==3.2 djrill==2.1.0 dnspython==1.15.0 docutils==0.14 elasticsearch==6.8.1 Flask-Cors==3.0.6 Flask==1.0.2 git+https://github.com/pyinstaller/pyinstaller.git@c7a24e5a023bdd7d2d6c571f6bab0513d8e809a1#egg=PyInstaller google-api-python-client==2.38.0 google-auth==2.6.0 hg+https://bitbucket.org/schinckel/django-jsonfield#egg=jsonfield html5lib==1.1 iso8601==0.1.10 lxml==4.6.2 mailchimp3==3.0.14 mandrill==1.0.59 # mozilla-django-oidc==2.0.0 mozilla-django-oidc==1.2.4 mysqlclient==2.1.0 paramiko==2.11.0 Pillow==9.1.1 psd-tools==1.4 psutil==5.9.1 PyInstaller==3.4 pypiwin32==223 # Replace pypyodbc==1.3.5 with a maintained package # https://www.kbsoftware.co.uk/crm/ticket/4957/ # On Linux, you may need to install: # apt install unixodbc-dev pyodbc==4.0.32 python-slugify==6.1.2 python-whois==0.7.3 pyxero==0.9.2 # CVE-2017-18342 - https://github.com/advisories/GHSA-rprw-h62v-c2w7 PyYAML==5.4.1 raygun4py==4.3.0 redis==3.5.3 # for windows # redis==2.10.6 reportlab==3.6.10 # see urllib3 (below) requests==2.28.0 scp==0.14.4 social-auth-app-django==1.1.0 sparkpost==1.3.6 spyne==2.11.0 statsd==3.0.1 # stripe==2.71.0 stripe==2.65.0 tasklib==1.1.0 transitions==0.8.11 # for compatibility with requests urllib3==1.26.2 # for celery - not version 5.0.0 is not compatible vine==1.3.0 wagtail==3.0 waitress==2.1.2 whitenoise==6.2.0 WooCommerce==3.0.0 workalendar==2.5.0 xmltodict==0.12.0 Yapsy==1.10.423 For local requirements (``requirements/local.txt``):: django-debug-toolbar To update the version of a dependency in ``base.txt``:: find . -name "base.txt" | xargs sed -i 's/Django==1.6.1/Django==1.6.2/g'