Problem/Motivation

When using a datetime form element that does not allow to input seconds as follow:

    $form['datetime_without_seconds'] = [
      '#type' => 'datetime',
      '#title' => $this->t('Datetime without seconds'),
      '#default_value' => new DrupalDateTime(),
      '#date_time_element' => 'text',
      '#date_time_format' => 'H:i',
    ];

And submitting the form without changing the value, we get a validation error.
It's caused by the \Drupal\Core\Datetime\Element\Datetime::valueCallback() method that adds ":00" to times that don't have seconds. The associated comment says "Seconds will be omitted in a post in case there's no entry." so I can't understand why it's been done.

Proposed resolution

Only add that seconds when the time format needs it.

Fix the logic in Datetime:valueCallback() for massaging input values so that DrupalDateTime::createFromFormat() does the actual work based on the format specified by the form element.

Remaining tasks

Contributor tasks needed
Task Novice task? Contributor instructions Complete?
Create a patch Instructions Done
Update the issue summary Instructions Done
Add automated tests Instructions Done
Manually test the patch Novice Instructions
Review patch to ensure that it fixes the issue, stays within scope, is properly documented, and follows coding standards Instructions

User interface changes

None.

API changes

None.

Data model changes

None.

CommentFileSizeAuthor
#65 2723159-65.patch1.66 KBDeshna Chauhan
#64 Screen Shot 2023-02-03 at 11.40.06 AM.png115.18 KBsmustgrave
#57 interdiff_53-57.txt1.78 KBraman.b
#57 2723159-57.patch6.79 KBraman.b
#57 2723159-57-test-only.patch5.84 KBraman.b
#53 drupal-datetime_form_element_cannot_validate_without_seconds-2723159-53.patch6.75 KBArrow
#53 interdiff_50-53.txt585 bytesArrow
#51 drupal-datetime_form_element_cannot_validate_without_seconds-2723159-50.patch6.75 KBArrow
#50 false.png7.32 KBDiDebru
#50 correct.png5.22 KBDiDebru
#43 2723159-43.patch6.64 KBtar_inet
#43 interdiff-2723159-43.txt4.65 KBtar_inet
#41 2723159_chrome_post.png11.05 KBDuaelFr
#34 interdiff-2723159-34.txt1.48 KBpepegarciag
#34 2723159-34.patch5.06 KBpepegarciag
#26 interdiff-18-25.txt2.38 KBmpdonadio
#26 2723159-25.patch5.06 KBmpdonadio
#18 interdiff-14-18.txt4.76 KBmpdonadio
#18 2723159-18.patch4.82 KBmpdonadio
#14 drupal_datetime_without_seconds-2723159-14.patch4.77 KBDuaelFr
#14 interdiff.2723159.12.14.txt2.51 KBDuaelFr
#12 interdiff-02-12.txt3.64 KBmpdonadio
#12 2723159-12.patch4.3 KBmpdonadio
#2 drupal_datetime_without_seconds-2723159-2.patch3.61 KBDuaelFr
#2 drupal_datetime_without_seconds-2723159-2-tests-only.patch2.88 KBDuaelFr
Support from Acquia helps fund testing for Drupal Acquia logo

Comments

DuaelFr created an issue. See original summary.

DuaelFr’s picture

Changed the proposed solution and updated remaining tasks.

The last submitted patch, 2: drupal_datetime_without_seconds-2723159-2-tests-only.patch, failed testing.

DuaelFr’s picture

Title: Datetime form element cannot validate when using a format withotu seconds » Datetime form element cannot validate when using a format without seconds

Typo in title

GoZ’s picture

