Django-arcutils

Latest version: v2.24.0

Safety actively analyzes 629811 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 5 of 6

2.4.0

- Upgraded ldap3 from 1.0.4 to 1.1.2
- Made copying of wsgi.py more convenient.

2.3.0

- Made `settings` arg to `init_settings()` public
- Renamed `settings.get_settings()` to `settings.get_module_globals()`
for clarity
- Improved & standardized default settings for `cas`, `ldap`, and
`masquerade` packages
- Upgraded certifi 2015.11.20.1 => 2016.2.28
- Upgraded django-local-settings 1.0a13 => 1.0a14

2.2.1

Fixed

- CAS: Add `CASBackend.get_user()` method (a copy of
`ModelBackend.get_user()`); this is necessary for `CASBackend` to
actually be used as an auth backend.

2.2.0

Added

- Testing: Added `patch_json` method to our test `Client`.

Changed

- LDAP: Reverted to SYNC as default connection strategy. We're really
thrashing around on this, and I can't tell if it's because of how the
LDAP service is setup, bugs in the ldap3 library, or bugs in our code.
One thing to recommend the SYNC strategy is that its code is actually
readable in the ldap3 code base. The other strategies are a mess.
- LDAP: Changed default value for `auto_bind` connection option to
`AUTO_BIND_NONE` to match the ldap3 default (instead of using `True`,
which is equivalent to `AUTO_BIND_NO_TLS`).
- LDAP: Split the `ldap` module up into various modules in a new `ldap`
package; the module was getting unwieldy, and this paves the way
toward some parsing-related refactoring I plan on doing at some point.

Fixed

- LDAP: Wait for search responses inside `with connection` block;
the connection can become unbound while waiting outside the `with`
block, which can cause errors in some cases (esp. w/ TLS it seems).

2.1.0

Added

- LDAP: The `arcutils ldap` console script gained two new options:
`--search-base` and `--attibutes`; these correspond `ldapsearch()`
keyword args
- LDAP: More tests, especially of phone number parsing

Changed

- LDAP: Set the default value of the `attributes` keyword arg of
`ldapsearch()` to `None`; this way, `None` can be passed to
indicate that the default set of attributes should be fetched
- LDAP: Allow default attributes fetched for connections to be
specified via `LDAP.{name}.attributes` settings
- LDAP: Change order of `attributes` and `parse` keyword args to
`ldapsearch()`
- LDAP: Make phone number parsing more robust

Fixed

- LDAP: Only include extension in user profile if the user's phone
number looks like a PSU number
- LDAP: Don't include `None` in the list of email addresses
- LDAP: Don't return 'Nonepdx.edu' as a fallback email address (i.e.,
when the LDAP attributes don't contain a username field)

2.0.0

Version 2 revamps ARCUtils to be more of a library.

Below is a summary of the differences between v1 and v2. This summary
should not be considered exhaustive.

Notable differences from v1:

- No longer supports Python 2; supports only Python 3.3+
- No longer configures any functionality via Django `AppConfig`
- No longer adds template tags to Django's built-ins
- No longer does any monkey-patching
- Improves & expands on existing LDAP functionality
- Consolidates generally-useful stuff implemented in various ARC apps;
e.g., base model and test classes
- Adds a separate `tests` package & more tests
- Lots of cleanup

Notable removals:

- `logging` module; logging config is now handled exclusively via
settings
- Inlined django-bootstrap-form package
- Some old template tags (although some were kept but deprecated to make
migrating from v1 to v2 easier)
- Empty `admins` and `views` modules; newer versions of Django no longer
require these
- All usage of the `model_mommy` package
- Automatic session-clearing functionality; this can now be easily set
up to run as a daily task (see below)

Notable additions:

- Direct support for local settings
- A default set of local settings that should be suitable for most ARC
apps (or at least a good starting point)
- Basic base.html template for getting up-and-running
- Various template tags such as `google_analytics`, `jsonify`, and
`markdown`
- Masquerade app; similar to django-cloak, but simpler
- arcutils console script
- ldap subcommand
- PSU-specific CAS functionality
- Third party libs seem unmaintained and didn't provide some config
options we need
- Simpler than third party libs since it only implements the minimal
functionality we need
- Simple daily tasks runner
- Removes the need to use cron or Celery for simple once-a-day tasks
like rebuilding search indexes
- Removes the need for installing, e.g., session cleanup as a
request_finished handler

Page 5 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.