Skip to content

1.0.0 [2022-04-18]

Compare
Choose a tag to compare
@nemesifier nemesifier released this 18 Apr 20:36
· 109 commits to master since this release
1.0.0

Version 1.0.0 [2022-04-18]

Features

Changes

Backward incompatible changes

  • Updated prefixes of REST API URLs:
    • API endpoints dedicated to FreeRADIUS have moved to
      /api/v1/freeradius/
    • the rest of the API endpoints have moved to /api/v1/radius/
  • Allowed username and phone_number in password reset API, the
    endpoint now accepts the "input" parameter instead of "email"
  • Removed customizations for checks and password hashing because they
    are unmaintained, any user needing these customizations is advised
    to implement them as a third party app
  • Improved REST API to change password: inherited PasswordChangeView
    of openwisp-users to add support for the current-password field in
    password change view

Dependencies

  • Added support for Django 3.2 and 4.0
  • Dropped support for Django 2.2
  • Upgraded celery to 5.2.x
  • Updated and tested Django REST Framework to 3.13.0
  • Added support for Python 3.8, 3.9
  • Removed support for Python 3.6

Other changes

  • Moved AccountingView to freeradius endpoints
  • Relaxed default values for the SMS token settings
  • Switched to new navigation menu and new OpenWISP theme
  • Allowed users to sign up to multiple organizations
  • Update username when phone number is changed if username is equal to
    the phone number
  • Update stop time and termination to None if status_type is
    Interim-Update
  • Send password reset emails using HTML theme: leverage the new
    openwisp-utils send_email function to send an HTML version of
    the reset password email based on the configurable email HTML theme
    of OpenWISP
  • Save the user preferred language in obtain and validate token views
  • Added validation check to prevent invalid username in batch user
    creation
  • Allowed to set the Password Reset URL setting via the admin
    interface
  • Added soft limits to celery tasks for background operations
  • Generalized the implementation of the fallback model fields which
    allow overriding general settings for each organization

Bugfixes

  • Fixed login template of openwisp-admin-theme
  • Fixed swagger API docs collision with openwisp-users
  • Ensured each user can be member of a group only once
  • Radius check and reply should check for organization membership
  • ValidateAuthTokenView: show phone_number as null if None
  • Freeradius API: properly handle interaction between multiple orgs:
    an user trying to authorize using the authorization data of an org
    for which they are not member of must be rejected
  • Fixed radius user group creation with multiple orgs
  • Added validation of phone number uniqueness in the registration API
  • Fixed issues with translatable strings:
    • we don't translate log lines anymore because these won't be
      shown to end users
    • gettext does not work with fstrings, therefore the use of
      str.format() has been restored
    • improved some user facing strings
  • Fixed Accounting-On and Accounting-Of accounting requests with blank
    usernames
  • Delete any cached radius token key on phone number change
  • Fixed handling of interim-updates for closed sessions: added
    handling of "Interim-Updates" for RadiusAccounting sessions that are
    closed by OpenWISP when user logs into another organization
  • Flag user as verified in batch user creation
  • Added validation which prevents the creation of duplicated
    check/reply attributes