-
Notifications
You must be signed in to change notification settings - Fork 40
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
[D8][META] Consider adding modules/features to core for parity with Drupal 8/9/10 #378
Comments
@quicksketch @jenlampton is there any policy document how to include this modules to backdrop for contributors? It will be super helpful if this kinda document exist for the contributors. For me kinda confused how to include these modules (let say joyride) into backdrop. Could it be simple PR? If so I can take few. |
We have a docs page at https://backdropcms.org/develop/pull-requests on an intro to contribution. That said, I don't think many of the modules not already included are likely for a 1.0 release. We're planning on releasing in less than 2 months, so adding yet more modules that we haven't even yet begun is a risky endeavor that could push back our release. We could start working on some of these for a later release (e.g. start work on the CKEditor port), but actual inclusion would likely need to wait until after 1.0. Areas in which we need the most help right now are in Views conversions (#151) and CMI conversions (#169). There are also a number of bugs that we've noticed that are reasonably easy to tackle, and a few security issues (#180). Finally, we've just initially finished Layouts (#86), and we have a number of followups from that in #345. |
FYI picture 2.x now works without breakpoints module, if there's interest we can start porting the relevant parts. |
I think the only relevant portion of the HTML5/picture business that is relevant to Backdrop is the use of srcset (http://css-tricks.com/responsive-images-youre-just-changing-resolutions-use-srcset/), which I'd love to see built directly into Image module. I haven't tried out the Picture module recently to know how extensive it's solution is, but I think if we can focus on solving the problem of matching up an appropriate image to the device resolution, we'll be in good shape. If it's not over-simplification, I'd love to see this boiled down to just a single (by default enabled) option either the image formatter or on the image style: [ ] Generate images for high-resolution and mobile displays That would automatically generate 50% and 200% versions of the given image and update the srcset to use them. Advanced granularity beyond that may be best left to contrib. Thoughts? |
Sounds good to me. |
@quicksketch srcset will cover most use cases, but the problem is that - for the moment - you'll need to output a picture tag and use the polyfill, if you only use srcset you ran into problems:
Generating 50%, 200% versions of the same image is not going to help a lot, assuming you'll only want dpi switching it means it will generate a 0.5x and a 2x version. The 0.5x version will not be used since all devices are art least 1x, the 2x version is not sufficient, since most modern phone are 1.5x, 2x, 3x and I even believe there's a 4x phone. So the above means that it might be better to add support for srcset and sizes, for the moment in Drupal 7 this boils down to selecting some image styles on the formatter and entering a sizes string. The difficult part is entering the sizes string because it is brand new for most people and a bit difficult to comprehend. Best explanation can be found at http://ericportis.com/posts/2014/srcset-sizes/ I agree that adding full picture support with media queries, mime type support and sources can be left for contrib. |
Could we try to plan ahead by essentially leaving
You're right it's too early to build in a 0.5x version considering browser support. Once browsers get smarter, a 0.5x version may become a best-practice for supporting mobile or other situations where users are network constrained. A browser knows if it's on a slow connection, and could use the low-resolution image when possible. However, that's just theoretical for now.
After reading that article you referenced, I don't think |
Great conversation going on over here, thanks @attiks for your insight on responsive images! :) |
The w syntax is the preferred way, but it means you'll need to add sizes as well. The easiest to implement is the x syntax and it can be easily done without a polyfill. This can be done without an interface, but we need to pick the right multipliers, I guess to be safe we need: 1x, 1.5x, 2x, 2.5x, 3x The problem might be that images need to be upscaled, which is something that should be avoided, so we need an easy way to detect this or allow a site builder to disable certain multipliers? Contrib can add support for sizes using a different image formatter. |
...or instead of upscaling, prompt the user to insert the larger image (use it for the larger multiplier) and downscale it for the smaller multipliers. Does that make any sense? |
@klonos it sure does make sense, but does this mean we're going to add a validation to make sure the image is at least 2000px wide, or is it just about adding a description to ask the user to insert a big enough image. In the latter case we need to make sure the derivative can be created without upscaling. |
Just asking users to insert their largest variant I guess. After some time (either through trial and error or through our documentation), people will be trained to do so anyways. Checking for minimum size simply does not make sense to me. What would that size be? Would it be acceptable for all use cases? |
@klonos Shouldn't we not need the entity project, since @quicksketch integrated the Entity API functionality into core in #49? |
I couldn't possibly answer that question. It's my understanding that with #49 only a subset of the module was merged into core. I don't know what was left out or why or whether there's more to be done in order to be in par with D8. I believe that @quicksketch is the right person to answer that. I simply added the module to the list because I saw the "This module has been included with Drupal 8 core." section on the project page in d.org. I then checked our list here and saw no mention of it. So I added it. If it is deemed that we need not do anything else, then I'll just close #1371 as a duplicate of #49 and I'll update the list in the issue summary accordingly. |
I have updated the issue summary, and have added #2498 |
I believe that given that we have the Feature parity with Drupal GitHub project to help us track issues + also the various I'll leave it open for a while longer, but will close it next time I am brought here unless there are objections to that. |
Based on the presentation by Dave Reid at Drupalcon Amsterdam 2014, the "Core modules" list in d.org and other sources (like the d.org issue queue and the D8 change records).
Modules to be added:
Other misc changes we might also want to consider:
**Feature parity with the Layout Builder module in modern drupal:
Modules/features already added:
Change record: Introduced hooks to extend field formatters and widgets with third-party settings
Change record: Admin roles are stored on the roles itself
theme_table()
should take an optional footer variable and produce<tfoot>
: https://www.drupal.org/project/drupal/issues/806982Not planned/needed in Backdrop:
[PS][D8] Port and merge BigPipe in Backdrop core. #1716 / Performance improvement: render cache. #1413 | https://www.drupal.org/project/big_pipehttps://www.drupal.org/project/breakpointshttps://www.drupal.org/project/composer_managerhttps://www.drupal.org/project/composer_vendorhttps://www.drupal.org/project/entity_translationhttps://www.drupal.org/project/escape_adminhttps://www.drupal.org/project/imagecache(already in D7 core)https://www.drupal.org/project/joyridehttps://www.drupal.org/project/migratehttps://www.drupal.org/project/migrate_d2dhttps://www.drupal.org/project/phonehttps://www.drupal.org/project/picturehttps://www.drupal.org/project/pred8https://www.drupal.org/project/quickedithttps://www.drupal.org/project/restwshttp://github.com/Gizra/restfulhttps://www.drupal.org/project/titlehttps://www.drupal.org/project/entity_modifiedhttps://www.drupal.org/project/render_cacheRemoved from d8 core:
https://www.drupal.org/node/2116417refer to https://backdropcms.org/node/28The text was updated successfully, but these errors were encountered: