lasso

This is a generic library part used within a SAML identity federation. There is superficial DEP-8 tests.

The test suite is historically disabled, re-enable it in debian/rules using:

CONFIGURE_ARGS := \
        ...
        --enable-tests=yes \

To run it:

apt install check
debuild
make check

The upstream issues may contain test cases that are easy to run through the Python bindings, e.g. #24830 and #24853.

Reverse dependencies

See for instance libapache2-mod-auth-mellon for setting-up a reverse dependency.

Another reverse dependency is Authentic2 from the same devs. Sadly it’s hard to find a version that is both recent enough for today’s pypi and old enough for ELTS’ Py3. And, that doesn’t have some transient issue, as the project appears to use rolling-releases.

# bullseye/buster (WIP)
git clone https://git.entrouvert.org/entrouvert/authentic.git
cd authentic/
git checkout v4.0
# python3 testsuite requirements too high in v4.50

apt install python3-lasso
apt install tox postgresql python3-dev libldap-dev libsasl2-dev libpq-dev sassc
su postgres -c "createuser -s $USER"

# Run testsuite
tox -e authentic-py3-dj32-drf312-djtables241
# fix-up django-ratelimit version < 3
. /tmp/tox-*/authentic/authentic-py3-dj32-drf312-djtables241/bin/activate
pip install django-ratelimit==3
deactivate
tox -e authentic-py3-dj32-drf312-djtables241
# work-around to run test_auth_saml.py and test_idp_saml2.py first:
PYTESTOPTIONS='tests/test_auth_saml.py tests/test_idp_saml2.py' tox -ve authentic-py3-dj32-drf312-djtables241


# Attempt to run the WebUI
# no SAML authenticator in v4.0
# issue with login in v4.57
git checkout v4.50
createdb authentic2
cat <<EOF > local_settings.py
DEBUG=True
ALLOWED_HOSTS=['$(hostname)']
EOF
tox -e manage -- migrate
. /tmp/tox-*/authentic/manage/bin/activate
pip install django-ratelimit==3
deactivate

tox -e manage -- migrate
tox -e manage -- createsuperuser

tox -e manage -- runserver 0.0.0.0:8080
# Manage > Authenticators > Add new
# Use metadata from e.g. tests/metadata.xml
# Enable


# stretch/py3.5
apt install python3-venv libffi-dev
python3 -m venv venv
. venv/bin/activate
pip install tox
# TODO
git checkout v2.XX
tox -e py3-authentic-xxx-xxx
Copyright (C) 2025 Sylvain Beucler