D11: Image upload without Core Media Library broken

Created on 16 August 2024, 3 months ago
Updated 15 September 2024, 2 months ago

Problem/Motivation

I found a Drupal 11 compatibility issue. When you use Gutenberg without the Drupal Core Media Library in Drupal 11, it is not possible to upload an image. You will get the following error.

"The \"file_validate_size\" plugin does not exist. Valid plugin IDs for Drupal\\Core\\Validation\\ConstraintManager are: Callback, Blank, NotBlank, Email, Choice, Image, BlockContentEntityChanged, CKEditor5MediaAndFilterSettingsInSync, SourceEditingPreventSelfXssConstraint, CKEditor5ToolbarItem, CKEditor5FundamentalCompatibility, CKEditor5ToolbarItemDependencyConstraint, SourceEditingRedundantTags, UniqueLabelInList, CKEditor5EnabledConfigurablePlugins, StyleSensibleElement, CKEditor5Element, CKEditor5ToolbarItemConditionsMet, CommentName, DateTimeFormat, FileSizeLimit, FileNameLength, FileImageDimensions, FileValidation, FileExtension, FileIsImage, FileUriUnique, FileExtensionSecure, LinkNotExistingInternal, LinkAccess, LinkExternalProtocols, LinkType, MediaMappingsConstraint, oembed_resource, MenuTreeHierarchy, MenuSettings, PathAlias, TaxonomyHierarchy, UserMailUnique, UserName, UserMailRequired, ProtectedUserField, UserNameUnique, ExtensionExists, ExtensionName, ConfigExists, RequiredConfigDependencies, LangcodeRequiredIfTranslatableValues, ImmutableProperties, EntityType, ValidReference, EntityChanged, ReferenceAccess, EntityUntranslatableFields, Bundle, EntityHasField, UniquePathAlias, ValidPath, PluginExists, Range, AllowedValues, FullyValidatable, PrimitiveType, CountryCode, Null, Length, UniqueField, ComplexData, Regex, Count, ValidKeys, Uuid, NotNull, EntityBundleExists"