Status: Needs review » Needs work
+++ b/core/lib/Drupal/Core/Datetime/Element/Datetime.php
@@ -76,7 +76,7 @@ public static function valueCallback(&$element, $input, FormStateInterface $form
+      if (!empty($time_input) && strlen($time_input) == 5 && strrpos($time_format, ':s') == strlen($time_format) - 2) {

In this case, you assume everyone will use H:i:s format. Some country could use dot instead of colon. (or another format).

I think the all condition is wrong. Basing on a 5 length is also wrong, this depends of format. If format is 'H : i', strlen will be > 5.

I'm not even sure this condition should be there. If format is H:i:s user should input seconds. If it doesn't, a message is displayed.
If we take care of this specific case, why don't we take care of missing minutes ? (i don't think we should neither)

Sorry to answer review by other questions and put the issue in another way.

DuaelFr’s picture

Status: Needs work » Needs review

Thanks for your review @GoZ!

I think you are right that we should not have these lines at all but I also think it has to be handled in a follow-up issue that's probably going to be postponed until D9 to avoid BC break.

The patch I proposed fixes the issue while staying consistent with the existing code that adds ":00" and not ".00" or anything else. I think the condition I added should prevent it from happening when it does not have to.

Could we focus on fixing the actual issue then discuss about removing that entire bit of code? :)

mpdonadio’s picture

Component: forms system » datetime.module
DuaelFr’s picture

@mpdonadio is there something I can do to move this issue forward? Thanks

mpdonadio’s picture

#8, sorry, I was away this weekend.

This is a head scratcher. I think this is OK, but I want to look at the test in context and see what is going on with the debugger.

I am leaning towards fixing issue issue here, and creating a followup to handle the fact that this is a fragile piece of code that makes some bold assumptions about the time format.

DuaelFr’s picture

Thanks for your answer and your time. (I hope your weekend was as refreshing as mine ^^)
I'll keep following this issue in case you need something.

mpdonadio’s picture

[Sorry, I found some small revisions to this after I posted.]

