leukeleu-drf-tus
================
A [tus](https://tus.io) library for [Django REST Framework](https://www.django-rest-framework.org).
Quickstart
----------
Install drf-tus:
pip install leukeleu-drf-tus
Add it to your `INSTALLED_APPS`:
INSTALLED_APPS = (
...
'rest_framework_tus',
...
)
Add the middleware to `MIDDLEWARE`:
MIDDLEWARE = (
...
'rest_framework_tus.middleware.TusMiddleware',
...
)
Add drf-tus's URL patterns:
urlpatterns = [
...
path('', include('rest_framework_tus.urls', namespace='rest_framework_tus')),
...
]
Features
--------
This library implements the following TUS API v1.0.0 protocols:
* [Core Protocol](http://tus.io/protocols/resumable-upload.html#core-protocol)
* [Creation Protocol](http://tus.io/protocols/resumable-upload.html#creation)
* [Expiration Protocol](http://tus.io/protocols/resumable-upload.html#expiration)
* [Checksum Protocol](http://tus.io/protocols/resumable-upload.html#checksum)
* [Termination Protocol](http://tus.io/protocols/resumable-upload.html#termination)
Running Tests
-------------
Does the code actually work?
docker compose exec python make coveragetest
# History
## 2.0.0 (2023-05-31)
* Release to PyPi
## 2.0.0.dev0 (2023-05-25)
* Renamed package to leukeleu-drf-tus
* Major refactoring
## 1.21.2 (2018-09-04)
* Fixed Django compatibility
## 1.21.1 (2018-08-01)
* Fixed failing travis build
## 1.21 (2018-08-01)
* Updated Django dependency and dropped support for Python 3.3.x (https://github.com/dirkmoors/drf-tus/pull/9)
## 1.20 (2018-02-12)
* Implemented per-view max file size setting (https://github.com/dirkmoors/drf-tus/pull/8)
## 1.19 (2018-02-08)
* Fixed bug that occured when pausing uploads (https://github.com/dirkmoors/drf-tus/pull/7)
## 1.18 (2018-02-08)
* Make the metadata 'filename' key a setting. (https://github.com/dirkmoors/drf-tus/pull/2)
* Switch from (Positive)IntegerField to BigIntegerField for the upload_length and upload_offset fields (https://github.com/dirkmoors/drf-tus/pull/3)
* Increase Django version support up to 1.11 (https://github.com/dirkmoors/drf-tus/pull/4)
* Fix unicode errors (https://github.com/dirkmoors/drf-tus/pull/5)
* Updated travis configuration
## 1.17 (2017-05-10)
* Exchanged use of `base64.encodebytes` to `base64.b64encode`.
## 1.16 (2017-05-04)
* Implemented `validate_filename` handler in `TusCreateMixin`.
## 1.15 (2017-04-06)
* Added missing migration and changed `max_length` to 255 for model `Upload`'s attribute `uploaded_file`
## 1.14 (2017-03-30)
* Updated default behaviour of the `get_header` handler in `TusMiddleware`.
## 1.13 (2017-03-30)
* Implemented handler for retrieving request headers in `TusMiddleware`.
## 1.12 (2017-03-10)
* Updated `validate_chunk` signature
## 1.11 (2017-03-10)
* Implemented `validate_chunk` handler method in TusPatchMixin
* Implemented `validate_success_headers` handler method in TusCreateMixin
## 1.10 (2017-03-09)
* Disabled chunk writing to disk
## 1.9 (2017-03-09)
* Introduced TusUploadStreamParser
## 1.8 (2017-03-09)
* Introduced setting to include serializer data in respons body
## 1.7 (2017-03-09)
* Bugfixes
## 1.6 (2017-03-09)
* Bugfixes
## 1.5 (2017-03-09)
* Updated middleware, removed required header (bug!)
## 1.4 (2017-03-09)
* Initial migration
## 1.3 (2017-03-09)
* Renamed some parameters / classes
## 1.2 (2017-03-09)
* Cleanup repository.
## 1.1 (2017-03-09)
* First release on PyPI.
Raw data
{
"_id": null,
"home_page": "https://github.com/leukeleu/leukeleu-drf-tus",
"name": "leukeleu-drf-tus",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "drf-tus",
"author": "Leukeleu",
"author_email": "info@leukeleu.nl",
"download_url": "https://files.pythonhosted.org/packages/21/a1/b19693a40578f5d1d3a262770cb407a5148245c313d8a389490602b1ac1b/leukeleu-drf-tus-2.0.0.tar.gz",
"platform": null,
"description": "leukeleu-drf-tus\n================\n\nA [tus](https://tus.io) library for [Django REST Framework](https://www.django-rest-framework.org).\n\n\nQuickstart\n----------\n\nInstall drf-tus:\n\n pip install leukeleu-drf-tus\n\nAdd it to your `INSTALLED_APPS`:\n\n INSTALLED_APPS = (\n ...\n 'rest_framework_tus',\n ...\n )\n\nAdd the middleware to `MIDDLEWARE`:\n\n MIDDLEWARE = (\n ...\n 'rest_framework_tus.middleware.TusMiddleware',\n ...\n )\n\nAdd drf-tus's URL patterns:\n\n urlpatterns = [\n ...\n path('', include('rest_framework_tus.urls', namespace='rest_framework_tus')),\n ...\n ]\n\n\nFeatures\n--------\n\nThis library implements the following TUS API v1.0.0 protocols:\n\n* [Core Protocol](http://tus.io/protocols/resumable-upload.html#core-protocol)\n* [Creation Protocol](http://tus.io/protocols/resumable-upload.html#creation)\n* [Expiration Protocol](http://tus.io/protocols/resumable-upload.html#expiration)\n* [Checksum Protocol](http://tus.io/protocols/resumable-upload.html#checksum)\n* [Termination Protocol](http://tus.io/protocols/resumable-upload.html#termination)\n\n\nRunning Tests\n-------------\n\nDoes the code actually work?\n\n docker compose exec python make coveragetest\n\n# History\n\n## 2.0.0 (2023-05-31)\n\n* Release to PyPi\n\n## 2.0.0.dev0 (2023-05-25)\n\n* Renamed package to leukeleu-drf-tus\n* Major refactoring\n\n## 1.21.2 (2018-09-04)\n\n* Fixed Django compatibility\n\n## 1.21.1 (2018-08-01)\n\n* Fixed failing travis build\n\n## 1.21 (2018-08-01)\n\n* Updated Django dependency and dropped support for Python 3.3.x (https://github.com/dirkmoors/drf-tus/pull/9)\n\n## 1.20 (2018-02-12)\n\n* Implemented per-view max file size setting (https://github.com/dirkmoors/drf-tus/pull/8)\n\n## 1.19 (2018-02-08)\n\n* Fixed bug that occured when pausing uploads (https://github.com/dirkmoors/drf-tus/pull/7)\n\n## 1.18 (2018-02-08)\n\n* Make the metadata 'filename' key a setting. (https://github.com/dirkmoors/drf-tus/pull/2)\n* Switch from (Positive)IntegerField to BigIntegerField for the upload_length and upload_offset fields (https://github.com/dirkmoors/drf-tus/pull/3)\n* Increase Django version support up to 1.11 (https://github.com/dirkmoors/drf-tus/pull/4)\n* Fix unicode errors (https://github.com/dirkmoors/drf-tus/pull/5)\n* Updated travis configuration\n\n## 1.17 (2017-05-10)\n\n* Exchanged use of `base64.encodebytes` to `base64.b64encode`.\n\n## 1.16 (2017-05-04)\n\n* Implemented `validate_filename` handler in `TusCreateMixin`.\n\n## 1.15 (2017-04-06)\n\n* Added missing migration and changed `max_length` to 255 for model `Upload`'s attribute `uploaded_file`\n\n## 1.14 (2017-03-30)\n\n* Updated default behaviour of the `get_header` handler in `TusMiddleware`.\n\n## 1.13 (2017-03-30)\n\n* Implemented handler for retrieving request headers in `TusMiddleware`.\n\n## 1.12 (2017-03-10)\n\n* Updated `validate_chunk` signature\n\n## 1.11 (2017-03-10)\n\n* Implemented `validate_chunk` handler method in TusPatchMixin\n* Implemented `validate_success_headers` handler method in TusCreateMixin\n\n## 1.10 (2017-03-09)\n\n* Disabled chunk writing to disk\n\n## 1.9 (2017-03-09)\n\n* Introduced TusUploadStreamParser\n\n## 1.8 (2017-03-09)\n\n* Introduced setting to include serializer data in respons body\n\n## 1.7 (2017-03-09)\n\n* Bugfixes\n\n## 1.6 (2017-03-09)\n\n* Bugfixes\n\n## 1.5 (2017-03-09)\n\n* Updated middleware, removed required header (bug!)\n\n## 1.4 (2017-03-09)\n\n* Initial migration\n\n## 1.3 (2017-03-09)\n\n* Renamed some parameters / classes\n\n## 1.2 (2017-03-09)\n\n* Cleanup repository.\n\n## 1.1 (2017-03-09)\n\n* First release on PyPI.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A Tus (tus.io) library for Django Rest Framework",
"version": "2.0.0",
"project_urls": {
"Homepage": "https://github.com/leukeleu/leukeleu-drf-tus"
},
"split_keywords": [
"drf-tus"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "dd6419fd03535ae1e778c3ba0c2c5a5b52612eeda2b39c84adcd33f024e9fff9",
"md5": "36e65c9744abeabf1679ab38228deb0e",
"sha256": "f27607acad783d5d82be147911d0dabdfdb009dee6fe07a81cbddfb65cab6b2e"
},
"downloads": -1,
"filename": "leukeleu_drf_tus-2.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "36e65c9744abeabf1679ab38228deb0e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 20891,
"upload_time": "2023-05-31T15:27:48",
"upload_time_iso_8601": "2023-05-31T15:27:48.503511Z",
"url": "https://files.pythonhosted.org/packages/dd/64/19fd03535ae1e778c3ba0c2c5a5b52612eeda2b39c84adcd33f024e9fff9/leukeleu_drf_tus-2.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "21a1b19693a40578f5d1d3a262770cb407a5148245c313d8a389490602b1ac1b",
"md5": "4cf22e3ff2d438e597e4435ea9842b05",
"sha256": "22fb17c9d57ab89bbae78d5678768d4e1a0da4caceedce96a3d3026f11b6ad61"
},
"downloads": -1,
"filename": "leukeleu-drf-tus-2.0.0.tar.gz",
"has_sig": false,
"md5_digest": "4cf22e3ff2d438e597e4435ea9842b05",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 17304,
"upload_time": "2023-05-31T15:27:50",
"upload_time_iso_8601": "2023-05-31T15:27:50.160420Z",
"url": "https://files.pythonhosted.org/packages/21/a1/b19693a40578f5d1d3a262770cb407a5148245c313d8a389490602b1ac1b/leukeleu-drf-tus-2.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-31 15:27:50",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "leukeleu",
"github_project": "leukeleu-drf-tus",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "leukeleu-drf-tus"
}