Well, it seems to me that everyone was mostly
in favor of Wine 1.0.

So, I tried to boil down all of the comments
and create a 'Wine 1.0 project plan'.  

I've included it inline below, and I'd appreciate comments.

Thanks,

Jeremy



---


Wine 1.0                        Task List                       May 18,
2000
----------------------------------------------------------------------------


Introduction:

    This document provides a working task list and rough project
plan to be used as an aid in creating Wine version 1.0.
It includes a project plan, a release criteria guideline,
and a complete list of potential Wine 1.0 tasks.



Status of this document:
    This is a DRAFT version of this document.

    The purpose of this version is to continue a discussion
of Wine 1.0, with the hopeful result of creating a master
project plan document to help us achieve Wine 1.0.



The Master Plan:

    1.  Refine this document 

        A.  Discuss on wine-devel

        B.  Obtain commitments for work
            I would like to start having people indicate
            whether or not they are working or will be working on a
task.

            For our part, CodeWeavers is going to volunteer to do the
jobs no
            one else wants (like QA and documentation).  Really we will,
            let me just twist a few more arms...<g>

        C.  Publish the official version of this document

    2.  Implement minimum release requirements, as outlined below

    3.  Continue normal Wine work, including work against
        the complete task list.

    4.  After the requirements for release have been met,
        declare Wine ready for release.
        (is this point decided by consensus?  Fiat by Alexandre?)

    5.  Release process: (as per Alexandre)

        I'll make a 0.9 release which marks the feature freeze; 
        from then on, only bug fixes will be allowed into the tree, 
        until we consider it stable enough to call 1.0. 
        There will _not_ be a separate unstable branch until
        after 1.0 is out; otherwise developers will continue working on
        the unstable branch and the bugs won't get fixed.
       



Task list:
    In the sections below, I have attempted to present all
ideas that were given in response to my original post.
Please forgive me (and correct me) if I've ommitted something
or misrepresented something.

    Many thanks to Eric Poech, for his summary on WWN.

    While I included all of the posts, I tried to break them
into two categories:  minimum requirement for release,
and wish list for release.  I think we should discuss
these priorities, but also keep in mind that where a
task falls on this list is in many ways irrelevant -
the only thing that will matter in the end is what work
someone does.



Process Changes Suggested for Wine 1.0
--------------------------------------

  Minimum requirements for release:

    *   Solidify WineHQ, CVS, mailing list servers, application
database.

    *   Be willing to produce some sort of "state of the union" type 
        documention indicating what our future strategy is and what we 
        expect to work in this release. (Peter Hunniset)

    *   Polish installation and configuration (e.g. get rpms and
        debs for many major distros).

    *   a set of "certified" applications that work correctly
(Alexandre)
        - all apps based on InstallShield should at least get installed
          right

    *   Improve the bugs tracking database


  Nice to have for release, but hard to say when its done;
    we should at least start

    *   Better documentation - everything we have updated - so that we
don't
        get bombed with the same old questions. This is just the dotting
the 
        i's and crossing the t's of a real release. (Peter Hunniset)

    *   Clean up the data in the application database

    *   some kind of automated regression testing, at least for
        non-graphical APIs  (Alexandre Julliard)

    *   Need to get some high priority applications running as well as
        possible(Word/Excel/SC's battle.net working properly,
        b/c tons of people want to run SC under wine). 
        (Christopher Michael Morgan)    




Coding changes for Wine 1.0
---------------------------


  Minimum requirements for release:

    * (surprise) address space separation
          + NT-like WOW VDMs for Win16 processes
          + dll shared sections
          + if possible no system structures allocated on the system
heap
    * better window management
          + update regions calculation will get broken by address space
            separation
          + rewrite of -managed mode support
          + Ove Kaaven adds:
            (For example, with most window managers, it is possible to 
            create a managed but completely undecorated window, just
look at 
            XMMS - we should have an option to create those instead of 
            completely unmanaged windows).
    * backwards compatibility
          + an app built against Winelib 1.0 should work with Wine 1.1
            dlls
          + the other way around is not necessary (i.e. if you upgrade
an
            app/dll you may have to upgrade the Wine core too)
    * thread-safe GDI (merge from Corel tree)

    * Support and compilation of MFC available (Vivek Dasgupta, Michael
       Cardenas). On this, Jeff Tranter (from Corel, replacing Gav State
       who left Corel), announced that "The g++ enhancements that we
       contracted Cygnus to do are now complete and should show up in
the
       public release (I'm not sure when, though).", and Jeremy White
       "further, we have successfully built MFC after making only a
       modest set of changes to it, even with older versions of g++."

    * Merging back the Wine and Corel CVS tree (to ship their various
       applications, Corel decorelate its own tree from Wine's, even if
       modifications in both ways took place in the past six months).
    * CommDlg, Comdlg32 pair in working state (Marcus Meissner)
    * Shell, Shell32 pair in working state (Marcus Meissner)
    * Efficient printing (Marcus Meissner) (esp to Postscript - Joerg
Mayer)
    * a proper Windows' free environment (Jörg Mayer)


  Not absolutely required for release IMHO:

    * Many sample applications compile and work with Winelib 'out of the
       box' (along the lines of the work that Francois Gouget is doing).
        (Jeremy White)  (Okay, Marcus, I pushed it down to here,
        but I reserve the option to make this happen anyway <g>)
    * correct interfaces between dlls      (Alexandre Julliard)
          + dlls only use exported APIs
          + no more global variables
          + functions exported from libwine.so reduced to a minimum
          + proper separation of GDI and USER
    * a complete wrc (Wine resource compiler) (Michael Cardenas had
       issues with huge resources and wrc).
    * better font support (which triggered again the discussion on the
       True Type integration).

    * DirectX working well(and well tested with xfree4.0/3.X.X)
       (Christopher Michael Morgan)    



Post Wine 1.0 Task List
-----------------------
    * desktop integration by making it possible to use a 
       standard toolkit; ideally a modular toolkit interface, 
       but even support for only a single toolkit (probably GTK) 
       would be good enough.    (Alexandre Julliard)


Completed Tasks:        <g>
----------------
    * Joerg Mayer asks if Wine is MP safe and Uwe believe that it is
      (at least he has no MP specific hacks in his tree).

Reply via email to