mirror of
https://github.com/ilri/dspace-statistics-api.git
synced 2025-05-10 15:16:02 +02:00
Compare commits
70 Commits
Author | SHA1 | Date | |
---|---|---|---|
f3421e595c
|
|||
6cf8ca0245
|
|||
14c6e5f8dc
|
|||
4c32aeb915
|
|||
34a1a08893
|
|||
c47bb2aba7
|
|||
a7fd70bf10
|
|||
45dfe7851f | |||
c1cd0a0351 | |||
1912363899 | |||
cd3c024a77 | |||
e96c79bf2c | |||
d6330c7bd4 | |||
8c7a5c4047 | |||
a31c592fab | |||
c7b179f1b5 | |||
77c166c024 | |||
7680b0f440
|
|||
e70a7a9675
|
|||
24f90df13e
|
|||
780f2c1723
|
|||
53b58d4116 | |||
19a6d2cea6 | |||
6c2bcda16f | |||
e4d9545b02 | |||
1f507d3074 | |||
82771d7b0c | |||
5ff3323f88 | |||
c7a871c2f1 | |||
b948283d40 | |||
124a05dcaf | |||
a2daf96fec | |||
8634d53fa6 | |||
e2bfcef573 | |||
d64c4b8cbc | |||
3d91366412 | |||
c3a4e2260b | |||
10519997ac | |||
4d7e9e9401 | |||
fe9f98bcc0
|
|||
70f0d66c6e
|
|||
913596c61d
|
|||
7cd762a5a2 | |||
3811be18ef | |||
a52818271c | |||
b643f60dd7 | |||
7cec9a9545 | |||
a9302506b6 | |||
b980602a03
|
|||
a4b4843036
|
|||
7e334f6de8
|
|||
770f676fb5
|
|||
6d5e3c350d
|
|||
531136183b
|
|||
1a3d0350a5
|
|||
25c4f05f16
|
|||
9fba8d1b81
|
|||
568ced0f20
|
|||
9cd93c9034 | |||
83a2625987 | |||
f591ed7162 | |||
bb0f267941
|
|||
0720605b6a
|
|||
bcb97d025c
|
|||
0ff8490275
|
|||
0a8ac60ade
|
|||
37527c21be
|
|||
eb660f8085
|
|||
e7d780f511
|
|||
c3b9a541b7
|
195
.drone.yml
195
.drone.yml
@ -1,195 +0,0 @@
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: python310
|
||||
|
||||
steps:
|
||||
- name: setup
|
||||
image: postgres:10-alpine
|
||||
environment:
|
||||
PGPASSWORD: postgres
|
||||
commands:
|
||||
- id
|
||||
- psql --version
|
||||
- sleep 5
|
||||
- pg_isready -h database -U postgres -d dspacestatistics
|
||||
- createuser -h database -U postgres dspacestatistics
|
||||
- psql -h database -U postgres -c "ALTER USER dspacestatistics WITH PASSWORD 'dspacestatistics'"
|
||||
- psql -h database -U postgres -d dspacestatistics < tests/dspacestatistics.sql
|
||||
|
||||
- name: test
|
||||
image: python:3.10-slim
|
||||
environment:
|
||||
PGPASSWORD: dspacestatistics
|
||||
DATABASE_HOST: database
|
||||
commands:
|
||||
- id
|
||||
- python -V
|
||||
- apt update && apt install -y gcc git libpq-dev
|
||||
- pip install -r requirements-dev.txt
|
||||
- pytest
|
||||
|
||||
services:
|
||||
- name: database
|
||||
image: postgres:10-alpine
|
||||
environment:
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: postgres
|
||||
POSTGRES_DB: dspacestatistics
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: python39
|
||||
|
||||
steps:
|
||||
- name: setup
|
||||
image: postgres:10-alpine
|
||||
environment:
|
||||
PGPASSWORD: postgres
|
||||
commands:
|
||||
- id
|
||||
- psql --version
|
||||
- sleep 5
|
||||
- pg_isready -h database -U postgres -d dspacestatistics
|
||||
- createuser -h database -U postgres dspacestatistics
|
||||
- psql -h database -U postgres -c "ALTER USER dspacestatistics WITH PASSWORD 'dspacestatistics'"
|
||||
- psql -h database -U postgres -d dspacestatistics < tests/dspacestatistics.sql
|
||||
|
||||
- name: test
|
||||
image: python:3.9-slim
|
||||
environment:
|
||||
PGPASSWORD: dspacestatistics
|
||||
DATABASE_HOST: database
|
||||
commands:
|
||||
- id
|
||||
- python -V
|
||||
- apt update && apt install -y gcc git libpq-dev
|
||||
- pip install -r requirements-dev.txt
|
||||
- pytest
|
||||
|
||||
services:
|
||||
- name: database
|
||||
image: postgres:10-alpine
|
||||
environment:
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: postgres
|
||||
POSTGRES_DB: dspacestatistics
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: python38
|
||||
|
||||
steps:
|
||||
- name: database
|
||||
image: postgres:10-alpine
|
||||
detach: true
|
||||
environment:
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: postgres
|
||||
POSTGRES_DB: dspacestatistics
|
||||
|
||||
- name: setup
|
||||
image: postgres:10-alpine
|
||||
environment:
|
||||
PGPASSWORD: postgres
|
||||
commands:
|
||||
- id
|
||||
- psql --version
|
||||
- sleep 5
|
||||
- pg_isready -h database -U postgres -d dspacestatistics
|
||||
- createuser -h database -U postgres dspacestatistics
|
||||
- psql -h database -U postgres -c "ALTER USER dspacestatistics WITH PASSWORD 'dspacestatistics'"
|
||||
- psql -h database -U postgres -d dspacestatistics < tests/dspacestatistics.sql
|
||||
|
||||
- name: test
|
||||
image: python:3.8-slim
|
||||
environment:
|
||||
PGPASSWORD: dspacestatistics
|
||||
DATABASE_HOST: database
|
||||
commands:
|
||||
- id
|
||||
- python -V
|
||||
- apt update && apt install -y gcc git libpq-dev
|
||||
- pip install -r requirements-dev.txt
|
||||
- pytest
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: python37
|
||||
|
||||
steps:
|
||||
- name: database
|
||||
image: postgres:10-alpine
|
||||
detach: true
|
||||
environment:
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: postgres
|
||||
POSTGRES_DB: dspacestatistics
|
||||
|
||||
- name: setup
|
||||
image: postgres:10-alpine
|
||||
environment:
|
||||
PGPASSWORD: postgres
|
||||
commands:
|
||||
- id
|
||||
- psql --version
|
||||
- sleep 5
|
||||
- pg_isready -h database -U postgres -d dspacestatistics
|
||||
- createuser -h database -U postgres dspacestatistics
|
||||
- psql -h database -U postgres -c "ALTER USER dspacestatistics WITH PASSWORD 'dspacestatistics'"
|
||||
- psql -h database -U postgres -d dspacestatistics < tests/dspacestatistics.sql
|
||||
|
||||
- name: test
|
||||
image: python:3.7-slim
|
||||
environment:
|
||||
PGPASSWORD: dspacestatistics
|
||||
DATABASE_HOST: database
|
||||
commands:
|
||||
- id
|
||||
- python -V
|
||||
- apt update && apt install -y gcc git libpq-dev
|
||||
- pip install -r requirements-dev.txt
|
||||
- pytest
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: python36
|
||||
|
||||
steps:
|
||||
- name: database
|
||||
image: postgres:10-alpine
|
||||
detach: true
|
||||
environment:
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: postgres
|
||||
POSTGRES_DB: dspacestatistics
|
||||
|
||||
- name: setup
|
||||
image: postgres:10-alpine
|
||||
environment:
|
||||
PGPASSWORD: postgres
|
||||
commands:
|
||||
- id
|
||||
- psql --version
|
||||
- sleep 5
|
||||
- pg_isready -h database -U postgres -d dspacestatistics
|
||||
- createuser -h database -U postgres dspacestatistics
|
||||
- psql -h database -U postgres -c "ALTER USER dspacestatistics WITH PASSWORD 'dspacestatistics'"
|
||||
- psql -h database -U postgres -d dspacestatistics < tests/dspacestatistics.sql
|
||||
|
||||
- name: test
|
||||
image: python:3.6-slim
|
||||
environment:
|
||||
PGPASSWORD: dspacestatistics
|
||||
DATABASE_HOST: database
|
||||
commands:
|
||||
- id
|
||||
- python -V
|
||||
- apt update && apt install -y gcc git libpq-dev
|
||||
- pip install -r requirements-dev.txt
|
||||
- pytest
|
||||
|
||||
# vim: ts=2 sw=2 et
|
27
.github/workflows/python-app.yml
vendored
27
.github/workflows/python-app.yml
vendored
@ -8,11 +8,11 @@ on: ['push', 'pull_request']
|
||||
jobs:
|
||||
build:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-22.04
|
||||
|
||||
services:
|
||||
database:
|
||||
image: postgres:10-alpine
|
||||
image: postgres:15-alpine
|
||||
env:
|
||||
# password for postgres user in the Docker container
|
||||
POSTGRES_PASSWORD: postgres
|
||||
@ -27,23 +27,20 @@ jobs:
|
||||
- 5432:5432
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up Python 3.10
|
||||
uses: actions/setup-python@v2
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install poetry
|
||||
run: pipx install poetry
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.10'
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
python -m pip install --upgrade pip
|
||||
pip install flake8 pytest
|
||||
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
|
||||
if [ -f requirements-dev.txt ]; then pip install -r requirements-dev.txt; fi
|
||||
python-version: '3.12'
|
||||
cache: 'poetry'
|
||||
- run: poetry install
|
||||
- name: Lint with flake8
|
||||
run: |
|
||||
# stop the build if there are Python syntax errors or undefined names
|
||||
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
|
||||
poetry run flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
|
||||
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
|
||||
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
|
||||
poetry run flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
|
||||
- name: Set up PostgreSQL
|
||||
run: |
|
||||
pg_isready -U postgres -d dspacestatistics
|
||||
@ -55,7 +52,7 @@ jobs:
|
||||
PGPASSWORD: postgres
|
||||
- name: Test with pytest
|
||||
run: |
|
||||
pytest
|
||||
poetry run pytest
|
||||
env:
|
||||
PGHOST: localhost
|
||||
PGPASSWORD: dspacestatistics
|
||||
|
@ -1,4 +0,0 @@
|
||||
flake8:
|
||||
enabled: true
|
||||
config_file: .flake8
|
||||
fail_on_violations: true
|
13
CHANGELOG.md
13
CHANGELOG.md
@ -4,6 +4,19 @@ All notable changes to this project will be documented in this file.
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## 1.4.4 - 2024-09-11
|
||||
### Changed
|
||||
- Update recommended Python version to 3.8+
|
||||
- Use PostgreSQL 15 in CI
|
||||
- Use Python 3.12 in CI
|
||||
|
||||
### Updated
|
||||
- Falcon 3.1.3, a minor change for us, but good to be using a current upstream
|
||||
version
|
||||
|
||||
### Removed
|
||||
- Drone CI
|
||||
|
||||
## 1.4.3 - 2022-03-26
|
||||
### Updated
|
||||
- Update dependencies with `poetry update`
|
||||
|
@ -1,7 +1,6 @@
|
||||
<h1 align="center">DSpace Statistics API</h1>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://ci.mjanja.ch/alanorth/dspace-statistics-api"><img alt="Build Status" src="https://ci.mjanja.ch/api/badges/alanorth/dspace-statistics-api/status.svg?ref=refs/heads/v6_x"></a>
|
||||
<a href="https://github.com/ilri/dspace-statistics-api/actions"><img alt="Build and Test" src="https://github.com/ilri/dspace-statistics-api/actions/workflows/python-app.yml/badge.svg"></a>
|
||||
<a href="https://github.com/psf/black"><img alt="Code style: black" src="https://img.shields.io/badge/code%20style-black-000000.svg"></a>
|
||||
</p>
|
||||
@ -20,7 +19,7 @@ If you use the DSpace Statistics API please cite:
|
||||
|
||||
## Requirements
|
||||
|
||||
- Python 3.6+
|
||||
- Python 3.8+
|
||||
- PostgreSQL version 9.5+ (due to [`UPSERT` support](https://wiki.postgresql.org/wiki/UPSERT))
|
||||
- DSpace with [Solr usage statistics enabled](https://wiki.lyrasis.org/display/DSDOC5x/SOLR+Statistics) (tested with 5.8+ and 6.3)
|
||||
|
||||
|
@ -90,7 +90,7 @@ class AllStatisticsResource:
|
||||
)
|
||||
|
||||
# create a list to hold dicts of stats
|
||||
statistics = list()
|
||||
statistics = []
|
||||
|
||||
# iterate over results and build statistics object
|
||||
for result in cursor:
|
||||
@ -162,7 +162,7 @@ class AllStatisticsResource:
|
||||
)
|
||||
|
||||
# create a list to hold dicts of stats
|
||||
statistics = list()
|
||||
statistics = []
|
||||
|
||||
# iterate over views dict to extract views and use the element id as an
|
||||
# index to the downloads dict to extract downloads.
|
||||
|
@ -18,6 +18,6 @@ DATABASE_PORT = os.environ.get("DATABASE_PORT", "5432")
|
||||
# the vanilla DSpace REST API.
|
||||
DSPACE_STATISTICS_API_URL = os.environ.get("DSPACE_STATISTICS_API_URL", "")
|
||||
|
||||
VERSION = "1.4.3"
|
||||
VERSION = "1.4.4"
|
||||
|
||||
# vim: set sw=4 ts=4 expandtab:
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"openapi": "3.0.3",
|
||||
"info": {
|
||||
"version": "1.4.3",
|
||||
"version": "1.4.4",
|
||||
"title": "DSpace Statistics API",
|
||||
"description": "A [Falcon-based](https://falcon.readthedocs.io/) web application to make DSpace's item, community, and collection statistics available via a simple REST API. This Swagger interface is powered by [falcon-swagger-ui](https://github.com/rdidyk/falcon-swagger-ui).",
|
||||
"license": {
|
||||
|
@ -62,7 +62,6 @@ def get_statistics_shards():
|
||||
|
||||
|
||||
def is_valid_date(date):
|
||||
|
||||
try:
|
||||
# Solr date format is: 2020-01-01T00:00:00Z
|
||||
# See: https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior
|
||||
@ -141,7 +140,7 @@ def validate_post_parameters(req, resp, resource, params):
|
||||
description=f'The "{req.context.statistics_scope}" parameter is invalid. The value must be a comma-separated list of UUIDs.',
|
||||
)
|
||||
else:
|
||||
req.context.elements = list()
|
||||
req.context.elements = []
|
||||
|
||||
|
||||
def set_statistics_scope(req, resp, resource, params):
|
||||
|
931
poetry.lock
generated
931
poetry.lock
generated
File diff suppressed because it is too large
Load Diff
@ -1,24 +1,28 @@
|
||||
[tool.poetry]
|
||||
name = "dspace-statistics-api"
|
||||
version = "1.4.3"
|
||||
version = "1.4.4"
|
||||
description = "A simple REST API to expose Solr view and download statistics for items, communities, and collections in a DSpace repository."
|
||||
authors = ["Alan Orth <aorth@mjanja.ch>"]
|
||||
license = "GPL-3.0-only"
|
||||
|
||||
[tool.poetry.dependencies]
|
||||
python = "^3.6"
|
||||
gunicorn = "^20.0.4"
|
||||
falcon = "3.1.0"
|
||||
psycopg2 = "^2.9.1"
|
||||
requests = "^2.24.0"
|
||||
python = "^3.8.1"
|
||||
gunicorn = "^23.0.0"
|
||||
falcon = "^3.1.3"
|
||||
psycopg2 = "^2.9.9"
|
||||
requests = "^2.32.3"
|
||||
falcon-swagger-ui = {git = "https://github.com/alanorth/falcon-swagger-ui.git", rev="falcon3-update-swagger-ui"}
|
||||
|
||||
[tool.poetry.dev-dependencies]
|
||||
flake8 = "^4.0.1"
|
||||
pytest = "^6.1.1"
|
||||
black = {version = "^22.1.0", python = ">=3.6.2"}
|
||||
isort = {version = "^5.9.1", python = ">=3.6.1"}
|
||||
[tool.poetry.group.dev.dependencies]
|
||||
black = "^24.0.0"
|
||||
flake8 = "^7.1.1"
|
||||
isort = "^5.13.2"
|
||||
pytest = "^8.3.3"
|
||||
|
||||
[build-system]
|
||||
requires = ["poetry>=0.12"]
|
||||
build-backend = "poetry.masonry.api"
|
||||
|
||||
[tool.isort]
|
||||
profile = "black"
|
||||
line_length=88
|
||||
|
9
renovate.json
Normal file
9
renovate.json
Normal file
@ -0,0 +1,9 @@
|
||||
{
|
||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||
"extends": [
|
||||
"config:base"
|
||||
],
|
||||
"pip_requirements": {
|
||||
"enabled": false
|
||||
}
|
||||
}
|
@ -1,37 +1,29 @@
|
||||
atomicwrites==1.4.0; python_version >= "3.6" and python_full_version < "3.0.0" and sys_platform == "win32" or sys_platform == "win32" and python_version >= "3.6" and python_full_version >= "3.4.0"
|
||||
attrs==21.4.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6"
|
||||
black==22.1.0; python_full_version >= "3.6.2"
|
||||
certifi==2021.10.8; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0"
|
||||
charset-normalizer==2.0.12; python_full_version >= "3.6.0" and python_version >= "3"
|
||||
click==8.0.4; python_version >= "3.6" and python_full_version >= "3.6.2"
|
||||
colorama==0.4.4; sys_platform == "win32" and python_version >= "3.6" and python_full_version >= "3.6.2" and platform_system == "Windows"
|
||||
dataclasses==0.8; python_version >= "3.6" and python_version < "3.7" and python_full_version >= "3.6.2"
|
||||
falcon-swagger-ui @ git+https://github.com/alanorth/falcon-swagger-ui.git@falcon3-update-swagger-ui
|
||||
falcon==3.1.0; python_version >= "3.5"
|
||||
flake8==4.0.1; python_version >= "3.6"
|
||||
gunicorn==20.1.0; python_version >= "3.5"
|
||||
idna==3.3; python_version >= "3.5" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.5"
|
||||
importlib-metadata==4.2.0; python_version < "3.8" and python_version >= "3.6" and python_full_version >= "3.6.2"
|
||||
iniconfig==1.1.1; python_version >= "3.6"
|
||||
isort==5.10.1; python_full_version >= "3.6.1"
|
||||
jinja2==3.0.3; python_version >= "3.6"
|
||||
markupsafe==2.0.1; python_version >= "3.6"
|
||||
mccabe==0.6.1; python_version >= "3.6"
|
||||
mypy-extensions==0.4.3; python_full_version >= "3.6.2"
|
||||
packaging==21.3; python_version >= "3.6"
|
||||
pathspec==0.9.0; python_full_version >= "3.6.2"
|
||||
platformdirs==2.4.0; python_version >= "3.6" and python_full_version >= "3.6.2"
|
||||
pluggy==1.0.0; python_version >= "3.6"
|
||||
psycopg2==2.9.3; python_version >= "3.6"
|
||||
py==1.11.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6"
|
||||
pycodestyle==2.8.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6"
|
||||
pyflakes==2.4.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6"
|
||||
pyparsing==3.0.7; python_version >= "3.6"
|
||||
pytest==6.2.5; python_version >= "3.6"
|
||||
requests==2.27.1; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.6.0")
|
||||
toml==0.10.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.6"
|
||||
tomli==1.2.3; python_version >= "3.6" and python_full_version >= "3.6.2"
|
||||
typed-ast==1.5.2; python_version < "3.8" and implementation_name == "cpython" and python_full_version >= "3.6.2" and python_version >= "3.6"
|
||||
typing-extensions==4.1.1; python_version < "3.8" and python_full_version >= "3.6.2" and python_version >= "3.6"
|
||||
urllib3==1.26.9; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version < "4"
|
||||
zipp==3.6.0; python_version < "3.8" and python_version >= "3.6"
|
||||
black==24.8.0 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
certifi==2024.8.30 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
charset-normalizer==3.3.2 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
click==8.1.7 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
colorama==0.4.6 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0" and (sys_platform == "win32" or platform_system == "Windows")
|
||||
exceptiongroup==1.2.2 ; python_full_version >= "3.8.1" and python_version < "3.11"
|
||||
falcon-swagger-ui @ git+https://github.com/alanorth/falcon-swagger-ui.git@c019c270b479c03d9276e20fd95488495b0943f6 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
falcon==3.1.3 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
flake8==7.1.1 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
gunicorn==23.0.0 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
idna==3.8 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
iniconfig==2.0.0 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
isort==5.13.2 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
jinja2==3.1.4 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
markupsafe==2.1.5 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
mccabe==0.7.0 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
mypy-extensions==1.0.0 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
packaging==24.1 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
pathspec==0.12.1 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
platformdirs==4.3.2 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
pluggy==1.5.0 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
psycopg2==2.9.9 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
pycodestyle==2.12.1 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
pyflakes==3.2.0 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
pytest==8.3.3 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
requests==2.32.3 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
tomli==2.0.1 ; python_full_version >= "3.8.1" and python_version < "3.11"
|
||||
typing-extensions==4.12.2 ; python_full_version >= "3.8.1" and python_version < "3.11"
|
||||
urllib3==2.2.2 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
|
@ -1,11 +1,12 @@
|
||||
certifi==2021.10.8; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0"
|
||||
charset-normalizer==2.0.12; python_full_version >= "3.6.0" and python_version >= "3"
|
||||
falcon-swagger-ui @ git+https://github.com/alanorth/falcon-swagger-ui.git@falcon3-update-swagger-ui
|
||||
falcon==3.1.0; python_version >= "3.5"
|
||||
gunicorn==20.1.0; python_version >= "3.5"
|
||||
idna==3.3; python_version >= "3.5" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.5"
|
||||
jinja2==3.0.3; python_version >= "3.6"
|
||||
markupsafe==2.0.1; python_version >= "3.6"
|
||||
psycopg2==2.9.3; python_version >= "3.6"
|
||||
requests==2.27.1; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.6.0")
|
||||
urllib3==1.26.9; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version < "4"
|
||||
certifi==2024.8.30 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
charset-normalizer==3.3.2 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
falcon-swagger-ui @ git+https://github.com/alanorth/falcon-swagger-ui.git@c019c270b479c03d9276e20fd95488495b0943f6 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
falcon==3.1.3 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
gunicorn==23.0.0 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
idna==3.8 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
jinja2==3.1.4 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
markupsafe==2.1.5 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
packaging==24.1 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
psycopg2==2.9.9 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
requests==2.32.3 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
urllib3==2.2.2 ; python_full_version >= "3.8.1" and python_full_version < "4.0.0"
|
||||
|
Reference in New Issue
Block a user