Issue #3577155: Add support for file fields using custom stream wrappers (currently only `public` is supported)

Adds private to the allowed schemes on the file_uri field's value property in FileUriItemOverride.

Canvas hardcodes allowedSchemes => ['public'], which rejects any file field configured to use the private:// stream wrapper (e.g. private image/file fields). Because the override applies the constraint to the file_uri field type globally, this breaks private:// file uploads site-wide, not only within Canvas.

Both public and private are valid local, Drupal-managed file schemes (per the uri_scheme field storage setting of \Drupal\file\Plugin\Field\FieldType\FileItem), so both must be allowed. temporary:// remains permitted during upload by UriSchemeConstraintValidator itself.

This is an interim workaround that matches the community patch in the issue, until the upstream stream-wrapper-manager-based fix lands.

Drafted with the assistance of AI (Claude Code / Opus 4.8).

Merge request reports

Loading