Release process

Release process

* Open issues
    * We need to define a 'production environment'; the 'testing environment' is "running from src/dps8". What should the layout of files be? Local "bin" directory? Install to '/usr/local/bin/'?
    * Releases:
        * Emulator Beta 1.0? Release Candidate series?
        * Emulator 1.0? Release Candidate series?
        * Multics 12.6

* Define targets

    Emulator Beta 1        Eb1
    Emulator Release 1   Er1
    MR12.6 Beta 1          M6b1
    MR12.6 Release 1     M6r1
    MR12.7 Beta 1          M7b1
    MR12.7 Release 1     M7r1

    * Emulator
        * Features
            idling  -- Eb1

    * Multics
        * Operational:
            PL1     - Eb1, M6b1
            BASIC
            APL
            COBOL
            FORTRAN
            Pascal
            ALM    - Eb1, M6b1
            Other languages?
            Networking
            Tape drive      - Eb1, M6b1
            Card reader -- bugs
            Card punch -- incomplete; format translation software needed
            Printer
            Forum
            Mail
            MRDS application
            X.25/IMFT

    * Documentation
            Multics setup documentation  M6r1

    * License Policy  Now

    * Pnotice Policy Now

* Define deliverables

    * Packages
        * Roll-your-own/development participation.
          Contains
             * instructions for:
                 * git cloning
                 * obtaining extras:
                     * tape package
                     * prebuilt RPV
                 * build from source
                 * Multics installation
                 * running in a testing environment
             * information on tools and documents

        * Roll-your-own/standalone
          Contains
            * instructions for:
                * getting tarball
                * obtaining extras:
                    * tape package
                    * prebuilt RPV
                * build from source
                * Multics installation
                * setting up production environment
                * running in a production environment
            * information on tools and documents

        * Prebuilt
          Contains:
            * Binaries:
                * Linux
                * OS/X
                * Windows
                * Android?
                * 32bit?
            * Boot tape
            * instructions for:
               * obtaining extras:
                   * tape package
                   * prebuilt RPV
               * running in a production environment
            * information on tools and documents

 * Extras
    * tape package
      Contains the 12.3, 12.4, 12.5, 12.6 tapes sets (note: fix name of 12.3UNBUNDLED_DF0019_1.tap)
    * prebuilt RPV
    * script and tool collection
    * sl1 listing collection for source level debugger
    * Multics source tree?
    * ?

* Staging process
    * Emulator document freeze
    * Emulator source freeze
    * Tarball freeze
    * Emulator release
    * Stage executables
    * 12.6 tape freeze
    * Stage tape package
    * Stage prebuilt RPV
    * 12.6 document freeze
    * 12.6 release

Notes:
  Post emulator release, we will need a more formal emulator source code change process. The master branch becomes the Master; checkins to master must have change tracking (bug #, feature request #, etc), and some level of review and signoff. Likewise for the 12.6 release. I think we can evolve into MCRB/ECRB, but laying the process groundwork early is A Good Idea.
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License