47 Commits

Author SHA1 Message Date
13ff31ed08 Fix #253 and #258: improve documentation 2020-07-20 16:27:43 +02:00
b7dbdf6ea6 Fix #245 : handle email as case insensitive while retrieving user in DB (#250)
* Add unit tests to enforce email case insensitivity

* Handle email as case insentitive while retrieving user in DB

* Apply isort/black

* Add migration doc
2020-07-09 18:44:25 +02:00
e63a67ead3 Bump packages and apply black 2020-07-09 17:28:41 +02:00
efad0e0fef fix "Swagger issue for endpoints register & update" (#233)
* fix: Change on the inheritance model, according to the documentation for the request body parameters. #171

* fix: Changes on the documentation examples to fix the inheritance problem when passing the User class (for create or update only passing the pydantic one) #171

* fix: Changes on the documentation examples to fix the inheritance problem when passing the User class (for create or update only passing the pydantic one) #171

* Put back inheritance on update model and factorize create_update_dict methods

Co-authored-by: François Voron <fvoron@gmail.com>
2020-06-27 17:19:53 +02:00
dc9f4c75ce adding warning of insecure SECRET (#232) 2020-06-15 15:41:15 +02:00
638ffb70d0 Add a migration doc for 2.0.0 2020-06-15 14:44:47 +02:00
75147a7071 fix documentation tokenUrl (#210)
* fix documentation tokenUrl

* Change default login tokenUrl
2020-06-15 14:33:52 +02:00
224a311792 fix "Authorization: Bearer Undefined" on Swagger (#213)
* fix "Authorization: Bearer Undefined" on Swagger

* updating pytest to recognize access_token

* fix pytest KeyError

* adding changes requested (add token_type to documentation and tests)

* fix documentation
2020-06-15 14:04:03 +02:00
e850871e79 Fix #208: add migrations information for MongoDB users 2020-05-29 07:50:43 +02:00
9508768502 Add get_optional_* dependency callables 2020-05-25 08:13:42 +02:00
7721f8dcc1 Revamp authentication routes structure (#201)
* Fix #68: use makefun to generate dynamic dependencies

* Remove every Starlette imports

* Split every routers and remove event handlers

* Make users router optional

* Pass after_update handler to get_users_router

* Update documentation

* Remove test file

* Write migration doc for splitted routers
2020-05-24 10:18:01 +02:00
0a0dcadfdc Use real UUID for User id. and OAuthAccount id. (#198)
* Use UUID for user id and oauth account id

* Update documentation for UUID

* Tweak GUID definition of SQLAlchemy to match Tortoise ORM one

* Write migration doc
2020-05-21 16:40:33 +02:00
5ea85beb32 Fix default port in flow page 2020-04-25 14:35:13 +02:00
bf0c924501 Complete documentation with a flow page with curl examples 2020-04-25 14:32:08 +02:00
a9ee467518 Remove list endpoint and related methods 2020-04-25 11:46:20 +02:00
639217bb08 Make unit tests full async (#160)
* Bump pytest-asyncio from 0.10.0 to 0.11.0

Bumps [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) from 0.10.0 to 0.11.0.
- [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases)
- [Commits](https://github.com/pytest-dev/pytest-asyncio/compare/v0.10.0...v0.11.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Bump pytest-asyncio from 0.10.0 to 0.11.0

Bumps [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) from 0.10.0 to 0.11.0.
- [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases)
- [Commits](https://github.com/pytest-dev/pytest-asyncio/compare/v0.10.0...v0.11.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Convert tests to full async

* Change deprecated yield_fixture

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: François Voron <fvoron@gmail.com>
2020-04-25 11:34:11 +02:00
6607d968ff Fix #100: wrong event handlers usage in full examples 2020-02-07 08:00:15 +01:00
b7bb7c2e31 Apply formatting 2020-02-03 10:49:54 +01:00
9353bb79cb Implement on_after_update event handle 2020-02-03 10:48:53 +01:00
05b1df9a16 Implement logout route 2020-02-03 10:12:33 +01:00
e83ca3efed Merge branch 'master' of github.com:frankie567/fastapi-users 2020-01-20 10:48:04 +01:00
57a37150a0 Add Request in event_handlers arguments 2020-01-20 10:46:45 +01:00
70f0419490 Correct docs for User model (#89) 2020-01-19 20:52:09 +01:00
88b133d41c Implement OAuth2 flow (#88)
* Move users router in sub-module

* Factorize UserRouter into EventHandlersRouter

* Implement OAuth registration/login router

* Apply isort/black

* Remove temporary pytest marker

* Fix httpx-oauth version in lock file

* Ensure ON_AFTER_REGISTER event is triggered on OAuth registration

* Add API on FastAPIUsers to generate an OAuth router

* Improve test coverage of FastAPIUsers

* Small fixes

* Write the OAuth documentation

* Fix SQL unit-tests by avoiding collisions in SQLite db files
2020-01-17 11:43:17 +01:00
dbbb9144b0 Expose more options for Cookie authentication 2020-01-11 10:55:02 +01:00
104a6c6bf5 Inject every models variations and DB model in DB adapters (#84)
* Inject every model variations in router and DB model in DB adapters

* Update documentation and import Tortoise in db module

* Use path operation decorator dependencies for superuser routes
2020-01-04 15:36:34 +01:00
49deb437a6 Fix #42: multiple authentication backends (#47)
* Revamp authentication to allow multiple backends

* Make router generate a login route for each backend

* Apply black

* Remove unused imports

* Complete docstrings

* Update documentation

* WIP add cookie auth

* Complete cookie auth unit tests

* Add documentation for cookie auth

* Fix cookie backend default name

* Don't make cookie return a Response
2019-12-04 13:32:49 +01:00
b5b0bbbb01 Tortoise ORM support (#59)
* add tortoise to dependencies

* add tortoise as optional dependency in pyproject.toml

* add tortoise support (tests needed)

* Add tortoise support (also defined orm_mode in pydantic model

* tests for tortoise support

* format by black

* docs for tortoise

* delete type annotations

* delete underscore

* do it in 1 line

* add 1 line before yield

* fix in docs

* fix bug and add annotation for test

* Tweak documentation and fix Tortoise error about id update

* Improve Tortoise coverage by using get instead of filter

* Fix Pipfile.lock
2019-12-03 21:24:27 +01:00
37b34e6d28 Add one more example for route dependency (#40)
* Add one more example for routing dependencie

* fix for more purity

* Delete f-string
2019-11-06 13:14:45 +01:00
658161518a Add error codes on routes (#34)
Fix #33
2019-10-31 10:10:53 +01:00
9b7ec58800 #21: Add superuser routes (#30)
* Add CRU superuser routes

* Add delete method on DB adapters

* Add superuser delete route

* Add superuser routes documentation

* Pass black formatter
2019-10-29 13:32:44 +01:00
d9a9d9ba39 Fix lines highlights in MongoDB doc 2019-10-27 16:40:22 +01:00
ab0b187f20 Implement MongoDB database adapter (#29)
* Implement MongoDB adapter using motor

* Add mongo container to build pipeline

* Tidy up dependencies

* Update documentation for MongoDB

* Export MongoDB adapter from db package

* Pass black format

* Update README
2019-10-27 16:34:30 +01:00
7485f79fc5 Fix documentation internal links 2019-10-25 08:54:05 +02:00
3506df31e7 Add ON_AFTER_REGISTER event handler 2019-10-25 08:28:29 +02:00
008a8296f2 Define on_after_forgot_password with a decorator 2019-10-24 09:18:07 +02:00
089d088268 Fix Deepsource issues (#22)
* Fix Deepsource issues

* Add docs/ to Deepsource exclusion list

* Fix black formatting
2019-10-20 16:16:52 +02:00
f337bf1491 Use README as index for documentation 2019-10-20 10:23:46 +02:00
e146e4bca4 Fix #13: add /me update route 2019-10-20 10:11:48 +02:00
1996ed69ea Fix #14: add /me route 2019-10-20 09:30:26 +02:00
5d4979f9a9 Fix #19: 201 status code on successful registration 2019-10-19 18:36:57 +02:00
a4171f8bea Fix #18: check for existing user on registration 2019-10-19 18:31:08 +02:00
a5618399a1 Fix #9: Write documentation (#16)
* Start to write documentation

* Add docs favicon

* Add routes documentation

* Add doc about dependency callables

* Add information about how to make authenticated calls
2019-10-19 18:16:08 +02:00
ef1f60d7e5 Fix logo in doc index 2019-10-13 11:24:00 +02:00
3225cab543 Add logo for Github and update doc index 2019-10-13 11:06:37 +02:00
f2bd2c6485 Update README 2019-10-09 16:58:46 +02:00
f6ff897232 Setup Mkdocs 2019-10-09 08:07:49 +02:00