Played with this for a while applied...

  1. +++ b/core/lib/Drupal/Core/Datetime/Element/Datetime.php
    @@ -76,7 +76,7 @@ public static function valueCallback(&$element, $input, FormStateInterface $form
    -      if (!empty($time_input) && strlen($time_input) == 5) {
    +      if (!empty($time_input) && strlen($time_input) == 5 && strrpos($time_format, ':s') == strlen($time_format) - 2) {
             $time_input .= ':00';
    

    I'm not sure this is doing what you think it is doing. When `$time_format = 'H;s', then `strrpos('H:i', ':s') === FALSE`, so this final clause will always be FALSE, so the seconds are never appended. In fact, I can remove this `if` and the test passes. DrupalDateTime::createFromFormat() (which essentially calls \DateTime::createFromFormat()), is pretty unforgiving with formats. I'm not sure why that `if()` was there (I added the related issues, but didn't slog through them).

  2. +++ b/core/modules/datetime/src/Tests/DateFormTest.php
    @@ -0,0 +1,33 @@
    +    $errors = $this->xpath('//div[contains(@class, "messages--error")]');
    +    $this->assertFalse($errors, 'No error message shown.');
    +  }
    

    I think it would be safer to check for the "Success" message and that all of the elements have the expected values. Instead of using date(), just hardcode some values so you can explicitly test expectations.

  3. +++ b/core/modules/datetime/tests/modules/datetime_test/datetime_test.routing.yml
    @@ -0,0 +1,7 @@
    +    _access: 'TRUE'
    \ No newline at end of file
    diff --git a/core/modules/datetime/tests/modules/datetime_test/src/Form/DateForm.php b/core/modules/datetime/tests/modules/datetime_test/src/Form/DateForm.php
    

    Nit, needs newline.

  4. +++ b/core/modules/datetime/tests/modules/datetime_test/src/Form/DateForm.php
    @@ -0,0 +1,50 @@
    +    $form['datetime_without_seconds'] = [
    +      '#type' => 'datetime',
    +      '#title' => $this->t('Datetime without seconds'),
    +      '#default_value' => new DrupalDateTime(),
    +      '#date_time_element' => 'text',
    +      '#date_time_format' => 'H:i',
    +    ];
    

    `'#default_value'` should be NULL. In your submit handler, use `$form_state->setRebuild();` so the submitted values override this. Then you have something to explicitly test against.

  5. +++ b/core/modules/datetime/tests/modules/datetime_test/src/Form/DateForm.php
    @@ -0,0 +1,50 @@
    +  }
    +}
    

    Nit, need blank line before final brace. Also in DateFormTest.

mpdonadio’s picture

Issue summary: View changes
Status: Needs work » Needs review
FileSize
4.3 KB
3.64 KB

Not sure if the test really belong in the datetime.module (maybe system.module would be better), but here is my take on the proper fix and expanded test coverage. The change to the Datetime class is best read applied so you can see it in context of what is going on and why removing that if() statement is OK.

mpdonadio’s picture

  1. +++ b/core/modules/datetime/src/Tests/DateFormTest.php
    @@ -0,0 +1,44 @@
    +    $edit = [
    +      'datetime_with_seconds[date]' => '2016-01-02',
    +      'datetime_with_seconds[time]' => '13:14:15',
    +      'datetime_without_seconds[date]' => '2016-03-04',
    +      'datetime_without_seconds[time]' => '16:17',
    +    ];
    +    $this->drupalPostForm(NULL, $edit, 'Submit');
    

    Maybe add something with non traditional separators to make sure this works?

  2. +++ b/core/modules/datetime/src/Tests/DateFormTest.php
    @@ -0,0 +1,44 @@
    +    $success = $this->xpath('//div[contains(@class, "messages--status")]');
    +    $this->assertTrue($success, 'Success message found.');
    

    Should check for both the message div and the message itself.

  3. +++ b/core/modules/datetime/src/Tests/DateFormTest.php
    @@ -0,0 +1,44 @@
    +      $input = $this->xpath('//input[@name=:name and @value=:value]', [
    +        ':name' => $name,
    +        ':value' => $value
    +      ]);
    

    Nit, needs trailing comma after $value.

  4. +++ b/core/modules/datetime/tests/modules/datetime_test/datetime_test.routing.yml
    @@ -0,0 +1,7 @@
    +    _access: 'TRUE'
    \ No newline at end of file
    diff --git a/core/modules/datetime/tests/modules/datetime_test/src/Form/DateForm.php b/core/modules/datetime/tests/modules/datetime_test/src/Form/DateForm.php
    

    Oops.

DuaelFr’s picture

I'm not confident about removing these three lines of code but I trust you.
Here is a patch that fixes the last things from #13.

Version: 8.1.x-dev » 8.2.x-dev

Drupal 8.1.9 was released on September 7 and is the final bugfix release for the Drupal 8.1.x series. Drupal 8.1.x will not receive any further development aside from security fixes. Drupal 8.2.0-rc1 is now available and sites should prepare to upgrade to 8.2.0.

Bug reports should be targeted against the 8.2.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.3.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

DuaelFr’s picture

Version: 8.2.x-dev » 8.3.x-dev
Status: Needs review » Needs work

These patches introduce a new issue where dates cannot be defined with 00 seconds without getting the following error message:

The Authored on date is invalid. Please enter a date in the format 2017-01-09 17:00:15.

DuaelFr’s picture

Now I understand what the comment was saying. I don't know if it's a bug or a feature but Chrome does not send seconds when they are set as "00". Firefox does not seem to do the same. So, if you are using Chrome and sets the time as 17:00:00, Drupal is going to receive 17:00.

mpdonadio’s picture

Component: datetime.module » forms system
Status: Needs work » Needs review
FileSize
4.82 KB
4.76 KB

So I guess we are back to the approach in #2?

Reworked the patch to remove the dependency on datetime since this is about the form element. Also aligned it with #2840220: "Date and time" Form API element allows entry beyond min/max values so they will merge better (need to look at these closer for naming).

This can probably still go against 8.2.x since it is a bug, but leaving at 8.3.x for now.

mpdonadio’s picture

+++ b/core/lib/Drupal/Core/Datetime/Element/Datetime.php
@@ -76,7 +76,7 @@ public static function valueCallback(&$element, $input, FormStateInterface $form
       // Seconds will be omitted in a post in case there's no entry.
-      if (!empty($time_input) && strlen($time_input) == 5) {
+      if (!empty($time_input) && strlen($time_input) == 5 && strrpos($time_format, ':s') == strlen($time_format) - 2) {

I had already made the patch, but if we should fix this comment before commit to make it more clear what this is really for.

DuaelFr’s picture

From #5:

In this case, you assume everyone will use H:i:s format. Some country could use dot instead of colon. (or another format).

I don't know what to do with that statement. It seems that the colon-separated format is the international one but we also allow to set a custom format that uses something else. It won't work with the datetime html element but it should work with a standard textfield. Did you already think about that?

mpdonadio’s picture

#20. Thought about that on was to work this morning. One thought is a comment. Another is something like

+++ b/core/lib/Drupal/Core/Datetime/Element/Datetime.php
@@ -76,7 +76,7 @@ public static function valueCallback(&$element, $input, FormStateInterface $form
       // Seconds will be omitted in a post in case there's no entry.
-      if (!empty($time_input) && strlen($time_input) == 5) {
+      if (!empty($time_input) && strlen($time_input) == 5 && strrpos($time_format, ':s') !== FALSE && strrpos($time_format, ':s') == strlen($time_format) - 2) {

to explicitly check for ':s'. Otherwise, I am not really sure how we can make this bulletproof, but am open to ideas.

mpdonadio’s picture

+++ b/core/lib/Drupal/Core/Datetime/Element/Datetime.php
@@ -76,7 +76,7 @@ public static function valueCallback(&$element, $input, FormStateInterface $form
       // Seconds will be omitted in a post in case there's no entry.
-      if (!empty($time_input) && strlen($time_input) == 5) {
+      if (!empty($time_input) && strlen($time_input) == 5 && strrpos($time_format, ':s') == strlen($time_format) - 2) {

I wonder if we should also (or instead of) check `'#date_time_element' === 'time'` since it looks like this was a Chrome problem w/ the HTML5 time element? If the input is 'text' then we can use it as-is?

Maybe

+++ b/core/lib/Drupal/Core/Datetime/Element/Datetime.php
@@ -76,7 +76,7 @@ public static function valueCallback(&$element, $input, FormStateInterface $form
       // Seconds will be omitted in a post in case there's no entry.
-      if (!empty($time_input) && strlen($time_input) == 5) {
+      if (!empty($time_input) && $element['#date_time_element'] === 'time' && strlen($time_input) == 5) {

is the better change here?

DuaelFr’s picture

Status: Needs review » Needs work

It looks legit :)

Version: 8.3.x-dev » 8.4.x-dev

Drupal 8.3.0-alpha1 will be released the week of January 30, 2017, which means new developments and disruptive changes should now be targeted against the 8.4.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

mpdonadio’s picture

Status: Needs work » Needs review
Issue tags: +DrupalCampNJ2017

OK, change in #22 and make the test a BTB.

mpdonadio’s picture

jhedstrom’s picture

+++ b/core/lib/Drupal/Core/Datetime/Element/Datetime.php
@@ -75,8 +75,9 @@ public static function valueCallback(&$element, $input, FormStateInterface $form
+      // Ensure the time has a seconds portion in case it was omitted or
+      // stripped out by the browser.
+      if (!empty($time_input) && $element['#date_time_element'] === 'time' && strlen($time_input) == 5) {
         $time_input .= ':00';
       }

+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestDatetimeTimeTest.php
@@ -0,0 +1,70 @@
+      '#date_time_element' => 'text',
...
+      '#date_time_element' => 'text',
...
+      '#date_time_element' => 'text',

The fix is checking explicitly for time, but all the tests are using text. That indicates we need more test coverage I think...

mpdonadio’s picture

Status: Needs review » Needs work

Nice catch.

DuaelFr’s picture

Issue tags: +Needs tests, +seville2017

See #27 for needed tests.

DuaelFr’s picture

Issue tags: -seville2017 +DevDaysSeville

Wrong tag, sorry

juanjesustrigo’s picture

Assigned: Unassigned » juanjesustrigo

I'll work on this

juanjesustrigo’s picture

Assigned: juanjesustrigo » Unassigned

I will not work on this issue any more.

pepegarciag’s picture

Assigned: Unassigned » pepegarciag

I will take this one.

pepegarciag’s picture

Status: Needs work » Needs review
FileSize
5.06 KB
1.48 KB

According to #27 here is a try changing the tests checking for the correct #date_time_element.

Status: Needs review » Needs work

The last submitted patch, 34: 2723159-34.patch, failed testing.

mpdonadio’s picture

Ok, I think we are chasing our tail here.

When you use 'date' and 'time' for '#datetime', the formats needs to be 'Y-m-d' and 'H:i:s'. When you use 'text', you can specify your own.

 /*
   * Optional properties include:
   *   - #date_date_format: A date format string that describes the format that
   *     should be displayed to the end user for the date. When using HTML5
   *     elements the format MUST use the appropriate HTML5 format for that
   *     element, no other format will work. See the format_date() function for a
   *     list of the possible formats and HTML5 standards for the HTML5
   *     requirements. Defaults to the right HTML5 format for the chosen element
   *     if a HTML5 element is used, otherwise defaults to
   *     DateFormat::load('html_date')->getPattern().
   */

We need to account for that, and Chrome stripping the :00 in both the patch and the test coverage.

pepegarciag’s picture

Assigned: pepegarciag » Unassigned
DuaelFr’s picture

@mpdonadio What do you suggest?
Should we rewrite the entire element to force or ignore format when the type is 'date' or 'time' ?

mpdonadio’s picture

#38

+++ b/core/lib/Drupal/Core/Datetime/Element/Datetime.php
@@ -75,8 +75,9 @@ public static function valueCallback(&$element, $input, FormStateInterface $form
-      // Seconds will be omitted in a post in case there's no entry.
-      if (!empty($time_input) && strlen($time_input) == 5) {
+      // Ensure the time has a seconds portion in case it was omitted or
+      // stripped out by the browser.
+      if (!empty($time_input) && $element['#date_time_element'] === 'time' && strlen($time_input) == 5) {
         $time_input .= ':00';
       }

I think we need to rethink the logic around this change and what we are actually solving. It could just be that we need to update the tests to test both 'text' and 'time', and then simulate what Chrome is going to do. And then document the change better. Need to think about this again.

mpdonadio’s picture

Can anyone confirm the behavior in #17? I can't in Chrome 57.0.2987.110 on OSX.

DuaelFr’s picture

FileSize
11.05 KB

I can confirm (Chrome 56.0.2924.87 on Linux)

mpdonadio’s picture

Awesome.

OK, lets update the test to cover four scenarios:

1. HTML5 time w/ hours, minutes, second in the user input
2. HTML5 time w/ hours, minutes, in the user input (w/ comment that this is simulating Chrome)
3. Text input w/ hours, minutes, seconds in the user input in a H:i:s format
4. Text input w/ hours, minutes in the user input in a non H:i format

That should make sure this works as intended.

tar_inet’s picture

Status: Needs work » Needs review
FileSize
4.65 KB
6.64 KB

#42 @mpdonadio I hope these changes cover all needs. I'm not sure if the Chrome comment is in the best possible place, please, could you review it?

mpp’s picture

Note that when using the HTML 5 element, the format is up to the browser but the backend decides to display the error with a format that might be different:

          $form_state->setError($element, t('The %field date is invalid. Please enter a date in the format %format.', ['%field' => $title, '%format' => static::formatExample($format)]));

Which may result in a [dd][mm][yyyy] input (HTML5 element) with a warning to enter the date in the [yyyy][mm][dd] format (the date format for the field).

Version: 8.4.x-dev » 8.5.x-dev

Drupal 8.4.0-alpha1 will be released the week of July 31, 2017, which means new developments and disruptive changes should now be targeted against the 8.5.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

BarisW’s picture

#44 is exactly my issue. We have a Dutch website, where a date is entered as DD/MM/YYYY, however if a user enters an invalid date, the error message tells the user to enter the date in a YYYY/MM/DD format. Which is impossible due the the formatting of the HTML5 element.

I can't figure out how to localize the html_date value (which is used by the getHtml5DateFormat() callback).

Version: 8.5.x-dev » 8.6.x-dev

Drupal 8.5.0-alpha1 will be released the week of January 17, 2018, which means new developments and disruptive changes should now be targeted against the 8.6.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.6.x-dev » 8.7.x-dev

Drupal 8.6.0-alpha1 will be released the week of July 16, 2018, which means new developments and disruptive changes should now be targeted against the 8.7.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.7.x-dev » 8.8.x-dev

Drupal 8.7.0-alpha1 will be released the week of March 11, 2019, which means new developments and disruptive changes should now be targeted against the 8.8.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

DiDebru’s picture

FileSize
5.22 KB
7.32 KB

Patch #43 worked for me thank ,you.

But the time values in dropdown dont get the right format if I am on a multilingual site with translated formats it will always get the default format.

Correct format in form element.

False format in dropdown.

Arrow’s picture

Status: Needs review » Needs work
Arrow’s picture

The previous failed do to drupal_set_message() being deprecated. This uses the messenger service instead.

Version: 8.8.x-dev » 8.9.x-dev

Drupal 8.8.0-alpha1 will be released the week of October 14th, 2019, which means new developments and disruptive changes should now be targeted against the 8.9.x-dev branch. (Any changes to 8.9.x will also be committed to 9.0.x in preparation for Drupal 9’s release, but some changes like significant feature additions will be deferred to 9.1.x.). For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

Version: 8.9.x-dev » 9.1.x-dev

Drupal 8.9.0-beta1 was released on March 20, 2020. 8.9.x is the final, long-term support (LTS) minor release of Drupal 8, which means new developments and disruptive changes should now be targeted against the 9.1.x-dev branch. For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

Version: 9.1.x-dev » 9.2.x-dev

Drupal 9.1.0-alpha1 will be released the week of October 19, 2020, which means new developments and disruptive changes should now be targeted for the 9.2.x-dev branch. For more information see the Drupal 9 minor version schedule and the Allowed changes during the Drupal 9 release cycle.

raman.b’s picture

The last submitted patch, 57: 2723159-57-test-only.patch, failed testing. View results

Version: 9.2.x-dev » 9.3.x-dev

Drupal 9.2.0-alpha1 will be released the week of May 3, 2021, which means new developments and disruptive changes should now be targeted for the 9.3.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

hop’s picture

Version: 9.3.x-dev » 9.4.x-dev

Drupal 9.3.0-rc1 was released on November 26, 2021, which means new developments and disruptive changes should now be targeted for the 9.4.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.4.x-dev » 9.5.x-dev

Drupal 9.4.0-alpha1 was released on May 6, 2022, which means new developments and disruptive changes should now be targeted for the 9.5.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.5.x-dev » 10.1.x-dev

Drupal 9.5.0-beta2 and Drupal 10.0.0-beta2 were released on September 29, 2022, which means new developments and disruptive changes should now be targeted for the 10.1.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

smustgrave’s picture

Status: Needs review » Needs work
Issue tags: +Needs followup, +Needs Review Queue Initiative
FileSize
115.18 KB

This issue is being reviewed by the kind folks in Slack, #needs-review-queue-initiative. We are working to keep the size of Needs Review queue [2700+ issues] to around 400 (1 month or less), following Review a patch or merge request as a guide.

Using the test case that was added.

time

Can confirm the issue in question is fixed. When I don't include seconds it auto adds 00

It seems to be fixing but would like to have a followup to update the widget so that the seconds option isn't there.

Deshna Chauhan’s picture

Added patch against #57 in version 10.1

BramDriesen’s picture

Hiding patch #65 as it's incomplete.

@Deshna Chauhan Please stop uploading incomplete and broken re-roll patches without an interdiff.

apaderno’s picture

@Deshna When you notice that you patch is 1.66 KB instead of 6.79 KB a previous patch is, you should wonder if your patch does not miss some parts.
It happened to me too, and I learned to first check my patch size, before uploading it.

quietone’s picture

@Deshna Chauhan, I am removing credit for the unhelpful patch per How is credit granted for Drupal core issues.

Version: 10.1.x-dev » 11.x-dev

Drupal core is moving towards using a “main” branch. As an interim step, a new 11.x branch has been opened, as Drupal.org infrastructure cannot currently fully support a branch named main. New developments and disruptive changes should now be targeted for the 11.x branch, which currently accepts only minor-version allowed changes. For more information, see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.