Skip to content
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

Release: SSO, JSON field types, and File Upload Mutations #513

Open
wants to merge 86 commits into
base: master
Choose a base branch
from

Conversation

chrismaddalena
Copy link
Collaborator

Summary

This includes #489, #494, #501, and #502. Not much has changed from each individual PR, but this branch has been tested with all of them combined.

CHANGELOG

[4.3.0] – 3 Sep 2024

Added

  • Added two mutations to the GraphQL API to support uploading new evidence files and report template files
  • Added a new adapter for handling authentication for Single Sign-On (SSO) providers
    • The adapter fills-in a nearly full profile for any new accounts (full name, email address)
    • Usernames for new accounts will default to the first half of the email address
    • If an existing account has the same email address, the accounts will be linked
    • Review the wiki for more information
  • Added support for loading customized config files
    • These are files you can use to modify settings normally found in /config/settings/base.py and production.py
    • Admins can make changes to the custom config files without worrying about the changes needing to be stashed prior to pulling an update
  • Added support for a JSON field type for custom fields

Changed

  • Updated the django-allauth module used for authentication and SSO
    • Important: This change impacts anyone currently using SSO with Azure
    • The azure provider is now microsoft and SSO configurations will need to be updated
  • Changed the cloud infrastructure monitoring task to also check auxiliary IP addresses when determining if a cloud host is tracked in a project

ColonelThirtyTwo and others added 30 commits June 21, 2024 14:30
Takes similar fields to the evidence upload form. Due to Hasura issue
number 2419, the file data must be passed in as a base64 string. The
filename must also be provided separately.

Tags are parsed by Taggit, as documented at [1]. tldr: a space or comma
separated string, optionally with double quotes around tags.

[1]: https://django-taggit.readthedocs.io/en/latest/forms.html
See notes of the previous commit for uploadEvidence for usage notes.
The extra field stores an arbitrary JSON subobject as a field on the
root extra_fields object. This is intended for automated systems to fill
out and provide data for templating. Since it's likely to contain a
large value, Tte UI hides the value behind a button, like rich text
fields. It also uses a plain non-rich-text textarea for editing.
With integrations attaching potentially large JSON blobs to the extra
fields, they should not be loaded unless actually needed.
If someone uses the API endpoint to upload an image with a text file extension, the template tries to display the content as text and unicode throws an unhandled 500 error with `UnicodeDecodeError`. This change adds a check for a `UnicodeError`.
`prepare_value`` seems to be passed an empty python `object` in some
cases. Ignore when that happens and pass it through unchanged, which is
consistent with other field implementations.
The handling still isn't great - the blockquote will generate its own
paragraph "separate" from the list. But at least it won't throw an error
anymore.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants