-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
User self-registration #435
Conversation
246db8b
to
40cc1ea
Compare
Codecov Report
@@ Coverage Diff @@
## master #435 +/- ##
==========================================
+ Coverage 78.40% 79.07% +0.67%
==========================================
Files 66 70 +4
Lines 8019 8779 +760
Branches 1080 1201 +121
==========================================
+ Hits 6287 6942 +655
- Misses 1496 1558 +62
- Partials 236 279 +43
Continue to review full report at Codecov.
|
@ChaamC |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review in progress 5/74
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review in progress 19/74
magpie/alembic/versions/2021-04-16_dea413e13a8a_pending_users_and_statuses.py
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review completed. Great job!
magpie/alembic/versions/2021-04-16_dea413e13a8a_pending_users_and_statuses.py
Show resolved
Hide resolved
1ac60d2
to
48d9a8d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Still good for me
…cli to test settings/contents
…enabled + fix more tests
…wngrade step + enforce non-null pending user-name and password
…user registration
…he approved email
…il about decline email-template
e97d68c
to
c1b2423
Compare
Features / Changes
UserStatuses.WebhookErrorStatus = 0
toUserStatuses.WebhookError = 2
to provide furtherfunctionalities. Migration script applies this change to existing
User
entries.status
value by the API routes to use the string name representation instead of the integer.status
search query handling ofGET /users
path for improved search and filtering capabilities.UserStatuses.Pending = 4
value that can be queried by administrators.UserPending
object with corresponding table for pending approval by an administrator for some newself-registered user. Migration script creates the table with expected fields.
/register/users
and/ui/register/users
endpoints for user account self-registration.whenever
MAGPIE_USER_REGISTRATION_ENABLED
was activated to avoid losing the confirmation of the original email.MAGPIE_USER_REGISTRATION_ENABLED
to control whether user account self-registrationfeature should be employed.
With it comes multiple other
MAGPIE_USER_REGISTRATION_<...>
settings to customize notification emails.MAGPIE_SMTP_<...>
configuration settings to control connections to notification email SMTP server.empty_missing
flag toget_constant
utility to allow validation against existing environment variables orsettings that should be considered as invalid when resolved value is an empty string.
format
for applicableurl
andemail
elements in the OpenAPI specification.send_email
to test various email template generation and SMTP configurations to send emails.-d
option ofregister_providers
CLI operation (previously used to select database mode)by
--db
to avoid conflict with logging flags.-d
and-l
options ofbatch_update_users
CLI operation respectively by-D
and-L
to avoid conflict with logging flags.
Bug Fixes
Explicitly disallow duplicate email entries, both with pre-validation and literal database values.
Note that any duplicate email will be raised an migration script will fail. Manual cleanup of the undesired entry
will be required, as
Magpie
will not be able to assume which one corresponds to the valid user to preserve.Add
ziggurat_foundations
extensions for Pyramid directly in the code during application setup such that an INIconfiguration file that omits them from
pyramid.include
won't causeMagpie
to break.Other references
Implements feature DAC-117