Browse Source

Updated project requirements

Some of these were necessary for proper Django 4.2 support
Replaced linters with `ruff` and updated the pre-commit configuration to match upstream Wagtail for consistency
John-Scott Atlakson 1 year ago
parent
commit
88ca447f76
4 changed files with 26 additions and 38 deletions
  1. 14 21
      .pre-commit-config.yaml
  2. 5 5
      requirements/base.txt
  3. 1 6
      requirements/development.txt
  4. 6 6
      requirements/production.txt

+ 14 - 21
.pre-commit-config.yaml

@@ -7,30 +7,19 @@ repos:
     hooks:
       - id: black
         language_version: python3
-        args: ['--target-version', 'py37']
-  - repo: https://github.com/timothycrosley/isort
-    # isort config is in setup.cfg
-    rev: 5.6.4
+        args: ['--target-version', 'py38']
+
+  - repo: https://github.com/astral-sh/ruff-pre-commit
+    rev: 'v0.0.290'
     hooks:
-      - id: isort
-  - repo: https://github.com/pycqa/flake8
-    # flake8 config is in setup.cfg
-    rev: 3.8.4
-    hooks:
-      - id: flake8
-        additional_dependencies:
-          - flake8-comprehensions
-          - flake8-assertive
-          - flake8-print
-  - repo: https://github.com/rtts/djhtml
-    rev: v1.4.13
-    hooks:
-      - id: djhtml
+      - id: ruff
+        args: [--fix, --exit-non-zero-on-fix]
+
   - repo: https://github.com/pre-commit/mirrors-prettier
     rev: v3.1.0
     hooks:
       - id: prettier
-        types_or: [css, javascript, json, yaml]
+        types_or: [css, scss, javascript, ts, tsx, json, yaml]
   - repo: https://github.com/pre-commit/mirrors-eslint
     rev: v8.55.0
     hooks:
@@ -41,10 +30,14 @@ repos:
         additional_dependencies:
           - eslint@8.55.0
   - repo: https://github.com/thibaudcolas/pre-commit-stylelint
-    rev: v14.2.0
+    rev: v15.10.3
     hooks:
       - id: stylelint
-        files: \.css$
+        files: \.scss$
         additional_dependencies:
           - stylelint@15.11.0
           - stylelint-config-standard@34.0.0
+  - repo: https://github.com/rtts/djhtml
+    rev: 3.0.6
+    hooks:
+      - id: djhtml

+ 5 - 5
requirements/base.txt

@@ -1,8 +1,8 @@
 Django>=4.2,<4.3
-django-dotenv==1.4.1
+django-dotenv==1.4.2
 wagtail>=5.2,<5.3
-wagtail-font-awesome-svg>=0.0.3,<1
-django-debug-toolbar>=3.2,<4
-django-extensions==3.2.1
+wagtail-font-awesome-svg>=1,<2
+django-debug-toolbar>=4.2,<5
+django-extensions==3.2.3
 django-csp==3.7
-dj-database-url==0.4.1
+dj-database-url==2.1.0

+ 1 - 6
requirements/development.txt

@@ -1,10 +1,5 @@
 -r base.txt
 black==22.3.0
-flake8>=3.6.0
-isort==5.6.4  # leave this pinned - it tends to change rules between patch releases
-flake8-blind-except==0.1.1
-flake8-comprehensions==3.8.0
-flake8-print==5.0.0
-flake8-assertive==2.0.0
+ruff==0.0.290
 curlylint==0.13.1
 djhtml==1.4.13

+ 6 - 6
requirements/production.txt

@@ -2,13 +2,13 @@
 elasticsearch==5.5.3
 # Additional dependencies for Heroku, AWS, and Google Cloud deployment
 uwsgi>=2.0.17,<2.1
-psycopg2>=2.7,<3.0
-whitenoise>=5.0,<5.1
+psycopg[binary]>=3.1,<3.2
+whitenoise==6.6.0
 boto3==1.9.189
-google-cloud-storage==1.20.0
-django-storages==1.13.1
+google-cloud-storage==2.13.0
+django-storages==1.14.2
 # For retrieving credentials and signing requests to Elasticsearch
 botocore>=1.12.33,<1.13
-aws-requests-auth==0.4.0
-django-redis==5.2.0
+aws-requests-auth==0.4.3
+django-redis==5.4.0
 django-basic-auth-ip-whitelist==0.5