Hi, Multimedians.

I've been talking with our new multimedia team, we're just getting to the point
where we have a really good idea of where we want to go after a little while
of doing work mostly on existing issues and refactoring efforts, and I have
a small announcement to make.

In the next few months, we intend to work on pulling upload API logic into core,
and writing a new interface for uploading files from VisualEditor. Our initial
plan involved refactoring UploadWizard to a point where including it in 
VisualEditor
would not be difficult, but our new plans include usability improvements that,
in my opinion, would unnecessarily enmire our work. Our team will be submitting
patches to OOJS-UI, MediaWiki Core, and VisualEditor itself in an effort to get
this project off the ground, as well as tweaking configuration settings in 
mw-config
and generally running around looking for code review.

Rest assured, we intend to maintain our commitment to fixing bugs in 
UploadWizard
as they come up, as well as bugs in the myriad other Multimedia projects. Please
continue to bother the Multimedia team if and when things go wrong, we are 
always
happy to help you, or at least point you in the right direction.

Here is a rough roadmap of where we need to go in the next few months:

# mw.Api.plugin.upload API to automatically detect what methods are available 
for the browser, take a File object or file input, and perform the upload
## Base upload API with simple API call, quick and dirty, with gadget 
proof-of-concept https://phabricator.wikimedia.org/T103397?workflow=create
## Expand to use File API where available 
https://phabricator.wikimedia.org/T103398
## Expand to support stashing with appropriate continue-upload API 
https://phabricator.wikimedia.org/T103399
## {{stretch}} Expand to use chunked uploading where available 
https://phabricator.wikimedia.org/T103398

# Tie together all of those things into an Upload object or similar in core, so 
we can handle it with relative ease in our mostly-UI extension
## Create Upload model API in core https://phabricator.wikimedia.org/T103413
### Base functionality - use the new upload API to upload a file, configurable 
to use stash
### Base functionality - finish stash upload
### Base functionality - set file description page text for upload (to be used 
in finish-stash call, or in initial upload if no stash option passed in)

# Upload OOUI widget can then just use all of those things, and it can live in 
VE instead of having to be across a couple of extensions.
## Create upload widget in VE https://phabricator.wikimedia.org/T91717 {{epic}}
### Upload inspector
### File input widget in OOUI {{done}}
### Take file from widget, use upload API in core to stash
### Description/licensing/category form
### Emit finished upload from widget
## Use upload widget for inserting files into VE 
https://phabricator.wikimedia.org/T91717 (new task?)
### Add upload widget as above
### Use emitted file to construct thumbnail (file API?), caption (based on 
description)
## Drag-and-drop https://phabricator.wikimedia.org/T40031
## Copy-paste https://phabricator.wikimedia.org/T39932

-- 
Mark Holmquist
Lead Engineer, Multimedia
Wikimedia Foundation
[email protected]
https://wikimediafoundation.org/wiki/User:MHolmquist

Attachment: signature.asc
Description: Digital signature

_______________________________________________
Multimedia mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/multimedia

Reply via email to