Media team is very active. Purpose of this post is to provide the progress update to the rest of the community that might not be aware of everything that is going on in this field. I am planning to publish this posts on a regular basis. We'll see how it goes :).
Media sprint in Zurich
We had a very productive sprint about a week ago in Zurich were we've worked on various core and contrib issues (see below of details). Sprint was organized by MD-Systems. They did their best to bring everyone togehter and made sure that we felt comfortable and welocome. Thank you so much (special thanks go to @miro_dieteker and @Berdir)!
Core
In Zurich @blueminds fixed [#2078473] Use entity access API for checking access to private files.
We are currently focusing on few issues:
- [#2148353] File access (hook_file_download) does not use an EntityAccessController - should be almost there; needs just a bit more work
- [#1308152] Add module://, theme:// and profile:// stream wrappers to access system files
- [#2204325] The "rendered entity" formatter breaks for entity types with out a ViewBuilder - provides mechanism to limit field formatters/widgets to subset of fields which should be very useful also outside of media field (@ChrishjuhB achieved some great progres on this issue in Zurich).
- [#2278073] Files with spaces in URIs fail entity TypedData validation - URI validation will currently fail if there are spaces or non-ASCII characters in it. @ChrishjuhB created extensive set of test URIs and @Berdir proposed to implement custom validation for our file URIs as we actually allow usage of URIs that are technically invalid (and we can't use existing validation mechanisms as a result of that).
- [#2239413] Split FilterCaption into FilterAlign (for data-align) and FilterCaption (for data-caption) - we need that to properly support alignment and captions in entity_embed module.
- [#2271349] Node and Comment ops links should be display components (which can be disabled)
Contrib
- entity_embed modue is progressing very well (thanks to our GSoC student @cs_shadow). Module allows us to embed any entity in WYSIWYG and it does it in a smart way that allows us to keep our data nicely structured. See g.d.o post for more info and give it a try!
- fallback_formatter is a field formatter that allows us to selectively use multple other field formatters on a single field. @Dave Reid created D7 version after NYC camp and @blueminds ported it to D8.
- entity_browser is a module that will provide a generic tool that will allow us to list, create and select entites in various contexts (entity reference field, WYSIWYG embed, ...). In Zurich I completed basic structure of the module and now I am focusing on defining interfaces for all components of the system. This will allow us to spread work and allow various people to work on different parts of the system at the same time.
- file_entity is a module that is basic storage component for Media module in D7. @Berdir started D8 port during our sprint in Zurich.
- media_entity is an alternative storage component that is based of different similar components from D7 world. Basic implementation was done at DC Vienna back in December. In Zurich we chased D8 head, improved Views integration, added more tests, ... (thanks @blueminds, @Berdir, @andypost, @ja_ca and @boztek).
How to get involved?
We have weekly scrums every Tuesday at 15:30 UTC (we are considering alternate time/date, check g.d.o group for updates). You can also find us on #drupal-media on Freenode or follow our updates on groups.drupal.org/media. There will be media sprints at DrupalCon Amsterdam and BADCamp.
You are also welcome to attend the core conversation that I am going to give with @Dave Reid.