Date: 18 March 1983 11:50 am PST (Friday)
Sender: Schmidt.PA
Subject: Cedar 4.0 release (part 1 of 2)
From: Release Master
To: CedarUsers↑, CedarImplementors↑
cc: CedarCoordinators↑
Reply-To: Schmidt

Cedar 4.0 is released.

Cedar 4.0 contains the first release of CoCedar, our CoPilot replacement.  Most Cedar interfaces have been changed in minor ways, and many functional imporvements have been added.  BEWARE: Dorado users have to adjust the sizes of their volumes to accomodate the new CoCedar.  This means you must move your Alto partition from partition 4 to 5 and FORMAT your disks, which will erase all your Cedar volumes.  Read the installation procedure carefully before beginning.  There are some IMPORTANT warnings for Walnut users below.

Because of changes to microcode and germ files, I strongly recommend converting to 4.0 within the next week.  Users of 3.5.2 will experience difficulty booting Cedar from the MesaNetExec because of Germ changes.  If you boot 3.5.2 using the MesaNetExec, avoid running anything other than Othello before triple booting again holding down C or P (which will get the correct germ).  Users of 4.0 will not have to worry about this.

This release announcement consists of five parts:

  Installation Procedure
  Significant Changes in this Release
  Known Problems
  List of System Components
  Summary of Release Component Changes since Cedar 3.5.2

This message contains the first three sections, which should be read and understood before attempting to use this release.  A subsequent message holds the
last two sections of the release announcement, which are quite long.  These latter sections can be treated as reference material and need not be read before acquiring and using the release.


Installation Procedure
---------------------

Each and every Cedar user and implementor will have to do something to install this release, even if he or she is already running a prerelease version of 4.0.  These procedures should handle all configurations of Dorados and Dolphins running Cedar.  If you are already an alpha-tester of 4.0, be sure to follow instructions in your section.

Please do NOT convert public Dorados yourselves, let me do it (because of the partition assignments.)

****  AN IMPORTANT WARNING FOR WALNUT USERS

If you are reading this message from Walnut and intend to SModel to save your Walnut log and then intend to erase your disk, you should SModel using the "s" option to guarantee that your Walnut log will be stored even if its create date matches that on the server (which can happen if you have been running Walnut without interruption for a long time -- it changes the create date on the log only when started).

**** If you are running 3.5.2 on a Dorado with an Alto partition on partition 4:

!!!! THIS PROCEDURE ERASES YOUR CEDAR WORLD !!!! 

1.  Clean up your Cedar world.  Verify that all files are backed up by running
the program "DFDisk" and scanning the list of files at the end of "Disk.DF" that
are headed by "[Unknown]<Unknown>".

2. Get to your Alto world.  Get to the net exec.  Run the CopyDisk program. 
Enter
	Copy From BFS4
	  to  BFS5
answer yes to the questions.  YOUR CEDAR WORLD IS NOW KAPUT.  There is
now a copy of your partition 4 on partition 5.

3. Get to the net exec.  Get to the MesaNetExec.  Enter the command "Switches:
n", followed by the command "OthelloDorado".

4.  Login to Othello and type the command
	@
	[Indigo]<Cedar>Top>FormatNewPrivateDorado4.cm

(NOTE: the "4" at the end of the file name is very important.) This command file
will reformat your disk, retrieve the latest Cedar boot files, and install CoCedar. 
Your Alto world on partition 4 is now gone.  NOTE: CoCedar is automatically
installed.

5. After CoCedar has been booted, you will end up booting the Client volume.  Answer questions as appropriate.  Subsequently, you can boot your Cedar voulme by triple-booting holding down either the "P" or "C" keys.

**** If you are running 3.5.2 on a Dorado with all partitions devoted to Cedar, or you are running 3.5.2 and want to eliminate your Alto partition in 4.0.

Then you must reformat to be sure your debugger volume has the right size and is named "Debugger" instead of "CoPilot".

!!!! THIS PROCEDURE ERASES YOUR CEDAR AND ALTO WORLDS !!!! 

1.  Clean up your Cedar world.  Verify that all files are backed up by running
the program "DFDisk" and scanning the list of files at the end of "Disk.DF" that
are headed by "[Unknown]<Unknown>".  Clean up your Alto world, because it
will be removed.

2. Get to your Alto world.  Get to the net exec.  Get to the MesaNetExec.  Enter
the command "OthelloDorado".

3.  Login to Othello and type the command
	@
	[Indigo]<PreCedar>Top>FormatNewPrivateDorado5.cm

(NOTE: the "5" at the end of the file name is very important.) This command file
will reformat your disk, retrieve the latest Cedar boot files, and install CoCedar. 
Your Alto world is now gone.  NOTE: CoCedar is automatically installed.

5. After CoCedar has been booted, you will end up booting the Client volume.  Answer questions as appropriate.

**** If you are already running prerelease versions of 4.0 on a Dorado:

If your Alto partition is on partition 5 and your debugging volume is named "Debugger", you do not have to reformat or erase your disk.  Simply run the [Indigo]<Cedar>Top>DoradoRelease.cm command file from Othello.  You must do this to get the new germ files.

If your machine is "all-Cedar" and your debugging volume is named "Debugger", you do not have to reformat or erase your disk.  Simply run the [Indigo]<Cedar>Top>DoradoRelease.cm command file from Othello.  Unfortunately, the standard command file installs microcode that boots the Alto world by default.  If you do not reformat your disk, you may wish to install [Indigo]<Cedar>Top>DoradoInitialDisk.eb as your Initial microcode using Othello.

Otherwise, you will have to reformat your disk by following the instructions for users converting from 3.5.2.  Do not attempt any shortcuts.

