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

Reply via email to