Cleanup.
This commit is contained in:
parent
b39b114e30
commit
480eecca12
|
@ -3,6 +3,7 @@
|
||||||
*/.*
|
*/.*
|
||||||
|
|
||||||
!src/
|
!src/
|
||||||
|
!requirements.txt
|
||||||
!requirements/
|
!requirements/
|
||||||
!entrypoint.sh
|
!entrypoint.sh
|
||||||
!pyproject.toml
|
!pyproject.toml
|
||||||
|
|
|
@ -7,7 +7,6 @@ steps:
|
||||||
- name: docker
|
- name: docker
|
||||||
image: plugins/docker
|
image: plugins/docker
|
||||||
environment:
|
environment:
|
||||||
DJANGO_ENV: production
|
|
||||||
BUILD: "${DRONE_COMMIT_SHA}"
|
BUILD: "${DRONE_COMMIT_SHA}"
|
||||||
settings:
|
settings:
|
||||||
repo: docker.data.coop/membersystem
|
repo: docker.data.coop/membersystem
|
||||||
|
@ -17,7 +16,6 @@ steps:
|
||||||
password:
|
password:
|
||||||
from_secret: DOCKER_PASSWORD
|
from_secret: DOCKER_PASSWORD
|
||||||
build_args_from_env:
|
build_args_from_env:
|
||||||
- DJANGO_ENV
|
|
||||||
- BUILD
|
- BUILD
|
||||||
tags:
|
tags:
|
||||||
- "${DRONE_BUILD_NUMBER}"
|
- "${DRONE_BUILD_NUMBER}"
|
||||||
|
|
|
@ -6,4 +6,3 @@ DATABASE_URL=postgres://postgres:postgres@postgres:5432/postgres
|
||||||
# Use something along the the following if you are not using docker
|
# Use something along the the following if you are not using docker
|
||||||
# DATABASE_URL=postgres://postgres:postgres@localhost:5432/datacoop_membersystem
|
# DATABASE_URL=postgres://postgres:postgres@localhost:5432/datacoop_membersystem
|
||||||
DEBUG=True
|
DEBUG=True
|
||||||
DJANGO_ENV=development
|
|
||||||
|
|
16
Dockerfile
16
Dockerfile
|
@ -7,18 +7,18 @@ ENV PYTHONFAULTHANDLER=1 \
|
||||||
PIP_NO_CACHE_DIR=off \
|
PIP_NO_CACHE_DIR=off \
|
||||||
PIP_DISABLE_PIP_VERSION_CHECK=on \
|
PIP_DISABLE_PIP_VERSION_CHECK=on \
|
||||||
PIP_DEFAULT_TIMEOUT=100
|
PIP_DEFAULT_TIMEOUT=100
|
||||||
ARG DJANGO_ENV
|
|
||||||
ARG BUILD
|
ARG BUILD
|
||||||
ENV BUILD ${BUILD}
|
ENV BUILD ${BUILD}
|
||||||
|
ARG REQUIREMENTS_FILE=requirements.txt
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
RUN groupadd -g 1000 www && useradd -u 1000 -ms /bin/bash -g www www
|
RUN groupadd -g 1000 www && useradd -u 1000 -ms /bin/bash -g www www
|
||||||
COPY --chown=www:www . .
|
COPY --chown=www:www . .
|
||||||
RUN mkdir /app/src/static \
|
RUN mkdir /app/src/static && \
|
||||||
&& chown www:www /app/src/static \
|
chown www:www /app/src/static && \
|
||||||
&& apt-get update \
|
apt-get update && \
|
||||||
&& apt-get install -y \
|
apt-get install -y \
|
||||||
binutils \
|
binutils \
|
||||||
libpq-dev \
|
libpq-dev \
|
||||||
build-essential \
|
build-essential \
|
||||||
|
@ -29,9 +29,9 @@ RUN mkdir /app/src/static \
|
||||||
libgdk-pixbuf2.0-0 \
|
libgdk-pixbuf2.0-0 \
|
||||||
libffi-dev \
|
libffi-dev \
|
||||||
shared-mime-info \
|
shared-mime-info \
|
||||||
gettext \
|
gettext && \
|
||||||
&& pip install . \
|
pip install --no-cache-dir -r $REQUIREMENTS_FILE && \
|
||||||
&& django-admin compilemessages
|
django-admin compilemessages
|
||||||
|
|
||||||
ENTRYPOINT ["./entrypoint.sh"]
|
ENTRYPOINT ["./entrypoint.sh"]
|
||||||
|
|
||||||
|
|
37
Makefile
37
Makefile
|
@ -1,27 +1,12 @@
|
||||||
DOCKER_COMPOSE = COMPOSE_DOCKER_CLI_BUILD=1 DOCKER_BUILDKIT=1 docker compose
|
DOCKER_COMPOSE = COMPOSE_DOCKER_CLI_BUILD=1 DOCKER_BUILDKIT=1 docker compose
|
||||||
DOCKER_RUN = ${DOCKER_COMPOSE} run -u `id -u`
|
DOCKER_RUN = ${DOCKER_COMPOSE} run -u `id -u`
|
||||||
DOCKER_BUILD = DOCKER_BUILDKIT=1 docker build
|
DOCKER_BUILD = DOCKER_BUILDKIT=1 docker build
|
||||||
DOCKER_CONTAINER_NAME = backend
|
|
||||||
MANAGE_EXEC = python /app/src/manage.py
|
MANAGE_EXEC = python /app/src/manage.py
|
||||||
MANAGE_COMMAND = ${DOCKER_RUN} ${DOCKER_CONTAINER_NAME} ${MANAGE_EXEC}
|
MANAGE_COMMAND = ${DOCKER_RUN} app ${MANAGE_EXEC}
|
||||||
|
|
||||||
init: setup_venv pre_commit_install migrate
|
|
||||||
|
|
||||||
run:
|
run:
|
||||||
${DOCKER_COMPOSE} up
|
${DOCKER_COMPOSE} up
|
||||||
|
|
||||||
setup_venv:
|
|
||||||
rm -rf venv
|
|
||||||
python3.11 -m venv venv;
|
|
||||||
venv/bin/python -m pip install wheel setuptools;
|
|
||||||
venv/bin/python -m pip install pre-commit boto3 pip-tools;
|
|
||||||
|
|
||||||
pre_commit_install:
|
|
||||||
venv/bin/pre-commit install
|
|
||||||
|
|
||||||
pre_commit_run_all:
|
|
||||||
venv/bin/pre-commit run --all-files
|
|
||||||
|
|
||||||
makemigrations:
|
makemigrations:
|
||||||
${MANAGE_COMMAND} makemigrations ${ARGS}
|
${MANAGE_COMMAND} makemigrations ${ARGS}
|
||||||
|
|
||||||
|
@ -36,23 +21,3 @@ shell:
|
||||||
|
|
||||||
manage_command:
|
manage_command:
|
||||||
${MANAGE_COMMAND} ${ARGS}
|
${MANAGE_COMMAND} ${ARGS}
|
||||||
|
|
||||||
add_dependency:
|
|
||||||
${DOCKER_RUN} ${DOCKER_CONTAINER_NAME} poetry add --lock ${DEPENDENCY}
|
|
||||||
|
|
||||||
add_dev_dependency:
|
|
||||||
${DOCKER_RUN} ${DOCKER_CONTAINER_NAME} poetry add -D --lock ${DEPENDENCY}
|
|
||||||
|
|
||||||
poetry_lock:
|
|
||||||
${DOCKER_RUN} ${DOCKER_CONTAINER_NAME} poetry lock --no-update
|
|
||||||
|
|
||||||
poetry_command:
|
|
||||||
${DOCKER_RUN} ${DOCKER_CONTAINER_NAME} poetry ${COMMAND}
|
|
||||||
|
|
||||||
build_dev_docker_image: compile_requirements
|
|
||||||
${DOCKER_COMPOSE} build ${DOCKER_CONTAINER_NAME}
|
|
||||||
|
|
||||||
compile_requirements:
|
|
||||||
./venv/bin/pip-compile --output-file requirements/base.txt requirements/base.in
|
|
||||||
./venv/bin/pip-compile --output-file requirements/test.txt requirements/test.in
|
|
||||||
./venv/bin/pip-compile --output-file requirements/dev.txt requirements/dev.in
|
|
||||||
|
|
83
README.md
83
README.md
|
@ -1,71 +1,74 @@
|
||||||
# member.data.coop
|
# data.coop member system
|
||||||
|
|
||||||
## Development
|
## Development setup
|
||||||
|
|
||||||
### Setup environment
|
There are two ways to setup the development environment.
|
||||||
|
|
||||||
Copy over the .env.example file to .env and adjust DATABASE_URL accordingly
|
- Using the Docker Compose setup provided in this repository.
|
||||||
|
- Using [hatch](https://hatch.pypa.io/) in your host OS.
|
||||||
|
|
||||||
$ cp .env.example .env
|
|
||||||
|
|
||||||
### Docker
|
### Using Docker Compose
|
||||||
|
|
||||||
|
Working with the Docker Compose setup is made easy with the `Makefile` provided in the repository.
|
||||||
|
|
||||||
#### Requirements
|
#### Requirements
|
||||||
|
|
||||||
- Docker
|
- Docker
|
||||||
- Docker compose
|
- docker compose plugin
|
||||||
- pre-commit (preferred for contributions)
|
|
||||||
|
|
||||||
#### Setup
|
#### Setup
|
||||||
|
|
||||||
Given that the requirements above are installed, it should be as easy as:
|
1. Setup .env file
|
||||||
|
|
||||||
$ make migrate
|
An example .env file is provided in the repository. You can copy it to .env file using the following command:
|
||||||
|
|
||||||
This will setup the database. Next run:
|
```bash
|
||||||
|
cp .env.example .env
|
||||||
|
```
|
||||||
|
|
||||||
$ make run
|
The default values in the .env file are suitable for the docker-compose setup.
|
||||||
|
|
||||||
This will build the docker image and start the member system on http://localhost:8000.
|
2. Migrate
|
||||||
|
|
||||||
You can create a superuser by running:
|
```bash
|
||||||
|
make migrate
|
||||||
|
```
|
||||||
|
|
||||||
$ make createsuperuser
|
3. Run the development server
|
||||||
|
|
||||||
Make migrations:
|
```bash
|
||||||
|
make run
|
||||||
|
```
|
||||||
|
|
||||||
$ make makemigrations
|
### Using hatch
|
||||||
|
|
||||||
Make messages:
|
#### Requirements
|
||||||
|
|
||||||
$ make makemessages
|
- Python 3.12 or higher
|
||||||
|
- [hatch](https://hatch.pypa.io/) (Recommended way to install is using `pipx install hatch`)
|
||||||
|
- A running PostgreSQL server
|
||||||
|
|
||||||
Running tests:
|
#### Setup
|
||||||
|
|
||||||
$ make test
|
1. Setup .env file
|
||||||
|
|
||||||
### Non-docker
|
An example .env file is provided in the repository. You can copy it to .env file using the following command:
|
||||||
|
|
||||||
Create a venv
|
```bash
|
||||||
|
cp .env.example .env
|
||||||
|
```
|
||||||
|
|
||||||
$ python3 -m venv venv
|
Edit the .env file and set the values for the environment variables, especially the database variables.
|
||||||
|
|
||||||
Activate the venv
|
2. Run migrate
|
||||||
|
|
||||||
$ source venv/bin/activate
|
```bash
|
||||||
|
hatch run dev:migrate
|
||||||
|
```
|
||||||
|
|
||||||
Install requirements
|
3. Run the development server
|
||||||
|
|
||||||
$ pip install -r requirements/dev.txt
|
```bash
|
||||||
|
hatch run dev:server
|
||||||
Run migrations
|
```
|
||||||
|
|
||||||
$ ./src/manage.py migrate
|
|
||||||
|
|
||||||
Create a superuser
|
|
||||||
|
|
||||||
$ ./src/manage.py createsuperuser
|
|
||||||
|
|
||||||
Run the server
|
|
||||||
|
|
||||||
$ ./src/manage.py runserver
|
|
||||||
|
|
241
devenv.lock
241
devenv.lock
|
@ -1,241 +0,0 @@
|
||||||
{
|
|
||||||
"nodes": {
|
|
||||||
"devenv": {
|
|
||||||
"locked": {
|
|
||||||
"dir": "src/modules",
|
|
||||||
"lastModified": 1707004164,
|
|
||||||
"narHash": "sha256-9Hr8onWtvLk5A8vCEkaE9kxA0D7PR62povFokM1oL5Q=",
|
|
||||||
"owner": "cachix",
|
|
||||||
"repo": "devenv",
|
|
||||||
"rev": "0e68853bb27981a4ffd7a7225b59ed84f7180fc7",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"dir": "src/modules",
|
|
||||||
"owner": "cachix",
|
|
||||||
"repo": "devenv",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-compat": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1696426674,
|
|
||||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-compat_2": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1696426674,
|
|
||||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils": {
|
|
||||||
"inputs": {
|
|
||||||
"systems": "systems"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1705309234,
|
|
||||||
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"id": "flake-utils",
|
|
||||||
"type": "indirect"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils_2": {
|
|
||||||
"inputs": {
|
|
||||||
"systems": "systems_2"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1701680307,
|
|
||||||
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"gitignore": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"pre-commit-hooks",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1703887061,
|
|
||||||
"narHash": "sha256-gGPa9qWNc6eCXT/+Z5/zMkyYOuRZqeFZBDbopNZQkuY=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "gitignore.nix",
|
|
||||||
"rev": "43e1aa1308018f37118e34d3a9cb4f5e75dc11d5",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "gitignore.nix",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1707451808,
|
|
||||||
"narHash": "sha256-UwDBUNHNRsYKFJzyTMVMTF5qS4xeJlWoeyJf+6vvamU=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "442d407992384ed9c0e6d352de75b69079904e4e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixpkgs-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs-python": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-compat": "flake-compat",
|
|
||||||
"flake-utils": "flake-utils",
|
|
||||||
"nixpkgs": "nixpkgs_2"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1707114737,
|
|
||||||
"narHash": "sha256-ZXqv2epXAjDjfWbYn+yy4VOmW+C7SuUBoiZkkDoSqA4=",
|
|
||||||
"owner": "cachix",
|
|
||||||
"repo": "nixpkgs-python",
|
|
||||||
"rev": "f34ed02276bc08fe1c91c1bf0ef3589d68028878",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "cachix",
|
|
||||||
"repo": "nixpkgs-python",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs-stable": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1704874635,
|
|
||||||
"narHash": "sha256-YWuCrtsty5vVZvu+7BchAxmcYzTMfolSPP5io8+WYCg=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "3dc440faeee9e889fe2d1b4d25ad0f430d449356",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-23.11",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1707347730,
|
|
||||||
"narHash": "sha256-0etC/exQIaqC9vliKhc3eZE2Mm2wgLa0tj93ZF/egvM=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "6832d0d99649db3d65a0e15fa51471537b2c56a6",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-23.11",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"pre-commit-hooks": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-compat": "flake-compat_2",
|
|
||||||
"flake-utils": "flake-utils_2",
|
|
||||||
"gitignore": "gitignore",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"nixpkgs-stable": "nixpkgs-stable"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1707297608,
|
|
||||||
"narHash": "sha256-ADjo/5VySGlvtCW3qR+vdFF4xM9kJFlRDqcC9ZGI8EA=",
|
|
||||||
"owner": "cachix",
|
|
||||||
"repo": "pre-commit-hooks.nix",
|
|
||||||
"rev": "0db2e67ee49910adfa13010e7f012149660af7f0",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "cachix",
|
|
||||||
"repo": "pre-commit-hooks.nix",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": {
|
|
||||||
"inputs": {
|
|
||||||
"devenv": "devenv",
|
|
||||||
"nixpkgs": "nixpkgs",
|
|
||||||
"nixpkgs-python": "nixpkgs-python",
|
|
||||||
"pre-commit-hooks": "pre-commit-hooks"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"systems": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1681028828,
|
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"systems_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1681028828,
|
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": "root",
|
|
||||||
"version": 7
|
|
||||||
}
|
|
19
devenv.nix
19
devenv.nix
|
@ -1,19 +0,0 @@
|
||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
languages.python.enable = true;
|
|
||||||
languages.python.version = "3.12";
|
|
||||||
|
|
||||||
services.postgres = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.postgresql_15;
|
|
||||||
initialDatabases = [ {"name" = "postgres";} ];
|
|
||||||
listen_addresses = "localhost";
|
|
||||||
initialScript = "create user postgres with password 'postgres' superuser;";
|
|
||||||
};
|
|
||||||
|
|
||||||
processes = {
|
|
||||||
app.exec = "while ! pg_isready -d postgres -h localhost -U postgres 2>/dev/null; do sleep 1; done; hatch run server";
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,5 +0,0 @@
|
||||||
inputs:
|
|
||||||
nixpkgs:
|
|
||||||
url: github:NixOS/nixpkgs/nixpkgs-unstable
|
|
||||||
nixpkgs-python:
|
|
||||||
url: github:cachix/nixpkgs-python
|
|
|
@ -1,11 +1,10 @@
|
||||||
version: '3.7'
|
---
|
||||||
|
|
||||||
services:
|
services:
|
||||||
|
app:
|
||||||
backend:
|
|
||||||
image: data_coop_membersystem:dev
|
|
||||||
build:
|
build:
|
||||||
context: .
|
context: .
|
||||||
|
args:
|
||||||
|
- REQUIREMENTS_FILE=requirements/requirements-dev.txt
|
||||||
command: python /app/src/manage.py runserver 0.0.0.0:8000
|
command: python /app/src/manage.py runserver 0.0.0.0:8000
|
||||||
tty: true
|
tty: true
|
||||||
ports:
|
ports:
|
||||||
|
@ -28,3 +27,4 @@ services:
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
postgres_data:
|
postgres_data:
|
||||||
|
...
|
||||||
|
|
|
@ -29,7 +29,14 @@ version = "0.0.1"
|
||||||
[tool.hatch.build.targets.wheel]
|
[tool.hatch.build.targets.wheel]
|
||||||
packages = ["src"]
|
packages = ["src"]
|
||||||
|
|
||||||
|
[tool.hatch.env]
|
||||||
|
requires = ["hatch-pip-compile"]
|
||||||
|
|
||||||
[tool.hatch.envs.default]
|
[tool.hatch.envs.default]
|
||||||
|
type = "pip-compile"
|
||||||
|
|
||||||
|
[tool.hatch.envs.dev]
|
||||||
|
type = "pip-compile"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"coverage[toml]==7.3.0",
|
"coverage[toml]==7.3.0",
|
||||||
"pytest==7.2.2",
|
"pytest==7.2.2",
|
||||||
|
@ -45,7 +52,7 @@ dependencies = [
|
||||||
|
|
||||||
[[tool.hatch.envs.tests.matrix]]
|
[[tool.hatch.envs.tests.matrix]]
|
||||||
python = ["3.12"]
|
python = ["3.12"]
|
||||||
django = ["4.2", "5.0"]
|
django = ["5.0"]
|
||||||
|
|
||||||
[tool.hatch.envs.tests.overrides]
|
[tool.hatch.envs.tests.overrides]
|
||||||
matrix.django.dependencies = [
|
matrix.django.dependencies = [
|
||||||
|
@ -55,7 +62,7 @@ matrix.python.dependencies = [
|
||||||
{ value = "typing_extensions==4.5.0", if = ["3.10"]},
|
{ value = "typing_extensions==4.5.0", if = ["3.10"]},
|
||||||
]
|
]
|
||||||
|
|
||||||
[tool.hatch.envs.default.scripts]
|
[tool.hatch.envs.dev.scripts]
|
||||||
cov = "pytest --cov-report=term-missing --cov-config=pyproject.toml --cov=src --cov=tests --cov=append {args}"
|
cov = "pytest --cov-report=term-missing --cov-config=pyproject.toml --cov=src --cov=tests --cov=append {args}"
|
||||||
no-cov = "cov --no-cov {args}"
|
no-cov = "cov --no-cov {args}"
|
||||||
typecheck = "mypy --config-file=pyproject.toml ."
|
typecheck = "mypy --config-file=pyproject.toml ."
|
||||||
|
|
103
requirements.txt
Normal file
103
requirements.txt
Normal file
|
@ -0,0 +1,103 @@
|
||||||
|
#
|
||||||
|
# This file is autogenerated by hatch-pip-compile with Python 3.12
|
||||||
|
#
|
||||||
|
# - django-allauth==0.63.3
|
||||||
|
# - django-money==3.4.1
|
||||||
|
# - django-oauth-toolkit==2.4.0
|
||||||
|
# - django-registries==0.0.3
|
||||||
|
# - django-view-decorator==0.0.4
|
||||||
|
# - django-zen-queries==2.1.0
|
||||||
|
# - django==5.0.6
|
||||||
|
# - environs[django]==11.0.0
|
||||||
|
# - psycopg[binary]==3.1.19
|
||||||
|
# - uvicorn==0.30.0
|
||||||
|
# - whitenoise==6.6.0
|
||||||
|
#
|
||||||
|
|
||||||
|
asgiref==3.8.1
|
||||||
|
# via django
|
||||||
|
babel==2.15.0
|
||||||
|
# via py-moneyed
|
||||||
|
certifi==2024.7.4
|
||||||
|
# via requests
|
||||||
|
cffi==1.16.0
|
||||||
|
# via cryptography
|
||||||
|
charset-normalizer==3.3.2
|
||||||
|
# via requests
|
||||||
|
click==8.1.7
|
||||||
|
# via uvicorn
|
||||||
|
cryptography==42.0.8
|
||||||
|
# via jwcrypto
|
||||||
|
dj-database-url==2.2.0
|
||||||
|
# via environs
|
||||||
|
dj-email-url==1.0.6
|
||||||
|
# via environs
|
||||||
|
django==5.0.6
|
||||||
|
# via
|
||||||
|
# hatch.envs.default
|
||||||
|
# dj-database-url
|
||||||
|
# django-allauth
|
||||||
|
# django-money
|
||||||
|
# django-oauth-toolkit
|
||||||
|
# django-registries
|
||||||
|
# django-view-decorator
|
||||||
|
# django-zen-queries
|
||||||
|
django-allauth==0.63.3
|
||||||
|
# via hatch.envs.default
|
||||||
|
django-cache-url==3.4.5
|
||||||
|
# via environs
|
||||||
|
django-money==3.4.1
|
||||||
|
# via hatch.envs.default
|
||||||
|
django-oauth-toolkit==2.4.0
|
||||||
|
# via hatch.envs.default
|
||||||
|
django-registries==0.0.3
|
||||||
|
# via hatch.envs.default
|
||||||
|
django-view-decorator==0.0.4
|
||||||
|
# via hatch.envs.default
|
||||||
|
django-zen-queries==2.1.0
|
||||||
|
# via hatch.envs.default
|
||||||
|
environs==11.0.0
|
||||||
|
# via hatch.envs.default
|
||||||
|
h11==0.14.0
|
||||||
|
# via uvicorn
|
||||||
|
idna==3.7
|
||||||
|
# via requests
|
||||||
|
jwcrypto==1.5.6
|
||||||
|
# via django-oauth-toolkit
|
||||||
|
marshmallow==3.21.3
|
||||||
|
# via environs
|
||||||
|
oauthlib==3.2.2
|
||||||
|
# via django-oauth-toolkit
|
||||||
|
packaging==24.1
|
||||||
|
# via marshmallow
|
||||||
|
psycopg==3.1.19
|
||||||
|
# via hatch.envs.default
|
||||||
|
psycopg-binary==3.1.19
|
||||||
|
# via psycopg
|
||||||
|
py-moneyed==3.0
|
||||||
|
# via django-money
|
||||||
|
pycparser==2.22
|
||||||
|
# via cffi
|
||||||
|
python-dotenv==1.0.1
|
||||||
|
# via environs
|
||||||
|
pytz==2024.1
|
||||||
|
# via django-oauth-toolkit
|
||||||
|
requests==2.32.3
|
||||||
|
# via django-oauth-toolkit
|
||||||
|
sqlparse==0.5.0
|
||||||
|
# via django
|
||||||
|
typing-extensions==4.12.2
|
||||||
|
# via
|
||||||
|
# dj-database-url
|
||||||
|
# jwcrypto
|
||||||
|
# psycopg
|
||||||
|
# py-moneyed
|
||||||
|
urllib3==2.2.2
|
||||||
|
# via requests
|
||||||
|
uvicorn==0.30.0
|
||||||
|
# via hatch.envs.default
|
||||||
|
whitenoise==6.6.0
|
||||||
|
# via hatch.envs.default
|
||||||
|
|
||||||
|
# The following packages are considered to be unsafe in a requirements file:
|
||||||
|
# setuptools
|
|
@ -1,8 +0,0 @@
|
||||||
Django==5.0.1
|
|
||||||
django-money==3.4.1
|
|
||||||
django-allauth==0.60.0
|
|
||||||
psycopg[binary]==3.1.16
|
|
||||||
environs[django]==10.0.0
|
|
||||||
uvicorn==0.25.0
|
|
||||||
whitenoise==6.6.0
|
|
||||||
django-zen-queries==2.1.0
|
|
|
@ -1,101 +0,0 @@
|
||||||
#
|
|
||||||
# This file is autogenerated by pip-compile with Python 3.11
|
|
||||||
# by the following command:
|
|
||||||
#
|
|
||||||
# pip-compile --output-file=requirements/base.txt pyproject.toml
|
|
||||||
#
|
|
||||||
asgiref==3.7.2
|
|
||||||
# via django
|
|
||||||
babel==2.14.0
|
|
||||||
# via py-moneyed
|
|
||||||
certifi==2023.11.17
|
|
||||||
# via requests
|
|
||||||
cffi==1.16.0
|
|
||||||
# via cryptography
|
|
||||||
charset-normalizer==3.3.2
|
|
||||||
# via requests
|
|
||||||
click==8.1.7
|
|
||||||
# via uvicorn
|
|
||||||
cryptography==41.0.7
|
|
||||||
# via pyjwt
|
|
||||||
defusedxml==0.7.1
|
|
||||||
# via python3-openid
|
|
||||||
dj-database-url==2.1.0
|
|
||||||
# via environs
|
|
||||||
dj-email-url==1.0.6
|
|
||||||
# via environs
|
|
||||||
django==5.0.1
|
|
||||||
# via
|
|
||||||
# dj-database-url
|
|
||||||
# django-allauth
|
|
||||||
# django-money
|
|
||||||
# django-registries
|
|
||||||
# django-view-decorator
|
|
||||||
# django-zen-queries
|
|
||||||
# membersystem (pyproject.toml)
|
|
||||||
django-allauth==0.60.0
|
|
||||||
# via membersystem (pyproject.toml)
|
|
||||||
django-cache-url==3.4.5
|
|
||||||
# via environs
|
|
||||||
django-money==3.4.1
|
|
||||||
# via membersystem (pyproject.toml)
|
|
||||||
django-registries==0.0.3
|
|
||||||
# via membersystem (pyproject.toml)
|
|
||||||
django-view-decorator==0.0.4
|
|
||||||
# via membersystem (pyproject.toml)
|
|
||||||
django-zen-queries==2.1.0
|
|
||||||
# via membersystem (pyproject.toml)
|
|
||||||
environs[django]==10.0.0
|
|
||||||
# via
|
|
||||||
# environs
|
|
||||||
# membersystem (pyproject.toml)
|
|
||||||
h11==0.14.0
|
|
||||||
# via uvicorn
|
|
||||||
idna==3.6
|
|
||||||
# via requests
|
|
||||||
marshmallow==3.20.1
|
|
||||||
# via environs
|
|
||||||
oauthlib==3.2.2
|
|
||||||
# via requests-oauthlib
|
|
||||||
packaging==23.2
|
|
||||||
# via marshmallow
|
|
||||||
psycopg[binary]==3.1.16
|
|
||||||
# via
|
|
||||||
# membersystem (pyproject.toml)
|
|
||||||
# psycopg
|
|
||||||
psycopg-binary==3.1.16
|
|
||||||
# via psycopg
|
|
||||||
py-moneyed==3.0
|
|
||||||
# via django-money
|
|
||||||
pycparser==2.21
|
|
||||||
# via cffi
|
|
||||||
pyjwt[crypto]==2.8.0
|
|
||||||
# via
|
|
||||||
# django-allauth
|
|
||||||
# pyjwt
|
|
||||||
python-dotenv==1.0.0
|
|
||||||
# via environs
|
|
||||||
python3-openid==3.2.0
|
|
||||||
# via django-allauth
|
|
||||||
requests==2.31.0
|
|
||||||
# via
|
|
||||||
# django-allauth
|
|
||||||
# requests-oauthlib
|
|
||||||
requests-oauthlib==1.3.1
|
|
||||||
# via django-allauth
|
|
||||||
sqlparse==0.4.4
|
|
||||||
# via django
|
|
||||||
typing-extensions==4.9.0
|
|
||||||
# via
|
|
||||||
# dj-database-url
|
|
||||||
# psycopg
|
|
||||||
# py-moneyed
|
|
||||||
urllib3==2.1.0
|
|
||||||
# via requests
|
|
||||||
uvicorn==0.25.0
|
|
||||||
# via membersystem (pyproject.toml)
|
|
||||||
whitenoise==6.6.0
|
|
||||||
# via membersystem (pyproject.toml)
|
|
||||||
|
|
||||||
# The following packages are considered to be unsafe in a requirements file:
|
|
||||||
# setuptools
|
|
|
@ -1,8 +0,0 @@
|
||||||
-r test.txt
|
|
||||||
|
|
||||||
django-browser-reload==1.12.1
|
|
||||||
django-debug-toolbar==4.2.0
|
|
||||||
django-extensions==3.2.3
|
|
||||||
django-stubs==4.2.7
|
|
||||||
ipython==8.19.0
|
|
||||||
mypy==1.8.0
|
|
|
@ -1,213 +0,0 @@
|
||||||
#
|
|
||||||
# This file is autogenerated by pip-compile with Python 3.11
|
|
||||||
# by the following command:
|
|
||||||
#
|
|
||||||
# pip-compile --output-file=requirements/dev.txt requirements/dev.in
|
|
||||||
#
|
|
||||||
asgiref==3.7.2
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# django
|
|
||||||
# django-browser-reload
|
|
||||||
asttokens==2.4.1
|
|
||||||
# via stack-data
|
|
||||||
babel==2.14.0
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# py-moneyed
|
|
||||||
certifi==2023.11.17
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# requests
|
|
||||||
cffi==1.16.0
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# cryptography
|
|
||||||
charset-normalizer==3.3.2
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# requests
|
|
||||||
click==8.1.7
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# uvicorn
|
|
||||||
coverage==7.4.0
|
|
||||||
# via -r requirements/test.txt
|
|
||||||
cryptography==41.0.7
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# pyjwt
|
|
||||||
decorator==5.1.1
|
|
||||||
# via ipython
|
|
||||||
defusedxml==0.7.1
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# python3-openid
|
|
||||||
dj-database-url==2.1.0
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# environs
|
|
||||||
dj-email-url==1.0.6
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# environs
|
|
||||||
django==5.0.1
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# dj-database-url
|
|
||||||
# django-allauth
|
|
||||||
# django-browser-reload
|
|
||||||
# django-debug-toolbar
|
|
||||||
# django-extensions
|
|
||||||
# django-money
|
|
||||||
# django-stubs
|
|
||||||
# django-stubs-ext
|
|
||||||
# django-zen-queries
|
|
||||||
django-allauth==0.60.0
|
|
||||||
# via -r requirements/test.txt
|
|
||||||
django-browser-reload==1.12.1
|
|
||||||
# via -r requirements/dev.in
|
|
||||||
django-cache-url==3.4.5
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# environs
|
|
||||||
django-debug-toolbar==4.2.0
|
|
||||||
# via -r requirements/dev.in
|
|
||||||
django-extensions==3.2.3
|
|
||||||
# via -r requirements/dev.in
|
|
||||||
django-money==3.4.1
|
|
||||||
# via -r requirements/test.txt
|
|
||||||
django-stubs==4.2.7
|
|
||||||
# via -r requirements/dev.in
|
|
||||||
django-stubs-ext==4.2.7
|
|
||||||
# via django-stubs
|
|
||||||
django-zen-queries==2.1.0
|
|
||||||
# via -r requirements/test.txt
|
|
||||||
environs[django]==10.0.0
|
|
||||||
# via -r requirements/test.txt
|
|
||||||
executing==2.0.1
|
|
||||||
# via stack-data
|
|
||||||
h11==0.14.0
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# uvicorn
|
|
||||||
idna==3.6
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# requests
|
|
||||||
ipython==8.19.0
|
|
||||||
# via -r requirements/dev.in
|
|
||||||
jedi==0.19.1
|
|
||||||
# via ipython
|
|
||||||
lxml==5.0.1
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# unittest-xml-reporting
|
|
||||||
marshmallow==3.20.1
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# environs
|
|
||||||
matplotlib-inline==0.1.6
|
|
||||||
# via ipython
|
|
||||||
mypy==1.8.0
|
|
||||||
# via -r requirements/dev.in
|
|
||||||
mypy-extensions==1.0.0
|
|
||||||
# via mypy
|
|
||||||
oauthlib==3.2.2
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# requests-oauthlib
|
|
||||||
packaging==23.2
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# marshmallow
|
|
||||||
parso==0.8.3
|
|
||||||
# via jedi
|
|
||||||
pexpect==4.9.0
|
|
||||||
# via ipython
|
|
||||||
prompt-toolkit==3.0.43
|
|
||||||
# via ipython
|
|
||||||
psycopg[binary]==3.1.16
|
|
||||||
# via -r requirements/test.txt
|
|
||||||
psycopg-binary==3.1.16
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# psycopg
|
|
||||||
ptyprocess==0.7.0
|
|
||||||
# via pexpect
|
|
||||||
pure-eval==0.2.2
|
|
||||||
# via stack-data
|
|
||||||
py-moneyed==3.0
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# django-money
|
|
||||||
pycparser==2.21
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# cffi
|
|
||||||
pygments==2.17.2
|
|
||||||
# via ipython
|
|
||||||
pyjwt[crypto]==2.8.0
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# django-allauth
|
|
||||||
python-dotenv==1.0.0
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# environs
|
|
||||||
python3-openid==3.2.0
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# django-allauth
|
|
||||||
requests==2.31.0
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# django-allauth
|
|
||||||
# requests-oauthlib
|
|
||||||
requests-oauthlib==1.3.1
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# django-allauth
|
|
||||||
six==1.16.0
|
|
||||||
# via asttokens
|
|
||||||
sqlparse==0.4.4
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# django
|
|
||||||
# django-debug-toolbar
|
|
||||||
stack-data==0.6.3
|
|
||||||
# via ipython
|
|
||||||
tblib==3.0.0
|
|
||||||
# via -r requirements/test.txt
|
|
||||||
traitlets==5.14.1
|
|
||||||
# via
|
|
||||||
# ipython
|
|
||||||
# matplotlib-inline
|
|
||||||
types-pytz==2023.3.1.1
|
|
||||||
# via django-stubs
|
|
||||||
types-pyyaml==6.0.12.12
|
|
||||||
# via django-stubs
|
|
||||||
typing-extensions==4.9.0
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# dj-database-url
|
|
||||||
# django-stubs
|
|
||||||
# django-stubs-ext
|
|
||||||
# mypy
|
|
||||||
# psycopg
|
|
||||||
# py-moneyed
|
|
||||||
unittest-xml-reporting==3.2.0
|
|
||||||
# via -r requirements/test.txt
|
|
||||||
urllib3==2.1.0
|
|
||||||
# via
|
|
||||||
# -r requirements/test.txt
|
|
||||||
# requests
|
|
||||||
uvicorn==0.25.0
|
|
||||||
# via -r requirements/test.txt
|
|
||||||
wcwidth==0.2.13
|
|
||||||
# via prompt-toolkit
|
|
||||||
whitenoise==6.6.0
|
|
||||||
# via -r requirements/test.txt
|
|
||||||
|
|
||||||
# The following packages are considered to be unsafe in a requirements file:
|
|
||||||
# setuptools
|
|
183
requirements/requirements-dev.txt
Normal file
183
requirements/requirements-dev.txt
Normal file
|
@ -0,0 +1,183 @@
|
||||||
|
#
|
||||||
|
# This file is autogenerated by hatch-pip-compile with Python 3.12
|
||||||
|
#
|
||||||
|
# - coverage[toml]==7.3.0
|
||||||
|
# - pytest==7.2.2
|
||||||
|
# - pytest-cov
|
||||||
|
# - pytest-django==4.5.2
|
||||||
|
# - mypy==1.1.1
|
||||||
|
# - django-stubs==1.16.0
|
||||||
|
# - pip-tools==7.3.0
|
||||||
|
# - django-debug-toolbar==4.2.0
|
||||||
|
# - django-browser-reload==1.7.0
|
||||||
|
# - model-bakery==1.17.0
|
||||||
|
# - django-allauth==0.63.3
|
||||||
|
# - django-money==3.4.1
|
||||||
|
# - django-oauth-toolkit==2.4.0
|
||||||
|
# - django-registries==0.0.3
|
||||||
|
# - django-view-decorator==0.0.4
|
||||||
|
# - django-zen-queries==2.1.0
|
||||||
|
# - django==5.0.6
|
||||||
|
# - environs[django]==11.0.0
|
||||||
|
# - psycopg[binary]==3.1.19
|
||||||
|
# - uvicorn==0.30.0
|
||||||
|
# - whitenoise==6.6.0
|
||||||
|
#
|
||||||
|
|
||||||
|
asgiref==3.8.1
|
||||||
|
# via django
|
||||||
|
attrs==23.2.0
|
||||||
|
# via pytest
|
||||||
|
babel==2.15.0
|
||||||
|
# via py-moneyed
|
||||||
|
build==1.2.1
|
||||||
|
# via pip-tools
|
||||||
|
certifi==2024.7.4
|
||||||
|
# via requests
|
||||||
|
cffi==1.16.0
|
||||||
|
# via cryptography
|
||||||
|
charset-normalizer==3.3.2
|
||||||
|
# via requests
|
||||||
|
click==8.1.7
|
||||||
|
# via
|
||||||
|
# pip-tools
|
||||||
|
# uvicorn
|
||||||
|
coverage==7.3.0
|
||||||
|
# via
|
||||||
|
# hatch.envs.dev
|
||||||
|
# coverage
|
||||||
|
# pytest-cov
|
||||||
|
cryptography==42.0.8
|
||||||
|
# via jwcrypto
|
||||||
|
dj-database-url==2.2.0
|
||||||
|
# via environs
|
||||||
|
dj-email-url==1.0.6
|
||||||
|
# via environs
|
||||||
|
django==5.0.6
|
||||||
|
# via
|
||||||
|
# hatch.envs.dev
|
||||||
|
# dj-database-url
|
||||||
|
# django-allauth
|
||||||
|
# django-browser-reload
|
||||||
|
# django-debug-toolbar
|
||||||
|
# django-money
|
||||||
|
# django-oauth-toolkit
|
||||||
|
# django-registries
|
||||||
|
# django-stubs
|
||||||
|
# django-stubs-ext
|
||||||
|
# django-view-decorator
|
||||||
|
# django-zen-queries
|
||||||
|
# model-bakery
|
||||||
|
django-allauth==0.63.3
|
||||||
|
# via hatch.envs.dev
|
||||||
|
django-browser-reload==1.7.0
|
||||||
|
# via hatch.envs.dev
|
||||||
|
django-cache-url==3.4.5
|
||||||
|
# via environs
|
||||||
|
django-debug-toolbar==4.2.0
|
||||||
|
# via hatch.envs.dev
|
||||||
|
django-money==3.4.1
|
||||||
|
# via hatch.envs.dev
|
||||||
|
django-oauth-toolkit==2.4.0
|
||||||
|
# via hatch.envs.dev
|
||||||
|
django-registries==0.0.3
|
||||||
|
# via hatch.envs.dev
|
||||||
|
django-stubs==1.16.0
|
||||||
|
# via hatch.envs.dev
|
||||||
|
django-stubs-ext==5.0.2
|
||||||
|
# via django-stubs
|
||||||
|
django-view-decorator==0.0.4
|
||||||
|
# via hatch.envs.dev
|
||||||
|
django-zen-queries==2.1.0
|
||||||
|
# via hatch.envs.dev
|
||||||
|
environs==11.0.0
|
||||||
|
# via
|
||||||
|
# hatch.envs.dev
|
||||||
|
# environs
|
||||||
|
h11==0.14.0
|
||||||
|
# via uvicorn
|
||||||
|
idna==3.7
|
||||||
|
# via requests
|
||||||
|
iniconfig==2.0.0
|
||||||
|
# via pytest
|
||||||
|
jwcrypto==1.5.6
|
||||||
|
# via django-oauth-toolkit
|
||||||
|
marshmallow==3.21.3
|
||||||
|
# via environs
|
||||||
|
model-bakery==1.17.0
|
||||||
|
# via hatch.envs.dev
|
||||||
|
mypy==1.1.1
|
||||||
|
# via
|
||||||
|
# hatch.envs.dev
|
||||||
|
# django-stubs
|
||||||
|
mypy-extensions==1.0.0
|
||||||
|
# via mypy
|
||||||
|
oauthlib==3.2.2
|
||||||
|
# via django-oauth-toolkit
|
||||||
|
packaging==24.1
|
||||||
|
# via
|
||||||
|
# build
|
||||||
|
# marshmallow
|
||||||
|
# pytest
|
||||||
|
pip-tools==7.3.0
|
||||||
|
# via hatch.envs.dev
|
||||||
|
pluggy==1.5.0
|
||||||
|
# via pytest
|
||||||
|
psycopg==3.1.19
|
||||||
|
# via
|
||||||
|
# hatch.envs.dev
|
||||||
|
# psycopg
|
||||||
|
psycopg-binary==3.1.19
|
||||||
|
# via psycopg
|
||||||
|
py-moneyed==3.0
|
||||||
|
# via django-money
|
||||||
|
pycparser==2.22
|
||||||
|
# via cffi
|
||||||
|
pyproject-hooks==1.1.0
|
||||||
|
# via build
|
||||||
|
pytest==7.2.2
|
||||||
|
# via
|
||||||
|
# hatch.envs.dev
|
||||||
|
# pytest-cov
|
||||||
|
# pytest-django
|
||||||
|
pytest-cov==5.0.0
|
||||||
|
# via hatch.envs.dev
|
||||||
|
pytest-django==4.5.2
|
||||||
|
# via hatch.envs.dev
|
||||||
|
python-dotenv==1.0.1
|
||||||
|
# via environs
|
||||||
|
pytz==2024.1
|
||||||
|
# via django-oauth-toolkit
|
||||||
|
requests==2.32.3
|
||||||
|
# via django-oauth-toolkit
|
||||||
|
sqlparse==0.5.0
|
||||||
|
# via
|
||||||
|
# django
|
||||||
|
# django-debug-toolbar
|
||||||
|
tomli==2.0.1
|
||||||
|
# via django-stubs
|
||||||
|
types-pytz==2024.1.0.20240417
|
||||||
|
# via django-stubs
|
||||||
|
types-pyyaml==6.0.12.20240311
|
||||||
|
# via django-stubs
|
||||||
|
typing-extensions==4.12.2
|
||||||
|
# via
|
||||||
|
# dj-database-url
|
||||||
|
# django-stubs
|
||||||
|
# django-stubs-ext
|
||||||
|
# jwcrypto
|
||||||
|
# mypy
|
||||||
|
# psycopg
|
||||||
|
# py-moneyed
|
||||||
|
urllib3==2.2.2
|
||||||
|
# via requests
|
||||||
|
uvicorn==0.30.0
|
||||||
|
# via hatch.envs.dev
|
||||||
|
wheel==0.43.0
|
||||||
|
# via pip-tools
|
||||||
|
whitenoise==6.6.0
|
||||||
|
# via hatch.envs.dev
|
||||||
|
|
||||||
|
# The following packages are considered to be unsafe in a requirements file:
|
||||||
|
# pip
|
||||||
|
# setuptools
|
|
@ -1,5 +0,0 @@
|
||||||
-r base.txt
|
|
||||||
|
|
||||||
coverage==7.4.0
|
|
||||||
tblib==3.0.0
|
|
||||||
unittest-xml-reporting==3.2.0
|
|
|
@ -1,149 +0,0 @@
|
||||||
#
|
|
||||||
# This file is autogenerated by pip-compile with Python 3.11
|
|
||||||
# by the following command:
|
|
||||||
#
|
|
||||||
# pip-compile --output-file=requirements/test.txt requirements/test.in
|
|
||||||
#
|
|
||||||
asgiref==3.7.2
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# django
|
|
||||||
babel==2.14.0
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# py-moneyed
|
|
||||||
certifi==2023.11.17
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# requests
|
|
||||||
cffi==1.16.0
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# cryptography
|
|
||||||
charset-normalizer==3.3.2
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# requests
|
|
||||||
click==8.1.7
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# uvicorn
|
|
||||||
coverage==7.4.0
|
|
||||||
# via -r requirements/test.in
|
|
||||||
cryptography==41.0.7
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# pyjwt
|
|
||||||
defusedxml==0.7.1
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# python3-openid
|
|
||||||
dj-database-url==2.1.0
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# environs
|
|
||||||
dj-email-url==1.0.6
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# environs
|
|
||||||
django==5.0.1
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# dj-database-url
|
|
||||||
# django-allauth
|
|
||||||
# django-money
|
|
||||||
# django-zen-queries
|
|
||||||
django-allauth==0.60.0
|
|
||||||
# via -r requirements/base.txt
|
|
||||||
django-cache-url==3.4.5
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# environs
|
|
||||||
django-money==3.4.1
|
|
||||||
# via -r requirements/base.txt
|
|
||||||
django-zen-queries==2.1.0
|
|
||||||
# via -r requirements/base.txt
|
|
||||||
environs[django]==10.0.0
|
|
||||||
# via -r requirements/base.txt
|
|
||||||
h11==0.14.0
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# uvicorn
|
|
||||||
idna==3.6
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# requests
|
|
||||||
lxml==5.0.1
|
|
||||||
# via unittest-xml-reporting
|
|
||||||
marshmallow==3.20.1
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# environs
|
|
||||||
oauthlib==3.2.2
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# requests-oauthlib
|
|
||||||
packaging==23.2
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# marshmallow
|
|
||||||
psycopg[binary]==3.1.16
|
|
||||||
# via -r requirements/base.txt
|
|
||||||
psycopg-binary==3.1.16
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# psycopg
|
|
||||||
py-moneyed==3.0
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# django-money
|
|
||||||
pycparser==2.21
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# cffi
|
|
||||||
pyjwt[crypto]==2.8.0
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# django-allauth
|
|
||||||
python-dotenv==1.0.0
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# environs
|
|
||||||
python3-openid==3.2.0
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# django-allauth
|
|
||||||
requests==2.31.0
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# django-allauth
|
|
||||||
# requests-oauthlib
|
|
||||||
requests-oauthlib==1.3.1
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# django-allauth
|
|
||||||
sqlparse==0.4.4
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# django
|
|
||||||
tblib==3.0.0
|
|
||||||
# via -r requirements/test.in
|
|
||||||
typing-extensions==4.9.0
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# dj-database-url
|
|
||||||
# psycopg
|
|
||||||
# py-moneyed
|
|
||||||
unittest-xml-reporting==3.2.0
|
|
||||||
# via -r requirements/test.in
|
|
||||||
urllib3==2.1.0
|
|
||||||
# via
|
|
||||||
# -r requirements/base.txt
|
|
||||||
# requests
|
|
||||||
uvicorn==0.25.0
|
|
||||||
# via -r requirements/base.txt
|
|
||||||
whitenoise==6.6.0
|
|
||||||
# via -r requirements/base.txt
|
|
||||||
|
|
||||||
# The following packages are considered to be unsafe in a requirements file:
|
|
||||||
# setuptools
|
|
Loading…
Reference in a new issue