This is related to core issue [#3363700]

Steps to reproduce

  • Install Drupal Gutenberg with Drupal 11
  • The site has no media_library installed, so that the Custom Gutenberg media widget is used
  • Upload a image via the image block
  • You should see an Error 500

Proposed resolution

Provide both validator options, since we officially currently still support Drupal 9. Otherwise we would break backwards compatibility. That might be a bit ugly, but is required if we would want to support both.

On the long run I would recommend to consider removing the custom Gutenberg media library and make the Core's media library a real dependency. This will make it possible to remove big fragments of our upload functionality and we can happily rely on the well tested Core functionality. One perfect candidate would be Drupal Gutenberg 4, to cut off that functionality.

Remaining tasks

User interface changes

API changes

Data model changes

🐛 Bug report
Status

Fixed

Version

3.0

Component

Code

Created by

🇩🇪Germany szeidler Berlin

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Merge Requests

Comments & Activities

  • Issue created by @szeidler
  • Status changed to Needs review 3 months ago
  • 🇩🇪Germany szeidler Berlin

    I added a MR for it. I'm using the following to determine the version used

    if (version_compare(\Drupal::VERSION, '10.2.0', '<')) {
    

    I'm using that one and not the Core's DeprecationHelper, because the DeprecationHelper was also just introduced in Drupal 10.1.

  • Pipeline finished with Success
    3 months ago
    Total: 303s
    #255532
  • Pipeline finished with Success
    3 months ago
    Total: 242s
    #255694
    • szeidler committed 8a2f0e10 on 3.0.x
      Issue #3468465 by szeidler: D11: Image upload without Core Media Library...
  • Status changed to Fixed 3 months ago
  • Pipeline finished with Success
    3 months ago
    #255706
  • Pipeline finished with Skipped
    3 months ago
    #255709
    • szeidler committed 4a73dd5a on 8.x-2.x
      Issue #3468465 by szeidler: D11: Image upload without Core Media Library...
  • Pipeline finished with Success
    3 months ago
    Total: 1018s
    #255799
  • Pipeline finished with Failed
    3 months ago
    Total: 332s
    #256593
  • Pipeline finished with Success
    3 months ago
    Total: 595s
    #256616
  • Pipeline finished with Failed
    3 months ago
    Total: 1201s
    #256650
  • Pipeline finished with Success
    3 months ago
    Total: 357s
    #256693
  • Pipeline finished with Success
    3 months ago
    Total: 532s
    #256703
  • Pipeline finished with Canceled
    3 months ago
    Total: 522s
    #256953
  • Pipeline finished with Success
    3 months ago
    Total: 1042s
    #256960
  • Pipeline finished with Success
    3 months ago
    Total: 1072s
    #256966
  • Pipeline finished with Skipped
    3 months ago
    #257497
  • Pipeline finished with Failed
    3 months ago
    Total: 321s
    #259969
  • Pipeline finished with Failed
    3 months ago
    Total: 349s
    #259980
  • Pipeline finished with Failed
    3 months ago
    Total: 356s
    #259996
  • Pipeline finished with Failed
    3 months ago
    Total: 388s
    #260042
  • Pipeline finished with Failed
    3 months ago
    #260059
  • Pipeline finished with Failed
    3 months ago
    Total: 331s
    #260107
  • Pipeline finished with Failed
    3 months ago
    #260174
  • Pipeline finished with Success
    3 months ago
    Total: 287s
    #260362
  • Pipeline finished with Failed
    3 months ago
    Total: 1678s
    #261001
  • Pipeline finished with Failed
    3 months ago
    #261030
  • Pipeline finished with Failed
    3 months ago
    #261034
  • Pipeline finished with Success
    3 months ago
    Total: 1033s
    #261041
  • Pipeline finished with Success
    3 months ago
    Total: 438s
    #261099
  • Pipeline finished with Success
    3 months ago
    Total: 270s
    #261399
  • Pipeline finished with Failed
    3 months ago
    Total: 464s
    #261412
  • Pipeline finished with Success
    3 months ago
    Total: 485s
    #261465
  • Pipeline finished with Success
    3 months ago
    Total: 437s
    #261545
  • Pipeline finished with Failed
    3 months ago
    Total: 504s
    #261633
  • Pipeline finished with Failed
    3 months ago
    Total: 398s
    #261648
  • Pipeline finished with Failed
    3 months ago
    #262433
  • Pipeline finished with Failed
    3 months ago
    Total: 403s
    #262615
  • Pipeline finished with Failed
    3 months ago
    Total: 572s
    #264578
  • Pipeline finished with Failed
    3 months ago
    Total: 335s
    #264581
  • Pipeline finished with Failed
    3 months ago
    Total: 347s
    #264589
  • Pipeline finished with Success
    3 months ago
    Total: 482s
    #264592
  • Pipeline finished with Failed
    3 months ago
    Total: 331s
    #266370
  • Pipeline finished with Failed
    3 months ago
    Total: 462s
    #267784
  • Pipeline finished with Failed
    3 months ago
    Total: 328s
    #267793
  • Pipeline finished with Failed
    3 months ago
    #267803
  • Pipeline finished with Success
    3 months ago
    Total: 1001s
    #267832
  • Pipeline finished with Success
    3 months ago
    Total: 489s
    #267937
  • Pipeline finished with Failed
    3 months ago
    Total: 317s
    #268237
  • Pipeline finished with Failed
    3 months ago
    #268309
  • Pipeline finished with Failed
    3 months ago
    #268893
  • Pipeline finished with Failed
    3 months ago
    #268990
  • Automatically closed - issue fixed for 2 weeks with no activity.

  • Pipeline finished with Failed
    3 months ago
    Total: 517s
    #269259
  • Pipeline finished with Failed
    3 months ago
    Total: 728s
    #269267
  • Pipeline finished with Success
    3 months ago
    Total: 653s
    #269295
  • Pipeline finished with Failed
    3 months ago
    Total: 326s
    #272469
  • Pipeline finished with Success
    3 months ago
    Total: 457s
    #272983
  • Pipeline finished with Failed
    3 months ago
    #273528
  • Pipeline finished with Failed
    3 months ago
    Total: 371s
    #273676
  • Pipeline finished with Canceled
    3 months ago
    Total: 506s
    #273694
  • Pipeline finished with Failed
    3 months ago
    #273706
  • Pipeline finished with Success
    3 months ago
    Total: 447s
    #273717
  • Pipeline finished with Success
    3 months ago
    Total: 473s
    #273758
  • Pipeline finished with Failed
    3 months ago
    Total: 281s
    #275436
  • Pipeline finished with Failed
    3 months ago
    #275568
  • Pipeline finished with Failed
    3 months ago
    Total: 303s
    #275624
  • Pipeline finished with Success
    3 months ago
    Total: 370s
    #275700
  • Pipeline finished with Success
    3 months ago
    Total: 270s
    #275881
  • Pipeline finished with Success
    3 months ago
    Total: 286s
    #275932
  • Pipeline finished with Success
    3 months ago
    Total: 279s
    #276029
  • Pipeline finished with Success
    2 months ago
    #277077
  • Pipeline finished with Success
    2 months ago
    Total: 294s
    #278006
  • Pipeline finished with Success
    2 months ago
    #278095
  • Pipeline finished with Success
    2 months ago
    Total: 294s
    #278127
  • 🇰🇷South Korea keithkhl

    Sorry to bother you guys again for this fixed issue, but I wonder if there is a patch available.
    I am having the same error on D11 w/ Gutenberg 3.0.4 (and dev) when I upload images directly by 'upload' button.
    If I do so on the media library pop-up screen, I do not have such issue.
    It would be great to have the patch available before your next minor version roll-out, if it is going to take some time.

  • Pipeline finished with Success
    about 2 months ago
    Total: 154s
    #291245
  • Pipeline finished with Success
    about 2 months ago
    Total: 148s
    #291274
  • Pipeline finished with Success
    about 2 months ago
    Total: 155s
    #291279
  • Pipeline finished with Success
    about 1 month ago
    Total: 157s
    #310253
  • Pipeline finished with Success
    about 1 month ago
    Total: 197s
    #310914
  • Pipeline finished with Success
    about 1 month ago
    Total: 325s
    #312729
  • Pipeline finished with Success
    about 1 month ago
    Total: 209s
    #312746
  • Pipeline finished with Failed
    9 days ago
    Total: 364s
    #336726
  • Pipeline finished with Failed
    7 days ago
    Total: 483s
    #339112
  • Pipeline finished with Failed
    6 days ago
    Total: 406s
    #339823
  • Pipeline finished with Failed
    6 days ago
    Total: 496s
    #339828
Production build 0.71.5 2024