-
Notifications
You must be signed in to change notification settings - Fork 347
/
CHANGELOG
535 lines (377 loc) · 20 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
===================================
django-registration-redux changelog
===================================
## Version 2.14, TBD
## Version 2.13, 26 October, 2023
- Feature: Add Bahasa Indonesia translations
`#434 <https://github.com/macropin/django-registration/pull/434>_`
- Bugfix: Update German translations
`#438 <https://github.com/macropin/django-registration/pull/438>_`
- Feature: Test against Django 4.2
`#439 <https://github.com/macropin/django-registration/pull/439>_`
- Bugfixes:
`#436 <https://github.com/macropin/django-registration/pull/436>_`
`#437 <https://github.com/macropin/django-registration/pull/437>_`
`#440 <https://github.com/macropin/django-registration/pull/440>_`
`#441 <https://github.com/macropin/django-registration/pull/441>_`
## Version 2.12, 5 February, 2023
- BACKWARDS-INCOMPATIBLE CHANGE: Remove support for Python 3.6
- Bugfix: Show registration email on registration complete page
`#427 <https://github.com/macropin/django-registration/pull/427>_`
- Bugfix: Update French compiled messages
`#429 <https://github.com/macropin/django-registration/pull/429>_`
- Feature: Test against Django 4.1 and Python 3.11
`#432 <https://github.com/macropin/django-registration/pull/432>_`
- Bugfix: Add default*app_config (for Django 3.1 and prior)
`#430 <https://github.com/macropin/django-registration/pull/430>*`
## Version 2.11, 21 June, 2022
- Bugfix: Update French translations.
`#424 <https://github.com/macropin/django-registration/pull/424>_`
## Version 2.10, 8 March, 2022
- BACKWARDS-INCOMPATIBLE CHANGE: Remove support for Django < 3.1 and Python
3.5
- Bugfix: Update Polish translations.
`#417 <https://github.com/macropin/django-registration/pull/417>_`
`#418 <https://github.com/macropin/django-registration/pull/418>_`
- Bugfix: Set default*auto_field on RegistrationProfile
`#414 <https://github.com/macropin/django-registration/pull/414>*`
- Feature: Django 3.2 support.
`#412 <https://github.com/macropin/django-registration/pull/412>_`
- Feature: Django 4.0 support.
`#419 <https://github.com/macropin/django-registration/pull/419>_`
## Version 2.9, 1 January, 2021
- BACKWARDS-INCOMPATIBLE CHANGE: Remove support for Django 1.11 and Python
2.7.
- Feature: Django 3.1 support.
`#398 <https://github.com/macropin/django-registration/pull/398>_`
`#399 <https://github.com/macropin/django-registration/pull/399>_`
`#400 <https://github.com/macropin/django-registration/pull/400>_`
`#401 <https://github.com/macropin/django-registration/pull/401>_`
## Version 2.8, 7 May, 2020
- Feature: Greek translations - `#381
<https://github.com/macropin/django-registration/pull/381>_`
## Version 2.7, 4 January, 2020
- Feature: Django 3.0 support - `#373
<https://github.com/macropin/django-registration/pull/373>_`
- Feature: Use SHA256 instead of SHA1 for `activation_key` - `#362
<https://github.com/macropin/django-registration/pull/362>_`
- Bugfix: Changed path reference from 'login' to 'auth*login'. -
`#335 <https://github.com/macropin/django-registration/pull/335>*`
## Version 2.6, 10 April, 2019
- Bugfix: Pass `user` instance instead of `user.get_username()` to template
context. -
`#350 <https://github.com/macropin/django-registration/pull/350>_`
- Feature: Add testing for Django 2.2 and Python 3.7 (no code changes
required). - `#352
<https://github.com/macropin/django-registration/pull/352>_`
- Bugfix: Send emails on commit `#355
<https://github.com/macropin/django-registration/pull/355>_`
## Version 2.5, 27 October, 2018
- Feature: Add support for Django 2.1. -
`#337 <https://github.com/macropin/django-registration/pull/337>_`
- Bugfix: Don't delete if user.is*active=True in cleanupregistration. -
`#342 <https://github.com/macropin/django-registration/pull/342>*`
## Version 2.4, 11 April, 2018
- Bugfix: Updates Spanish translation messages. -
`#333 <https://github.com/macropin/django-registration/pull/333>_`
## Version 2.3, 10 April, 2018
- Bugfix: Updates Spanish translation messages. -
`#330 <https://github.com/macropin/django-registration/pull/330>_`
## Version 2.2, 08 February, 2018
- Bugfix: Updates Russian translation messages. -
`#321 <https://github.com/macropin/django-registration/pull/321>_`
## Version 2.1, 17 December, 2018
- Bugfix: Fix formatting issues in documentation.
`#319 <https://github.com/macropin/django-registration/pull/319>_`
- Bugfix: Use `get_username()` instead of directly accessing the username to
support subclasses of `AbstractBaseUser`
`#318 <https://github.com/macropin/django-registration/pull/318>_`
## Version 2.0, 05 December, 2017
- BACKWARDS-INCOMPATIBLE CHANGE: Remove support for Django < 1.11.
- BACKWARDS-INCOMPATIBLE CHANGE: Remove `registration/urls.py` in favor of
`registration/backends/default/urls.py`
- Feature: Add compatibility for Django 2.0.
## Version 1.9, 16 November, 2017
- Bugfix: Fix `SupervisedRegistrationProfile` so expiration depends on
profiles that have completed the entire process or have exceeded the
`ACCOUNT_ACTIVATION_DAYS` -
`#310 <https://github.com/macropin/django-registration/pull/310>_`
- Bugfix: Prevent resending an activation email if multiple
`RegistrationProfile` objects exist for the given email address. -
`#311 <https://github.com/macropin/django-registration/pull/311>_`
- Bugfix: Add logging to `RegistrationProfile.delete_expired_users`, use
`profile.activated` instead of `user.is_active`. -
`#308 <https://github.com/macropin/django-registration/pull/308>_`
- BACKWARDS-INCOMPATIBLE CHANGE: Change of return signature of
`RegistrationProfileManager.activate_user`. A tuple containing the User
instance and a boolean of whether or not said user was activated is now
returned. -
`#309 <https://github.com/macropin/django-registration/pull/309>`\_.
- Bugfix: Updates `pt_BR` translation messages. -
`#305 <https://github.com/macropin/django-registration/pull/305>_`
- Bugfix: Update all translation strings with `django-admin makemessages --all`. -
`#304 <https://github.com/macropin/django-registration/pull/304>_`
- Feature: Configure from email address from `Site` object. -
`#294 <https://github.com/macropin/django-registration/pull/294>_`
## Version 1.8, 03 October, 2017
- Bugfix: Add `outlook.com` to the list of free email providers. -
`#287 <https://github.com/macropin/django-registration/pull/287>_`
- Documentation: Add possible settings for activation emails. -
`#283 <https://github.com/macropin/django-registration/pull/282>_`
- Feature: Added `REGISTRATION_ADMINS` setting to support different admins
(than those in `ADMINS`) in charge of registration. Falls back to `ADMINS` in
case this is not set. -
`#279 <https://github.com/macropin/django-registration/pull/279>_`
- Documentation: Added documentation regarding admin approval registration. -
`#279 <https://github.com/macropin/django-registration/pull/279>_`
- Redirect logged in users away from the registration page if authenticated. -
`#262 <https://github.com/macropin/django-registration/pull/262>_`
- Document how to send password reset email with HTML content. -
`#276 <https://github.com/macropin/django-registration/pull/276>_`
## Version 1.7, 18 July, 2017
- Fix security issue of leaking password reset token through the Referer
header. - `#268 <https://github.com/macropin/django-registration/pull/268>_`
- Fix migration issue when using multiple databases - `#264 <https://github.com/macropin/django-registration/pull/264>_`
- Improve German translation - `#259 <https://github.com/macropin/django-registration/pull/259>_`
- Fix bug in templates if password reset is unsuccessful - `#269
<https://github.com/macropin/django-registration/pull/269>_`
## Version 1.6, 25 April, 2017
- Feature: Make search for email case insensitive when resending activation
email.
`#250 <https://github.com/macropin/django-registration/pull/250>`\_.
- Feature: Add `RegistrationFormUsernameLowercase` to force all usernames to
lowercase.
`#251 <https://github.com/macropin/django-registration/pull/251>`\_.
## Version 1.5, 08 April, 2017
- BACKWARDS-INCOMPATIBLE CHANGE: Remove support for Django 1.7.
- BACKWARDS-INCOMPATIBLE CHANGE: Change signature of
`RegistrationProfileManager.activate_user`.
`site` is now a required positional argument.
`#244 <https://github.com/macropin/django-registration/pull/244>`\_.
- Feature: Added workflow to resend activation email. See
`#161 <https://github.com/macropin/django-registration/pull/161>`\_.
- Enhancement: Separate logic between account creation and activation.
See: `#171 <https://github.com/macropin/django-registration/issues/171>`\_.
- Bugfix: Add page title to `activate.html`
- Feature: Added a 3-step registration flow requiring manual admin approval.
See: `#184 <https://github.com/macropin/django-registration/pull/184>`\_.
- Enhancement: Using a more cryptographically secure method for generating
activation keys.
See: `#213 <https://github.com/macropin/django-registration/issues/213>`\_.
- Bugfix: Add redirection setting for simple backend after successful
registration.
See: `#239 <https://github.com/macropin/django-registration/pull/239>`\_.
- Bugfix: Use dict instead of `RequestContext` when sending activation email.
* See: `#194 <https://github.com/macropin/django-registration/pull/194>`\_.
## Version 1.4, 21 February, 2016
- BACKWARDS-INCOMPATIBLE CHANGE: Remove unnecessary `_RequestPassingFormView`.
See `#56 <https://github.com/macropin/django-registration/pull/56>`\_.
- Compatibility: Added support for Django 1.10
- Bugfix: Pass request object into `resend_activation_mail` so the email
template can render the site URL with the correct schema (HTTP, HTTPS).
- Bugfix: Ensure `register` method has consistent arguments.
See `#153 <https://github.com/macropin/django-registration/pull/153>`\_.
- Enhancement: Add invoke tasks, requirements.txt file, and make wrapper to
help developers get setup.
See `#154 <https://github.com/macropin/django-registration/pull/154>`\_.
## Version 1.3, 12 January, 2016
- Add support for Django 1.9. django-registration supports Django 1.7 and newer.
- Feature: Added `resend_activation_mail` method to `RegistrationManager`.
- Feature: Added support for additional registration forms;
`RegistrationFormTOSAndUniqueEmail` and `RegistrationFormTOSAndNoFreeEmail`.
See `#113 <https://github.com/macropin/django-registration/pull/113>`\_.
- Bugfix: Properly extend the base registration template.
- Enhancement: Re-enable Python 3.3 support.
- Enhancement: Distinguish between account activation failure and attempted
reactivation. See `#72 <https://github.com/macropin/django-registration/pull/72>`\_.
- Bugfix: Install an unzipped package in order to support running migrations.
See `#104 <https://github.com/macropin/django-registration/pull/104>`\_.
- Feature: Added Thai, Hungarian, and Russian localizations.
- Feature: Added support for specifying template paths for activation email.
## Version 1.2, 11 May, 2015
- BACKWARDS-INCOMPATIBLE CHANGE: When overriding the
`registration/activation_email.txt` template, you must also now override the
`registration/activation_email.html` template or set the setting
(`REGISTRATION_EMAIL_HTML`) to `False`.
- BACKWARDS-INCOMPATIBLE CHANGE: An initial migration for Django > 1.7 has been
provided. South users will need to configure a null migration with
(`SOUTH_MIGRATION_MODULES`).
- BACKWARDS-INCOMPATIBLE CHANGE: A `base.html` template is now assumed to
exist.
- Feature: Added support for disabling HTML emails using the setting option
`REGISTRATION_EMAIL_HTML`.
- Feature: Added settings' options that allows to exlude the default auth urls
(`INCLUDE_AUTH_URLS`) and register url (`INCLUDE_REGISTER_URL`).
- Feature: Added support to dynamically import any chosen registration form
using the settings option `REGISTRATION_FORM`.
- Enhancement: Make `RegistrationForm` a subclass of Django's
`UserCreationForm`
- Enhancement: Use registration form `save` method to create user instance,
whenever form is a subclass of Django's `ModelForm`.
## Version 1.1, 19 September, 2014
This represents the first release of `django-registration-redux`.
It is based off the defunct v1.0 `django-registration` abandoned by James Bennett.
- Compatibility: Added support for Python 3.x.
- Compatibility: Added support for Django 1.6, 1.7.
- Feature: Added support for mime/multipart HTML / Text registration
emails.
- Feature: Added `REGISTRATION_EMAIL_SUBJECT_PREFIX` config.
- Feature: Added support for `REGISTRATION_AUTO_LOGIN` config.
- Feature: Added support for `SEND_ACTIVATION_EMAIL` config.
- Bugfix: Signal "user_activated" was being sent twice.
- Bugfix: Fixed broken tests.
The change log below is from the versions maintained
by James Bennett.
## Version 1.0, 17 June 2013
(Taken from release-notes.rst in this release)
- The 1.0 release of django-registration represents a complete
rewrite of the previous codebase. For information on upgrading,
consult :ref:`the upgrade guide <upgrade>`.
- The largest overall change is that in place of the monolithic backend
classes and function-based views found in django-registration 0.8, in
1.0 all views are class-based. A "backend" now consists of,
typically, one or two subclasses of :ref:`the built-in base views
<views>`.
- Implementing these as class-based views allows for far simpler
configuration and customization, without the overhead involved in
supporting large numbers of optional keyword arguments to
function-based views, or the need to provide a separate class-based
infrastructure for implementing the logic of registration.
- Notably, this implementation is also completely backwards-compatible
for users of django-registration 0.8 who simply used the recommended
default URLConf for one of the supplied backends; those URLConfs exist
in the same locations, and have been rewritten to point to the
appropriate class-based views with the appropriate options.
## Version 0.8, 24 March 2012:
- Backend-based rewrite. See docs/upgrade.rst for details.
- Compatibility through Django 1.4.
## Version 0.7, 6 November 2008:
- Project hosting moved from Google Code to Bitbucket, and from a
Subversion repository to Mercurial.
- Added test suite.
- Full Django 1.0 compatibility.
- Registration and activation views now accept an `extra_context`
argument, identical to the way that argument works in Django's
generic views.
- Added a custom management command for cleaning up expired
registrations; you can now run `manage.py cleanupregistration` to
handle this.
- BACKWARDS-INCOMPATIBLE CHANGE: The "username" field in
`RegistrationForm` is now a `RegexField`.
- BACKWARDS-INCOMPATIBLE CHANGE: Removed the standalone script for
deleting expired user registrations; use the new management command
instead.
## Version 0.6, 29 July 2008:
- Packaged from revision 166 in Subversion.
- Fixed a multiple-objects exception in
`RegistrationFormUniqueEmail` when multiple users already have the
same email address.
- Changed the `success_url` of the `register()` view to use
reverse URL resolution.
- Added an `extra_context` argument to the `register` and
`activate` views, mimicking its functionality in Django's generic
views.
- BACKWARDS-INCOMPATIBLE CHANGE: Switched the admin declaration to be
compliant with the newforms-admin refactor; the admin declaration
now lives in `registration/admin.py`.
- BACKWARDS-INCOMPATIBLE CHANGE: Switched form imports from using
`django.newforms` to using `django.forms`; the old style now
raises a deprecation warning on Django trunk and on Django 1.0
alpha.
## Version 0.5, 4 June 2008:
- Packaged from revision 155 in Subversion.
- Added Serbian translation.
- Added Italian translation.
- Username/email uniqueness checks are now case-insensitive. This is
potentially backwards-incompatible if you relied on them being
case-sensitive, but I don't know of any reason why you'd be doing
that.
- Included forms now use lazy translations.
- The `register` view can now handle files submitted for use in form
processing.
- Reactivation of a manually-deactivated account is now prevented by
changing the activation key, on successful activation, to a dummy
string which will fail on subsequent activation attempts.
## Version 0.4p2, 10 Feburary 2008:
- Added Brazilian Portuguese translation.
- Added Japanese translation.
- Added Hebrew translation.
- Minor documentation fixes.
## Version 0.4p1, 16 December 2007:
- Packaged from revision 129 in Subversion.
- Added Polish translation.
## Version 0.4, 8 December 2007:
- Packaged from revision 122 in Subversion.
- Added Greek translation.
- Added Russian translation.
- Changed `maxlength` to `max_length` now that Django issues a
deprecation warning for it.
- BACKWARDS-INCOMPATIBLE CHANGE: Changed the password validation to be
on `clean()` instead of `clean_password2()`. This means that
errors from this must be accessed via `non_field_errors()`.
## Version 0.3p5, 6 October 2007:
- Packaged from revision 112 in Subversion.
- Added German translation.
- Fixed a mismatch between the default `RegistrationForm`'s maximum
length on email addresses and the actual maximum length on Django's
`User` model.
- Fixed a situation where bad input for the `password1` field on
`RegistrationForm` could cause validation of `password2` to fail
with an exception.
## Version 0.3p4, 4 October 2007:
- Packaged from revision 101 in Subversion.
- BACKWARDS-INCOMPATIBLE CHANGE: In response to larger numbers of
complaints from people trying to use the example templates as-is,
the example templates have been removed.
## Version 0.3p2, 23 September 2007:
- Packaged from revision 100 in Subversion.
- Fixed `activate` view to actually take the `template_name`
argument.
## Version 0.3p1, 22 September 2007:
- Packaged from revision 99 in Subversion.
- Fixed a typo in docs/overview.txt.
- Fixed a typo in bin/delete_expired_users.py.
- Added French translation.
## Version 0.3, 19 September 2007:
Packaged from revision 89 in Subversion; download at
http://django-registration.googlecode.com/files/registration-0.3.tar.gz
- Changed `register` and `activate` views to accept
`template_name` keyword argument for selecting a custom template.
- Changed `register` view to accept `form_class` keyword
argument specifying the form to use.
- BACKWARDS-INCOMPATIBLE CHANGE: Changed
`RegistrationManager.create_inactive_user` to use a template for
the subject of the activation email.
- BACKWARDS-INCOMPATIBLE CHANGE: Removed the `tos` field from
`RegistrationForm`; if you were relying on it, switch to using
`RegistrationFormTermsOfService` instead.
- BACKWARDS-INCOMPATIBLE CHANGE: The activation email template now
receives the current `Site` object as the context variable
`site`, and the `current_site` variable, which only held the
domain, is no longer available.
- Added script `bin/delete_expired_users.py` with instructions on
how to use it as a cron job to clean up expired/inactive accounts.
- Marked strings for translation and added `locale` directory so
that translations can be added.
- Updated to deal with merge of Django's Unicode branch into trunk;
now using Unicode-aware functions everywhere.
## Version 0.2, 29 May 2007:
Packaged from revision 76 in Subversion; download at
http://django-registration.googlecode.com/files/registration-0.2.tar.gz
- Added ability to specify a callback in
`RegistrationManager.create_inactive_user` or in the `register`
view to enable creation of site-specific user profile.
- Separated out the logic of creating the profile into a new method on
`RegistrationManager`: `create_profile`.
- Added URLConf support for various useful views in
`django.contrib.auth`.
- BACKWARDS-INCOMPATIBLE CHANGE: removed the `key_generated` field
from `RegistrationProfile`; activation key expiration is now
calculated based on the `date_joined` field in the `User` model.
Drop the `key_generated` column from your database when upgrading
from 0.1.
## Version 0.1, 23 May 2007:
Packaged from revision 56 in Subversion; download at
http://django-registration.googlecode.com/files/registration-0.1.tar.gz
- First packaged version using distutils.
- Added docs/ directory and overview.