**** If you are running 3.5.2 on a Dolphin:

1.  Clean up your Cedar world.  Verify that all files are backed up by running
the program "DFDisk" and scanning the list of files at the end of "Disk.DF" that
are headed by "[Unknown]<Unknown>".

2. Get to your Alto world.  Get to the net exec.  Get to the MesaNetExec.  Enter
the command "OthelloD0".

3. It is strongly recommended that you erase your Client volume before
installing Cedar 4.0.  Doing so will improve performance (by eliminating
fragmentation) and failure to do so can result in peculiar failures at
unpredictable times, for which the only cure is erasing the volume.  If
there are any files on the Client volume that you wish to save, save them
before proceeding.  To erase the Client volume, type Erase<CR> to
Othello.  You will be prompted for the volume name, type Client<CR>. 
Confirm as necessary.

4)  Type @<CR> to Othello.  You will be prompted for a command file
name.  Type 
	[Indigo]<Cedar>Top>D0Release.cm
New boot files will be fetched for all volumes, as well as new microcode and germ files.

5)  The Alto partition will be booted; hold down the "P" key and press the boot button to boot Cedar.

*** Information for all Cedar Users:

During the installation dialogue, you will be asked if you wish to use a
personal DF file.  If your personal DF file includes a personalized user
profile (many do), you should answer "No" to this question, since a profile
acceptable to Cedar 3.5.2 will almost certainly be unacceptable for Cedar
4.0.  There are significant changes in the options available through the
user profile (see below) that should be carefully considered.  After
installing Cedar 4.0 with the default user profile but before making a
checkpoint, you can edit your personal profile suitably and some of the changes
will be noticed automatically.

As with previous releases, once the automatic installation procedure completes,
you may then optionally acquire lots of additional useful files by typing

	BringOver /a CedarClientFat.df    (Note:  NOT /p)

to the UserExec.  This will fetch the exported contents of most of the major
packages, whether released as part of the boot file or as separate BCDs.  Users
with limited disk space probably shouldn't do this.

Once you have brought over all the desired files, you may wish to make a
checkpoint, using the button at the top of the screen.

If you use Walnut, be aware the name of the Walnut log file has changed.  Be sure to 
	Rename Walnut.DBLog ← DB.WalnutLog
before running the 4.0 version of Walnut, and be sure to change your DF files so they save "Walnut.DBLog" instead of "DB.WalnutLog".

Before beginning to use this release, you should read the remaining sections of this message.


Significant Changes in this Release
----------------------------------

This section documents important changes in the user interface or major components and briefly describes significant new components.  The descriptions here are incomplete and intended only to provide sufficient information to avoid surprises and confusion.  Users should consult the more complete descriptions in the "Summary of Release Component Changes" section of this release announcement.

1. CoCedar: Dorados now have CoCedar, a Cedar-based replacement for CoPilot, installed on their debugger volumes.  This new debugger provides more function in many areas of Cedar, especially when interpreting Cedar expressions.  The DebugTool allows client-side debugging of many multiprocess programs that used to require the world-swap.  CoPilot is still available for those who choose not to use CoCedar.

2. IO: The section of IO dealing with parsing the input stream, i.e. GetRope, GetToken, GetRefAny, etc. has been completely reworked.

3. NewStuff: A log of changes made during your session is now maintained.  Searching using the Find, etc. buttons can now use the previous search.

4. Performance: There are many notable performance improvements in both the basic "feel" of the system and in specific operations, e.g. directory searches are twice as fast.

5. Spell: There are new spelling corrector options that may be used to reduce the amount of work the corrector expends before giving up.

6. Tank, Talker: Tank is a new arcade game.  Talker is a tool for typescript-communication between two or more Cedar users.

7. UserExec: Many new features in user interface.  Changes and new features to the program interface.

8. Viewers and Tioga: More powerful "Desktops" have been implemented.  The program interfaces are now all SAFE interfaces.

9. Walnut: Many performance improvements, especially on Dolphins.



Known Problems
----------------

The following problems/glitches are known to exist in Cedar 4.0.

1. Clicking "Source" to see the source position in a file sometimes fails and leaves the first character of the file selected.  Clicking again usually selects the correct position.

2. A race condition occurs infrequently when you Destroy a typescript (while it is being repainted), which results in a 915 on Dolphins or an uncaught signal in CoCedar.

3. Don't set the number of Unsaved Tioga Documents to 0.

4. There is a bug involving an IO stream created using CreateDribbleStream when GetSequence is called.

5. There have been monitor locks when running Talker.

6. The boot file advertises itself as "4.0.98" when it should say "4.0".

7. When an Action Area prints its current procedure context, it sometimes prints "FooImpl.??" (rather than, e.g. "FooImpl.Baz").  This may be a symptom of a bug in Cedar rather than a sign of having the wrong symbols for FooImpl.  If the Source command succeeds, you have the correct symbols (and can determine the context by visual inspection).

8. The fact that the interpreter can correctly evaluate interface Foo does not imply that it can correctly evaluate procedure Foo.Baz (the result may be NIL with no warning).  This may be a sign that Foo is not exported from the loaded bcd containing it.

9. Do not create a checkpoint that includes an open Chat window or a Chat icon.  (The code is holding on to a streamhandle for the log file.)

10. During a Walnut automatic scavenge, do not display any message sets; wait until Walnut 4.0.1 is printed in the control window.

11.  Walnut sets the create time of the log file only when it is started.  This means you have to Destroy and reopen the Walnut control viewer (thus restarting it) to update the create time of the log file. (This happens on each rollback if you have Walnut in your checkpoint.)  If you SModel without doing this and without the /s switch, the log file may not be stored even though you have read new mail.

The Release Master