Merge branch 'release-v0.5.6'
17
CHANGELOG.md
@ -1,5 +1,22 @@
|
||||
# Change log
|
||||
|
||||
## Version 0.5.6 (2022/02/05)
|
||||
|
||||
### Issues Closed
|
||||
|
||||
#### Bugs Fixed
|
||||
|
||||
* [#146](https://github.com/SamR1/FitTrackee/issues/146) - incorrect label on workouts filters
|
||||
|
||||
### Pull Requests
|
||||
|
||||
* [#145](https://github.com/SamR1/FitTrackee/pull/145) - fix on database models
|
||||
|
||||
|
||||
In this release 1 issue was closed.
|
||||
**Note:** This release contains database migration (see upgrade instructions in [documentation](https://samr1.github.io/FitTrackee/installation.html#upgrade))
|
||||
|
||||
|
||||
## Version 0.5.5 (2022/01/19)
|
||||
|
||||
### Issues Closed
|
||||
|
1
Makefile
@ -16,6 +16,7 @@ check-python: lint-python type-check test-python
|
||||
clean:
|
||||
rm -rf .mypy_cache
|
||||
rm -rf .pytest_cache
|
||||
rm -rf e2e/.pytest_cache
|
||||
|
||||
clean-install: clean
|
||||
rm -fr $(NODE_MODULES)
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Sphinx build info version 1
|
||||
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
|
||||
config: 9de908b6aff9f654d3afda99374c317e
|
||||
config: 07e52347d325bc590b4a2ded72b46e83
|
||||
tags: 645f666f9bcd5a90fca523b33c5a78b7
|
||||
|
Before Width: | Height: | Size: 537 KiB After Width: | Height: | Size: 537 KiB |
Before Width: | Height: | Size: 369 KiB After Width: | Height: | Size: 370 KiB |
Before Width: | Height: | Size: 202 KiB After Width: | Height: | Size: 202 KiB |
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 70 KiB |
Before Width: | Height: | Size: 71 KiB After Width: | Height: | Size: 71 KiB |
Before Width: | Height: | Size: 103 KiB After Width: | Height: | Size: 104 KiB |
@ -1,5 +1,22 @@
|
||||
# Change log
|
||||
|
||||
## Version 0.5.6 (2022/02/05)
|
||||
|
||||
### Issues Closed
|
||||
|
||||
#### Bugs Fixed
|
||||
|
||||
* [#146](https://github.com/SamR1/FitTrackee/issues/146) - incorrect label on workouts filters
|
||||
|
||||
### Pull Requests
|
||||
|
||||
* [#145](https://github.com/SamR1/FitTrackee/pull/145) - fix on database models
|
||||
|
||||
|
||||
In this release 1 issue was closed.
|
||||
**Note:** This release contains database migration (see upgrade instructions in [documentation](https://samr1.github.io/FitTrackee/installation.html#upgrade))
|
||||
|
||||
|
||||
## Version 0.5.5 (2022/01/19)
|
||||
|
||||
### Issues Closed
|
||||
|
@ -1,54 +1,6 @@
|
||||
Features
|
||||
########
|
||||
|
||||
List
|
||||
~~~~
|
||||
|
||||
Administration
|
||||
^^^^^^^^^^^^^^
|
||||
(*new in 0.3.0*)
|
||||
|
||||
- **Application**
|
||||
|
||||
The following parameters can be set:
|
||||
|
||||
- active users limit. If 0, registration is enabled (no limit defined)
|
||||
- maximum size of uploaded files
|
||||
- maximum size of zip archive
|
||||
- maximum number of files in the zip archive. If an archive contains more files, only the configured number of files is processed, without raising errors.
|
||||
|
||||
.. warning::
|
||||
Updating server configuration may be necessary to handle large files (like `nginx <https://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size>`_ for instance).
|
||||
|
||||
|
||||
- **Users**
|
||||
|
||||
- display users list and details
|
||||
- edit a user to add/remove administration rights
|
||||
- delete a user
|
||||
|
||||
- **Sports**
|
||||
|
||||
- enable or disable a sport (a sport can be disabled even if workout with this sport exists)
|
||||
|
||||
Account & preferences
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
- A user can create, update and deleted his account
|
||||
- A user can set language, timezone and first day of week.
|
||||
- A user can reset his password (*new in 0.3.0*)
|
||||
- A user can choose between metric system and imperial system for distance, elevation and speed display (*new in 0.5.0*)
|
||||
- A user can set sport preferences (*new in 0.5.0*):
|
||||
- change sport color (used for sport image and charts)
|
||||
- can override stopped speed threshold (for next uploaded gpx files)
|
||||
- disable/enable a sport.
|
||||
|
||||
.. note::
|
||||
| If a sport is disabled by an administrator, it can not be enabled by a user. In this case, it will only appear in preferences if it has user's workouts and the user can only change sport color.
|
||||
| A disabled sport (by admin or user) will not appear in dropdown when **adding a workout**.
|
||||
| A workout with a disabled sport will still be displayed in the application.
|
||||
|
||||
|
||||
|
||||
Workouts
|
||||
^^^^^^^^
|
||||
- 11 sports are supported:
|
||||
@ -100,37 +52,86 @@ Workouts
|
||||
.. note::
|
||||
For now, only the owner of the workout can see it.
|
||||
|
||||
|
||||
Account & preferences
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
- A user can create, update and deleted his account
|
||||
- A user can set language, timezone and first day of week.
|
||||
- A user can reset his password (*new in 0.3.0*)
|
||||
- A user can choose between metric system and imperial system for distance, elevation and speed display (*new in 0.5.0*)
|
||||
- A user can set sport preferences (*new in 0.5.0*):
|
||||
- change sport color (used for sport image and charts)
|
||||
- can override stopped speed threshold (for next uploaded gpx files)
|
||||
- disable/enable a sport.
|
||||
|
||||
.. note::
|
||||
| If a sport is disabled by an administrator, it can not be enabled by a user. In this case, it will only appear in preferences if the user has workouts and only sport color can be changed.
|
||||
| A disabled sport (by admin or user) will not appear in dropdown when **adding a workout**.
|
||||
| A workout with a disabled sport will still be displayed in the application.
|
||||
|
||||
|
||||
Administration
|
||||
^^^^^^^^^^^^^^
|
||||
(*new in 0.3.0*)
|
||||
|
||||
- **Application**
|
||||
|
||||
The following parameters can be set:
|
||||
|
||||
- active users limit. If 0, registration is enabled (no limit defined)
|
||||
- maximum size of uploaded files
|
||||
- maximum size of zip archive
|
||||
- maximum number of files in the zip archive. If an archive contains more files, only the configured number of files is processed, without raising errors.
|
||||
|
||||
.. warning::
|
||||
Updating server configuration may be necessary to handle large files (like `nginx <https://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size>`_ for instance).
|
||||
|
||||
|
||||
- **Users**
|
||||
|
||||
- display users list and details
|
||||
- edit a user to add/remove administration rights
|
||||
- delete a user
|
||||
|
||||
- **Sports**
|
||||
|
||||
- enable or disable a sport (a sport can be disabled even if workout with this sport exists)
|
||||
|
||||
|
||||
Translations
|
||||
^^^^^^^^^^^^
|
||||
FitTrackee is available in English and French (which can be saved in the user preferences).
|
||||
|
||||
|
||||
Screenshots
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Dashboard
|
||||
~~~~~~~~~
|
||||
"""""""""
|
||||
|
||||
.. figure:: _images/fittrackee_screenshot-01.png
|
||||
:alt: FitTrackee Dashboard
|
||||
|
||||
|
||||
Workout detail
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
""""""""""""""
|
||||
.. figure:: _images/fittrackee_screenshot-02.png
|
||||
:alt: FitTrackee Workout
|
||||
|
||||
|
||||
Workouts list
|
||||
~~~~~~~~~~~~~
|
||||
"""""""""""""
|
||||
.. figure:: _images/fittrackee_screenshot-03.png
|
||||
:alt: FitTrackee Workouts
|
||||
|
||||
|
||||
Statistics
|
||||
~~~~~~~~~~
|
||||
""""""""""
|
||||
.. figure:: _images/fittrackee_screenshot-04.png
|
||||
:alt: FitTrackee Statistics
|
||||
|
||||
Administration
|
||||
~~~~~~~~~~~~~~
|
||||
""""""""""""""
|
||||
.. figure:: _images/fittrackee_screenshot-05.png
|
||||
:alt: FitTrackee Administration
|
||||
|
||||
|
@ -230,17 +230,17 @@ To keep using **ThunderForest Outdoors**, the configuration is:
|
||||
.. note::
|
||||
| Check the terms of service of tile provider for map attribution
|
||||
|
||||
From PyPI
|
||||
~~~~~~~~~
|
||||
|
||||
.. note::
|
||||
| Recommended way on production.
|
||||
Installation
|
||||
~~~~~~~~~~~~
|
||||
|
||||
.. warning::
|
||||
| Note that FitTrackee is under heavy development, some features may be unstable.
|
||||
|
||||
Installation
|
||||
^^^^^^^^^^^^
|
||||
From PyPI
|
||||
^^^^^^^^^
|
||||
|
||||
.. note::
|
||||
| Recommended way on production.
|
||||
|
||||
- Create and activate a virtualenv
|
||||
|
||||
@ -298,41 +298,8 @@ For instance, copy and update ``.env`` file from ``.env.example`` and source the
|
||||
| To start application and workers with **systemd** service, see `Deployment <installation.html#deployment>`__
|
||||
|
||||
|
||||
Upgrade
|
||||
^^^^^^^
|
||||
|
||||
.. warning::
|
||||
| Before upgrading, make a backup of all data:
|
||||
| - database (with `pg_dump <https://www.postgresql.org/docs/11/app-pgdump.html>`__ for instance)
|
||||
| - upload directory (see `Environment variables <installation.html#environment-variables>`__)
|
||||
|
||||
- Activate the virtualenv
|
||||
|
||||
- Upgrade with pip
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ pip install -U fittrackee
|
||||
|
||||
- Update environment variables if needed and source environment variables file
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ nano .env
|
||||
$ source .env
|
||||
|
||||
- Upgrade database if needed
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ fittrackee_upgrade_db
|
||||
|
||||
|
||||
- Restart the application and task queue workers.
|
||||
|
||||
|
||||
From sources
|
||||
~~~~~~~~~~~~~
|
||||
^^^^^^^^^^^^
|
||||
|
||||
.. warning::
|
||||
| Since FitTrackee 0.2.1, Python packages installation needs Poetry.
|
||||
@ -349,10 +316,6 @@ From sources
|
||||
|
||||
For other OS, see `Poetry Documentation <https://python-poetry.org/docs/#installation>`__
|
||||
|
||||
|
||||
Installation
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Dev environment
|
||||
"""""""""""""""
|
||||
|
||||
@ -396,13 +359,13 @@ Production environment
|
||||
.. warning::
|
||||
| Note that FitTrackee is under heavy development, some features may be unstable.
|
||||
|
||||
- Download the last release (for now, it is the release v0.5.5):
|
||||
- Download the last release (for now, it is the release v0.5.6):
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.5.5.tar.gz
|
||||
$ tar -xzf v0.5.5.tar.gz
|
||||
$ mv FitTrackee-0.5.5 FitTrackee
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.5.6.tar.gz
|
||||
$ tar -xzf v0.5.6.tar.gz
|
||||
$ mv FitTrackee-0.5.6 FitTrackee
|
||||
$ cd FitTrackee
|
||||
|
||||
- Create **.env** from example and update it
|
||||
@ -431,8 +394,9 @@ Open http://localhost:5000, log in as admin (the email is
|
||||
``admin@example.com`` and the password ``mpwoadmin``) and change the
|
||||
password
|
||||
|
||||
|
||||
Upgrade
|
||||
^^^^^^^
|
||||
~~~~~~~
|
||||
|
||||
.. warning::
|
||||
| Before upgrading, make a backup of all data:
|
||||
@ -440,6 +404,37 @@ Upgrade
|
||||
| - upload directory (see `Environment variables <installation.html#environment-variables>`__)
|
||||
|
||||
|
||||
From PyPI
|
||||
^^^^^^^^^
|
||||
|
||||
- Activate the virtualenv
|
||||
|
||||
- Upgrade with pip
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ pip install -U fittrackee
|
||||
|
||||
- Update environment variables if needed and source environment variables file
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ nano .env
|
||||
$ source .env
|
||||
|
||||
- Upgrade database if needed (see changelog for migrations):
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ fittrackee_upgrade_db
|
||||
|
||||
|
||||
- Restart the application and task queue workers.
|
||||
|
||||
|
||||
From sources
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Dev environment
|
||||
"""""""""""""""
|
||||
|
||||
@ -451,11 +446,16 @@ Dev environment
|
||||
|
||||
- Update **.env** if needed (see `Environment variables <installation.html#environment-variables>`__).
|
||||
|
||||
- Upgrade packages and database:
|
||||
- Upgrade packages:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ make install-dev
|
||||
|
||||
- Upgrade database if needed (see changelog for migrations):
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ make upgrade-db
|
||||
|
||||
- Restart the server:
|
||||
@ -477,22 +477,27 @@ Prod environment
|
||||
|
||||
- Change to the directory where FitTrackee directory is located
|
||||
|
||||
- Download the last release (for now, it is the release v0.5.5) and overwrite existing files:
|
||||
- Download the last release (for now, it is the release v0.5.6) and overwrite existing files:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.5.5.tar.gz
|
||||
$ tar -xzf v0.5.5.tar.gz
|
||||
$ cp -R FitTrackee-0.5.5/* FitTrackee/
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.5.6.tar.gz
|
||||
$ tar -xzf v0.5.6.tar.gz
|
||||
$ cp -R FitTrackee-0.5.6/* FitTrackee/
|
||||
$ cd FitTrackee
|
||||
|
||||
- Update **.env** if needed (see `Environment variables <installation.html#environment-variables>`__).
|
||||
|
||||
- Upgrade packages and database:
|
||||
- Upgrade packages:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ make install-dev
|
||||
|
||||
- Upgrade database if needed (see changelog for migrations):
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ make install-python
|
||||
$ make upgrade-db
|
||||
|
||||
- Restart the server and dramatiq workers:
|
||||
@ -503,7 +508,7 @@ Prod environment
|
||||
|
||||
|
||||
Deployment
|
||||
~~~~~~~~~~~~~
|
||||
~~~~~~~~~~
|
||||
|
||||
There are several ways to start **FitTrackee** web application and task queue
|
||||
library.
|
||||
@ -591,7 +596,7 @@ Examples (to update depending on your application configuration and given distri
|
||||
.. code-block::
|
||||
|
||||
server {
|
||||
listen 443 ssl;
|
||||
listen 443 ssl http2;
|
||||
server_name example.com;
|
||||
ssl_certificate fullchain.pem;
|
||||
ssl_certificate_key privkey.pem;
|
||||
@ -666,7 +671,7 @@ Development
|
||||
|
||||
.. versionadded:: 0.5.0
|
||||
|
||||
- an additional step is to install `fittrackee_client`
|
||||
- an additional step is needed to install `fittrackee_client`
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
|
2
docs/_static/documentation_options.js
vendored
@ -1,6 +1,6 @@
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'),
|
||||
VERSION: '0.5.5',
|
||||
VERSION: '0.5.6',
|
||||
LANGUAGE: 'None',
|
||||
COLLAPSE_INDEX: false,
|
||||
BUILDER: 'html',
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>Authentication — FitTrackee 0.5.5
|
||||
<title>Authentication — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
@ -40,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>Configuration — FitTrackee 0.5.5
|
||||
<title>Configuration — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
@ -40,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -148,7 +148,7 @@
|
||||
<span class="w"> </span><span class="nt">"max_zip_file_size"</span><span class="p">:</span><span class="w"> </span><span class="mi">10485760</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"max_users"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"map_attribution"</span><span class="p">:</span><span class="w"> </span><span class="nt">"&copy; <a href=http://www.openstreetmap.org/copyright>OpenStreetMap</a> contributors"</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"version"</span><span class="p">:</span><span class="w"> </span><span class="s2">"0.5.5"</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"version"</span><span class="p">:</span><span class="w"> </span><span class="s2">"0.5.6"</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"status"</span><span class="p">:</span><span class="w"> </span><span class="s2">"success"</span><span class="w"></span>
|
||||
<span class="p">}</span><span class="w"></span>
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>API documentation — FitTrackee 0.5.5
|
||||
<title>API documentation — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
@ -40,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>Records — FitTrackee 0.5.5
|
||||
<title>Records — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
@ -40,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>Sports — FitTrackee 0.5.5
|
||||
<title>Sports — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
@ -40,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>Statistics — FitTrackee 0.5.5
|
||||
<title>Statistics — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
@ -40,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>Users — FitTrackee 0.5.5
|
||||
<title>Users — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
@ -40,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>Workouts — FitTrackee 0.5.5
|
||||
<title>Workouts — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
@ -40,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>Change log — FitTrackee 0.5.5
|
||||
<title>Change log — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
@ -39,7 +39,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -77,184 +77,192 @@
|
||||
role="menu"
|
||||
aria-labelledby="dLabelLocalToc"><ul>
|
||||
<li><a class="reference internal" href="#">Change log</a><ul>
|
||||
<li><a class="reference internal" href="#version-0-5-5-2022-01-19">Version 0.5.5 (2022/01/19)</a><ul>
|
||||
<li><a class="reference internal" href="#version-0-5-6-2022-02-05">Version 0.5.6 (2022/02/05)</a><ul>
|
||||
<li><a class="reference internal" href="#issues-closed">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#new-features">New Features</a></li>
|
||||
<li><a class="reference internal" href="#bugs-fixed">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#pull-requests">Pull Requests</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-5-4-2022-01-01">Version 0.5.4 (2022/01/01)</a><ul>
|
||||
<li><a class="reference internal" href="#version-0-5-5-2022-01-19">Version 0.5.5 (2022/01/19)</a><ul>
|
||||
<li><a class="reference internal" href="#id1">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#new-features">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id2">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-5-3-2022-01-01">Version 0.5.3 (2022/01/01)</a><ul>
|
||||
<li><a class="reference internal" href="#version-0-5-4-2022-01-01">Version 0.5.4 (2022/01/01)</a><ul>
|
||||
<li><a class="reference internal" href="#id3">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id4">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-5-2-2021-12-19">Version 0.5.2 (2021/12/19)</a><ul>
|
||||
<li><a class="reference internal" href="#version-0-5-3-2022-01-01">Version 0.5.3 (2022/01/01)</a><ul>
|
||||
<li><a class="reference internal" href="#id5">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id6">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id6">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-5-1-2021-11-30">Version 0.5.1 (2021/11/30)</a><ul>
|
||||
<li><a class="reference internal" href="#version-0-5-2-2021-12-19">Version 0.5.2 (2021/12/19)</a><ul>
|
||||
<li><a class="reference internal" href="#id7">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id8">New Features</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-5-0-2021-11-14">Version 0.5.0 (2021/11/14)</a><ul>
|
||||
<li><a class="reference internal" href="#version-0-5-1-2021-11-30">Version 0.5.1 (2021/11/30)</a><ul>
|
||||
<li><a class="reference internal" href="#id9">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id10">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id11">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-5-0-2021-11-14">Version 0.5.0 (2021/11/14)</a><ul>
|
||||
<li><a class="reference internal" href="#id11">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id12">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id13">Bugs Fixed</a></li>
|
||||
<li><a class="reference internal" href="#misc">Misc</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#pull-requests">Pull Requests</a></li>
|
||||
<li><a class="reference internal" href="#id14">Pull Requests</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-4-9-2021-07-16">Version 0.4.9 (2021/07/16)</a><ul>
|
||||
<li><a class="reference internal" href="#id12">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id13">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id14">Bugs Fixed</a></li>
|
||||
<li><a class="reference internal" href="#id15">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id16">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id17">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-4-8-2021-07-03">Version 0.4.8 (2021/07/03)</a><ul>
|
||||
<li><a class="reference internal" href="#id15">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id16">Bugs Fixed</a></li>
|
||||
<li><a class="reference internal" href="#id18">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id19">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-4-7-2021-04-07">Version 0.4.7 (2021/04/07)</a><ul>
|
||||
<li><a class="reference internal" href="#id17">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id18">Bugs Fixed</a></li>
|
||||
<li><a class="reference internal" href="#id20">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id21">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#id19">Misc</a></li>
|
||||
<li><a class="reference internal" href="#id22">Misc</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-4-6-2021-02-21">Version 0.4.6 (2021/02/21)</a><ul>
|
||||
<li><a class="reference internal" href="#id20">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id21">Bugs Fixed</a></li>
|
||||
<li><a class="reference internal" href="#id23">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id24">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-4-5-2021-02-17">Version 0.4.5 (2021/02/17)</a><ul>
|
||||
<li><a class="reference internal" href="#id22">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id23">Bugs Fixed</a></li>
|
||||
<li><a class="reference internal" href="#id25">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id26">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-4-4-2021-01-31">Version 0.4.4 (2021/01/31)</a><ul>
|
||||
<li><a class="reference internal" href="#id24">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id25">Bugs Fixed</a></li>
|
||||
<li><a class="reference internal" href="#id27">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id28">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#id26">Misc</a></li>
|
||||
<li><a class="reference internal" href="#id29">Misc</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-4-3-2021-01-10">Version 0.4.3 (2021/01/10)</a><ul>
|
||||
<li><a class="reference internal" href="#id27">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id28">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id29">Bugs Fixed</a></li>
|
||||
<li><a class="reference internal" href="#id30">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id31">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id32">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-4-2-2021-01-03">Version 0.4.2 (2021/01/03)</a><ul>
|
||||
<li><a class="reference internal" href="#id30">Misc</a></li>
|
||||
<li><a class="reference internal" href="#id33">Misc</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-4-1-2020-12-31">Version 0.4.1 (2020/12/31)</a><ul>
|
||||
<li><a class="reference internal" href="#id31">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id32">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id34">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id35">New Features</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-4-0-fittrackee-on-pypi-2020-09-19">Version 0.4.0 - FitTrackee on PyPI (2020/09/19)</a><ul>
|
||||
<li><a class="reference internal" href="#id33">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id34">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id36">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id37">New Features</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-3-0-administration-2020-07-15">Version 0.3.0 - Administration (2020/07/15)</a><ul>
|
||||
<li><a class="reference internal" href="#id35">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id36">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id38">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id39">New Features</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-2-5-fix-and-improvements-2020-01-31">Version 0.2.5 - Fix and improvements (2020/01/31)</a><ul>
|
||||
<li><a class="reference internal" href="#id37">Misc</a></li>
|
||||
<li><a class="reference internal" href="#id40">Misc</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-2-4-minor-fix-2020-01-30">Version 0.2.4 - Minor fix (2020/01/30)</a><ul>
|
||||
<li><a class="reference internal" href="#id38">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id39">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-2-3-fittrackee-available-in-french-2019-12-29">Version 0.2.3 - FitTrackee available in French (2019/12/29)</a><ul>
|
||||
<li><a class="reference internal" href="#id40">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id41">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id41">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id42">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-2-2-statistics-fix-2019-09-23">Version 0.2.2 - Statistics fix (2019/09/23)</a><ul>
|
||||
<li><a class="reference internal" href="#version-0-2-3-fittrackee-available-in-french-2019-12-29">Version 0.2.3 - FitTrackee available in French (2019/12/29)</a><ul>
|
||||
<li><a class="reference internal" href="#id43">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id44">Bugs Fixed</a></li>
|
||||
<li><a class="reference internal" href="#id44">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id45">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-2-2-statistics-fix-2019-09-23">Version 0.2.2 - Statistics fix (2019/09/23)</a><ul>
|
||||
<li><a class="reference internal" href="#id46">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id47">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-2-1-fix-and-improvements-2019-09-01">Version 0.2.1 - Fix and improvements (2019/09/01)</a><ul>
|
||||
<li><a class="reference internal" href="#id45">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id46">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id47">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#id48">Misc</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-2-0-statistics-2019-07-07">Version 0.2.0 - Statistics (2019/07/07)</a><ul>
|
||||
<li><a class="reference internal" href="#id49">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id50">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id48">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id49">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id50">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#id51">Misc</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-1-1-fix-and-improvements-2019-02-07">Version 0.1.1 - Fix and improvements (2019/02/07)</a><ul>
|
||||
<li><a class="reference internal" href="#version-0-2-0-statistics-2019-07-07">Version 0.2.0 - Statistics (2019/07/07)</a><ul>
|
||||
<li><a class="reference internal" href="#id52">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id53">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id54">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#id54">Misc</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-1-1-fix-and-improvements-2019-02-07">Version 0.1.1 - Fix and improvements (2019/02/07)</a><ul>
|
||||
<li><a class="reference internal" href="#id55">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id56">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id57">Bugs Fixed</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#version-0-1-0-first-release-2018-07-04">Version 0.1.0 - First release 🎉 (2018-07-04)</a><ul>
|
||||
<li><a class="reference internal" href="#id55">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id56">New Features</a></li>
|
||||
<li><a class="reference internal" href="#id58">Issues Closed</a><ul>
|
||||
<li><a class="reference internal" href="#id59">New Features</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -306,10 +314,29 @@
|
||||
|
||||
<section id="change-log">
|
||||
<h1>Change log<a class="headerlink" href="#change-log" title="Permalink to this headline">¶</a></h1>
|
||||
<section id="version-0-5-5-2022-01-19">
|
||||
<h2>Version 0.5.5 (2022/01/19)<a class="headerlink" href="#version-0-5-5-2022-01-19" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="version-0-5-6-2022-02-05">
|
||||
<h2>Version 0.5.6 (2022/02/05)<a class="headerlink" href="#version-0-5-6-2022-02-05" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="issues-closed">
|
||||
<h3>Issues Closed<a class="headerlink" href="#issues-closed" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="bugs-fixed">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#bugs-fixed" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/146">#146</a> - incorrect label on workouts filters</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
<section id="pull-requests">
|
||||
<h3>Pull Requests<a class="headerlink" href="#pull-requests" title="Permalink to this headline">¶</a></h3>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/pull/145">#145</a> - fix on database models</p></li>
|
||||
</ul>
|
||||
<p>In this release 1 issue was closed.<br /><strong>Note:</strong> This release contains database migration (see upgrade instructions in <a class="reference external" href="https://samr1.github.io/FitTrackee/installation.html#upgrade">documentation</a>)</p>
|
||||
</section>
|
||||
</section>
|
||||
<section id="version-0-5-5-2022-01-19">
|
||||
<h2>Version 0.5.5 (2022/01/19)<a class="headerlink" href="#version-0-5-5-2022-01-19" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id1">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="new-features">
|
||||
<h4>New Features<a class="headerlink" href="#new-features" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
@ -319,8 +346,8 @@
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/134">#134</a> - Wind direction</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="bugs-fixed">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#bugs-fixed" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id2">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/commit/877fa0faaabc0130402638905fe04f84563eb278">877fa0f</a> - fix sport icon color (when changed) on calendar on small resolutions</p></li>
|
||||
</ul>
|
||||
@ -330,10 +357,10 @@
|
||||
</section>
|
||||
<section id="version-0-5-4-2022-01-01">
|
||||
<h2>Version 0.5.4 (2022/01/01)<a class="headerlink" href="#version-0-5-4-2022-01-01" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id1">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id2">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id3">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id3" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id4">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id4" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/131">#131</a> - No workouts displayed on calendar</p></li>
|
||||
</ul>
|
||||
@ -343,10 +370,10 @@
|
||||
</section>
|
||||
<section id="version-0-5-3-2022-01-01">
|
||||
<h2>Version 0.5.3 (2022/01/01)<a class="headerlink" href="#version-0-5-3-2022-01-01" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id3">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id3" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id4">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id4" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id5">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id5" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id6">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id6" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/129">#129</a> - Display only active sports when editing a workout</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/127">#127</a> - parse_email_url() can’t validate a legitimate EMAIL_URI such as “smtp://localhost:25”</p></li>
|
||||
@ -357,10 +384,10 @@
|
||||
</section>
|
||||
<section id="version-0-5-2-2021-12-19">
|
||||
<h2>Version 0.5.2 (2021/12/19)<a class="headerlink" href="#version-0-5-2-2021-12-19" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id5">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id5" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id6">
|
||||
<h4>New Features<a class="headerlink" href="#id6" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id7">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id7" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id8">
|
||||
<h4>New Features<a class="headerlink" href="#id8" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/123">#123</a> - Allow user to reset preferences for a sport</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/121">#121</a> - Add activity : snowshoes</p></li>
|
||||
@ -371,10 +398,10 @@
|
||||
</section>
|
||||
<section id="version-0-5-1-2021-11-30">
|
||||
<h2>Version 0.5.1 (2021/11/30)<a class="headerlink" href="#version-0-5-1-2021-11-30" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id7">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id7" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id8">
|
||||
<h4>New Features<a class="headerlink" href="#id8" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id9">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id9" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id10">
|
||||
<h4>New Features<a class="headerlink" href="#id10" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/116">#116</a> - Better UI for Speed and Elevation buttons in the graph of the Workout screen</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/115">#115</a> - Add option to download the GPX file of a Workout</p></li>
|
||||
@ -386,10 +413,10 @@
|
||||
</section>
|
||||
<section id="version-0-5-0-2021-11-14">
|
||||
<h2>Version 0.5.0 (2021/11/14)<a class="headerlink" href="#version-0-5-0-2021-11-14" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id9">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id9" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id10">
|
||||
<h4>New Features<a class="headerlink" href="#id10" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id11">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id11" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id12">
|
||||
<h4>New Features<a class="headerlink" href="#id12" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/99">#99</a> - Display workout with imperial units</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/91">#91</a> - Display elevation chart with min and max altitude of workout</p></li>
|
||||
@ -397,8 +424,8 @@
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/18">#18</a> - Better UI</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="id11">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id11" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id13">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id13" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/95">#95</a> - Some workouts seem to be missing on statistics chart</p></li>
|
||||
</ul>
|
||||
@ -410,8 +437,8 @@
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
<section id="pull-requests">
|
||||
<h3>Pull Requests<a class="headerlink" href="#pull-requests" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id14">
|
||||
<h3>Pull Requests<a class="headerlink" href="#id14" title="Permalink to this headline">¶</a></h3>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/pull/101">#101</a> - Docker updates for full files</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/pull/100">#100</a> - Add client application in docker for development</p></li>
|
||||
@ -428,17 +455,17 @@
|
||||
</section>
|
||||
<section id="version-0-4-9-2021-07-16">
|
||||
<h2>Version 0.4.9 (2021/07/16)<a class="headerlink" href="#version-0-4-9-2021-07-16" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id12">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id12" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id13">
|
||||
<h4>New Features<a class="headerlink" href="#id13" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id15">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id15" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id16">
|
||||
<h4>New Features<a class="headerlink" href="#id16" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/83">#83</a> - allow using configured tile server to generate static maps<br /><strong>Note</strong>: to keep using the default tile server, set environment variable <code class="docutils literal notranslate"><span class="pre">DEFAULT_STATICMAP</span></code> to <code class="docutils literal notranslate"><span class="pre">True</span></code></p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/81">#81</a> - display remaining characters in textarea</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="id14">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id14" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id17">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id17" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/82">#82</a> - a user can not modify his birth day</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/80">#80</a> - can not save notes with control characters</p></li>
|
||||
@ -449,10 +476,10 @@
|
||||
</section>
|
||||
<section id="version-0-4-8-2021-07-03">
|
||||
<h2>Version 0.4.8 (2021/07/03)<a class="headerlink" href="#version-0-4-8-2021-07-03" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id15">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id15" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id16">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id16" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id18">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id18" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id19">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id19" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/79">#79</a> - Fails to start after make rebuild</p></li>
|
||||
</ul>
|
||||
@ -462,17 +489,17 @@
|
||||
</section>
|
||||
<section id="version-0-4-7-2021-04-07">
|
||||
<h2>Version 0.4.7 (2021/04/07)<a class="headerlink" href="#version-0-4-7-2021-04-07" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id17">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id17" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id18">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id18" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id20">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id20" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id21">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id21" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/75">#75</a> - Workouts on the same day are not displayed in right order</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
<section id="id19">
|
||||
<h3>Misc<a class="headerlink" href="#id19" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id22">
|
||||
<h3>Misc<a class="headerlink" href="#id22" title="Permalink to this headline">¶</a></h3>
|
||||
<ul class="simple">
|
||||
<li><p>Update Python and Javascript dependencies<br /><strong>IMPORTANT</strong>: Due to <a class="reference external" href="https://docs.sqlalchemy.org/en/14/changelog/changelog_14.html#change-3687655465c25a39b968b4f5f6e9170b">SQLAlchemy update (1.4+)</a>, engine URLs starting with <code class="docutils literal notranslate"><span class="pre">postgres://</span></code> are no longer supported. Please update <code class="docutils literal notranslate"><span class="pre">DATABASE_URL</span></code> with <code class="docutils literal notranslate"><span class="pre">postgresql://</span></code>.</p></li>
|
||||
</ul>
|
||||
@ -481,10 +508,10 @@
|
||||
</section>
|
||||
<section id="version-0-4-6-2021-02-21">
|
||||
<h2>Version 0.4.6 (2021/02/21)<a class="headerlink" href="#version-0-4-6-2021-02-21" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id20">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id20" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id21">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id21" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id23">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id23" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id24">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id24" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/72">#72</a> - Error message when file exceeding size is incorrect</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/71">#71</a> - max size or max number of files must be greater than 0</p></li>
|
||||
@ -496,10 +523,10 @@
|
||||
</section>
|
||||
<section id="version-0-4-5-2021-02-17">
|
||||
<h2>Version 0.4.5 (2021/02/17)<a class="headerlink" href="#version-0-4-5-2021-02-17" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id22">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id22" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id23">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id23" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id25">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id25" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id26">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id26" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/66">#66</a> - invalid gpx limit used when importing zip archive</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/64">#64</a> - Only 50 workouts per month shown in calendar</p></li>
|
||||
@ -510,17 +537,17 @@
|
||||
</section>
|
||||
<section id="version-0-4-4-2021-01-31">
|
||||
<h2>Version 0.4.4 (2021/01/31)<a class="headerlink" href="#version-0-4-4-2021-01-31" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id24">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id24" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id25">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id25" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id27">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id27" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id28">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id28" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/62">#62</a> - Error when sending reset password email</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
<section id="id26">
|
||||
<h3>Misc<a class="headerlink" href="#id26" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id29">
|
||||
<h3>Misc<a class="headerlink" href="#id29" title="Permalink to this headline">¶</a></h3>
|
||||
<ul class="simple">
|
||||
<li><p>Refactoring before introducing new features.</p></li>
|
||||
<li><p>Add docker files for evaluation purposes.</p></li>
|
||||
@ -530,16 +557,16 @@
|
||||
</section>
|
||||
<section id="version-0-4-3-2021-01-10">
|
||||
<h2>Version 0.4.3 (2021/01/10)<a class="headerlink" href="#version-0-4-3-2021-01-10" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id27">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id27" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id28">
|
||||
<h4>New Features<a class="headerlink" href="#id28" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id30">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id30" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id31">
|
||||
<h4>New Features<a class="headerlink" href="#id31" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/58">#58</a> - Standardize terms used for workouts<br /><strong>Note:</strong> Database model, upload directory for workouts and API endpoints are also updated.</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="id29">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id29" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id32">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id32" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/59">#59</a> - No message displayed on uploading image error</p></li>
|
||||
</ul>
|
||||
@ -549,18 +576,18 @@
|
||||
</section>
|
||||
<section id="version-0-4-2-2021-01-03">
|
||||
<h2>Version 0.4.2 (2021/01/03)<a class="headerlink" href="#version-0-4-2-2021-01-03" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id30">
|
||||
<h3>Misc<a class="headerlink" href="#id30" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id33">
|
||||
<h3>Misc<a class="headerlink" href="#id33" title="Permalink to this headline">¶</a></h3>
|
||||
<p>No new features in this release, only some refactorings before introducing
|
||||
new features.</p>
|
||||
</section>
|
||||
</section>
|
||||
<section id="version-0-4-1-2020-12-31">
|
||||
<h2>Version 0.4.1 (2020/12/31)<a class="headerlink" href="#version-0-4-1-2020-12-31" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id31">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id31" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id32">
|
||||
<h4>New Features<a class="headerlink" href="#id32" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id34">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id34" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id35">
|
||||
<h4>New Features<a class="headerlink" href="#id35" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/57">#57</a> - Use uuid for activities</p></li>
|
||||
</ul>
|
||||
@ -576,10 +603,10 @@ new features.</p>
|
||||
<li><p>It’s now possible to change the tile provider for maps. The default tile server is now <strong>OpenStreetMap</strong>’s standard tile layer (replacing <strong>ThunderForest Outdoors</strong>),
|
||||
see <a class="reference external" href="https://samr1.github.io/FitTrackee/installation.html#map-tile-server">Map tile server in documentation</a>.</p></li>
|
||||
</ul>
|
||||
<section id="id33">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id33" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id34">
|
||||
<h4>New Features<a class="headerlink" href="#id34" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id36">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id36" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id37">
|
||||
<h4>New Features<a class="headerlink" href="#id37" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/54">#54</a> - Tile server can be changed</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/53">#53</a> - Simplify FitTrackee installation</p></li>
|
||||
@ -595,10 +622,10 @@ see <a class="reference external" href="https://samr1.github.io/FitTrackee/insta
|
||||
<li><p>FitTrackee administration is now available (see <a class="reference external" href="https://samr1.github.io/FitTrackee/features.html#administration">documentation</a>)<br />⚠️ Warning: some application parameters move from environment variables to database (see <a class="reference external" href="https://samr1.github.io/FitTrackee/installation.html#environment-variables">installation</a>).</p></li>
|
||||
<li><p>in order to send emails, Redis is now a mandatory dependency</p></li>
|
||||
</ul>
|
||||
<section id="id35">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id35" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id36">
|
||||
<h4>New Features<a class="headerlink" href="#id36" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id38">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id38" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id39">
|
||||
<h4>New Features<a class="headerlink" href="#id39" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/50">#50</a> - A user can reset his password</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/17">#17</a> - A user can delete his account</p></li>
|
||||
@ -610,8 +637,8 @@ see <a class="reference external" href="https://samr1.github.io/FitTrackee/insta
|
||||
</section>
|
||||
<section id="version-0-2-5-fix-and-improvements-2020-01-31">
|
||||
<h2>Version 0.2.5 - Fix and improvements (2020/01/31)<a class="headerlink" href="#version-0-2-5-fix-and-improvements-2020-01-31" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id37">
|
||||
<h3>Misc<a class="headerlink" href="#id37" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id40">
|
||||
<h3>Misc<a class="headerlink" href="#id40" title="Permalink to this headline">¶</a></h3>
|
||||
<p>This version contains minor fix and improvements on client side:</p>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/commit/4c3fc343d51b9c27d3ebab71df648bcf7d7bae59">4c3fc34</a> - empty user data on logout</p></li>
|
||||
@ -624,10 +651,10 @@ add URL interceptors to simplify routes definition</p></li>
|
||||
</section>
|
||||
<section id="version-0-2-4-minor-fix-2020-01-30">
|
||||
<h2>Version 0.2.4 - Minor fix (2020/01/30)<a class="headerlink" href="#version-0-2-4-minor-fix-2020-01-30" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id38">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id38" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id39">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id39" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id41">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id41" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id42">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id42" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/47">#47</a> - timezone drop-down is not displayed correctly</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/46">#46</a> - calendar cannot display more than 5 or 6 activities on the same day</p></li>
|
||||
@ -638,17 +665,17 @@ add URL interceptors to simplify routes definition</p></li>
|
||||
</section>
|
||||
<section id="version-0-2-3-fittrackee-available-in-french-2019-12-29">
|
||||
<h2>Version 0.2.3 - FitTrackee available in French (2019/12/29)<a class="headerlink" href="#version-0-2-3-fittrackee-available-in-french-2019-12-29" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id40">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id40" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id41">
|
||||
<h4>New Features<a class="headerlink" href="#id41" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id43">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id43" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id44">
|
||||
<h4>New Features<a class="headerlink" href="#id44" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/43">#43</a> - Display weekend days with a different background color on calendar</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/40">#40</a> - Localize FitTrackee (i18n)</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="id42">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id42" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id45">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id45" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/44">#44</a> - Cannot edit an activity that does not have a gpx file</p></li>
|
||||
</ul>
|
||||
@ -658,10 +685,10 @@ add URL interceptors to simplify routes definition</p></li>
|
||||
</section>
|
||||
<section id="version-0-2-2-statistics-fix-2019-09-23">
|
||||
<h2>Version 0.2.2 - Statistics fix (2019/09/23)<a class="headerlink" href="#version-0-2-2-statistics-fix-2019-09-23" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id43">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id43" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id44">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id44" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id46">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id46" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id47">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id47" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/41">#41</a> - User statistics are incorrect</p></li>
|
||||
</ul>
|
||||
@ -671,10 +698,10 @@ add URL interceptors to simplify routes definition</p></li>
|
||||
</section>
|
||||
<section id="version-0-2-1-fix-and-improvements-2019-09-01">
|
||||
<h2>Version 0.2.1 - Fix and improvements (2019/09/01)<a class="headerlink" href="#version-0-2-1-fix-and-improvements-2019-09-01" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id45">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id45" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id46">
|
||||
<h4>New Features<a class="headerlink" href="#id46" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id48">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id48" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id49">
|
||||
<h4>New Features<a class="headerlink" href="#id49" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/4">#4</a> - Show points on the map when mouse over the chart</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/14">#14</a> - Display segments informations</p></li>
|
||||
@ -685,15 +712,15 @@ add URL interceptors to simplify routes definition</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/37">#37</a> - Display map on activities list</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="id47">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id47" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id50">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id50" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/34">#34</a> - Weather is not displayed anymore</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
<section id="id48">
|
||||
<h3>Misc<a class="headerlink" href="#id48" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id51">
|
||||
<h3>Misc<a class="headerlink" href="#id51" title="Permalink to this headline">¶</a></h3>
|
||||
<ul class="simple">
|
||||
<li><p><strong><a class="reference external" href="https://poetry.eustace.io/">Poetry</a></strong> replaces <strong><a class="reference external" href="https://docs.pipenv.org">pipenv</a></strong> for Python packages management</p></li>
|
||||
</ul>
|
||||
@ -702,17 +729,17 @@ add URL interceptors to simplify routes definition</p></li>
|
||||
</section>
|
||||
<section id="version-0-2-0-statistics-2019-07-07">
|
||||
<h2>Version 0.2.0 - Statistics (2019/07/07)<a class="headerlink" href="#version-0-2-0-statistics-2019-07-07" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id49">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id49" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id50">
|
||||
<h4>New Features<a class="headerlink" href="#id50" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id52">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id52" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id53">
|
||||
<h4>New Features<a class="headerlink" href="#id53" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/Fittrackee/issues/13">#13</a> - Detailed statistics</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
<section id="id51">
|
||||
<h3>Misc<a class="headerlink" href="#id51" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id54">
|
||||
<h3>Misc<a class="headerlink" href="#id54" title="Permalink to this headline">¶</a></h3>
|
||||
<ul class="simple">
|
||||
<li><p>Update dependencies</p></li>
|
||||
</ul>
|
||||
@ -721,17 +748,17 @@ add URL interceptors to simplify routes definition</p></li>
|
||||
</section>
|
||||
<section id="version-0-1-1-fix-and-improvements-2019-02-07">
|
||||
<h2>Version 0.1.1 - Fix and improvements (2019/02/07)<a class="headerlink" href="#version-0-1-1-fix-and-improvements-2019-02-07" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="id52">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id52" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id53">
|
||||
<h4>New Features<a class="headerlink" href="#id53" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id55">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id55" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id56">
|
||||
<h4>New Features<a class="headerlink" href="#id56" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/25">#25</a> - Display records on calendar</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/22">#22</a> - Add a total on current month statistics</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="id54">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id54" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id57">
|
||||
<h4>Bugs Fixed<a class="headerlink" href="#id57" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/31">#31</a> - Use moving duration for stats</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/29">#29</a> - Pause duration calculation with segments</p></li>
|
||||
@ -780,10 +807,10 @@ add URL interceptors to simplify routes definition</p></li>
|
||||
<li><p>no administration for now</p></li>
|
||||
</ul>
|
||||
<p>➡️ more informations: see <a class="reference external" href="https://samr1.github.io/FitTrackee/">documentation</a> and <a class="reference external" href="https://github.com/SamR1/FitTrackee/issues">current issues</a></p>
|
||||
<section id="id55">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id55" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id56">
|
||||
<h4>New Features<a class="headerlink" href="#id56" title="Permalink to this headline">¶</a></h4>
|
||||
<section id="id58">
|
||||
<h3>Issues Closed<a class="headerlink" href="#id58" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id59">
|
||||
<h4>New Features<a class="headerlink" href="#id59" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/11">#11</a> - Timezone support</p></li>
|
||||
<li><p><a class="reference external" href="https://github.com/SamR1/FitTrackee/issues/10">#10</a> - Add a note to an activity</p></li>
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>Features — FitTrackee 0.5.5
|
||||
<title>Features — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
@ -40,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -78,13 +78,11 @@
|
||||
role="menu"
|
||||
aria-labelledby="dLabelLocalToc"><ul>
|
||||
<li><a class="reference internal" href="#">Features</a><ul>
|
||||
<li><a class="reference internal" href="#list">List</a><ul>
|
||||
<li><a class="reference internal" href="#administration">Administration</a></li>
|
||||
<li><a class="reference internal" href="#account-preferences">Account & preferences</a></li>
|
||||
<li><a class="reference internal" href="#workouts">Workouts</a></li>
|
||||
<li><a class="reference internal" href="#account-preferences">Account & preferences</a></li>
|
||||
<li><a class="reference internal" href="#administration">Administration</a></li>
|
||||
<li><a class="reference internal" href="#translations">Translations</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#screenshots">Screenshots</a><ul>
|
||||
<li><a class="reference internal" href="#dashboard">Dashboard</a></li>
|
||||
<li><a class="reference internal" href="#workout-detail">Workout detail</a></li>
|
||||
<li><a class="reference internal" href="#workouts-list">Workouts list</a></li>
|
||||
@ -93,6 +91,8 @@
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
@ -141,67 +141,8 @@
|
||||
|
||||
<section id="features">
|
||||
<h1>Features<a class="headerlink" href="#features" title="Permalink to this headline">¶</a></h1>
|
||||
<section id="list">
|
||||
<h2>List<a class="headerlink" href="#list" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="administration">
|
||||
<h3>Administration<a class="headerlink" href="#administration" title="Permalink to this headline">¶</a></h3>
|
||||
<p>(<em>new in 0.3.0</em>)</p>
|
||||
<ul>
|
||||
<li><p><strong>Application</strong></p>
|
||||
<p>The following parameters can be set:</p>
|
||||
<ul class="simple">
|
||||
<li><p>active users limit. If 0, registration is enabled (no limit defined)</p></li>
|
||||
<li><p>maximum size of uploaded files</p></li>
|
||||
<li><p>maximum size of zip archive</p></li>
|
||||
<li><p>maximum number of files in the zip archive. If an archive contains more files, only the configured number of files is processed, without raising errors.</p></li>
|
||||
</ul>
|
||||
<div class="admonition warning">
|
||||
<p class="admonition-title">Warning</p>
|
||||
<p>Updating server configuration may be necessary to handle large files (like <a class="reference external" href="https://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size">nginx</a> for instance).</p>
|
||||
</div>
|
||||
</li>
|
||||
<li><p><strong>Users</strong></p>
|
||||
<ul class="simple">
|
||||
<li><p>display users list and details</p></li>
|
||||
<li><p>edit a user to add/remove administration rights</p></li>
|
||||
<li><p>delete a user</p></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><p><strong>Sports</strong></p>
|
||||
<ul class="simple">
|
||||
<li><p>enable or disable a sport (a sport can be disabled even if workout with this sport exists)</p></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="account-preferences">
|
||||
<h3>Account & preferences<a class="headerlink" href="#account-preferences" title="Permalink to this headline">¶</a></h3>
|
||||
<ul class="simple">
|
||||
<li><p>A user can create, update and deleted his account</p></li>
|
||||
<li><p>A user can set language, timezone and first day of week.</p></li>
|
||||
<li><p>A user can reset his password (<em>new in 0.3.0</em>)</p></li>
|
||||
<li><p>A user can choose between metric system and imperial system for distance, elevation and speed display (<em>new in 0.5.0</em>)</p></li>
|
||||
<li><dl class="simple">
|
||||
<dt>A user can set sport preferences (<em>new in 0.5.0</em>):</dt><dd><ul>
|
||||
<li><p>change sport color (used for sport image and charts)</p></li>
|
||||
<li><p>can override stopped speed threshold (for next uploaded gpx files)</p></li>
|
||||
<li><p>disable/enable a sport.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="admonition note">
|
||||
<p class="admonition-title">Note</p>
|
||||
<div class="line-block">
|
||||
<div class="line">If a sport is disabled by an administrator, it can not be enabled by a user. In this case, it will only appear in preferences if it has user’s workouts and the user can only change sport color.</div>
|
||||
<div class="line">A disabled sport (by admin or user) will not appear in dropdown when <strong>adding a workout</strong>.</div>
|
||||
<div class="line">A workout with a disabled sport will still be displayed in the application.</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section id="workouts">
|
||||
<h3>Workouts<a class="headerlink" href="#workouts" title="Permalink to this headline">¶</a></h3>
|
||||
<h2>Workouts<a class="headerlink" href="#workouts" title="Permalink to this headline">¶</a></h2>
|
||||
<ul class="simple">
|
||||
<li><dl class="simple">
|
||||
<dt>11 sports are supported:</dt><dd><ul>
|
||||
@ -282,37 +223,95 @@
|
||||
<p>For now, only the owner of the workout can see it.</p>
|
||||
</div>
|
||||
</section>
|
||||
<section id="account-preferences">
|
||||
<h2>Account & preferences<a class="headerlink" href="#account-preferences" title="Permalink to this headline">¶</a></h2>
|
||||
<ul class="simple">
|
||||
<li><p>A user can create, update and deleted his account</p></li>
|
||||
<li><p>A user can set language, timezone and first day of week.</p></li>
|
||||
<li><p>A user can reset his password (<em>new in 0.3.0</em>)</p></li>
|
||||
<li><p>A user can choose between metric system and imperial system for distance, elevation and speed display (<em>new in 0.5.0</em>)</p></li>
|
||||
<li><dl class="simple">
|
||||
<dt>A user can set sport preferences (<em>new in 0.5.0</em>):</dt><dd><ul>
|
||||
<li><p>change sport color (used for sport image and charts)</p></li>
|
||||
<li><p>can override stopped speed threshold (for next uploaded gpx files)</p></li>
|
||||
<li><p>disable/enable a sport.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="admonition note">
|
||||
<p class="admonition-title">Note</p>
|
||||
<div class="line-block">
|
||||
<div class="line">If a sport is disabled by an administrator, it can not be enabled by a user. In this case, it will only appear in preferences if the user has workouts and only sport color can be changed.</div>
|
||||
<div class="line">A disabled sport (by admin or user) will not appear in dropdown when <strong>adding a workout</strong>.</div>
|
||||
<div class="line">A workout with a disabled sport will still be displayed in the application.</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section id="administration">
|
||||
<h2>Administration<a class="headerlink" href="#administration" title="Permalink to this headline">¶</a></h2>
|
||||
<p>(<em>new in 0.3.0</em>)</p>
|
||||
<ul>
|
||||
<li><p><strong>Application</strong></p>
|
||||
<p>The following parameters can be set:</p>
|
||||
<ul class="simple">
|
||||
<li><p>active users limit. If 0, registration is enabled (no limit defined)</p></li>
|
||||
<li><p>maximum size of uploaded files</p></li>
|
||||
<li><p>maximum size of zip archive</p></li>
|
||||
<li><p>maximum number of files in the zip archive. If an archive contains more files, only the configured number of files is processed, without raising errors.</p></li>
|
||||
</ul>
|
||||
<div class="admonition warning">
|
||||
<p class="admonition-title">Warning</p>
|
||||
<p>Updating server configuration may be necessary to handle large files (like <a class="reference external" href="https://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size">nginx</a> for instance).</p>
|
||||
</div>
|
||||
</li>
|
||||
<li><p><strong>Users</strong></p>
|
||||
<ul class="simple">
|
||||
<li><p>display users list and details</p></li>
|
||||
<li><p>edit a user to add/remove administration rights</p></li>
|
||||
<li><p>delete a user</p></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><p><strong>Sports</strong></p>
|
||||
<ul class="simple">
|
||||
<li><p>enable or disable a sport (a sport can be disabled even if workout with this sport exists)</p></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="translations">
|
||||
<h3>Translations<a class="headerlink" href="#translations" title="Permalink to this headline">¶</a></h3>
|
||||
<h2>Translations<a class="headerlink" href="#translations" title="Permalink to this headline">¶</a></h2>
|
||||
<p>FitTrackee is available in English and French (which can be saved in the user preferences).</p>
|
||||
</section>
|
||||
</section>
|
||||
<section id="screenshots">
|
||||
<h2>Screenshots<a class="headerlink" href="#screenshots" title="Permalink to this headline">¶</a></h2>
|
||||
<section id="dashboard">
|
||||
<h2>Dashboard<a class="headerlink" href="#dashboard" title="Permalink to this headline">¶</a></h2>
|
||||
<h3>Dashboard<a class="headerlink" href="#dashboard" title="Permalink to this headline">¶</a></h3>
|
||||
<figure class="align-default">
|
||||
<img alt="FitTrackee Dashboard" src="_images/fittrackee_screenshot-01.png" />
|
||||
</figure>
|
||||
</section>
|
||||
<section id="workout-detail">
|
||||
<h2>Workout detail<a class="headerlink" href="#workout-detail" title="Permalink to this headline">¶</a></h2>
|
||||
<h3>Workout detail<a class="headerlink" href="#workout-detail" title="Permalink to this headline">¶</a></h3>
|
||||
<figure class="align-default">
|
||||
<img alt="FitTrackee Workout" src="_images/fittrackee_screenshot-02.png" />
|
||||
</figure>
|
||||
</section>
|
||||
<section id="workouts-list">
|
||||
<h2>Workouts list<a class="headerlink" href="#workouts-list" title="Permalink to this headline">¶</a></h2>
|
||||
<h3>Workouts list<a class="headerlink" href="#workouts-list" title="Permalink to this headline">¶</a></h3>
|
||||
<figure class="align-default">
|
||||
<img alt="FitTrackee Workouts" src="_images/fittrackee_screenshot-03.png" />
|
||||
</figure>
|
||||
</section>
|
||||
<section id="statistics">
|
||||
<h2>Statistics<a class="headerlink" href="#statistics" title="Permalink to this headline">¶</a></h2>
|
||||
<h3>Statistics<a class="headerlink" href="#statistics" title="Permalink to this headline">¶</a></h3>
|
||||
<figure class="align-default">
|
||||
<img alt="FitTrackee Statistics" src="_images/fittrackee_screenshot-04.png" />
|
||||
</figure>
|
||||
</section>
|
||||
<section id="id1">
|
||||
<h2>Administration<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h2>
|
||||
<h3>Administration<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h3>
|
||||
<figure class="align-default">
|
||||
<img alt="FitTrackee Administration" src="_images/fittrackee_screenshot-05.png" />
|
||||
</figure>
|
||||
@ -320,6 +319,7 @@
|
||||
<img alt="FitTrackee Sports Administration" src="_images/fittrackee_screenshot-06.png" />
|
||||
</figure>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Index — FitTrackee 0.5.5
|
||||
<title>Index — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
@ -37,7 +37,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>HTTP Routing Table — FitTrackee 0.5.5
|
||||
<title>HTTP Routing Table — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
@ -44,7 +44,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>FitTrackee — FitTrackee 0.5.5
|
||||
<title>FitTrackee — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
@ -39,7 +39,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="#">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>Installation — FitTrackee 0.5.5
|
||||
<title>Installation — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
@ -40,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -84,18 +84,18 @@
|
||||
<li><a class="reference internal" href="#map-tile-server">Map tile server</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#from-pypi">From PyPI</a><ul>
|
||||
<li><a class="reference internal" href="#id1">Installation</a></li>
|
||||
<li><a class="reference internal" href="#upgrade">Upgrade</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#id1">Installation</a><ul>
|
||||
<li><a class="reference internal" href="#from-pypi">From PyPI</a></li>
|
||||
<li><a class="reference internal" href="#from-sources">From sources</a><ul>
|
||||
<li><a class="reference internal" href="#id2">Installation</a><ul>
|
||||
<li><a class="reference internal" href="#dev-environment">Dev environment</a></li>
|
||||
<li><a class="reference internal" href="#production-environment">Production environment</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#id3">Upgrade</a><ul>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference internal" href="#upgrade">Upgrade</a><ul>
|
||||
<li><a class="reference internal" href="#id2">From PyPI</a></li>
|
||||
<li><a class="reference internal" href="#id3">From sources</a><ul>
|
||||
<li><a class="reference internal" href="#id4">Dev environment</a></li>
|
||||
<li><a class="reference internal" href="#prod-environment">Prod environment</a></li>
|
||||
</ul>
|
||||
@ -486,22 +486,22 @@ The tile server can be changed by updating <code class="docutils literal notrans
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="from-pypi">
|
||||
<h2>From PyPI<a class="headerlink" href="#from-pypi" title="Permalink to this headline">¶</a></h2>
|
||||
<div class="admonition note">
|
||||
<p class="admonition-title">Note</p>
|
||||
<div class="line-block">
|
||||
<div class="line">Recommended way on production.</div>
|
||||
</div>
|
||||
</div>
|
||||
<section id="id1">
|
||||
<h2>Installation<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h2>
|
||||
<div class="admonition warning">
|
||||
<p class="admonition-title">Warning</p>
|
||||
<div class="line-block">
|
||||
<div class="line">Note that FitTrackee is under heavy development, some features may be unstable.</div>
|
||||
</div>
|
||||
</div>
|
||||
<section id="id1">
|
||||
<h3>Installation<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="from-pypi">
|
||||
<h3>From PyPI<a class="headerlink" href="#from-pypi" title="Permalink to this headline">¶</a></h3>
|
||||
<div class="admonition note">
|
||||
<p class="admonition-title">Note</p>
|
||||
<div class="line-block">
|
||||
<div class="line">Recommended way on production.</div>
|
||||
</div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Create and activate a virtualenv</p></li>
|
||||
<li><p>Install <strong>FitTrackee</strong> with pip</p></li>
|
||||
@ -557,43 +557,8 @@ $ <span class="nb">source</span> .env
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section id="upgrade">
|
||||
<h3>Upgrade<a class="headerlink" href="#upgrade" title="Permalink to this headline">¶</a></h3>
|
||||
<div class="admonition warning">
|
||||
<p class="admonition-title">Warning</p>
|
||||
<div class="line-block">
|
||||
<div class="line">Before upgrading, make a backup of all data:</div>
|
||||
<div class="line">- database (with <a class="reference external" href="https://www.postgresql.org/docs/11/app-pgdump.html">pg_dump</a> for instance)</div>
|
||||
<div class="line">- upload directory (see <a class="reference external" href="installation.html#environment-variables">Environment variables</a>)</div>
|
||||
</div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Activate the virtualenv</p></li>
|
||||
<li><p>Upgrade with pip</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ pip install -U fittrackee
|
||||
</pre></div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Update environment variables if needed and source environment variables file</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ nano .env
|
||||
$ <span class="nb">source</span> .env
|
||||
</pre></div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Upgrade database if needed</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ fittrackee_upgrade_db
|
||||
</pre></div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Restart the application and task queue workers.</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
<section id="from-sources">
|
||||
<h2>From sources<a class="headerlink" href="#from-sources" title="Permalink to this headline">¶</a></h2>
|
||||
<h3>From sources<a class="headerlink" href="#from-sources" title="Permalink to this headline">¶</a></h3>
|
||||
<div class="admonition warning">
|
||||
<p class="admonition-title">Warning</p>
|
||||
<div class="line-block">
|
||||
@ -610,8 +575,6 @@ $ poetry config virtualenvs.in-project <span class="nb">true</span>
|
||||
</div>
|
||||
<p>For other OS, see <a class="reference external" href="https://python-poetry.org/docs/#installation">Poetry Documentation</a></p>
|
||||
</div>
|
||||
<section id="id2">
|
||||
<h3>Installation<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="dev-environment">
|
||||
<h4>Dev environment<a class="headerlink" href="#dev-environment" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
@ -655,11 +618,11 @@ and the password <code class="docutils literal notranslate"><span class="pre">mp
|
||||
</div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Download the last release (for now, it is the release v0.5.5):</p></li>
|
||||
<li><p>Download the last release (for now, it is the release v0.5.6):</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ wget https://github.com/SamR1/FitTrackee/archive/v0.5.5.tar.gz
|
||||
$ tar -xzf v0.5.5.tar.gz
|
||||
$ mv FitTrackee-0.5.5 FitTrackee
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ wget https://github.com/SamR1/FitTrackee/archive/v0.5.6.tar.gz
|
||||
$ tar -xzf v0.5.6.tar.gz
|
||||
$ mv FitTrackee-0.5.6 FitTrackee
|
||||
$ <span class="nb">cd</span> FitTrackee
|
||||
</pre></div>
|
||||
</div>
|
||||
@ -689,8 +652,9 @@ database credentials</strong>):</p></li>
|
||||
password</p>
|
||||
</section>
|
||||
</section>
|
||||
<section id="id3">
|
||||
<h3>Upgrade<a class="headerlink" href="#id3" title="Permalink to this headline">¶</a></h3>
|
||||
</section>
|
||||
<section id="upgrade">
|
||||
<h2>Upgrade<a class="headerlink" href="#upgrade" title="Permalink to this headline">¶</a></h2>
|
||||
<div class="admonition warning">
|
||||
<p class="admonition-title">Warning</p>
|
||||
<div class="line-block">
|
||||
@ -699,6 +663,34 @@ password</p>
|
||||
<div class="line">- upload directory (see <a class="reference external" href="installation.html#environment-variables">Environment variables</a>)</div>
|
||||
</div>
|
||||
</div>
|
||||
<section id="id2">
|
||||
<h3>From PyPI<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h3>
|
||||
<ul class="simple">
|
||||
<li><p>Activate the virtualenv</p></li>
|
||||
<li><p>Upgrade with pip</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ pip install -U fittrackee
|
||||
</pre></div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Update environment variables if needed and source environment variables file</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ nano .env
|
||||
$ <span class="nb">source</span> .env
|
||||
</pre></div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Upgrade database if needed (see changelog for migrations):</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ fittrackee_upgrade_db
|
||||
</pre></div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Restart the application and task queue workers.</p></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="id3">
|
||||
<h3>From sources<a class="headerlink" href="#id3" title="Permalink to this headline">¶</a></h3>
|
||||
<section id="id4">
|
||||
<h4>Dev environment<a class="headerlink" href="#id4" title="Permalink to this headline">¶</a></h4>
|
||||
<ul class="simple">
|
||||
@ -709,10 +701,15 @@ password</p>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Update <strong>.env</strong> if needed (see <a class="reference external" href="installation.html#environment-variables">Environment variables</a>).</p></li>
|
||||
<li><p>Upgrade packages and database:</p></li>
|
||||
<li><p>Upgrade packages:</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ make install-dev
|
||||
$ make upgrade-db
|
||||
</pre></div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Upgrade database if needed (see changelog for migrations):</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ make upgrade-db
|
||||
</pre></div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
@ -733,20 +730,25 @@ $ make upgrade-db
|
||||
<ul class="simple">
|
||||
<li><p>Stop the application</p></li>
|
||||
<li><p>Change to the directory where FitTrackee directory is located</p></li>
|
||||
<li><p>Download the last release (for now, it is the release v0.5.5) and overwrite existing files:</p></li>
|
||||
<li><p>Download the last release (for now, it is the release v0.5.6) and overwrite existing files:</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ wget https://github.com/SamR1/FitTrackee/archive/v0.5.5.tar.gz
|
||||
$ tar -xzf v0.5.5.tar.gz
|
||||
$ cp -R FitTrackee-0.5.5/* FitTrackee/
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ wget https://github.com/SamR1/FitTrackee/archive/v0.5.6.tar.gz
|
||||
$ tar -xzf v0.5.6.tar.gz
|
||||
$ cp -R FitTrackee-0.5.6/* FitTrackee/
|
||||
$ <span class="nb">cd</span> FitTrackee
|
||||
</pre></div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Update <strong>.env</strong> if needed (see <a class="reference external" href="installation.html#environment-variables">Environment variables</a>).</p></li>
|
||||
<li><p>Upgrade packages and database:</p></li>
|
||||
<li><p>Upgrade packages:</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ make install-python
|
||||
$ make upgrade-db
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ make install-dev
|
||||
</pre></div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Upgrade database if needed (see changelog for migrations):</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ make upgrade-db
|
||||
</pre></div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
@ -844,7 +846,7 @@ One way is to use a <strong>systemd</strong> services and <strong>Nginx</strong>
|
||||
<li><p><strong>Nginx</strong> configuration:</p></li>
|
||||
</ul>
|
||||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>server {
|
||||
listen 443 ssl;
|
||||
listen 443 ssl http2;
|
||||
server_name example.com;
|
||||
ssl_certificate fullchain.pem;
|
||||
ssl_certificate_key privkey.pem;
|
||||
@ -917,7 +919,7 @@ $ make docker-build docker-run docker-init
|
||||
<p><span class="versionmodified added">New in version 0.5.0.</span></p>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>an additional step is to install <cite>fittrackee_client</cite></p></li>
|
||||
<li><p>an additional step is needed to install <cite>fittrackee_client</cite></p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ make docker-build-client
|
||||
</pre></div>
|
||||
|
BIN
docs/objects.inv
@ -4,7 +4,7 @@
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Search — FitTrackee 0.5.5
|
||||
<title>Search — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
@ -16,6 +16,7 @@
|
||||
<link rel="index" title="Index" href="genindex.html" />
|
||||
<link rel="search" title="Search" href="#" />
|
||||
<script type="text/javascript" src="_static/searchtools.js"></script>
|
||||
<script type="text/javascript" src="_static/language_data.js"></script>
|
||||
<script type="text/javascript" src="searchindex.js"></script>
|
||||
|
||||
<script type="text/javascript" id="searchindexloader"></script>
|
||||
@ -43,7 +44,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>Administrator — FitTrackee 0.5.5
|
||||
<title>Administrator — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
@ -40,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>Troubleshooting — FitTrackee 0.5.5
|
||||
<title>Troubleshooting — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
@ -40,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>User — FitTrackee 0.5.5
|
||||
<title>User — FitTrackee 0.5.6
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
@ -40,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.5
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.5.6
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
|
Before Width: | Height: | Size: 537 KiB After Width: | Height: | Size: 537 KiB |
Before Width: | Height: | Size: 369 KiB After Width: | Height: | Size: 370 KiB |
Before Width: | Height: | Size: 202 KiB After Width: | Height: | Size: 202 KiB |
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 70 KiB |
Before Width: | Height: | Size: 71 KiB After Width: | Height: | Size: 71 KiB |
Before Width: | Height: | Size: 103 KiB After Width: | Height: | Size: 104 KiB |
@ -1,54 +1,6 @@
|
||||
Features
|
||||
########
|
||||
|
||||
List
|
||||
~~~~
|
||||
|
||||
Administration
|
||||
^^^^^^^^^^^^^^
|
||||
(*new in 0.3.0*)
|
||||
|
||||
- **Application**
|
||||
|
||||
The following parameters can be set:
|
||||
|
||||
- active users limit. If 0, registration is enabled (no limit defined)
|
||||
- maximum size of uploaded files
|
||||
- maximum size of zip archive
|
||||
- maximum number of files in the zip archive. If an archive contains more files, only the configured number of files is processed, without raising errors.
|
||||
|
||||
.. warning::
|
||||
Updating server configuration may be necessary to handle large files (like `nginx <https://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size>`_ for instance).
|
||||
|
||||
|
||||
- **Users**
|
||||
|
||||
- display users list and details
|
||||
- edit a user to add/remove administration rights
|
||||
- delete a user
|
||||
|
||||
- **Sports**
|
||||
|
||||
- enable or disable a sport (a sport can be disabled even if workout with this sport exists)
|
||||
|
||||
Account & preferences
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
- A user can create, update and deleted his account
|
||||
- A user can set language, timezone and first day of week.
|
||||
- A user can reset his password (*new in 0.3.0*)
|
||||
- A user can choose between metric system and imperial system for distance, elevation and speed display (*new in 0.5.0*)
|
||||
- A user can set sport preferences (*new in 0.5.0*):
|
||||
- change sport color (used for sport image and charts)
|
||||
- can override stopped speed threshold (for next uploaded gpx files)
|
||||
- disable/enable a sport.
|
||||
|
||||
.. note::
|
||||
| If a sport is disabled by an administrator, it can not be enabled by a user. In this case, it will only appear in preferences if it has user's workouts and the user can only change sport color.
|
||||
| A disabled sport (by admin or user) will not appear in dropdown when **adding a workout**.
|
||||
| A workout with a disabled sport will still be displayed in the application.
|
||||
|
||||
|
||||
|
||||
Workouts
|
||||
^^^^^^^^
|
||||
- 11 sports are supported:
|
||||
@ -100,37 +52,86 @@ Workouts
|
||||
.. note::
|
||||
For now, only the owner of the workout can see it.
|
||||
|
||||
|
||||
Account & preferences
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
- A user can create, update and deleted his account
|
||||
- A user can set language, timezone and first day of week.
|
||||
- A user can reset his password (*new in 0.3.0*)
|
||||
- A user can choose between metric system and imperial system for distance, elevation and speed display (*new in 0.5.0*)
|
||||
- A user can set sport preferences (*new in 0.5.0*):
|
||||
- change sport color (used for sport image and charts)
|
||||
- can override stopped speed threshold (for next uploaded gpx files)
|
||||
- disable/enable a sport.
|
||||
|
||||
.. note::
|
||||
| If a sport is disabled by an administrator, it can not be enabled by a user. In this case, it will only appear in preferences if the user has workouts and only sport color can be changed.
|
||||
| A disabled sport (by admin or user) will not appear in dropdown when **adding a workout**.
|
||||
| A workout with a disabled sport will still be displayed in the application.
|
||||
|
||||
|
||||
Administration
|
||||
^^^^^^^^^^^^^^
|
||||
(*new in 0.3.0*)
|
||||
|
||||
- **Application**
|
||||
|
||||
The following parameters can be set:
|
||||
|
||||
- active users limit. If 0, registration is enabled (no limit defined)
|
||||
- maximum size of uploaded files
|
||||
- maximum size of zip archive
|
||||
- maximum number of files in the zip archive. If an archive contains more files, only the configured number of files is processed, without raising errors.
|
||||
|
||||
.. warning::
|
||||
Updating server configuration may be necessary to handle large files (like `nginx <https://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size>`_ for instance).
|
||||
|
||||
|
||||
- **Users**
|
||||
|
||||
- display users list and details
|
||||
- edit a user to add/remove administration rights
|
||||
- delete a user
|
||||
|
||||
- **Sports**
|
||||
|
||||
- enable or disable a sport (a sport can be disabled even if workout with this sport exists)
|
||||
|
||||
|
||||
Translations
|
||||
^^^^^^^^^^^^
|
||||
FitTrackee is available in English and French (which can be saved in the user preferences).
|
||||
|
||||
|
||||
Screenshots
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Dashboard
|
||||
~~~~~~~~~
|
||||
"""""""""
|
||||
|
||||
.. figure:: _images/fittrackee_screenshot-01.png
|
||||
:alt: FitTrackee Dashboard
|
||||
|
||||
|
||||
Workout detail
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
""""""""""""""
|
||||
.. figure:: _images/fittrackee_screenshot-02.png
|
||||
:alt: FitTrackee Workout
|
||||
|
||||
|
||||
Workouts list
|
||||
~~~~~~~~~~~~~
|
||||
"""""""""""""
|
||||
.. figure:: _images/fittrackee_screenshot-03.png
|
||||
:alt: FitTrackee Workouts
|
||||
|
||||
|
||||
Statistics
|
||||
~~~~~~~~~~
|
||||
""""""""""
|
||||
.. figure:: _images/fittrackee_screenshot-04.png
|
||||
:alt: FitTrackee Statistics
|
||||
|
||||
Administration
|
||||
~~~~~~~~~~~~~~
|
||||
""""""""""""""
|
||||
.. figure:: _images/fittrackee_screenshot-05.png
|
||||
:alt: FitTrackee Administration
|
||||
|
||||
|
@ -230,17 +230,17 @@ To keep using **ThunderForest Outdoors**, the configuration is:
|
||||
.. note::
|
||||
| Check the terms of service of tile provider for map attribution
|
||||
|
||||
From PyPI
|
||||
~~~~~~~~~
|
||||
|
||||
.. note::
|
||||
| Recommended way on production.
|
||||
Installation
|
||||
~~~~~~~~~~~~
|
||||
|
||||
.. warning::
|
||||
| Note that FitTrackee is under heavy development, some features may be unstable.
|
||||
|
||||
Installation
|
||||
^^^^^^^^^^^^
|
||||
From PyPI
|
||||
^^^^^^^^^
|
||||
|
||||
.. note::
|
||||
| Recommended way on production.
|
||||
|
||||
- Create and activate a virtualenv
|
||||
|
||||
@ -298,41 +298,8 @@ For instance, copy and update ``.env`` file from ``.env.example`` and source the
|
||||
| To start application and workers with **systemd** service, see `Deployment <installation.html#deployment>`__
|
||||
|
||||
|
||||
Upgrade
|
||||
^^^^^^^
|
||||
|
||||
.. warning::
|
||||
| Before upgrading, make a backup of all data:
|
||||
| - database (with `pg_dump <https://www.postgresql.org/docs/11/app-pgdump.html>`__ for instance)
|
||||
| - upload directory (see `Environment variables <installation.html#environment-variables>`__)
|
||||
|
||||
- Activate the virtualenv
|
||||
|
||||
- Upgrade with pip
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ pip install -U fittrackee
|
||||
|
||||
- Update environment variables if needed and source environment variables file
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ nano .env
|
||||
$ source .env
|
||||
|
||||
- Upgrade database if needed
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ fittrackee_upgrade_db
|
||||
|
||||
|
||||
- Restart the application and task queue workers.
|
||||
|
||||
|
||||
From sources
|
||||
~~~~~~~~~~~~~
|
||||
^^^^^^^^^^^^
|
||||
|
||||
.. warning::
|
||||
| Since FitTrackee 0.2.1, Python packages installation needs Poetry.
|
||||
@ -349,10 +316,6 @@ From sources
|
||||
|
||||
For other OS, see `Poetry Documentation <https://python-poetry.org/docs/#installation>`__
|
||||
|
||||
|
||||
Installation
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Dev environment
|
||||
"""""""""""""""
|
||||
|
||||
@ -396,13 +359,13 @@ Production environment
|
||||
.. warning::
|
||||
| Note that FitTrackee is under heavy development, some features may be unstable.
|
||||
|
||||
- Download the last release (for now, it is the release v0.5.5):
|
||||
- Download the last release (for now, it is the release v0.5.6):
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.5.5.tar.gz
|
||||
$ tar -xzf v0.5.5.tar.gz
|
||||
$ mv FitTrackee-0.5.5 FitTrackee
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.5.6.tar.gz
|
||||
$ tar -xzf v0.5.6.tar.gz
|
||||
$ mv FitTrackee-0.5.6 FitTrackee
|
||||
$ cd FitTrackee
|
||||
|
||||
- Create **.env** from example and update it
|
||||
@ -431,8 +394,9 @@ Open http://localhost:5000, log in as admin (the email is
|
||||
``admin@example.com`` and the password ``mpwoadmin``) and change the
|
||||
password
|
||||
|
||||
|
||||
Upgrade
|
||||
^^^^^^^
|
||||
~~~~~~~
|
||||
|
||||
.. warning::
|
||||
| Before upgrading, make a backup of all data:
|
||||
@ -440,6 +404,37 @@ Upgrade
|
||||
| - upload directory (see `Environment variables <installation.html#environment-variables>`__)
|
||||
|
||||
|
||||
From PyPI
|
||||
^^^^^^^^^
|
||||
|
||||
- Activate the virtualenv
|
||||
|
||||
- Upgrade with pip
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ pip install -U fittrackee
|
||||
|
||||
- Update environment variables if needed and source environment variables file
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ nano .env
|
||||
$ source .env
|
||||
|
||||
- Upgrade database if needed (see changelog for migrations):
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ fittrackee_upgrade_db
|
||||
|
||||
|
||||
- Restart the application and task queue workers.
|
||||
|
||||
|
||||
From sources
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Dev environment
|
||||
"""""""""""""""
|
||||
|
||||
@ -451,11 +446,16 @@ Dev environment
|
||||
|
||||
- Update **.env** if needed (see `Environment variables <installation.html#environment-variables>`__).
|
||||
|
||||
- Upgrade packages and database:
|
||||
- Upgrade packages:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ make install-dev
|
||||
|
||||
- Upgrade database if needed (see changelog for migrations):
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ make upgrade-db
|
||||
|
||||
- Restart the server:
|
||||
@ -477,22 +477,27 @@ Prod environment
|
||||
|
||||
- Change to the directory where FitTrackee directory is located
|
||||
|
||||
- Download the last release (for now, it is the release v0.5.5) and overwrite existing files:
|
||||
- Download the last release (for now, it is the release v0.5.6) and overwrite existing files:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.5.5.tar.gz
|
||||
$ tar -xzf v0.5.5.tar.gz
|
||||
$ cp -R FitTrackee-0.5.5/* FitTrackee/
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.5.6.tar.gz
|
||||
$ tar -xzf v0.5.6.tar.gz
|
||||
$ cp -R FitTrackee-0.5.6/* FitTrackee/
|
||||
$ cd FitTrackee
|
||||
|
||||
- Update **.env** if needed (see `Environment variables <installation.html#environment-variables>`__).
|
||||
|
||||
- Upgrade packages and database:
|
||||
- Upgrade packages:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ make install-dev
|
||||
|
||||
- Upgrade database if needed (see changelog for migrations):
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ make install-python
|
||||
$ make upgrade-db
|
||||
|
||||
- Restart the server and dramatiq workers:
|
||||
@ -503,7 +508,7 @@ Prod environment
|
||||
|
||||
|
||||
Deployment
|
||||
~~~~~~~~~~~~~
|
||||
~~~~~~~~~~
|
||||
|
||||
There are several ways to start **FitTrackee** web application and task queue
|
||||
library.
|
||||
@ -591,7 +596,7 @@ Examples (to update depending on your application configuration and given distri
|
||||
.. code-block::
|
||||
|
||||
server {
|
||||
listen 443 ssl;
|
||||
listen 443 ssl http2;
|
||||
server_name example.com;
|
||||
ssl_certificate fullchain.pem;
|
||||
ssl_certificate_key privkey.pem;
|
||||
@ -666,7 +671,7 @@ Development
|
||||
|
||||
.. versionadded:: 0.5.0
|
||||
|
||||
- an additional step is to install `fittrackee_client`
|
||||
- an additional step is needed to install `fittrackee_client`
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
|
@ -11,7 +11,7 @@ from flask_sqlalchemy import SQLAlchemy
|
||||
|
||||
from fittrackee.emails.email import Email
|
||||
|
||||
VERSION = __version__ = '0.5.5'
|
||||
VERSION = __version__ = '0.5.6'
|
||||
db = SQLAlchemy()
|
||||
bcrypt = Bcrypt()
|
||||
migrate = Migrate()
|
||||
|
@ -45,7 +45,7 @@ def get_application_config() -> Union[Dict, HttpResponse]:
|
||||
"max_zip_file_size": 10485760,
|
||||
"max_users": 0,
|
||||
"map_attribution": "© <a href=http://www.openstreetmap.org/copyright>OpenStreetMap</a> contributors"
|
||||
"version": "0.5.5"
|
||||
"version": "0.5.6"
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
|
2
fittrackee/dist/index.html
vendored
@ -1 +1 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><!--[if IE]><link rel="icon" href="/favicon.ico"><![endif]--><link rel="stylesheet" href="/static/css/fork-awesome.min.css"><link rel="stylesheet" href="/static/css/leaflet.css"><title>FitTrackee</title><link href="/static/css/admin.e77f8b26.css" rel="prefetch"><link href="/static/css/profile.8b668068.css" rel="prefetch"><link href="/static/css/reset.fc19709e.css" rel="prefetch"><link href="/static/css/statistics.2afdc8a9.css" rel="prefetch"><link href="/static/css/workouts.67711f5b.css" rel="prefetch"><link href="/static/js/admin.5f46d0fe.js" rel="prefetch"><link href="/static/js/chunk-2d0c9189.c81458cc.js" rel="prefetch"><link href="/static/js/chunk-2d0cf391.020c75ea.js" rel="prefetch"><link href="/static/js/chunk-2d0da8f3.c8c3e7e8.js" rel="prefetch"><link href="/static/js/chunk-2d2248b6.d84473c1.js" rel="prefetch"><link href="/static/js/chunk-2d22523a.4b710d99.js" rel="prefetch"><link href="/static/js/profile.d25975e2.js" rel="prefetch"><link href="/static/js/reset.ca898ebe.js" rel="prefetch"><link href="/static/js/statistics.d03ca304.js" rel="prefetch"><link href="/static/js/workouts.37e2d33a.js" rel="prefetch"><link href="/static/css/app.af0fab25.css" rel="preload" as="style"><link href="/static/js/app.fa3ee1c1.js" rel="preload" as="script"><link href="/static/js/chunk-vendors.b837642f.js" rel="preload" as="script"><link href="/static/css/app.af0fab25.css" rel="stylesheet"><link rel="icon" type="image/png" sizes="32x32" href="/img/icons/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/img/icons/favicon-16x16.png"><link rel="manifest" href="/manifest.json"><meta name="theme-color" content="#4DBA87"><meta name="apple-mobile-web-app-capable" content="no"><meta name="apple-mobile-web-app-status-bar-style" content="default"><meta name="apple-mobile-web-app-title" content="fittrackee_client"><link rel="apple-touch-icon" href="/img/icons/apple-touch-icon-152x152.png"><link rel="mask-icon" href="/img/icons/safari-pinned-tab.svg" color="#4DBA87"><meta name="msapplication-TileImage" content="/img/icons/msapplication-icon-144x144.png"><meta name="msapplication-TileColor" content="#000000"></head><body><noscript><strong>We're sorry but FitTrackee doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="/static/js/chunk-vendors.b837642f.js"></script><script src="/static/js/app.fa3ee1c1.js"></script></body></html>
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><!--[if IE]><link rel="icon" href="/favicon.ico"><![endif]--><link rel="stylesheet" href="/static/css/fork-awesome.min.css"><link rel="stylesheet" href="/static/css/leaflet.css"><title>FitTrackee</title><link href="/static/css/admin.e77f8b26.css" rel="prefetch"><link href="/static/css/profile.8b668068.css" rel="prefetch"><link href="/static/css/reset.fc19709e.css" rel="prefetch"><link href="/static/css/statistics.2afdc8a9.css" rel="prefetch"><link href="/static/css/workouts.1bed04b1.css" rel="prefetch"><link href="/static/js/admin.5f46d0fe.js" rel="prefetch"><link href="/static/js/chunk-2d0c9189.c81458cc.js" rel="prefetch"><link href="/static/js/chunk-2d0cf391.020c75ea.js" rel="prefetch"><link href="/static/js/chunk-2d0da8f3.c8c3e7e8.js" rel="prefetch"><link href="/static/js/chunk-2d2248b6.d84473c1.js" rel="prefetch"><link href="/static/js/chunk-2d22523a.4b710d99.js" rel="prefetch"><link href="/static/js/profile.d25975e2.js" rel="prefetch"><link href="/static/js/reset.ca898ebe.js" rel="prefetch"><link href="/static/js/statistics.d03ca304.js" rel="prefetch"><link href="/static/js/workouts.ca40c08d.js" rel="prefetch"><link href="/static/css/app.2a651958.css" rel="preload" as="style"><link href="/static/js/app.b4ca8b9a.js" rel="preload" as="script"><link href="/static/js/chunk-vendors.9e32143c.js" rel="preload" as="script"><link href="/static/css/app.2a651958.css" rel="stylesheet"><link rel="icon" type="image/png" sizes="32x32" href="/img/icons/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/img/icons/favicon-16x16.png"><link rel="manifest" href="/manifest.json"><meta name="theme-color" content="#4DBA87"><meta name="apple-mobile-web-app-capable" content="no"><meta name="apple-mobile-web-app-status-bar-style" content="default"><meta name="apple-mobile-web-app-title" content="fittrackee_client"><link rel="apple-touch-icon" href="/img/icons/apple-touch-icon-152x152.png"><link rel="mask-icon" href="/img/icons/safari-pinned-tab.svg" color="#4DBA87"><meta name="msapplication-TileImage" content="/img/icons/msapplication-icon-144x144.png"><meta name="msapplication-TileColor" content="#000000"></head><body><noscript><strong>We're sorry but FitTrackee doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="/static/js/chunk-vendors.9e32143c.js"></script><script src="/static/js/app.b4ca8b9a.js"></script></body></html>
|
@ -72,7 +72,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
|
||||
"url": "/img/workouts/start.svg"
|
||||
},
|
||||
{
|
||||
"revision": "e9074c535af74e7b85362dc2eb23feaa",
|
||||
"revision": "7057a7518a8d7dea7e36686fce63f90a",
|
||||
"url": "/index.html"
|
||||
},
|
||||
{
|
||||
@ -88,8 +88,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
|
||||
"url": "/static/css/admin.e77f8b26.css"
|
||||
},
|
||||
{
|
||||
"revision": "4d38944ec60644a91359",
|
||||
"url": "/static/css/app.af0fab25.css"
|
||||
"revision": "2bb508df8ba5c7d7dae2",
|
||||
"url": "/static/css/app.2a651958.css"
|
||||
},
|
||||
{
|
||||
"revision": "82c1118c918377daaa71a320ab8eea42",
|
||||
@ -112,8 +112,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
|
||||
"url": "/static/css/statistics.2afdc8a9.css"
|
||||
},
|
||||
{
|
||||
"revision": "5cad43c771a5e97d7b9f",
|
||||
"url": "/static/css/workouts.67711f5b.css"
|
||||
"revision": "4fe9e93fc76c94cbb529",
|
||||
"url": "/static/css/workouts.1bed04b1.css"
|
||||
},
|
||||
{
|
||||
"revision": "e719f9244c69e28e7d00e725ca1e280e",
|
||||
@ -200,8 +200,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
|
||||
"url": "/static/js/admin.5f46d0fe.js"
|
||||
},
|
||||
{
|
||||
"revision": "4d38944ec60644a91359",
|
||||
"url": "/static/js/app.fa3ee1c1.js"
|
||||
"revision": "2bb508df8ba5c7d7dae2",
|
||||
"url": "/static/js/app.b4ca8b9a.js"
|
||||
},
|
||||
{
|
||||
"revision": "bd7d183c9f68e5f4027d",
|
||||
@ -224,8 +224,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
|
||||
"url": "/static/js/chunk-2d22523a.4b710d99.js"
|
||||
},
|
||||
{
|
||||
"revision": "47ba7e29b140bfa35ca2",
|
||||
"url": "/static/js/chunk-vendors.b837642f.js"
|
||||
"revision": "5d586e72e98e86692a20",
|
||||
"url": "/static/js/chunk-vendors.9e32143c.js"
|
||||
},
|
||||
{
|
||||
"revision": "00382d944a1bc6fca08b",
|
||||
@ -240,7 +240,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
|
||||
"url": "/static/js/statistics.d03ca304.js"
|
||||
},
|
||||
{
|
||||
"revision": "5cad43c771a5e97d7b9f",
|
||||
"url": "/static/js/workouts.37e2d33a.js"
|
||||
"revision": "4fe9e93fc76c94cbb529",
|
||||
"url": "/static/js/workouts.ca40c08d.js"
|
||||
}
|
||||
]);
|
2
fittrackee/dist/service-worker.js
vendored
@ -14,7 +14,7 @@
|
||||
importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js");
|
||||
|
||||
importScripts(
|
||||
"/precache-manifest.4c3ddd8ed58b696f421593da733c0eb0.js"
|
||||
"/precache-manifest.52d5b42c4dad9b2fb5fdfae14e5703bb.js"
|
||||
);
|
||||
|
||||
workbox.core.setCacheNameDetails({prefix: "fittrackee_client"});
|
||||
|
1
fittrackee/dist/static/js/app.b4ca8b9a.js.map
vendored
Normal file
61
fittrackee/dist/static/js/chunk-vendors.9e32143c.js
vendored
Normal file
1
fittrackee/dist/static/js/chunk-vendors.9e32143c.js.map
vendored
Normal file
2
fittrackee/dist/static/js/workouts.ca40c08d.js
vendored
Normal file
1
fittrackee/dist/static/js/workouts.ca40c08d.js.map
vendored
Normal file
@ -0,0 +1,34 @@
|
||||
"""add missing indexes on Workout table
|
||||
|
||||
Revision ID: e30007d681cb
|
||||
Revises: ed409fd9db9d
|
||||
Create Date: 2022-02-05 11:52:23.847975
|
||||
|
||||
"""
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = 'e30007d681cb'
|
||||
down_revision = 'ed409fd9db9d'
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
op.create_index(op.f('ix_workouts_map_id'), 'workouts', ['map_id'], unique=False)
|
||||
op.create_index(op.f('ix_workouts_sport_id'), 'workouts', ['sport_id'], unique=False)
|
||||
op.create_index(op.f('ix_workouts_user_id'), 'workouts', ['user_id'], unique=False)
|
||||
op.create_index(op.f('ix_workouts_workout_date'), 'workouts', ['workout_date'], unique=False)
|
||||
# ### end Alembic commands ###
|
||||
|
||||
|
||||
def downgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
op.drop_index(op.f('ix_workouts_workout_date'), table_name='workouts')
|
||||
op.drop_index(op.f('ix_workouts_user_id'), table_name='workouts')
|
||||
op.drop_index(op.f('ix_workouts_sport_id'), table_name='workouts')
|
||||
op.drop_index(op.f('ix_workouts_map_id'), table_name='workouts')
|
||||
# ### end Alembic commands ###
|
@ -593,13 +593,13 @@ class TestGetWorkoutsWithFilters(ApiTestCaseMixin):
|
||||
'Fri, 23 Feb 2018 00:00:00 GMT'
|
||||
== data['data']['workouts'][0]['workout_date']
|
||||
)
|
||||
assert '0:10:00' == data['data']['workouts'][0]['duration']
|
||||
assert '0:16:40' == data['data']['workouts'][0]['duration']
|
||||
assert 'creation_date' in data['data']['workouts'][1]
|
||||
assert (
|
||||
'Fri, 23 Feb 2018 00:00:00 GMT'
|
||||
== data['data']['workouts'][1]['workout_date']
|
||||
)
|
||||
assert '0:16:40' == data['data']['workouts'][1]['duration']
|
||||
assert '0:10:00' == data['data']['workouts'][1]['duration']
|
||||
assert data['pagination'] == {
|
||||
'has_next': False,
|
||||
'has_prev': False,
|
||||
|
@ -34,10 +34,14 @@ class User(BaseModel):
|
||||
# does the week start Monday?
|
||||
weekm = db.Column(db.Boolean(50), default=False, nullable=False)
|
||||
workouts = db.relationship(
|
||||
'Workout', lazy=True, backref=db.backref('user', lazy='joined')
|
||||
'Workout',
|
||||
lazy=True,
|
||||
backref=db.backref('user', lazy='joined', single_parent=True),
|
||||
)
|
||||
records = db.relationship(
|
||||
'Record', lazy=True, backref=db.backref('user', lazy='joined')
|
||||
'Record',
|
||||
lazy=True,
|
||||
backref=db.backref('user', lazy='joined', single_parent=True),
|
||||
)
|
||||
language = db.Column(db.String(50), nullable=True)
|
||||
imperial_units = db.Column(db.Boolean, default=False, nullable=False)
|
||||
|
@ -73,10 +73,14 @@ class Sport(BaseModel):
|
||||
is_active = db.Column(db.Boolean, default=True, nullable=False)
|
||||
stopped_speed_threshold = db.Column(db.Float, default=1.0, nullable=False)
|
||||
workouts = db.relationship(
|
||||
'Workout', lazy=True, backref=db.backref('sports', lazy='joined')
|
||||
'Workout',
|
||||
lazy=True,
|
||||
backref=db.backref('sport', lazy='joined', single_parent=True),
|
||||
)
|
||||
records = db.relationship(
|
||||
'Record', lazy=True, backref=db.backref('sports', lazy='joined')
|
||||
'Record',
|
||||
lazy=True,
|
||||
backref=db.backref('sport', lazy='joined', single_parent=True),
|
||||
)
|
||||
|
||||
def __repr__(self) -> str:
|
||||
@ -124,9 +128,11 @@ class Workout(BaseModel):
|
||||
unique=True,
|
||||
nullable=False,
|
||||
)
|
||||
user_id = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=False)
|
||||
user_id = db.Column(
|
||||
db.Integer, db.ForeignKey('users.id'), index=True, nullable=False
|
||||
)
|
||||
sport_id = db.Column(
|
||||
db.Integer, db.ForeignKey('sports.id'), nullable=False
|
||||
db.Integer, db.ForeignKey('sports.id'), index=True, nullable=False
|
||||
)
|
||||
title = db.Column(db.String(255), nullable=True)
|
||||
gpx = db.Column(db.String(255), nullable=True)
|
||||
@ -134,7 +140,7 @@ class Workout(BaseModel):
|
||||
modification_date = db.Column(
|
||||
db.DateTime, onupdate=datetime.datetime.utcnow
|
||||
)
|
||||
workout_date = db.Column(db.DateTime, nullable=False)
|
||||
workout_date = db.Column(db.DateTime, index=True, nullable=False)
|
||||
duration = db.Column(db.Interval, nullable=False)
|
||||
pauses = db.Column(db.Interval, nullable=True)
|
||||
moving = db.Column(db.Interval, nullable=True)
|
||||
@ -147,7 +153,7 @@ class Workout(BaseModel):
|
||||
ave_speed = db.Column(db.Numeric(6, 2), nullable=True) # km/h
|
||||
bounds = db.Column(postgresql.ARRAY(db.Float), nullable=True)
|
||||
map = db.Column(db.String(255), nullable=True)
|
||||
map_id = db.Column(db.String(50), nullable=True)
|
||||
map_id = db.Column(db.String(50), index=True, nullable=True)
|
||||
weather_start = db.Column(JSON, nullable=True)
|
||||
weather_end = db.Column(JSON, nullable=True)
|
||||
notes = db.Column(db.String(500), nullable=True)
|
||||
@ -155,17 +161,17 @@ class Workout(BaseModel):
|
||||
'WorkoutSegment',
|
||||
lazy=True,
|
||||
cascade='all, delete',
|
||||
backref=db.backref('workouts', lazy='joined', single_parent=True),
|
||||
backref=db.backref('workout', lazy='joined', single_parent=True),
|
||||
)
|
||||
records = db.relationship(
|
||||
'Record',
|
||||
lazy=True,
|
||||
cascade='all, delete',
|
||||
backref=db.backref('workouts', lazy='joined', single_parent=True),
|
||||
backref=db.backref('workout', lazy='joined', single_parent=True),
|
||||
)
|
||||
|
||||
def __str__(self) -> str:
|
||||
return f'<Workout \'{self.sports.label}\' - {self.workout_date}>'
|
||||
return f'<Workout \'{self.sport.label}\' - {self.workout_date}>'
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
@ -448,7 +454,7 @@ class Record(BaseModel):
|
||||
|
||||
def __str__(self) -> str:
|
||||
return (
|
||||
f'<Record {self.sports.label} - '
|
||||
f'<Record {self.sport.label} - '
|
||||
f'{self.record_type} - '
|
||||
f"{self.workout_date.strftime('%Y-%m-%d')}>"
|
||||
)
|
||||
@ -501,7 +507,7 @@ def on_record_delete(
|
||||
) -> None:
|
||||
@listens_for(db.Session, 'after_flush', once=True)
|
||||
def receive_after_flush(session: Session, context: Any) -> None:
|
||||
workout = old_record.workouts
|
||||
workout = old_record.workout
|
||||
new_records = Workout.get_user_workout_records(
|
||||
workout.user_id, workout.sport_id
|
||||
)
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "fittrackee_client",
|
||||
"version": "0.5.5",
|
||||
"version": "0.5.6",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"serve": "vue-cli-service serve",
|
||||
@ -13,16 +13,16 @@
|
||||
"dependencies": {
|
||||
"@tmcw/togeojson": "^4.5.0",
|
||||
"@vue-leaflet/vue-leaflet": "^0.6.1",
|
||||
"axios": "^0.24.0",
|
||||
"axios": "^0.25.0",
|
||||
"chart.js": "^3.7.0",
|
||||
"chartjs-plugin-datalabels": "^2.0.0",
|
||||
"core-js": "^3.20.3",
|
||||
"core-js": "^3.21.0",
|
||||
"date-fns": "^2.28.0",
|
||||
"date-fns-tz": "^1.2.2",
|
||||
"leaflet": "^1.7.1",
|
||||
"register-service-worker": "^1.7.1",
|
||||
"vue": "^3.0.0",
|
||||
"vue-chart-3": "^3.0.7",
|
||||
"vue-chart-3": "^3.0.9",
|
||||
"vue-fullscreen": "^3.1.1",
|
||||
"vue-i18n": "^9.1.9",
|
||||
"vue-router": "^4.0.0-0",
|
||||
@ -31,7 +31,7 @@
|
||||
"devDependencies": {
|
||||
"@intlify/vue-i18n-loader": "^4.0.1",
|
||||
"@types/chai": "^4.2.11",
|
||||
"@types/mocha": "^9.0.0",
|
||||
"@types/mocha": "^9.1.0",
|
||||
"@typescript-eslint/eslint-plugin": "^4.18.0",
|
||||
"@typescript-eslint/parser": "^4.18.0",
|
||||
"@vue/cli-plugin-babel": "~4.5.0",
|
||||
@ -45,7 +45,7 @@
|
||||
"@vue/eslint-config-prettier": "^6.0.0",
|
||||
"@vue/eslint-config-typescript": "^7.0.0",
|
||||
"@vue/test-utils": "^2.0.0-0",
|
||||
"chai": "^4.1.2",
|
||||
"chai": "^4.3.6",
|
||||
"eslint": "^6.7.2",
|
||||
"eslint-import-resolver-typescript": "^2.4.0",
|
||||
"eslint-plugin-import": "^2.24.1",
|
||||
|
@ -72,7 +72,7 @@
|
||||
|
||||
<div class="form-items-group">
|
||||
<div class="form-item">
|
||||
<label> {{ $t('workouts.DURATION') }} ({{ toUnit }}): </label>
|
||||
<label> {{ $t('workouts.DURATION') }}: </label>
|
||||
<div class="form-inputs-group">
|
||||
<input
|
||||
name="duration_from"
|
||||
@ -97,7 +97,7 @@
|
||||
|
||||
<div class="form-items-group">
|
||||
<div class="form-item">
|
||||
<label> {{ $t('workouts.AVE_SPEED') }} ({{ toUnit }}): </label>
|
||||
<label> {{ $t('workouts.AVE_SPEED') }} ({{ toUnit }}/h): </label>
|
||||
<div class="form-inputs-group">
|
||||
<input
|
||||
min="0"
|
||||
@ -122,7 +122,7 @@
|
||||
|
||||
<div class="form-items-group">
|
||||
<div class="form-item">
|
||||
<label> {{ $t('workouts.MAX_SPEED') }} ({{ toUnit }}): </label>
|
||||
<label> {{ $t('workouts.MAX_SPEED') }} ({{ toUnit }}/h): </label>
|
||||
|
||||
<div class="form-inputs-group">
|
||||
<input
|
||||
|
442
poetry.lock
generated
@ -8,7 +8,7 @@ python-versions = "*"
|
||||
|
||||
[[package]]
|
||||
name = "alembic"
|
||||
version = "1.7.5"
|
||||
version = "1.7.6"
|
||||
description = "A database migration tool for SQLAlchemy."
|
||||
category = "main"
|
||||
optional = false
|
||||
@ -82,29 +82,25 @@ typecheck = ["mypy"]
|
||||
|
||||
[[package]]
|
||||
name = "black"
|
||||
version = "21.12b0"
|
||||
version = "22.1.0"
|
||||
description = "The uncompromising code formatter."
|
||||
category = "dev"
|
||||
optional = false
|
||||
python-versions = ">=3.6.2"
|
||||
|
||||
[package.dependencies]
|
||||
click = ">=7.1.2"
|
||||
click = ">=8.0.0"
|
||||
mypy-extensions = ">=0.4.3"
|
||||
pathspec = ">=0.9.0,<1"
|
||||
pathspec = ">=0.9.0"
|
||||
platformdirs = ">=2"
|
||||
tomli = ">=0.2.6,<2.0.0"
|
||||
tomli = ">=1.1.0"
|
||||
typed-ast = {version = ">=1.4.2", markers = "python_version < \"3.8\" and implementation_name == \"cpython\""}
|
||||
typing-extensions = [
|
||||
{version = ">=3.10.0.0", markers = "python_version < \"3.10\""},
|
||||
{version = "!=3.10.0.1", markers = "python_version >= \"3.10\""},
|
||||
]
|
||||
typing-extensions = {version = ">=3.10.0.0", markers = "python_version < \"3.10\""}
|
||||
|
||||
[package.extras]
|
||||
colorama = ["colorama (>=0.4.3)"]
|
||||
d = ["aiohttp (>=3.7.4)"]
|
||||
jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"]
|
||||
python2 = ["typed-ast (>=1.4.3)"]
|
||||
uvloop = ["uvloop (>=0.15.2)"]
|
||||
|
||||
[[package]]
|
||||
@ -128,7 +124,7 @@ pycparser = "*"
|
||||
|
||||
[[package]]
|
||||
name = "charset-normalizer"
|
||||
version = "2.0.10"
|
||||
version = "2.0.11"
|
||||
description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet."
|
||||
category = "main"
|
||||
optional = false
|
||||
@ -170,11 +166,11 @@ test = ["flake8 (==3.7.8)", "hypothesis (==3.55.3)"]
|
||||
|
||||
[[package]]
|
||||
name = "coverage"
|
||||
version = "6.2"
|
||||
version = "6.3.1"
|
||||
description = "Code coverage measurement for Python"
|
||||
category = "dev"
|
||||
optional = false
|
||||
python-versions = ">=3.6"
|
||||
python-versions = ">=3.7"
|
||||
|
||||
[package.dependencies]
|
||||
tomli = {version = "*", optional = true, markers = "extra == \"toml\""}
|
||||
@ -225,7 +221,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
|
||||
|
||||
[[package]]
|
||||
name = "dramatiq"
|
||||
version = "1.12.2"
|
||||
version = "1.12.3"
|
||||
description = "Background Processing for Python 3."
|
||||
category = "main"
|
||||
optional = false
|
||||
@ -236,8 +232,8 @@ prometheus-client = ">=0.2"
|
||||
redis = {version = ">=2.0,<5.0", optional = true, markers = "extra == \"redis\""}
|
||||
|
||||
[package.extras]
|
||||
all = ["watchdog-gevent", "redis (>=2.0,<5.0)", "watchdog", "pylibmc (>=1.5,<2.0)", "pika (>=1.0,<2.0)", "gevent (>=1.1)"]
|
||||
dev = ["watchdog-gevent", "redis (>=2.0,<5.0)", "watchdog", "pylibmc (>=1.5,<2.0)", "pika (>=1.0,<2.0)", "gevent (>=1.1)", "alabaster", "sphinx (<1.8)", "sphinxcontrib-napoleon", "flake8", "flake8-bugbear", "flake8-quotes", "isort", "bumpversion", "hiredis", "twine", "wheel", "pytest", "pytest-benchmark", "pytest-cov", "tox"]
|
||||
all = ["gevent (>=1.1)", "redis (>=2.0,<5.0)", "watchdog", "pika (>=1.0,<2.0)", "watchdog-gevent", "pylibmc (>=1.5,<2.0)"]
|
||||
dev = ["gevent (>=1.1)", "redis (>=2.0,<5.0)", "watchdog", "pika (>=1.0,<2.0)", "watchdog-gevent", "pylibmc (>=1.5,<2.0)", "alabaster", "sphinx (<1.8)", "sphinxcontrib-napoleon", "flake8", "flake8-bugbear", "flake8-quotes", "isort", "bumpversion", "hiredis", "twine", "wheel", "pytest", "pytest-benchmark", "pytest-cov", "tox"]
|
||||
gevent = ["gevent (>=1.1)"]
|
||||
memcached = ["pylibmc (>=1.5,<2.0)"]
|
||||
rabbitmq = ["pika (>=1.0,<2.0)"]
|
||||
@ -370,15 +366,18 @@ tornado = ["tornado (>=0.2)"]
|
||||
|
||||
[[package]]
|
||||
name = "h11"
|
||||
version = "0.12.0"
|
||||
version = "0.13.0"
|
||||
description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1"
|
||||
category = "dev"
|
||||
optional = false
|
||||
python-versions = ">=3.6"
|
||||
|
||||
[package.dependencies]
|
||||
typing-extensions = {version = "*", markers = "python_version < \"3.8\""}
|
||||
|
||||
[[package]]
|
||||
name = "humanize"
|
||||
version = "3.13.1"
|
||||
version = "3.14.0"
|
||||
description = "Python humanize utilities"
|
||||
category = "main"
|
||||
optional = false
|
||||
@ -571,7 +570,7 @@ python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7"
|
||||
|
||||
[[package]]
|
||||
name = "pillow"
|
||||
version = "9.0.0"
|
||||
version = "9.0.1"
|
||||
description = "Python Imaging Library (Fork)"
|
||||
category = "main"
|
||||
optional = false
|
||||
@ -606,11 +605,11 @@ testing = ["pytest", "pytest-benchmark"]
|
||||
|
||||
[[package]]
|
||||
name = "prometheus-client"
|
||||
version = "0.12.0"
|
||||
version = "0.13.1"
|
||||
description = "Python client for the Prometheus monitoring system."
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
||||
python-versions = ">=3.6"
|
||||
|
||||
[package.extras]
|
||||
twisted = ["twisted"]
|
||||
@ -679,15 +678,14 @@ tests = ["pytest (>=6.0.0,<7.0.0)", "coverage[toml] (==5.0.4)"]
|
||||
|
||||
[[package]]
|
||||
name = "pyopenssl"
|
||||
version = "21.0.0"
|
||||
version = "22.0.0"
|
||||
description = "Python wrapper module around the OpenSSL library"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*"
|
||||
python-versions = ">=3.6"
|
||||
|
||||
[package.dependencies]
|
||||
cryptography = ">=3.3"
|
||||
six = ">=1.5.2"
|
||||
cryptography = ">=35.0"
|
||||
|
||||
[package.extras]
|
||||
docs = ["sphinx", "sphinx-rtd-theme"]
|
||||
@ -695,7 +693,7 @@ test = ["flaky", "pretend", "pytest (>=3.0.1)"]
|
||||
|
||||
[[package]]
|
||||
name = "pyparsing"
|
||||
version = "3.0.6"
|
||||
version = "3.0.7"
|
||||
description = "Python parsing module"
|
||||
category = "main"
|
||||
optional = false
|
||||
@ -706,7 +704,7 @@ diagrams = ["jinja2", "railroad-diagrams"]
|
||||
|
||||
[[package]]
|
||||
name = "pytest"
|
||||
version = "6.2.5"
|
||||
version = "7.0.0"
|
||||
description = "pytest: simple powerful testing with Python"
|
||||
category = "dev"
|
||||
optional = false
|
||||
@ -721,10 +719,10 @@ iniconfig = "*"
|
||||
packaging = "*"
|
||||
pluggy = ">=0.12,<2.0"
|
||||
py = ">=1.8.2"
|
||||
toml = "*"
|
||||
tomli = ">=1.0.0"
|
||||
|
||||
[package.extras]
|
||||
testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "requests", "xmlschema"]
|
||||
testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "xmlschema"]
|
||||
|
||||
[[package]]
|
||||
name = "pytest-base-url"
|
||||
@ -909,7 +907,7 @@ sphinx = ">=1.3.1"
|
||||
|
||||
[[package]]
|
||||
name = "redis"
|
||||
version = "4.1.0"
|
||||
version = "4.1.2"
|
||||
description = "Python client for Redis database and key-value store"
|
||||
category = "main"
|
||||
optional = false
|
||||
@ -918,11 +916,11 @@ python-versions = ">=3.6"
|
||||
[package.dependencies]
|
||||
deprecated = ">=1.2.3"
|
||||
importlib-metadata = {version = ">=1.0", markers = "python_version < \"3.8\""}
|
||||
packaging = ">=21.3"
|
||||
packaging = ">=20.4"
|
||||
|
||||
[package.extras]
|
||||
cryptography = ["cryptography (>=36.0.1)", "requests (>=2.26.0)"]
|
||||
hiredis = ["hiredis (>=1.0.0)"]
|
||||
ocsp = ["cryptography (>=36.0.1)", "pyopenssl (==20.0.1)", "requests (>=2.26.0)"]
|
||||
|
||||
[[package]]
|
||||
name = "requests"
|
||||
@ -944,19 +942,18 @@ use_chardet_on_py3 = ["chardet (>=3.0.2,<5)"]
|
||||
|
||||
[[package]]
|
||||
name = "responses"
|
||||
version = "0.17.0"
|
||||
version = "0.18.0"
|
||||
description = "A utility library for mocking out the `requests` Python library."
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
|
||||
python-versions = ">=3.7"
|
||||
|
||||
[package.dependencies]
|
||||
requests = ">=2.0"
|
||||
six = "*"
|
||||
requests = ">=2.0,<3.0"
|
||||
urllib3 = ">=1.25.10"
|
||||
|
||||
[package.extras]
|
||||
tests = ["coverage (>=3.7.1,<6.0.0)", "pytest-cov", "pytest-localserver", "flake8", "types-mock", "types-requests", "types-six", "pytest (>=4.6,<5.0)", "pytest (>=4.6)", "mypy"]
|
||||
tests = ["pytest (>=4.6)", "coverage (>=6.0.0)", "pytest-cov", "pytest-localserver", "flake8", "types-mock", "types-requests", "mypy"]
|
||||
|
||||
[[package]]
|
||||
name = "selenium"
|
||||
@ -1045,7 +1042,7 @@ test = ["pytest", "pytest-cov", "html5lib", "cython", "typed-ast"]
|
||||
|
||||
[[package]]
|
||||
name = "sphinx-bootstrap-theme"
|
||||
version = "0.8.0"
|
||||
version = "0.8.1"
|
||||
description = "Sphinx Bootstrap Theme."
|
||||
category = "dev"
|
||||
optional = false
|
||||
@ -1136,7 +1133,7 @@ test = ["pytest"]
|
||||
|
||||
[[package]]
|
||||
name = "sqlalchemy"
|
||||
version = "1.4.29"
|
||||
version = "1.4.31"
|
||||
description = "Database Abstraction Library"
|
||||
category = "main"
|
||||
optional = false
|
||||
@ -1203,11 +1200,11 @@ python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*"
|
||||
|
||||
[[package]]
|
||||
name = "tomli"
|
||||
version = "1.2.3"
|
||||
version = "2.0.0"
|
||||
description = "A lil' TOML parser"
|
||||
category = "dev"
|
||||
optional = false
|
||||
python-versions = ">=3.6"
|
||||
python-versions = ">=3.7"
|
||||
|
||||
[[package]]
|
||||
name = "tqdm"
|
||||
@ -1257,7 +1254,7 @@ wsproto = ">=0.14"
|
||||
|
||||
[[package]]
|
||||
name = "typed-ast"
|
||||
version = "1.5.1"
|
||||
version = "1.5.2"
|
||||
description = "a fork of Python 2 and 3 ast modules with type comment support"
|
||||
category = "dev"
|
||||
optional = false
|
||||
@ -1281,7 +1278,7 @@ python-versions = "*"
|
||||
|
||||
[[package]]
|
||||
name = "types-requests"
|
||||
version = "2.27.7"
|
||||
version = "2.27.8"
|
||||
description = "Typing stubs for requests"
|
||||
category = "dev"
|
||||
optional = false
|
||||
@ -1292,7 +1289,7 @@ types-urllib3 = "<1.27"
|
||||
|
||||
[[package]]
|
||||
name = "types-urllib3"
|
||||
version = "1.26.7"
|
||||
version = "1.26.9"
|
||||
description = "Typing stubs for urllib3"
|
||||
category = "dev"
|
||||
optional = false
|
||||
@ -1370,7 +1367,7 @@ testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-
|
||||
[metadata]
|
||||
lock-version = "1.1"
|
||||
python-versions = "^3.7"
|
||||
content-hash = "f8be91a50f95265356103db8cd67102218b0421ce89c5d5fd82b93d05f6d462c"
|
||||
content-hash = "efbc9200e445df97c991ac1e6b72873262c32e0f09b21dc682593fd5034686ab"
|
||||
|
||||
[metadata.files]
|
||||
alabaster = [
|
||||
@ -1378,8 +1375,8 @@ alabaster = [
|
||||
{file = "alabaster-0.7.12.tar.gz", hash = "sha256:a661d72d58e6ea8a57f7a86e37d86716863ee5e92788398526d58b26a4e4dc02"},
|
||||
]
|
||||
alembic = [
|
||||
{file = "alembic-1.7.5-py3-none-any.whl", hash = "sha256:a9dde941534e3d7573d9644e8ea62a2953541e27bc1793e166f60b777ae098b4"},
|
||||
{file = "alembic-1.7.5.tar.gz", hash = "sha256:7c328694a2e68f03ee971e63c3bd885846470373a5b532cf2c9f1601c413b153"},
|
||||
{file = "alembic-1.7.6-py3-none-any.whl", hash = "sha256:ad842f2c3ab5c5d4861232730779c05e33db4ba880a08b85eb505e87c01095bc"},
|
||||
{file = "alembic-1.7.6.tar.gz", hash = "sha256:6c0c05e9768a896d804387e20b299880fe01bc56484246b0dffe8075d6d3d847"},
|
||||
]
|
||||
async-generator = [
|
||||
{file = "async_generator-1.10-py3-none-any.whl", hash = "sha256:01c7bf666359b4967d2cda0000cc2e4af16a0ae098cbffcb8472fb9e8ad6585b"},
|
||||
@ -1407,8 +1404,29 @@ bcrypt = [
|
||||
{file = "bcrypt-3.2.0.tar.gz", hash = "sha256:5b93c1726e50a93a033c36e5ca7fdcd29a5c7395af50a6892f5d9e7c6cfbfb29"},
|
||||
]
|
||||
black = [
|
||||
{file = "black-21.12b0-py3-none-any.whl", hash = "sha256:a615e69ae185e08fdd73e4715e260e2479c861b5740057fde6e8b4e3b7dd589f"},
|
||||
{file = "black-21.12b0.tar.gz", hash = "sha256:77b80f693a569e2e527958459634f18df9b0ba2625ba4e0c2d5da5be42e6f2b3"},
|
||||
{file = "black-22.1.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:1297c63b9e1b96a3d0da2d85d11cd9bf8664251fd69ddac068b98dc4f34f73b6"},
|
||||
{file = "black-22.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:2ff96450d3ad9ea499fc4c60e425a1439c2120cbbc1ab959ff20f7c76ec7e866"},
|
||||
{file = "black-22.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0e21e1f1efa65a50e3960edd068b6ae6d64ad6235bd8bfea116a03b21836af71"},
|
||||
{file = "black-22.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e2f69158a7d120fd641d1fa9a921d898e20d52e44a74a6fbbcc570a62a6bc8ab"},
|
||||
{file = "black-22.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:228b5ae2c8e3d6227e4bde5920d2fc66cc3400fde7bcc74f480cb07ef0b570d5"},
|
||||
{file = "black-22.1.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:b1a5ed73ab4c482208d20434f700d514f66ffe2840f63a6252ecc43a9bc77e8a"},
|
||||
{file = "black-22.1.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:35944b7100af4a985abfcaa860b06af15590deb1f392f06c8683b4381e8eeaf0"},
|
||||
{file = "black-22.1.0-cp36-cp36m-win_amd64.whl", hash = "sha256:7835fee5238fc0a0baf6c9268fb816b5f5cd9b8793423a75e8cd663c48d073ba"},
|
||||
{file = "black-22.1.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:dae63f2dbf82882fa3b2a3c49c32bffe144970a573cd68d247af6560fc493ae1"},
|
||||
{file = "black-22.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5fa1db02410b1924b6749c245ab38d30621564e658297484952f3d8a39fce7e8"},
|
||||
{file = "black-22.1.0-cp37-cp37m-win_amd64.whl", hash = "sha256:c8226f50b8c34a14608b848dc23a46e5d08397d009446353dad45e04af0c8e28"},
|
||||
{file = "black-22.1.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:2d6f331c02f0f40aa51a22e479c8209d37fcd520c77721c034517d44eecf5912"},
|
||||
{file = "black-22.1.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:742ce9af3086e5bd07e58c8feb09dbb2b047b7f566eb5f5bc63fd455814979f3"},
|
||||
{file = "black-22.1.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:fdb8754b453fb15fad3f72cd9cad3e16776f0964d67cf30ebcbf10327a3777a3"},
|
||||
{file = "black-22.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5660feab44c2e3cb24b2419b998846cbb01c23c7fe645fee45087efa3da2d61"},
|
||||
{file = "black-22.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:6f2f01381f91c1efb1451998bd65a129b3ed6f64f79663a55fe0e9b74a5f81fd"},
|
||||
{file = "black-22.1.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:efbadd9b52c060a8fc3b9658744091cb33c31f830b3f074422ed27bad2b18e8f"},
|
||||
{file = "black-22.1.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8871fcb4b447206904932b54b567923e5be802b9b19b744fdff092bd2f3118d0"},
|
||||
{file = "black-22.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ccad888050f5393f0d6029deea2a33e5ae371fd182a697313bdbd835d3edaf9c"},
|
||||
{file = "black-22.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:07e5c049442d7ca1a2fc273c79d1aecbbf1bc858f62e8184abe1ad175c4f7cc2"},
|
||||
{file = "black-22.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:373922fc66676133ddc3e754e4509196a8c392fec3f5ca4486673e685a421321"},
|
||||
{file = "black-22.1.0-py3-none-any.whl", hash = "sha256:3524739d76b6b3ed1132422bf9d82123cd1705086723bc3e235ca39fd21c667d"},
|
||||
{file = "black-22.1.0.tar.gz", hash = "sha256:a7c0192d35635f6fc1174be575cb7915e92e5dd629ee79fdaf0dcfa41a80afb5"},
|
||||
]
|
||||
certifi = [
|
||||
{file = "certifi-2021.10.8-py2.py3-none-any.whl", hash = "sha256:d62a0163eb4c2344ac042ab2bdf75399a71a2d8c7d47eac2e2ee91b9d6339569"},
|
||||
@ -1467,8 +1485,8 @@ cffi = [
|
||||
{file = "cffi-1.15.0.tar.gz", hash = "sha256:920f0d66a896c2d99f0adbb391f990a84091179542c205fa53ce5787aff87954"},
|
||||
]
|
||||
charset-normalizer = [
|
||||
{file = "charset-normalizer-2.0.10.tar.gz", hash = "sha256:876d180e9d7432c5d1dfd4c5d26b72f099d503e8fcc0feb7532c9289be60fcbd"},
|
||||
{file = "charset_normalizer-2.0.10-py3-none-any.whl", hash = "sha256:cb957888737fc0bbcd78e3df769addb41fd1ff8cf950dc9e7ad7793f1bf44455"},
|
||||
{file = "charset-normalizer-2.0.11.tar.gz", hash = "sha256:98398a9d69ee80548c762ba991a4728bfc3836768ed226b3945908d1a688371c"},
|
||||
{file = "charset_normalizer-2.0.11-py3-none-any.whl", hash = "sha256:2842d8f5e82a1f6aa437380934d5e1cd4fcf2003b06fed6940769c164a480a45"},
|
||||
]
|
||||
click = [
|
||||
{file = "click-8.0.3-py3-none-any.whl", hash = "sha256:353f466495adaeb40b6b5f592f9f91cb22372351c84caeb068132442a4518ef3"},
|
||||
@ -1483,53 +1501,47 @@ commonmark = [
|
||||
{file = "commonmark-0.9.1.tar.gz", hash = "sha256:452f9dc859be7f06631ddcb328b6919c67984aca654e5fefb3914d54691aed60"},
|
||||
]
|
||||
coverage = [
|
||||
{file = "coverage-6.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6dbc1536e105adda7a6312c778f15aaabe583b0e9a0b0a324990334fd458c94b"},
|
||||
{file = "coverage-6.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:174cf9b4bef0db2e8244f82059a5a72bd47e1d40e71c68ab055425172b16b7d0"},
|
||||
{file = "coverage-6.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:92b8c845527eae547a2a6617d336adc56394050c3ed8a6918683646328fbb6da"},
|
||||
{file = "coverage-6.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c7912d1526299cb04c88288e148c6c87c0df600eca76efd99d84396cfe00ef1d"},
|
||||
{file = "coverage-6.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d5d2033d5db1d58ae2d62f095e1aefb6988af65b4b12cb8987af409587cc0739"},
|
||||
{file = "coverage-6.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:3feac4084291642165c3a0d9eaebedf19ffa505016c4d3db15bfe235718d4971"},
|
||||
{file = "coverage-6.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:276651978c94a8c5672ea60a2656e95a3cce2a3f31e9fb2d5ebd4c215d095840"},
|
||||
{file = "coverage-6.2-cp310-cp310-win32.whl", hash = "sha256:f506af4f27def639ba45789fa6fde45f9a217da0be05f8910458e4557eed020c"},
|
||||
{file = "coverage-6.2-cp310-cp310-win_amd64.whl", hash = "sha256:3f7c17209eef285c86f819ff04a6d4cbee9b33ef05cbcaae4c0b4e8e06b3ec8f"},
|
||||
{file = "coverage-6.2-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:13362889b2d46e8d9f97c421539c97c963e34031ab0cb89e8ca83a10cc71ac76"},
|
||||
{file = "coverage-6.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:22e60a3ca5acba37d1d4a2ee66e051f5b0e1b9ac950b5b0cf4aa5366eda41d47"},
|
||||
{file = "coverage-6.2-cp311-cp311-win_amd64.whl", hash = "sha256:b637c57fdb8be84e91fac60d9325a66a5981f8086c954ea2772efe28425eaf64"},
|
||||
{file = "coverage-6.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f467bbb837691ab5a8ca359199d3429a11a01e6dfb3d9dcc676dc035ca93c0a9"},
|
||||
{file = "coverage-6.2-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2641f803ee9f95b1f387f3e8f3bf28d83d9b69a39e9911e5bfee832bea75240d"},
|
||||
{file = "coverage-6.2-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:1219d760ccfafc03c0822ae2e06e3b1248a8e6d1a70928966bafc6838d3c9e48"},
|
||||
{file = "coverage-6.2-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:9a2b5b52be0a8626fcbffd7e689781bf8c2ac01613e77feda93d96184949a98e"},
|
||||
{file = "coverage-6.2-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:8e2c35a4c1f269704e90888e56f794e2d9c0262fb0c1b1c8c4ee44d9b9e77b5d"},
|
||||
{file = "coverage-6.2-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:5d6b09c972ce9200264c35a1d53d43ca55ef61836d9ec60f0d44273a31aa9f17"},
|
||||
{file = "coverage-6.2-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:e3db840a4dee542e37e09f30859f1612da90e1c5239a6a2498c473183a50e781"},
|
||||
{file = "coverage-6.2-cp36-cp36m-win32.whl", hash = "sha256:4e547122ca2d244f7c090fe3f4b5a5861255ff66b7ab6d98f44a0222aaf8671a"},
|
||||
{file = "coverage-6.2-cp36-cp36m-win_amd64.whl", hash = "sha256:01774a2c2c729619760320270e42cd9e797427ecfddd32c2a7b639cdc481f3c0"},
|
||||
{file = "coverage-6.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:fb8b8ee99b3fffe4fd86f4c81b35a6bf7e4462cba019997af2fe679365db0c49"},
|
||||
{file = "coverage-6.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:619346d57c7126ae49ac95b11b0dc8e36c1dd49d148477461bb66c8cf13bb521"},
|
||||
{file = "coverage-6.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0a7726f74ff63f41e95ed3a89fef002916c828bb5fcae83b505b49d81a066884"},
|
||||
{file = "coverage-6.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:cfd9386c1d6f13b37e05a91a8583e802f8059bebfccde61a418c5808dea6bbfa"},
|
||||
{file = "coverage-6.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:17e6c11038d4ed6e8af1407d9e89a2904d573be29d51515f14262d7f10ef0a64"},
|
||||
{file = "coverage-6.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c254b03032d5a06de049ce8bca8338a5185f07fb76600afff3c161e053d88617"},
|
||||
{file = "coverage-6.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:dca38a21e4423f3edb821292e97cec7ad38086f84313462098568baedf4331f8"},
|
||||
{file = "coverage-6.2-cp37-cp37m-win32.whl", hash = "sha256:600617008aa82032ddeace2535626d1bc212dfff32b43989539deda63b3f36e4"},
|
||||
{file = "coverage-6.2-cp37-cp37m-win_amd64.whl", hash = "sha256:bf154ba7ee2fd613eb541c2bc03d3d9ac667080a737449d1a3fb342740eb1a74"},
|
||||
{file = "coverage-6.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f9afb5b746781fc2abce26193d1c817b7eb0e11459510fba65d2bd77fe161d9e"},
|
||||
{file = "coverage-6.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:edcada2e24ed68f019175c2b2af2a8b481d3d084798b8c20d15d34f5c733fa58"},
|
||||
{file = "coverage-6.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:a9c8c4283e17690ff1a7427123ffb428ad6a52ed720d550e299e8291e33184dc"},
|
||||
{file = "coverage-6.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f614fc9956d76d8a88a88bb41ddc12709caa755666f580af3a688899721efecd"},
|
||||
{file = "coverage-6.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:9365ed5cce5d0cf2c10afc6add145c5037d3148585b8ae0e77cc1efdd6aa2953"},
|
||||
{file = "coverage-6.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8bdfe9ff3a4ea37d17f172ac0dff1e1c383aec17a636b9b35906babc9f0f5475"},
|
||||
{file = "coverage-6.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:63c424e6f5b4ab1cf1e23a43b12f542b0ec2e54f99ec9f11b75382152981df57"},
|
||||
{file = "coverage-6.2-cp38-cp38-win32.whl", hash = "sha256:49dbff64961bc9bdd2289a2bda6a3a5a331964ba5497f694e2cbd540d656dc1c"},
|
||||
{file = "coverage-6.2-cp38-cp38-win_amd64.whl", hash = "sha256:9a29311bd6429be317c1f3fe4bc06c4c5ee45e2fa61b2a19d4d1d6111cb94af2"},
|
||||
{file = "coverage-6.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:03b20e52b7d31be571c9c06b74746746d4eb82fc260e594dc662ed48145e9efd"},
|
||||
{file = "coverage-6.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:215f8afcc02a24c2d9a10d3790b21054b58d71f4b3c6f055d4bb1b15cecce685"},
|
||||
{file = "coverage-6.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:a4bdeb0a52d1d04123b41d90a4390b096f3ef38eee35e11f0b22c2d031222c6c"},
|
||||
{file = "coverage-6.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c332d8f8d448ded473b97fefe4a0983265af21917d8b0cdcb8bb06b2afe632c3"},
|
||||
{file = "coverage-6.2-cp39-cp39-win32.whl", hash = "sha256:6e1394d24d5938e561fbeaa0cd3d356207579c28bd1792f25a068743f2d5b282"},
|
||||
{file = "coverage-6.2-cp39-cp39-win_amd64.whl", hash = "sha256:86f2e78b1eff847609b1ca8050c9e1fa3bd44ce755b2ec30e70f2d3ba3844644"},
|
||||
{file = "coverage-6.2-pp36.pp37.pp38-none-any.whl", hash = "sha256:5829192582c0ec8ca4a2532407bc14c2f338d9878a10442f5d03804a95fac9de"},
|
||||
{file = "coverage-6.2.tar.gz", hash = "sha256:e2cad8093172b7d1595b4ad66f24270808658e11acf43a8f95b41276162eb5b8"},
|
||||
{file = "coverage-6.3.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:eeffd96882d8c06d31b65dddcf51db7c612547babc1c4c5db6a011abe9798525"},
|
||||
{file = "coverage-6.3.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:621f6ea7260ea2ffdaec64fe5cb521669984f567b66f62f81445221d4754df4c"},
|
||||
{file = "coverage-6.3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:84f2436d6742c01136dd940ee158bfc7cf5ced3da7e4c949662b8703b5cd8145"},
|
||||
{file = "coverage-6.3.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:de73fca6fb403dd72d4da517cfc49fcf791f74eee697d3219f6be29adf5af6ce"},
|
||||
{file = "coverage-6.3.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:78fbb2be068a13a5d99dce9e1e7d168db880870f7bc73f876152130575bd6167"},
|
||||
{file = "coverage-6.3.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f5a4551dfd09c3bd12fca8144d47fe7745275adf3229b7223c2f9e29a975ebda"},
|
||||
{file = "coverage-6.3.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7bff3a98f63b47464480de1b5bdd80c8fade0ba2832c9381253c9b74c4153c27"},
|
||||
{file = "coverage-6.3.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a06c358f4aed05fa1099c39decc8022261bb07dfadc127c08cfbd1391b09689e"},
|
||||
{file = "coverage-6.3.1-cp310-cp310-win32.whl", hash = "sha256:9fff3ff052922cb99f9e52f63f985d4f7a54f6b94287463bc66b7cdf3eb41217"},
|
||||
{file = "coverage-6.3.1-cp310-cp310-win_amd64.whl", hash = "sha256:276b13cc085474e482566c477c25ed66a097b44c6e77132f3304ac0b039f83eb"},
|
||||
{file = "coverage-6.3.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:56c4a409381ddd7bbff134e9756077860d4e8a583d310a6f38a2315b9ce301d0"},
|
||||
{file = "coverage-6.3.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9eb494070aa060ceba6e4bbf44c1bc5fa97bfb883a0d9b0c9049415f9e944793"},
|
||||
{file = "coverage-6.3.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5e15d424b8153756b7c903bde6d4610be0c3daca3986173c18dd5c1a1625e4cd"},
|
||||
{file = "coverage-6.3.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:61d47a897c1e91f33f177c21de897267b38fbb45f2cd8e22a710bcef1df09ac1"},
|
||||
{file = "coverage-6.3.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:25e73d4c81efa8ea3785274a2f7f3bfbbeccb6fcba2a0bdd3be9223371c37554"},
|
||||
{file = "coverage-6.3.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:fac0bcc5b7e8169bffa87f0dcc24435446d329cbc2b5486d155c2e0f3b493ae1"},
|
||||
{file = "coverage-6.3.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:72128176fea72012063200b7b395ed8a57849282b207321124d7ff14e26988e8"},
|
||||
{file = "coverage-6.3.1-cp37-cp37m-win32.whl", hash = "sha256:1bc6d709939ff262fd1432f03f080c5042dc6508b6e0d3d20e61dd045456a1a0"},
|
||||
{file = "coverage-6.3.1-cp37-cp37m-win_amd64.whl", hash = "sha256:618eeba986cea7f621d8607ee378ecc8c2504b98b3fdc4952b30fe3578304687"},
|
||||
{file = "coverage-6.3.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d5ed164af5c9078596cfc40b078c3b337911190d3faeac830c3f1274f26b8320"},
|
||||
{file = "coverage-6.3.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:352c68e233409c31048a3725c446a9e48bbff36e39db92774d4f2380d630d8f8"},
|
||||
{file = "coverage-6.3.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:448d7bde7ceb6c69e08474c2ddbc5b4cd13c9e4aa4a717467f716b5fc938a734"},
|
||||
{file = "coverage-6.3.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9fde6b90889522c220dd56a670102ceef24955d994ff7af2cb786b4ba8fe11e4"},
|
||||
{file = "coverage-6.3.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e647a0be741edbb529a72644e999acb09f2ad60465f80757da183528941ff975"},
|
||||
{file = "coverage-6.3.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6a5cdc3adb4f8bb8d8f5e64c2e9e282bc12980ef055ec6da59db562ee9bdfefa"},
|
||||
{file = "coverage-6.3.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:2dd70a167843b4b4b2630c0c56f1b586fe965b4f8ac5da05b6690344fd065c6b"},
|
||||
{file = "coverage-6.3.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9ad0a117b8dc2061ce9461ea4c1b4799e55edceb236522c5b8f958ce9ed8fa9a"},
|
||||
{file = "coverage-6.3.1-cp38-cp38-win32.whl", hash = "sha256:e92c7a5f7d62edff50f60a045dc9542bf939758c95b2fcd686175dd10ce0ed10"},
|
||||
{file = "coverage-6.3.1-cp38-cp38-win_amd64.whl", hash = "sha256:482fb42eea6164894ff82abbcf33d526362de5d1a7ed25af7ecbdddd28fc124f"},
|
||||
{file = "coverage-6.3.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c5b81fb37db76ebea79aa963b76d96ff854e7662921ce742293463635a87a78d"},
|
||||
{file = "coverage-6.3.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a4f923b9ab265136e57cc14794a15b9dcea07a9c578609cd5dbbfff28a0d15e6"},
|
||||
{file = "coverage-6.3.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56d296cbc8254a7dffdd7bcc2eb70be5a233aae7c01856d2d936f5ac4e8ac1f1"},
|
||||
{file = "coverage-6.3.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1245ab82e8554fa88c4b2ab1e098ae051faac5af829efdcf2ce6b34dccd5567c"},
|
||||
{file = "coverage-6.3.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3f2b05757c92ad96b33dbf8e8ec8d4ccb9af6ae3c9e9bd141c7cc44d20c6bcba"},
|
||||
{file = "coverage-6.3.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9e3dd806f34de38d4c01416344e98eab2437ac450b3ae39c62a0ede2f8b5e4ed"},
|
||||
{file = "coverage-6.3.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d651fde74a4d3122e5562705824507e2f5b2d3d57557f1916c4b27635f8fbe3f"},
|
||||
{file = "coverage-6.3.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:704f89b87c4f4737da2860695a18c852b78ec7279b24eedacab10b29067d3a38"},
|
||||
{file = "coverage-6.3.1-cp39-cp39-win32.whl", hash = "sha256:2aed4761809640f02e44e16b8b32c1a5dee5e80ea30a0ff0912158bde9c501f2"},
|
||||
{file = "coverage-6.3.1-cp39-cp39-win_amd64.whl", hash = "sha256:9976fb0a5709988778ac9bc44f3d50fccd989987876dfd7716dee28beed0a9fa"},
|
||||
{file = "coverage-6.3.1-pp36.pp37.pp38-none-any.whl", hash = "sha256:463e52616ea687fd323888e86bf25e864a3cc6335a043fad6bbb037dbf49bbe2"},
|
||||
{file = "coverage-6.3.1.tar.gz", hash = "sha256:6c3f6158b02ac403868eea390930ae64e9a9a2a5bbfafefbb920d29258d9f2f8"},
|
||||
]
|
||||
cryptography = [
|
||||
{file = "cryptography-36.0.1-cp36-abi3-macosx_10_10_universal2.whl", hash = "sha256:73bc2d3f2444bcfeac67dd130ff2ea598ea5f20b40e36d19821b4df8c9c5037b"},
|
||||
@ -1562,8 +1574,8 @@ docutils = [
|
||||
{file = "docutils-0.17.1.tar.gz", hash = "sha256:686577d2e4c32380bb50cbb22f575ed742d58168cee37e99117a854bcd88f125"},
|
||||
]
|
||||
dramatiq = [
|
||||
{file = "dramatiq-1.12.2-py3-none-any.whl", hash = "sha256:55eb8ba5a291c60f6feb13a54d8e0014fe57c1603f5ff3a380669e8434bd9e26"},
|
||||
{file = "dramatiq-1.12.2.tar.gz", hash = "sha256:d5d0036c37f2a6366b65b06581cb721cf14486511cac9c4250404885ef5bf454"},
|
||||
{file = "dramatiq-1.12.3-py3-none-any.whl", hash = "sha256:eccb0f54d44ebd9e2c79e00d67b808397589a1a621ba7c5fd58df5fb6204a0a8"},
|
||||
{file = "dramatiq-1.12.3.tar.gz", hash = "sha256:380bd77b6b19d642f417b642935049ff71ddf4b4e57d821e4f55b92541430f21"},
|
||||
]
|
||||
flake8 = [
|
||||
{file = "flake8-3.9.2-py2.py3-none-any.whl", hash = "sha256:bf8fd333346d844f616e8d47905ef3a3384edae6b4e9beb0c5101e25e3110907"},
|
||||
@ -1651,12 +1663,12 @@ gunicorn = [
|
||||
{file = "gunicorn-20.1.0.tar.gz", hash = "sha256:e0a968b5ba15f8a328fdfd7ab1fcb5af4470c28aaf7e55df02a99bc13138e6e8"},
|
||||
]
|
||||
h11 = [
|
||||
{file = "h11-0.12.0-py3-none-any.whl", hash = "sha256:36a3cb8c0a032f56e2da7084577878a035d3b61d104230d4bd49c0c6b555a9c6"},
|
||||
{file = "h11-0.12.0.tar.gz", hash = "sha256:47222cb6067e4a307d535814917cd98fd0a57b6788ce715755fa2b6c28b56042"},
|
||||
{file = "h11-0.13.0-py3-none-any.whl", hash = "sha256:8ddd78563b633ca55346c8cd41ec0af27d3c79931828beffb46ce70a379e7442"},
|
||||
{file = "h11-0.13.0.tar.gz", hash = "sha256:70813c1135087a248a4d38cc0e1a0181ffab2188141a93eaf567940c3957ff06"},
|
||||
]
|
||||
humanize = [
|
||||
{file = "humanize-3.13.1-py3-none-any.whl", hash = "sha256:a6f7cc1597db69a4e571ad5e19b4da07ee871da5a9de2b233dbfab02d98e9754"},
|
||||
{file = "humanize-3.13.1.tar.gz", hash = "sha256:12f113f2e369dac7f35d3823f49262934f4a22a53a6d3d4c86b736f50db88c7b"},
|
||||
{file = "humanize-3.14.0-py3-none-any.whl", hash = "sha256:32bcf712ac98ff5e73627a9d31e1ba5650619008d6d13543b5d53b48e8ab8d43"},
|
||||
{file = "humanize-3.14.0.tar.gz", hash = "sha256:60dd8c952b1df1ad83f0903844dec50a34ba7a04eea22a6b14204ffb62dbb0a4"},
|
||||
]
|
||||
idna = [
|
||||
{file = "idna-3.3-py3-none-any.whl", hash = "sha256:84d9dd047ffa80596e0f246e2eab0b391788b0503584e8945f2368256d2735ff"},
|
||||
@ -1773,38 +1785,41 @@ pathspec = [
|
||||
{file = "pathspec-0.9.0.tar.gz", hash = "sha256:e564499435a2673d586f6b2130bb5b95f04a3ba06f81b8f895b651a3c76aabb1"},
|
||||
]
|
||||
pillow = [
|
||||
{file = "Pillow-9.0.0-cp310-cp310-macosx_10_10_universal2.whl", hash = "sha256:113723312215b25c22df1fdf0e2da7a3b9c357a7d24a93ebbe80bfda4f37a8d4"},
|
||||
{file = "Pillow-9.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:bb47a548cea95b86494a26c89d153fd31122ed65255db5dcbc421a2d28eb3379"},
|
||||
{file = "Pillow-9.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:31b265496e603985fad54d52d11970383e317d11e18e856971bdbb86af7242a4"},
|
||||
{file = "Pillow-9.0.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d154ed971a4cc04b93a6d5b47f37948d1f621f25de3e8fa0c26b2d44f24e3e8f"},
|
||||
{file = "Pillow-9.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80fe92813d208ce8aa7d76da878bdc84b90809f79ccbad2a288e9bcbeac1d9bd"},
|
||||
{file = "Pillow-9.0.0-cp310-cp310-win32.whl", hash = "sha256:d5dcea1387331c905405b09cdbfb34611050cc52c865d71f2362f354faee1e9f"},
|
||||
{file = "Pillow-9.0.0-cp310-cp310-win_amd64.whl", hash = "sha256:52abae4c96b5da630a8b4247de5428f593465291e5b239f3f843a911a3cf0105"},
|
||||
{file = "Pillow-9.0.0-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:72c3110228944019e5f27232296c5923398496b28be42535e3b2dc7297b6e8b6"},
|
||||
{file = "Pillow-9.0.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:97b6d21771da41497b81652d44191489296555b761684f82b7b544c49989110f"},
|
||||
{file = "Pillow-9.0.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:72f649d93d4cc4d8cf79c91ebc25137c358718ad75f99e99e043325ea7d56100"},
|
||||
{file = "Pillow-9.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7aaf07085c756f6cb1c692ee0d5a86c531703b6e8c9cae581b31b562c16b98ce"},
|
||||
{file = "Pillow-9.0.0-cp37-cp37m-win32.whl", hash = "sha256:03b27b197deb4ee400ed57d8d4e572d2d8d80f825b6634daf6e2c18c3c6ccfa6"},
|
||||
{file = "Pillow-9.0.0-cp37-cp37m-win_amd64.whl", hash = "sha256:a09a9d4ec2b7887f7a088bbaacfd5c07160e746e3d47ec5e8050ae3b2a229e9f"},
|
||||
{file = "Pillow-9.0.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:490e52e99224858f154975db61c060686df8a6b3f0212a678e5d2e2ce24675c9"},
|
||||
{file = "Pillow-9.0.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:500d397ddf4bbf2ca42e198399ac13e7841956c72645513e8ddf243b31ad2128"},
|
||||
{file = "Pillow-9.0.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ebd8b9137630a7bbbff8c4b31e774ff05bbb90f7911d93ea2c9371e41039b52"},
|
||||
{file = "Pillow-9.0.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fd0e5062f11cb3e730450a7d9f323f4051b532781026395c4323b8ad055523c4"},
|
||||
{file = "Pillow-9.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9f3b4522148586d35e78313db4db0df4b759ddd7649ef70002b6c3767d0fdeb7"},
|
||||
{file = "Pillow-9.0.0-cp38-cp38-win32.whl", hash = "sha256:0b281fcadbb688607ea6ece7649c5d59d4bbd574e90db6cd030e9e85bde9fecc"},
|
||||
{file = "Pillow-9.0.0-cp38-cp38-win_amd64.whl", hash = "sha256:b5050d681bcf5c9f2570b93bee5d3ec8ae4cf23158812f91ed57f7126df91762"},
|
||||
{file = "Pillow-9.0.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:c2067b3bb0781f14059b112c9da5a91c80a600a97915b4f48b37f197895dd925"},
|
||||
{file = "Pillow-9.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2d16b6196fb7a54aff6b5e3ecd00f7c0bab1b56eee39214b2b223a9d938c50af"},
|
||||
{file = "Pillow-9.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:98cb63ca63cb61f594511c06218ab4394bf80388b3d66cd61d0b1f63ee0ea69f"},
|
||||
{file = "Pillow-9.0.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bc462d24500ba707e9cbdef436c16e5c8cbf29908278af053008d9f689f56dee"},
|
||||
{file = "Pillow-9.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3586e12d874ce2f1bc875a3ffba98732ebb12e18fb6d97be482bd62b56803281"},
|
||||
{file = "Pillow-9.0.0-cp39-cp39-win32.whl", hash = "sha256:68e06f8b2248f6dc8b899c3e7ecf02c9f413aab622f4d6190df53a78b93d97a5"},
|
||||
{file = "Pillow-9.0.0-cp39-cp39-win_amd64.whl", hash = "sha256:6579f9ba84a3d4f1807c4aab4be06f373017fc65fff43498885ac50a9b47a553"},
|
||||
{file = "Pillow-9.0.0-pp37-pypy37_pp73-macosx_10_10_x86_64.whl", hash = "sha256:47f5cf60bcb9fbc46011f75c9b45a8b5ad077ca352a78185bd3e7f1d294b98bb"},
|
||||
{file = "Pillow-9.0.0-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2fd8053e1f8ff1844419842fd474fc359676b2e2a2b66b11cc59f4fa0a301315"},
|
||||
{file = "Pillow-9.0.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c5439bfb35a89cac50e81c751317faea647b9a3ec11c039900cd6915831064d"},
|
||||
{file = "Pillow-9.0.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:95545137fc56ce8c10de646074d242001a112a92de169986abd8c88c27566a05"},
|
||||
{file = "Pillow-9.0.0.tar.gz", hash = "sha256:ee6e2963e92762923956fe5d3479b1fdc3b76c83f290aad131a2f98c3df0593e"},
|
||||
{file = "Pillow-9.0.1-1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a5d24e1d674dd9d72c66ad3ea9131322819ff86250b30dc5821cbafcfa0b96b4"},
|
||||
{file = "Pillow-9.0.1-1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2632d0f846b7c7600edf53c48f8f9f1e13e62f66a6dbc15191029d950bfed976"},
|
||||
{file = "Pillow-9.0.1-1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b9618823bd237c0d2575283f2939655f54d51b4527ec3972907a927acbcc5bfc"},
|
||||
{file = "Pillow-9.0.1-cp310-cp310-macosx_10_10_universal2.whl", hash = "sha256:9bfdb82cdfeccec50aad441afc332faf8606dfa5e8efd18a6692b5d6e79f00fd"},
|
||||
{file = "Pillow-9.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5100b45a4638e3c00e4d2320d3193bdabb2d75e79793af7c3eb139e4f569f16f"},
|
||||
{file = "Pillow-9.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:528a2a692c65dd5cafc130de286030af251d2ee0483a5bf50c9348aefe834e8a"},
|
||||
{file = "Pillow-9.0.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0f29d831e2151e0b7b39981756d201f7108d3d215896212ffe2e992d06bfe049"},
|
||||
{file = "Pillow-9.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:855c583f268edde09474b081e3ddcd5cf3b20c12f26e0d434e1386cc5d318e7a"},
|
||||
{file = "Pillow-9.0.1-cp310-cp310-win32.whl", hash = "sha256:d9d7942b624b04b895cb95af03a23407f17646815495ce4547f0e60e0b06f58e"},
|
||||
{file = "Pillow-9.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:81c4b81611e3a3cb30e59b0cf05b888c675f97e3adb2c8672c3154047980726b"},
|
||||
{file = "Pillow-9.0.1-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:413ce0bbf9fc6278b2d63309dfeefe452835e1c78398efb431bab0672fe9274e"},
|
||||
{file = "Pillow-9.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:80fe64a6deb6fcfdf7b8386f2cf216d329be6f2781f7d90304351811fb591360"},
|
||||
{file = "Pillow-9.0.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cef9c85ccbe9bee00909758936ea841ef12035296c748aaceee535969e27d31b"},
|
||||
{file = "Pillow-9.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1d19397351f73a88904ad1aee421e800fe4bbcd1aeee6435fb62d0a05ccd1030"},
|
||||
{file = "Pillow-9.0.1-cp37-cp37m-win32.whl", hash = "sha256:d21237d0cd37acded35154e29aec853e945950321dd2ffd1a7d86fe686814669"},
|
||||
{file = "Pillow-9.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:ede5af4a2702444a832a800b8eb7f0a7a1c0eed55b644642e049c98d589e5092"},
|
||||
{file = "Pillow-9.0.1-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:b5b3f092fe345c03bca1e0b687dfbb39364b21ebb8ba90e3fa707374b7915204"},
|
||||
{file = "Pillow-9.0.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:335ace1a22325395c4ea88e00ba3dc89ca029bd66bd5a3c382d53e44f0ccd77e"},
|
||||
{file = "Pillow-9.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:db6d9fac65bd08cea7f3540b899977c6dee9edad959fa4eaf305940d9cbd861c"},
|
||||
{file = "Pillow-9.0.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f154d173286a5d1863637a7dcd8c3437bb557520b01bddb0be0258dcb72696b5"},
|
||||
{file = "Pillow-9.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14d4b1341ac07ae07eb2cc682f459bec932a380c3b122f5540432d8977e64eae"},
|
||||
{file = "Pillow-9.0.1-cp38-cp38-win32.whl", hash = "sha256:effb7749713d5317478bb3acb3f81d9d7c7f86726d41c1facca068a04cf5bb4c"},
|
||||
{file = "Pillow-9.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:7f7609a718b177bf171ac93cea9fd2ddc0e03e84d8fa4e887bdfc39671d46b00"},
|
||||
{file = "Pillow-9.0.1-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:80ca33961ced9c63358056bd08403ff866512038883e74f3a4bf88ad3eb66838"},
|
||||
{file = "Pillow-9.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1c3c33ac69cf059bbb9d1a71eeaba76781b450bc307e2291f8a4764d779a6b28"},
|
||||
{file = "Pillow-9.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:12875d118f21cf35604176872447cdb57b07126750a33748bac15e77f90f1f9c"},
|
||||
{file = "Pillow-9.0.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:514ceac913076feefbeaf89771fd6febde78b0c4c1b23aaeab082c41c694e81b"},
|
||||
{file = "Pillow-9.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d3c5c79ab7dfce6d88f1ba639b77e77a17ea33a01b07b99840d6ed08031cb2a7"},
|
||||
{file = "Pillow-9.0.1-cp39-cp39-win32.whl", hash = "sha256:718856856ba31f14f13ba885ff13874be7fefc53984d2832458f12c38205f7f7"},
|
||||
{file = "Pillow-9.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:f25ed6e28ddf50de7e7ea99d7a976d6a9c415f03adcaac9c41ff6ff41b6d86ac"},
|
||||
{file = "Pillow-9.0.1-pp37-pypy37_pp73-macosx_10_10_x86_64.whl", hash = "sha256:011233e0c42a4a7836498e98c1acf5e744c96a67dd5032a6f666cc1fb97eab97"},
|
||||
{file = "Pillow-9.0.1-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:253e8a302a96df6927310a9d44e6103055e8fb96a6822f8b7f514bb7ef77de56"},
|
||||
{file = "Pillow-9.0.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6295f6763749b89c994fcb6d8a7f7ce03c3992e695f89f00b741b4580b199b7e"},
|
||||
{file = "Pillow-9.0.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:a9f44cd7e162ac6191491d7249cceb02b8116b0f7e847ee33f739d7cb1ea1f70"},
|
||||
{file = "Pillow-9.0.1.tar.gz", hash = "sha256:6c8bc8238a7dfdaf7a75f5ec5a663f4173f8c367e5a39f87e720495e1eed75fa"},
|
||||
]
|
||||
platformdirs = [
|
||||
{file = "platformdirs-2.4.1-py3-none-any.whl", hash = "sha256:1d7385c7db91728b83efd0ca99a5afb296cab9d0ed8313a45ed8ba17967ecfca"},
|
||||
@ -1815,8 +1830,8 @@ pluggy = [
|
||||
{file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"},
|
||||
]
|
||||
prometheus-client = [
|
||||
{file = "prometheus_client-0.12.0-py2.py3-none-any.whl", hash = "sha256:317453ebabff0a1b02df7f708efbab21e3489e7072b61cb6957230dd004a0af0"},
|
||||
{file = "prometheus_client-0.12.0.tar.gz", hash = "sha256:1b12ba48cee33b9b0b9de64a1047cbd3c5f2d0ab6ebcead7ddda613a750ec3c5"},
|
||||
{file = "prometheus_client-0.13.1-py3-none-any.whl", hash = "sha256:357a447fd2359b0a1d2e9b311a0c5778c330cfbe186d880ad5a6b39884652316"},
|
||||
{file = "prometheus_client-0.13.1.tar.gz", hash = "sha256:ada41b891b79fca5638bd5cfe149efa86512eaa55987893becd2c6d8d0a5dfc5"},
|
||||
]
|
||||
psycopg2-binary = [
|
||||
{file = "psycopg2-binary-2.9.3.tar.gz", hash = "sha256:761df5313dc15da1502b21453642d7599d26be88bff659382f8f9747c7ebea4e"},
|
||||
@ -1901,16 +1916,16 @@ pyjwt = [
|
||||
{file = "PyJWT-2.3.0.tar.gz", hash = "sha256:b888b4d56f06f6dcd777210c334e69c737be74755d3e5e9ee3fe67dc18a0ee41"},
|
||||
]
|
||||
pyopenssl = [
|
||||
{file = "pyOpenSSL-21.0.0-py2.py3-none-any.whl", hash = "sha256:8935bd4920ab9abfebb07c41a4f58296407ed77f04bd1a92914044b848ba1ed6"},
|
||||
{file = "pyOpenSSL-21.0.0.tar.gz", hash = "sha256:5e2d8c5e46d0d865ae933bef5230090bdaf5506281e9eec60fa250ee80600cb3"},
|
||||
{file = "pyOpenSSL-22.0.0-py2.py3-none-any.whl", hash = "sha256:ea252b38c87425b64116f808355e8da644ef9b07e429398bfece610f893ee2e0"},
|
||||
{file = "pyOpenSSL-22.0.0.tar.gz", hash = "sha256:660b1b1425aac4a1bea1d94168a85d99f0b3144c869dd4390d27629d0087f1bf"},
|
||||
]
|
||||
pyparsing = [
|
||||
{file = "pyparsing-3.0.6-py3-none-any.whl", hash = "sha256:04ff808a5b90911829c55c4e26f75fa5ca8a2f5f36aa3a51f68e27033341d3e4"},
|
||||
{file = "pyparsing-3.0.6.tar.gz", hash = "sha256:d9bdec0013ef1eb5a84ab39a3b3868911598afa494f5faa038647101504e2b81"},
|
||||
{file = "pyparsing-3.0.7-py3-none-any.whl", hash = "sha256:a6c06a88f252e6c322f65faf8f418b16213b51bdfaece0524c1c1bc30c63c484"},
|
||||
{file = "pyparsing-3.0.7.tar.gz", hash = "sha256:18ee9022775d270c55187733956460083db60b37d0d0fb357445f3094eed3eea"},
|
||||
]
|
||||
pytest = [
|
||||
{file = "pytest-6.2.5-py3-none-any.whl", hash = "sha256:7310f8d27bc79ced999e760ca304d69f6ba6c6649c0b60fb0e04a4a77cacc134"},
|
||||
{file = "pytest-6.2.5.tar.gz", hash = "sha256:131b36680866a76e6781d13f101efb86cf674ebb9762eb70d3082b6f29889e89"},
|
||||
{file = "pytest-7.0.0-py3-none-any.whl", hash = "sha256:42901e6bd4bd4a0e533358a86e848427a49005a3256f657c5c8f8dd35ef137a9"},
|
||||
{file = "pytest-7.0.0.tar.gz", hash = "sha256:dad48ffda394e5ad9aa3b7d7ddf339ed502e5e365b1350e0af65f4a602344b11"},
|
||||
]
|
||||
pytest-base-url = [
|
||||
{file = "pytest-base-url-1.4.2.tar.gz", hash = "sha256:7f1f32e08c2ee751e59e7f5880235b46e83496adc5cba5a01ca218c6fe81333d"},
|
||||
@ -1967,16 +1982,16 @@ recommonmark = [
|
||||
{file = "recommonmark-0.7.1.tar.gz", hash = "sha256:bdb4db649f2222dcd8d2d844f0006b958d627f732415d399791ee436a3686d67"},
|
||||
]
|
||||
redis = [
|
||||
{file = "redis-4.1.0-py3-none-any.whl", hash = "sha256:e13fad67c098a33141bacde872786960e86a5c97a4255009bcd43c795fa1cc77"},
|
||||
{file = "redis-4.1.0.tar.gz", hash = "sha256:21f0a23bce707909076e6ba2ce076cba59bff60d2ab22972e0647fdf620ffe47"},
|
||||
{file = "redis-4.1.2-py3-none-any.whl", hash = "sha256:f13eea4254e302485add677cadedaf1305c1b3a4e07535e23b7b239798ce9301"},
|
||||
{file = "redis-4.1.2.tar.gz", hash = "sha256:bf86397be532fc0a888d5976a5313a3a70d8f912d52bc0c09bffda4b8425a1d4"},
|
||||
]
|
||||
requests = [
|
||||
{file = "requests-2.27.1-py2.py3-none-any.whl", hash = "sha256:f22fa1e554c9ddfd16e6e41ac79759e17be9e492b3587efa038054674760e72d"},
|
||||
{file = "requests-2.27.1.tar.gz", hash = "sha256:68d7c56fd5a8999887728ef304a6d12edc7be74f1cfa47714fc8b414525c9a61"},
|
||||
]
|
||||
responses = [
|
||||
{file = "responses-0.17.0-py2.py3-none-any.whl", hash = "sha256:e4fc472fb7374fb8f84fcefa51c515ca4351f198852b4eb7fc88223780b472ea"},
|
||||
{file = "responses-0.17.0.tar.gz", hash = "sha256:ec675e080d06bf8d1fb5e5a68a1e5cd0df46b09c78230315f650af5e4036bec7"},
|
||||
{file = "responses-0.18.0-py3-none-any.whl", hash = "sha256:15c63ad16de13ee8e7182d99c9334f64fd81f1ee79f90748d527c28f7ca9dd51"},
|
||||
{file = "responses-0.18.0.tar.gz", hash = "sha256:380cad4c1c1dc942e5e8a8eaae0b4d4edf708f4f010db8b7bcfafad1fcd254ff"},
|
||||
]
|
||||
selenium = [
|
||||
{file = "selenium-4.1.0-py3-none-any.whl", hash = "sha256:27e7b64df961d609f3d57237caa0df123abbbe22d038f2ec9e332fb90ec1a939"},
|
||||
@ -2006,8 +2021,8 @@ sphinx = [
|
||||
{file = "Sphinx-4.4.0.tar.gz", hash = "sha256:6caad9786055cb1fa22b4a365c1775816b876f91966481765d7d50e9f0dd35cc"},
|
||||
]
|
||||
sphinx-bootstrap-theme = [
|
||||
{file = "sphinx-bootstrap-theme-0.8.0.tar.gz", hash = "sha256:038ee7e89478e064b5dd7e614de6f3f4cec81d9f9efbebb06e105693d6a50924"},
|
||||
{file = "sphinx_bootstrap_theme-0.8.0-py2.py3-none-any.whl", hash = "sha256:8b648023a0587f1695460670554ca3fb493e344313189b74a87b0ba27168ca47"},
|
||||
{file = "sphinx-bootstrap-theme-0.8.1.tar.gz", hash = "sha256:683e3b735448dadd0149f76edecf95ff4bd9157787e9e77e0d048ca6f1d680df"},
|
||||
{file = "sphinx_bootstrap_theme-0.8.1-py2.py3-none-any.whl", hash = "sha256:6ef36206c211846ea6cbdb45bc85645578e7c62d0a883361181708f8b6ea743b"},
|
||||
]
|
||||
sphinxcontrib-applehelp = [
|
||||
{file = "sphinxcontrib-applehelp-1.0.2.tar.gz", hash = "sha256:a072735ec80e7675e3f432fcae8610ecf509c5f1869d17e2eecff44389cdbc58"},
|
||||
@ -2038,42 +2053,42 @@ sphinxcontrib-serializinghtml = [
|
||||
{file = "sphinxcontrib_serializinghtml-1.1.5-py2.py3-none-any.whl", hash = "sha256:352a9a00ae864471d3a7ead8d7d79f5fc0b57e8b3f95e9867eb9eb28999b92fd"},
|
||||
]
|
||||
sqlalchemy = [
|
||||
{file = "SQLAlchemy-1.4.29-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:da64423c05256f4ab8c0058b90202053b201cbe3a081f3a43eb590cd554395ab"},
|
||||
{file = "SQLAlchemy-1.4.29-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:0fc4eec2f46b40bdd42112b3be3fbbf88e194bcf02950fbb88bcdc1b32f07dc7"},
|
||||
{file = "SQLAlchemy-1.4.29-cp27-cp27m-win32.whl", hash = "sha256:101d2e100ba9182c9039699588e0b2d833c54b3bad46c67c192159876c9f27ea"},
|
||||
{file = "SQLAlchemy-1.4.29-cp27-cp27m-win_amd64.whl", hash = "sha256:ceac84dd9abbbe115e8be0c817bed85d9fa639b4d294e7817f9e61162d5f766c"},
|
||||
{file = "SQLAlchemy-1.4.29-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:15b65887b6c324cad638c7671cb95985817b733242a7eb69edd7cdf6953be1e0"},
|
||||
{file = "SQLAlchemy-1.4.29-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:78abc507d17753ed434b6cc0c0693126279723d5656d9775bfcac966a99a899b"},
|
||||
{file = "SQLAlchemy-1.4.29-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eb8c993706e86178ce15a6b86a335a2064f52254b640e7f53365e716423d33f4"},
|
||||
{file = "SQLAlchemy-1.4.29-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:804e22d5b6165a4f3f019dd9c94bec5687de985a9c54286b93ded9f7846b8c82"},
|
||||
{file = "SQLAlchemy-1.4.29-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56d9d62021946263d4478c9ca012fbd1805f10994cb615c88e7bfd1ae14604d8"},
|
||||
{file = "SQLAlchemy-1.4.29-cp310-cp310-win32.whl", hash = "sha256:027f356c727db24f3c75828c7feb426f87ce1241242d08958e454bd025810660"},
|
||||
{file = "SQLAlchemy-1.4.29-cp310-cp310-win_amd64.whl", hash = "sha256:debaf09a823061f88a8dee04949814cf7e82fb394c5bca22c780cb03172ca23b"},
|
||||
{file = "SQLAlchemy-1.4.29-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:dc27dcc6c72eb38be7f144e9c2c4372d35a3684d3a6dd43bd98c1238358ee17c"},
|
||||
{file = "SQLAlchemy-1.4.29-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e4ddd4f2e247128c58bb3dd4489922874afce157d2cff0b2295d67fcd0f22494"},
|
||||
{file = "SQLAlchemy-1.4.29-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:9ce960a1dc60524136cf6f75621588e2508a117e04a6e3eedb0968bd13b8c824"},
|
||||
{file = "SQLAlchemy-1.4.29-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5919e647e1d4805867ea556ed4967c68b4d8b266059fa35020dbaed8ffdd60f3"},
|
||||
{file = "SQLAlchemy-1.4.29-cp36-cp36m-win32.whl", hash = "sha256:886359f734b95ad1ef443b13bb4518bcade4db4f9553c9ce33d6d04ebda8d44e"},
|
||||
{file = "SQLAlchemy-1.4.29-cp36-cp36m-win_amd64.whl", hash = "sha256:e9cc6d844e24c307c3272677982a9b33816aeb45e4977791c3bdd47637a8d810"},
|
||||
{file = "SQLAlchemy-1.4.29-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:5e9cd33459afa69c88fa648e803d1f1245e3caa60bfe8b80a9595e5edd3bda9c"},
|
||||
{file = "SQLAlchemy-1.4.29-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eeaebceb24b46e884c4ad3c04f37feb178b81f6ce720af19bfa2592ca32fdef7"},
|
||||
{file = "SQLAlchemy-1.4.29-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e89347d3bd2ef873832b47e85f4bbd810a5e626c5e749d90a07638da100eb1c8"},
|
||||
{file = "SQLAlchemy-1.4.29-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5a717c2e70fd1bb477161c4cc85258e41d978584fbe5522613618195f7e87d9b"},
|
||||
{file = "SQLAlchemy-1.4.29-cp37-cp37m-win32.whl", hash = "sha256:f74d6c05d2d163464adbdfbc1ab85048cc15462ff7d134b8aed22bd521e1faa5"},
|
||||
{file = "SQLAlchemy-1.4.29-cp37-cp37m-win_amd64.whl", hash = "sha256:621854dbb4d2413c759a5571564170de45ef37299df52e78e62b42e2880192e1"},
|
||||
{file = "SQLAlchemy-1.4.29-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:f3909194751bb6cb7c5511dd18bcf77e6e3f0b31604ed4004dffa9461f71e737"},
|
||||
{file = "SQLAlchemy-1.4.29-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd49d21d1f03c81fbec9080ecdc4486d5ddda67e7fbb75ebf48294465c022cdc"},
|
||||
{file = "SQLAlchemy-1.4.29-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e5f6959466a42b6569774c257e55f9cd85200d5b0ba09f0f5d8b5845349c5822"},
|
||||
{file = "SQLAlchemy-1.4.29-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0072f9887aabe66db23f818bbe950cfa1b6127c5cb769b00bcc07935b3adb0ad"},
|
||||
{file = "SQLAlchemy-1.4.29-cp38-cp38-win32.whl", hash = "sha256:ad618d687d26d4cbfa9c6fa6141d59e05bcdfc60cb6e1f1d3baa18d8c62fef5f"},
|
||||
{file = "SQLAlchemy-1.4.29-cp38-cp38-win_amd64.whl", hash = "sha256:878daecb6405e786b07f97e1c77a9cfbbbec17432e8a90c487967e32cfdecb33"},
|
||||
{file = "SQLAlchemy-1.4.29-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:e027bdf0a4cf6bd0a3ad3b998643ea374d7991bd117b90bf9982e41ceb742941"},
|
||||
{file = "SQLAlchemy-1.4.29-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5de7adfb91d351f44062b8dedf29f49d4af7cb765be65816e79223a4e31062b"},
|
||||
{file = "SQLAlchemy-1.4.29-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:fbc6e63e481fa323036f305ada96a3362e1d60dd2bfa026cac10c3553e6880e9"},
|
||||
{file = "SQLAlchemy-1.4.29-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7dd0502cb091660ad0d89c5e95a29825f37cde2a5249957838e975871fbffaad"},
|
||||
{file = "SQLAlchemy-1.4.29-cp39-cp39-win32.whl", hash = "sha256:37b46bfc4af3dc226acb6fa28ecd2e1fd223433dc5e15a2bad62bf0a0cbb4e8b"},
|
||||
{file = "SQLAlchemy-1.4.29-cp39-cp39-win_amd64.whl", hash = "sha256:08cfd35eecaba79be930c9bfd2e1f0c67a7e1314355d83a378f9a512b1cf7587"},
|
||||
{file = "SQLAlchemy-1.4.29.tar.gz", hash = "sha256:fa2bad14e1474ba649cfc969c1d2ec915dd3e79677f346bbfe08e93ef9020b39"},
|
||||
{file = "SQLAlchemy-1.4.31-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:c3abc34fed19fdeaead0ced8cf56dd121f08198008c033596aa6aae7cc58f59f"},
|
||||
{file = "SQLAlchemy-1.4.31-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:8d0949b11681380b4a50ac3cd075e4816afe9fa4a8c8ae006c1ca26f0fa40ad8"},
|
||||
{file = "SQLAlchemy-1.4.31-cp27-cp27m-win32.whl", hash = "sha256:f3b7ec97e68b68cb1f9ddb82eda17b418f19a034fa8380a0ac04e8fe01532875"},
|
||||
{file = "SQLAlchemy-1.4.31-cp27-cp27m-win_amd64.whl", hash = "sha256:81f2dd355b57770fdf292b54f3e0a9823ec27a543f947fa2eb4ec0df44f35f0d"},
|
||||
{file = "SQLAlchemy-1.4.31-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:4ad31cec8b49fd718470328ad9711f4dc703507d434fd45461096da0a7135ee0"},
|
||||
{file = "SQLAlchemy-1.4.31-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:05fa14f279d43df68964ad066f653193187909950aa0163320b728edfc400167"},
|
||||
{file = "SQLAlchemy-1.4.31-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dccff41478050e823271642837b904d5f9bda3f5cf7d371ce163f00a694118d6"},
|
||||
{file = "SQLAlchemy-1.4.31-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:57205844f246bab9b666a32f59b046add8995c665d9ecb2b7b837b087df90639"},
|
||||
{file = "SQLAlchemy-1.4.31-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ea8210090a816d48a4291a47462bac750e3bc5c2442e6d64f7b8137a7c3f9ac5"},
|
||||
{file = "SQLAlchemy-1.4.31-cp310-cp310-win32.whl", hash = "sha256:2e216c13ecc7fcdcbb86bb3225425b3ed338e43a8810c7089ddb472676124b9b"},
|
||||
{file = "SQLAlchemy-1.4.31-cp310-cp310-win_amd64.whl", hash = "sha256:e3a86b59b6227ef72ffc10d4b23f0fe994bef64d4667eab4fb8cd43de4223bec"},
|
||||
{file = "SQLAlchemy-1.4.31-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:2fd4d3ca64c41dae31228b80556ab55b6489275fb204827f6560b65f95692cf3"},
|
||||
{file = "SQLAlchemy-1.4.31-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f22c040d196f841168b1456e77c30a18a3dc16b336ddbc5a24ce01ab4e95ae0"},
|
||||
{file = "SQLAlchemy-1.4.31-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c0c7171aa5a57e522a04a31b84798b6c926234cb559c0939840c3235cf068813"},
|
||||
{file = "SQLAlchemy-1.4.31-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d046a9aeba9bc53e88a41e58beb72b6205abb9a20f6c136161adf9128e589db5"},
|
||||
{file = "SQLAlchemy-1.4.31-cp36-cp36m-win32.whl", hash = "sha256:d86132922531f0dc5a4f424c7580a472a924dd737602638e704841c9cb24aea2"},
|
||||
{file = "SQLAlchemy-1.4.31-cp36-cp36m-win_amd64.whl", hash = "sha256:ca68c52e3cae491ace2bf39b35fef4ce26c192fd70b4cd90f040d419f70893b5"},
|
||||
{file = "SQLAlchemy-1.4.31-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:cf2cd387409b12d0a8b801610d6336ee7d24043b6dd965950eaec09b73e7262f"},
|
||||
{file = "SQLAlchemy-1.4.31-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb4b15fb1f0aafa65cbdc62d3c2078bea1ceecbfccc9a1f23a2113c9ac1191fa"},
|
||||
{file = "SQLAlchemy-1.4.31-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c317ddd7c586af350a6aef22b891e84b16bff1a27886ed5b30f15c1ed59caeaa"},
|
||||
{file = "SQLAlchemy-1.4.31-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3c7ed6c69debaf6198fadb1c16ae1253a29a7670bbf0646f92582eb465a0b999"},
|
||||
{file = "SQLAlchemy-1.4.31-cp37-cp37m-win32.whl", hash = "sha256:6a01ec49ca54ce03bc14e10de55dfc64187a2194b3b0e5ac0fdbe9b24767e79e"},
|
||||
{file = "SQLAlchemy-1.4.31-cp37-cp37m-win_amd64.whl", hash = "sha256:330eb45395874cc7787214fdd4489e2afb931bc49e0a7a8f9cd56d6e9c5b1639"},
|
||||
{file = "SQLAlchemy-1.4.31-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:5e9c7b3567edbc2183607f7d9f3e7e89355b8f8984eec4d2cd1e1513c8f7b43f"},
|
||||
{file = "SQLAlchemy-1.4.31-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:de85c26a5a1c72e695ab0454e92f60213b4459b8d7c502e0be7a6369690eeb1a"},
|
||||
{file = "SQLAlchemy-1.4.31-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:975f5c0793892c634c4920057da0de3a48bbbbd0a5c86f5fcf2f2fedf41b76da"},
|
||||
{file = "SQLAlchemy-1.4.31-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d5c20c8415173b119762b6110af64448adccd4d11f273fb9f718a9865b88a99c"},
|
||||
{file = "SQLAlchemy-1.4.31-cp38-cp38-win32.whl", hash = "sha256:b35dca159c1c9fa8a5f9005e42133eed82705bf8e243da371a5e5826440e65ca"},
|
||||
{file = "SQLAlchemy-1.4.31-cp38-cp38-win_amd64.whl", hash = "sha256:b7b20c88873675903d6438d8b33fba027997193e274b9367421e610d9da76c08"},
|
||||
{file = "SQLAlchemy-1.4.31-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:85e4c244e1de056d48dae466e9baf9437980c19fcde493e0db1a0a986e6d75b4"},
|
||||
{file = "SQLAlchemy-1.4.31-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e79e73d5ee24196d3057340e356e6254af4d10e1fc22d3207ea8342fc5ffb977"},
|
||||
{file = "SQLAlchemy-1.4.31-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:15a03261aa1e68f208e71ae3cd845b00063d242cbf8c87348a0c2c0fc6e1f2ac"},
|
||||
{file = "SQLAlchemy-1.4.31-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ddc5e5ccc0160e7ad190e5c61eb57560f38559e22586955f205e537cda26034"},
|
||||
{file = "SQLAlchemy-1.4.31-cp39-cp39-win32.whl", hash = "sha256:289465162b1fa1e7a982f8abe59d26a8331211cad4942e8031d2b7db1f75e649"},
|
||||
{file = "SQLAlchemy-1.4.31-cp39-cp39-win_amd64.whl", hash = "sha256:9e4fb2895b83993831ba2401b6404de953fdbfa9d7d4fa6a4756294a83bbc94f"},
|
||||
{file = "SQLAlchemy-1.4.31.tar.gz", hash = "sha256:582b59d1e5780a447aada22b461e50b404a9dc05768da1d87368ad8190468418"},
|
||||
]
|
||||
staticmap = [
|
||||
{file = "staticmap-0.5.5.tar.gz", hash = "sha256:007c507b4d42e00eaba179649753f2f8d69d4ece3028736e18d9e86493044387"},
|
||||
@ -2087,8 +2102,8 @@ toml = [
|
||||
{file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"},
|
||||
]
|
||||
tomli = [
|
||||
{file = "tomli-1.2.3-py3-none-any.whl", hash = "sha256:e3069e4be3ead9668e21cb9b074cd948f7b3113fd9c8bba083f48247aab8b11c"},
|
||||
{file = "tomli-1.2.3.tar.gz", hash = "sha256:05b6166bff487dc068d322585c7ea4ef78deed501cc124060e0f238e89a9231f"},
|
||||
{file = "tomli-2.0.0-py3-none-any.whl", hash = "sha256:b5bde28da1fed24b9bd1d4d2b8cba62300bfb4ec9a6187a957e8ddb9434c5224"},
|
||||
{file = "tomli-2.0.0.tar.gz", hash = "sha256:c292c34f58502a1eb2bbb9f5bbc9a5ebc37bee10ffb8c2d6bbdfa8eb13cc14e1"},
|
||||
]
|
||||
tqdm = [
|
||||
{file = "tqdm-4.62.3-py2.py3-none-any.whl", hash = "sha256:8dd278a422499cd6b727e6ae4061c40b48fce8b76d1ccbf5d34fca9b7f925b0c"},
|
||||
@ -2103,25 +2118,30 @@ trio-websocket = [
|
||||
{file = "trio_websocket-0.9.2-py3-none-any.whl", hash = "sha256:5b558f6e83cc20a37c3b61202476c5295d1addf57bd65543364e0337e37ed2bc"},
|
||||
]
|
||||
typed-ast = [
|
||||
{file = "typed_ast-1.5.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d8314c92414ce7481eee7ad42b353943679cf6f30237b5ecbf7d835519e1212"},
|
||||
{file = "typed_ast-1.5.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b53ae5de5500529c76225d18eeb060efbcec90ad5e030713fe8dab0fb4531631"},
|
||||
{file = "typed_ast-1.5.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:24058827d8f5d633f97223f5148a7d22628099a3d2efe06654ce872f46f07cdb"},
|
||||
{file = "typed_ast-1.5.1-cp310-cp310-win_amd64.whl", hash = "sha256:a6d495c1ef572519a7bac9534dbf6d94c40e5b6a608ef41136133377bba4aa08"},
|
||||
{file = "typed_ast-1.5.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:de4ecae89c7d8b56169473e08f6bfd2df7f95015591f43126e4ea7865928677e"},
|
||||
{file = "typed_ast-1.5.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:256115a5bc7ea9e665c6314ed6671ee2c08ca380f9d5f130bd4d2c1f5848d695"},
|
||||
{file = "typed_ast-1.5.1-cp36-cp36m-win_amd64.whl", hash = "sha256:7c42707ab981b6cf4b73490c16e9d17fcd5227039720ca14abe415d39a173a30"},
|
||||
{file = "typed_ast-1.5.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:71dcda943a471d826ea930dd449ac7e76db7be778fcd722deb63642bab32ea3f"},
|
||||
{file = "typed_ast-1.5.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4f30a2bcd8e68adbb791ce1567fdb897357506f7ea6716f6bbdd3053ac4d9471"},
|
||||
{file = "typed_ast-1.5.1-cp37-cp37m-win_amd64.whl", hash = "sha256:ca9e8300d8ba0b66d140820cf463438c8e7b4cdc6fd710c059bfcfb1531d03fb"},
|
||||
{file = "typed_ast-1.5.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9caaf2b440efb39ecbc45e2fabde809cbe56272719131a6318fd9bf08b58e2cb"},
|
||||
{file = "typed_ast-1.5.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c9bcad65d66d594bffab8575f39420fe0ee96f66e23c4d927ebb4e24354ec1af"},
|
||||
{file = "typed_ast-1.5.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:591bc04e507595887160ed7aa8d6785867fb86c5793911be79ccede61ae96f4d"},
|
||||
{file = "typed_ast-1.5.1-cp38-cp38-win_amd64.whl", hash = "sha256:a80d84f535642420dd17e16ae25bb46c7f4c16ee231105e7f3eb43976a89670a"},
|
||||
{file = "typed_ast-1.5.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:38cf5c642fa808300bae1281460d4f9b7617cf864d4e383054a5ef336e344d32"},
|
||||
{file = "typed_ast-1.5.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5b6ab14c56bc9c7e3c30228a0a0b54b915b1579613f6e463ba6f4eb1382e7fd4"},
|
||||
{file = "typed_ast-1.5.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a2b8d7007f6280e36fa42652df47087ac7b0a7d7f09f9468f07792ba646aac2d"},
|
||||
{file = "typed_ast-1.5.1-cp39-cp39-win_amd64.whl", hash = "sha256:b6d17f37f6edd879141e64a5db17b67488cfeffeedad8c5cec0392305e9bc775"},
|
||||
{file = "typed_ast-1.5.1.tar.gz", hash = "sha256:484137cab8ecf47e137260daa20bafbba5f4e3ec7fda1c1e69ab299b75fa81c5"},
|
||||
{file = "typed_ast-1.5.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:183b183b7771a508395d2cbffd6db67d6ad52958a5fdc99f450d954003900266"},
|
||||
{file = "typed_ast-1.5.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:676d051b1da67a852c0447621fdd11c4e104827417bf216092ec3e286f7da596"},
|
||||
{file = "typed_ast-1.5.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bc2542e83ac8399752bc16e0b35e038bdb659ba237f4222616b4e83fb9654985"},
|
||||
{file = "typed_ast-1.5.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:74cac86cc586db8dfda0ce65d8bcd2bf17b58668dfcc3652762f3ef0e6677e76"},
|
||||
{file = "typed_ast-1.5.2-cp310-cp310-win_amd64.whl", hash = "sha256:18fe320f354d6f9ad3147859b6e16649a0781425268c4dde596093177660e71a"},
|
||||
{file = "typed_ast-1.5.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:31d8c6b2df19a777bc8826770b872a45a1f30cfefcfd729491baa5237faae837"},
|
||||
{file = "typed_ast-1.5.2-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:963a0ccc9a4188524e6e6d39b12c9ca24cc2d45a71cfdd04a26d883c922b4b78"},
|
||||
{file = "typed_ast-1.5.2-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0eb77764ea470f14fcbb89d51bc6bbf5e7623446ac4ed06cbd9ca9495b62e36e"},
|
||||
{file = "typed_ast-1.5.2-cp36-cp36m-win_amd64.whl", hash = "sha256:294a6903a4d087db805a7656989f613371915fc45c8cc0ddc5c5a0a8ad9bea4d"},
|
||||
{file = "typed_ast-1.5.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:26a432dc219c6b6f38be20a958cbe1abffcc5492821d7e27f08606ef99e0dffd"},
|
||||
{file = "typed_ast-1.5.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c7407cfcad702f0b6c0e0f3e7ab876cd1d2c13b14ce770e412c0c4b9728a0f88"},
|
||||
{file = "typed_ast-1.5.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f30ddd110634c2d7534b2d4e0e22967e88366b0d356b24de87419cc4410c41b7"},
|
||||
{file = "typed_ast-1.5.2-cp37-cp37m-win_amd64.whl", hash = "sha256:8c08d6625bb258179b6e512f55ad20f9dfef019bbfbe3095247401e053a3ea30"},
|
||||
{file = "typed_ast-1.5.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:90904d889ab8e81a956f2c0935a523cc4e077c7847a836abee832f868d5c26a4"},
|
||||
{file = "typed_ast-1.5.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:bbebc31bf11762b63bf61aaae232becb41c5bf6b3461b80a4df7e791fabb3aca"},
|
||||
{file = "typed_ast-1.5.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c29dd9a3a9d259c9fa19d19738d021632d673f6ed9b35a739f48e5f807f264fb"},
|
||||
{file = "typed_ast-1.5.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:58ae097a325e9bb7a684572d20eb3e1809802c5c9ec7108e85da1eb6c1a3331b"},
|
||||
{file = "typed_ast-1.5.2-cp38-cp38-win_amd64.whl", hash = "sha256:da0a98d458010bf4fe535f2d1e367a2e2060e105978873c04c04212fb20543f7"},
|
||||
{file = "typed_ast-1.5.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:33b4a19ddc9fc551ebabca9765d54d04600c4a50eda13893dadf67ed81d9a098"},
|
||||
{file = "typed_ast-1.5.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1098df9a0592dd4c8c0ccfc2e98931278a6c6c53cb3a3e2cf7e9ee3b06153344"},
|
||||
{file = "typed_ast-1.5.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42c47c3b43fe3a39ddf8de1d40dbbfca60ac8530a36c9b198ea5b9efac75c09e"},
|
||||
{file = "typed_ast-1.5.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f290617f74a610849bd8f5514e34ae3d09eafd521dceaa6cf68b3f4414266d4e"},
|
||||
{file = "typed_ast-1.5.2-cp39-cp39-win_amd64.whl", hash = "sha256:df05aa5b241e2e8045f5f4367a9f6187b09c4cdf8578bb219861c4e27c443db5"},
|
||||
{file = "typed_ast-1.5.2.tar.gz", hash = "sha256:525a2d4088e70a9f75b08b3f87a51acc9cde640e19cc523c7e41aa355564ae27"},
|
||||
]
|
||||
types-freezegun = [
|
||||
{file = "types-freezegun-1.1.6.tar.gz", hash = "sha256:5c70a4b7444b8c7dd2800e0063d6fe721ab11209399264fa0f77af253dd8b14f"},
|
||||
@ -2132,12 +2152,12 @@ types-pytz = [
|
||||
{file = "types_pytz-2021.3.4-py3-none-any.whl", hash = "sha256:ccfa2ed29f816e3de2f882541c06ad2791f808a79cfe38265411820190999f0f"},
|
||||
]
|
||||
types-requests = [
|
||||
{file = "types-requests-2.27.7.tar.gz", hash = "sha256:f38bd488528cdcbce5b01dc953972f3cead0d060cfd9ee35b363066c25bab13c"},
|
||||
{file = "types_requests-2.27.7-py3-none-any.whl", hash = "sha256:2e0e100dd489f83870d4f61949d3a7eae4821e7bfbf46c57e463c38f92d473d4"},
|
||||
{file = "types-requests-2.27.8.tar.gz", hash = "sha256:c2f4e4754d07ca0a88fd8a89bbc6c8a9f90fb441f9c9b572fd5c484f04817486"},
|
||||
{file = "types_requests-2.27.8-py3-none-any.whl", hash = "sha256:8ec9f5f84adc6f579f53943312c28a84e87dc70201b54f7c4fbc7d22ecfa8a3e"},
|
||||
]
|
||||
types-urllib3 = [
|
||||
{file = "types-urllib3-1.26.7.tar.gz", hash = "sha256:cfd1fbbe4ba9a605ed148294008aac8a7b8b7472651d1cc357d507ae5962e3d2"},
|
||||
{file = "types_urllib3-1.26.7-py3-none-any.whl", hash = "sha256:3adcf2cb5981809091dbff456e6999fe55f201652d8c360f99997de5ac2f556e"},
|
||||
{file = "types-urllib3-1.26.9.tar.gz", hash = "sha256:abd2d4857837482b1834b4817f0587678dcc531dbc9abe4cde4da28cef3f522c"},
|
||||
{file = "types_urllib3-1.26.9-py3-none-any.whl", hash = "sha256:4a54f6274ab1c80968115634a55fb9341a699492b95e32104a7c513db9fe02e9"},
|
||||
]
|
||||
typing-extensions = [
|
||||
{file = "typing_extensions-4.0.1-py3-none-any.whl", hash = "sha256:7f001e5ac290a0c0401508864c7ec868be4e701886d5b573a9528ed3973d9d3b"},
|
||||
|
@ -1,6 +1,6 @@
|
||||
[tool.poetry]
|
||||
name = "fittrackee"
|
||||
version = "0.5.5"
|
||||
version = "0.5.6"
|
||||
description = "Self-hosted outdoor workout/activity tracker"
|
||||
authors = ["SamR1"]
|
||||
license = "AGPL-3.0"
|
||||
@ -24,14 +24,14 @@ exclude = ["fittrackee/tests"]
|
||||
|
||||
[tool.poetry.dependencies]
|
||||
python = "^3.7"
|
||||
dramatiq = {version = "^1.12.1", extras = ["redis"]}
|
||||
dramatiq = {version = "^1.12.3", extras = ["redis"]}
|
||||
flask = "^2.0"
|
||||
flask-bcrypt = "^0.7.1"
|
||||
flask-dramatiq = "^0.6.0"
|
||||
flask-migrate = "^3.1"
|
||||
gpxpy = "=1.3.4"
|
||||
gunicorn = "^20.1"
|
||||
humanize = "^3.13"
|
||||
humanize = "^3.14"
|
||||
psycopg2-binary = "^2.9"
|
||||
pyjwt = "^2.3"
|
||||
python-forecastio = "^1.4"
|
||||
@ -39,14 +39,14 @@ pytz = "^2021.3"
|
||||
shortuuid = "^1.0.8"
|
||||
staticmap = "^0.5.4"
|
||||
tqdm = "^4.62"
|
||||
SQLAlchemy = "1.4.29"
|
||||
pyOpenSSL = "^21.0"
|
||||
SQLAlchemy = "1.4.31"
|
||||
pyOpenSSL = "^22.0"
|
||||
|
||||
[tool.poetry.dev-dependencies]
|
||||
black = "^21.12b0"
|
||||
black = "^22.1"
|
||||
freezegun = "^1.1"
|
||||
mypy = "^0.931"
|
||||
pytest = "^6.2"
|
||||
pytest = "^7.0"
|
||||
pytest-black = "^0.3.12"
|
||||
pytest-cov = "^3.0"
|
||||
pytest-flake8 = "^1.0"
|
||||
@ -54,7 +54,7 @@ pytest-isort = "^2.0"
|
||||
pytest-runner = "^5.3"
|
||||
pytest-selenium = "^2.0.1"
|
||||
recommonmark = "^0.7"
|
||||
sphinx-bootstrap-theme = "^0.8.0"
|
||||
sphinx-bootstrap-theme = "^0.8.1"
|
||||
sphinxcontrib-httpdomain = "^1.7"
|
||||
types-pytz = "^2021.3"
|
||||
types-requests = "^2.27"
|
||||
|