Christopher Jones wrote: > > > Yannick Torrès wrote: > > Is it really necessary to allow valid user to save as a patch ? > > Perhaps we can just allow "save as a patch" for anonymous user. > > Some unification & simplification of processes and terminology would > really help. The difference between "Pending for commit" and "Pending > patches" isn't obvious. > > I think the process should only distinguish between "work in progress" > and "complete work". In the UI I'd label them "Incomplete patches" > and "Completed patches". Anonymous users should be allowed (somehow) > to "Save" files so they are in the "Incomplete patches" queue, just > the same as an authenticated user. There should one button (Save), > not two (Save & Save as patch). > > There should be a way to change the patch state from Incomplete to > Complete when the author is happy with the content alteration. In the > "Completed patches" queue it should be straightforward for > authenticated users to commit. Completed patches by Anonymous users > could also go into the "Completed patches" queue, or to a separate > "Contributed Patches" queue. > > Chris >
This mail expands on what I wrote above, and summarizes for discussion a long IRC chat with Yannick. Chris ----------------------- The basic process could be reduced for all users to: Save files -> Create Patch -> Commit. Optionally, we could also allow Save files -> Commit. Each file editor only has one "Save" button, and the "Save as Patch" button is removed. "Save" would place the file in a "Save Work" section, grouped by user. This section simply means "Here is a file I've edited". It doesn't imply work on the file is finished. If user #2 tries to save a file that user #1 has already saved, then user #2 is shown an error and must contact user #1 about committing & releasing the file. After a few users have saved files the "Saved Work" section could look like: Saved Work sixd oci8_a.xml oci8_b.xml date.xml yannick spl1.xml spl2.xml Anonymous array.xml session.xml mysql.xml Each saved file shows a checkbox to only the user who saved it. There is a "Submit as Patch for Review" option that operates on all checked files. A possibile variation is for authenticated users to have an extra option to commit the checked files directly. An Anonymous user would only ever have the "Submit as Patch for Review" option. All patches for all anonymous users either appear in the same "Anonymous" sub-section, or have their own subsection like "Anonymous #1". To prevent DOS issues, it might be best to rollback anonymous saved work when the user logs out or the session has been inactive for some hours. Most users making non-trivial changes will have accounts. Submitting a patch moves files from the "Saved Work" to a "Patches for Review" section. After sixd had checked both oci8 files and submitted them, the UI would look like: Saved Work sixd date.xml yannick spl1.xml spl2.xml Anonymous array.xml session.xml mysql.xml Patches for Review sixd Patch 1 oci8_a.xml oci8_b.xml If sixd later submits date.xml and an anonymous user submits array.xml, the UI would look like: Saved Work yannick spl1.xml spl2.xml Anonymous session.xml mysql.xml Patches for Review sixd Patch 1 oci8_a.xml oci8_b.xml Patch 2 date.xml anonymous Patch 1 array.xml Each of the "Patch X" lines would allow committing, deleting or re-editing (moving back to the "Saved Work" section so further changes can be made) of the patch. Users can commit their own patches, and possibly those of others. An overall Administration role could be introduced with extra access as needed. -- Email: christopher.jo...@oracle.com Tel: +1 650 506 8630 Blog: http://blogs.oracle.com/opal/ Free PHP Book: http://tinyurl.com/ugpomhome