Make TWikiDraw (TWD) save SVG
This is important for TWD users: without this feature implemented, we maybe have to drop TWD support when we merge the new storage backend.
See also: FeatureRequests/TWikiDrawPluginUpdate, should be done first.
Problem
The current TWikiDrawPlugin we use saves up to 3 files:
- .draw = drawing in TWD specific format
- .png = rendered drawing, ready to use by browsers (original TWD saves .gif, .png is moin specific)
- .map = metadata for linking specific areas in the png
Problems:
- We'll switch to a new revisioned storage backend soon, handling 3 files is currently not supported and would make things complicated.
- We have no JAVA developer who could care for code like TWD.
Thoughts
We need only the .draw file in the attachment path. All the other files could be provided using the cache action.
No, we only need the .svg - because that is our single authoritative (future) source of all information. PNG and MAP information can be generated from the SVG and stored in the sendcache. .draw will be completely useless as soon as twikidraw can read from svg.
Ideas
TWD
change TWD to just save 1 file: .svg TDicussion on twiki WikiDrawSvgPluginDev
- no need for .map: SVG can have links internally
no need to store .png, see FeatureRequests/ImproveSVGSupport
Conversion
We need some way to convert from draw/map/png to svg.
On the fly
- If TWD would support both draw/map/png and svg, it could load the old files and save just the new svg.
- If moin detects TWD is saving a SVG file, it could kill the old files.
Problem:
You need to touch every drawing to migrate all your drawing data to be just a single SVG file. Thus, maybe the convertor is the better idea.
One-time conversion
For converting everything in one go, a automatic tool reading draw/map and writing svg would be needed.
It either would have to do everything on its own (JAVA possible), or be in Python, so it could be called by the migration script framework.