			Java Electric change log ( MAIN branch )

NOTE: Please place changes under the version that will be released next.

************************* END OF Version 8.08, GNU RELEASE *************
************************* Version 8.08o: ******************************

IMP: (12/16/08, GVG) Regression for new fill generator. Now all fill generation tests also compare
output wit expected data.

BUG: (12/15/08, GVG) No such element exception if export name is not found (Bug #1989)
FIX: Detecting if arcs do actually have exports on their networks.

IMP: (12/12/08, GVG) Ability to call the new fill and use data found in open window (Bug #1985)

IMP: (12/12/08, GVG) Changes to debug "3 Spice regressions broken after bug#1969" (Bug #1986)

BUG: (12/10/08, GVG) NPE in CVS Add or GetStatus on a new library (Bug #1984)
FIX: Detecting when lib.getLibFile() is null.

IMP: (12/10/08, SMR) Converted standard cell marking in "Cell Properties" dialog
     to use the new standard cell marking method (a displayable variable) (Bug #1983).

BUG: (12/11/08, GVG) Can't copy and paste a text attribute associated to an art arc? (Bug #1977)
FIX: Extra code to copy/past ARC_NAME, NODE_NAME and EXPORT_NAME since they
are not longer stored as variables.

BUG: (12/10/08, GVG) Assertion in new fill generator  (Bug #1920)
FIX: More fixes for those zig-zag cases in the ico fill.

BUG: (12/9/08, GVG) Explain why GDS can't be imported using a particular set of User's preferences (Bug #1968)
FIX: Messages related to renaming of instances are stored as warnings instead of errors.

BUG: (12/9/08, GVG) Editing text externally doesn't remove the tmp file (Bug #1975)
FIX: Using standard File.createTempFile to create tmp files.

IMP: (12/9/08, GVG) Forbidden DRC rules names should be shown in ErrorLogger (bug #1982)

BUG: (12/9/08, SMR) Spice preference "Use Node Names" is useless (Bug #1969).
FIX: This preference actually controls the use of global signals in
     subcircuit headers, so it has been renamed "Make Globals Parameters".

************************* Version 8.08n: ******************************

IMP: (12/8/08, GVG) Add corresponding native thick contacts to CMOS90 (Bug #1972)

BUG: (12/8/08, SMR) Spice preference "Force Global Power and Ground" is broken
     (Bug #1969).
FIX: Spice preference "Force Global Power and Ground" is now
     "Use Global Power and Ground" and controls the activity better.

BUG: (12/7/08, DN) Inconsistent database after doc cell is renamed (Bug #1976)
FIX: In User.fixStaleCellReferences apply cell rename to every WindowContents.

IMP: (12/5/08, GVG) Slow DRC in ColChip top cell (Bug #1950)
FIX: Improvements related to arc cropping with a huge number of pins in the design.

BUG: (12/5/08, GVG) Can't GetInfo light-blue text (Bug #1979)
FIX: Arrays.binarySearch doesn't work on non-sorted arrays (see documentation).

BUG: (12/4/08, SMR) Spice deck generation crashes with Proximity-based RC (Bug #1781)
FIX: Spice deck generation based on Proximity-based RC removed.

BUG: (12/4/08, SMR) The Schematic primitive "transistor", when placed in a
     circuit, cannot have its L and W parameterized using regular Spice
     parameters (Bug #1978).
FIX: In Spice.writeCellTopology() handle parameters when writing transistors.

IMP: (12/2/08, SMR) GDS import now has Preference for setting level of
     array simplification (Bug #1901).

BUG: (12/2/08, SMR) GDS import does not handle arrays of simple cells
     right when they have outline information (Bug #1901).
FIX: Ignore expansion of subcells if they have outline information.

BUG: (12/3/08, GVG) Modifying working directory path in case of selection text
     editor binary (Bug #1973)
FIX: Use chooseInputFile function with setSelectedDirAsWorkingDir=false.

BUG: (12/3/08, GVG) Wide/long errors detected by Electric but not by Calibre (Bug
     #1961)
FIX: Better detection of parallel runs of metals.

BUG: (12/3/08, SMR) Verilog netlister should merge schematic signals when they
     are parts of the same bus (Bug #1963).
FIX: In Topology.doGetNetworks(), no longer insist that exports be the same in
     order to unify a bus.

BUG: (12/3/08, GVG) Assertion in new fill generator (Bug #1960)
FIX: Improved the generator to deal with zig-zag conditions.

IMP: (12/3/08, SMR) Dummy layers now appear at the bottom of the Layers tab (Bug
     #1946).

IMP: (12/3/08, SMR) The "Text Search" dialog has been augmented to let
     you restrict the text search to specific Code and Unit values (Bug #1519).

IMP: (12/3/08, SMR) The "Show Network" command now shows networks on
     all arcs connected to a cell instance if that instance is selected
     but NO ports are selected (Bug #1902).

IMP: (12/2/08, GVG) Show GDS import errors in ErrorLogger (Bug #1971)

BUG: (12/2/08, GVG) NPE in GDS import if non-GDS file is uploaded (Bug #1970)
FIX: Avoid to print cell name if cell hasn't been created yet.
     It also deals with errors while importing EDIF, LEF, DEF, DXF, SUE, Verilog
     and Applicon when a non-<format> file is uploaded. Improving error message
     for ELIB and readable dump.

IMP: (12/2/08, GVG) Resetting invalid text names in GDS import. Changes are meant
     for Bug #1968.

BUG: (12/2/08, SMR) GDS import does not handle arrays of simple cells
     right when they are rotated (Bug #1901).
FIX: Transform cell contents before adding it to the large polygon.

IMP: (12/2/08, SMR) Added the layer to the "Manipulate Exports" dialog (Bug
     #1967).

BUG: (12/2/08, SMR) Want movement and deletion reported in the messages window
     (Bug #1917).
FIX: Report movement and deletion.

IMP: (12/1/08, GVG) Object selected in "Select Object" dialog is not visible (Bug
     #1964)

************************* Version 8.08m: ******************************

BUG: (12/1/08, GVG) Well resistors having wrong dummy layer (part of Bug #1956)
FIX: nwdmyLvsLayer is the layer chosen this time.

BUG: (12/1/08, SMR) "Down Hierarchy In Place To Object" should list just one
     object per context (Bug #1930).
FIX: In CellMenu.downHierInPlaceToObject(), eliminate duplicate choices.

BUG: (11/29/08, RK) cmos90.java appears to assign RESPWELL and RESNWELL
     functions to RPO Poly Resistor-Node whereas I think it should assign
     RESPPOLY and RESNPOLY functions. I fixed cmos90.java but I don't
     understand what to do with Technology.xsd. (Bug# 1959)

BUG: (11/26/08, GVG) Upgrading definition of well and poly resistors in TSMC
     technologies (Bug#1953)
FIX: Changed Technology.xsd so it will request the proper p/n well/poly resistors
     in the XML definition.

IMP: (11/26/08, GVG) Well resistors in CMOS90 (Bug #1956)

BUG: (11/26/08, SMR) Upgrading schematic poly-resistors to more detailed
     resistors: p-poly, n-poly, p-well, and n-well (Bug #1953).
FIX: Changed Schematics to draw them (well resistors have box around them,
     P/N distinction done with a letter).  Updated Spice output and Netlister.

BUG: (11/25/08, GVG) NPE while doing copy or paste (Bug #1955)
FIX: Make Dimension2D serializable.

IMP: (11/25/08, GVG) Disconnecting more another spacing D-N-Well rule in CMOS90
     because of Bug#1942.

BUG: (11/25/08, SMR) When GDS text objects are too small, import of them
     gives many errors about "relative size".
FIX: In tool.io.input.gds.readText(), clamp "size" to
     "TextDescriptor.Size.TXTMINQGRID"

IMP: (11/25/08, SMR) Now have separate X and Y grid alignment values (Bug #1952).

BUG: (11/25/08, SMR) Move "GDS Input Scale" from preferences to project
     settings (Bug #1948).
FIX: Moved it and made it a Setting.

BUG: (11/20/08, SMR) Pure-layer node popup order is bad (Bug #1948).
FIX: Show well first, then substrate, by category, then art, then the rest.

BUG: (11/24/08, GVG) DRC takes a long time to abort in Bug #1950 example (Bug
     #1951)
FIX: More checkAbort conditions in the code.

IMP: (11/24/08, GVG) First version of tiles in new fill generator.

IMP: (11/21/08, GVG) Ability of keep cell instances in new fill generator.

BUG: (11/20/08, SMR) Pure-layer node popup should handle arrows and key
     selection, and show wells and dummys near the top (Bug #1948).
FIX: Rewrote TechPalette.PurePopup class to be a full dialog.

IMP: (11/19/08, SMR) Outlines can now use null values to separate multiple
     polygons (Bug #1901).

BUG: (11/19/08, SMR) Arrayed nodes generate incorrect VHDL (Bug #1947).
FIX: Rewrote GenerateVHDL.java and refactored it to
     com.sun.electric.tool.io.output.

IMP: (11/18/08, SMR) Made DXF input read all layers by default.

************************* Version 8.08l: ******************************

BUG: (11/13/08, DN) Cant delete cell and reuse name in same Job (Bug #1944).
FIX: In Layout.newCellInfo remove assert.

IMP: (11/13/08, GVG) New fill generator available in Tools menu -> Generator
     submenu

IMP: (11/12/08, GVG) Deep well rule temporary out from CMOS90 until Bug #1942 is
     clarified.

BUG: (11/11/08, GVG) java.lang.error in DRC of invLSLT_X50_v12 (Bug #1941)
FIX: Deep n well needed a different function to distinguish itself from the
     nwell.

IMP: (11/10/08, SMR) Changed "Tool" menu to "Tools" (Bug #1940).

IMP: (11/10/08, DN) If flag Technology.IMMUTABLE_TECHS is true then changes
     in Technology settings take effect only after Electric restart.

IMP: (11/9/08, DN) ExportTests use separate "projsettings_TECHNAME.xml" files.

IMP: (11/9/08, DN) Add method GDS.writeGDSFile with explicit writeExportPins and
     convertBracketsInExports flags.

IMP: (11/7/08, GVG) New fill generator that stitches set of given pieces of metal
     geometries.

BUG: (11/6/08, GVG) Annoying component menu changes (Bug #1935)
FIX: Adding missing listener to view list to enable/disable technology option in
     NewCell dialog.

BUG: (11/6/08, SMR) Errors section of Explorer tree collapses when the database
     changes (Bug #1898).
FIX: In ErrorLoggerTree.ErrorLoggerTreeNode.databaseChanged(), use new class
     ExplorerTree.KeepTreeExpansion to remember expansion state.

BUG: (11/5/08, SMR) Crossprobing doesn't work (Bug #1939).
FIX: Improved WaveformWindow.crossProbeWaveformToEditWindow()
     (crossprobing from waveform window to edit window)
     Improved WaveformWindow.findSelectedSignals()
     (crossprobing from edit window to waveform window)

IMP: (11/5/08, GVG) First version of new fill generator.

IMP: (11/5/08, SMR) When deleting a cell instance and reconstructing arcs and
     exports, those reconstructed objects are left highlighted (Bug #1936).

IMP: (11/5/08, SMR) Changed the default grid amounts to 0.5, 1, 5, 10, and 20
     (Bug #1801).

BUG: (11/5/08, SMR) Spice templates do not handle single elements in a bus (Bug
     #1938).
FIX: In Spice.replacePortsAndVars(), handle bus elements.

BUG: (11/5/08, SMR) Now that Electric is case-sensitive, Spice decks
     may have name conflicts, since Spice is case insensitive (Bug #1811).
FIX: Topology.java now handles case insensitivity for Spice.

BUG: (11/5/08, SMR) Factory reset of layers panel doesn't reset special colors
     (Bug #1744).
FIX: Fixed LayersTab.reset() to reset special colors.

BUG: (11/4/08, DN) Electric failes to mark a library for saving (Bug #1934)
FIX: In Snapshot.withRenamedIds mark "modified" LibraryBackups.

IMP: (11/2/08, GVG) Pwell process and gate orientation in Tech Creation Wizard
     (Bug #1933).

IMP: (11/2/08, DN) Preferences related to Technology are moved to special
     Pref.Group.

************************* Version 8.08k: ******************************

BUG: (10/30/08, GVG) Shift-0 (layer display) broken (Bug #1932)
FIX: Update also for shift-0

IMP: (10/30/08, GVG) Tech Creation Wizard can generate pwell technologies.
     It can also generate well arcs (Bug #1910)

BUG: (10/30/08, GVG) XML tech reader can't parse new ArcProto Function WELL (Bug
     #1931)
FIX: Technology.xsd amended.

IMP: (10/30/08, DN) CellBackup.techPool contains only technologies used in the
     Cell.

IMP: (10/29/08, SMR) Added a disambiguation popup to "Down Hierarchy in Place to
     Object" (Bug #1930).

BUG: (10/29/08, SMR) Auto-stitching doesn't handle daisy-chains right (Bug
     #1927).
FIX: Special code in AutoStitch.java now handles daisy-chains.

BUG: (10/29/08, DN) CVS update from Electric doesn't work (Bug #1795).
FIX: In Library.removeReferencedLib call backupReferenceLibs to propagate
     changes from Library.referencedLibs to LibraryBackup.referencedLibs.
     In NodeInst.replace don't create new arc if "newPortInst" is not defined.

BUG: (10/28/08, RK): NCC regressions need repair because Electric is
     becoming case sensitive.

IMP (10/27/08, SMR): Making not possible to place down a cell on itself due
    to circular dependencies.

BUG (10/27/08, SMR): The "Pure" component menu item can be too big and needs to
     scroll (Bug #1926).
FIX: In TechPalette.mouseReleased(), use a JComboBox popup.

IMP (10/27/08, SMR): GDS input now has a scale factor (Bug #1928).

BUG: (10/27/08, SMR) GDS reads incorrectly (Bug #1928).
FIX: Handle array references correctly.

BUG: (10/23/08, DN) Cells should be case-sensitive (Bug #1811).
FIX: Remove "equalsCaseSensitive" from many places.
     Fix arc names in TechTypeCMOS90 .

IMP: (10/22/08, SMR) Tabbing through the fields in the dialogs
     now selects the entire field (Bug #1916).

IMP: (10/22/08, SMR) Made well ports "hard to select" (Bug #1910).

BUG: (10/22/08, SMR) Node extractor is slow (Bug #1778) and doesn't abort (Bug
     #1925).
FIX: Added R-trees to auto-stitcher to speed it up.  Added more abort detection.

IMP: (10/21/08, JKG) Added layer functions for dummy and dummy exclusion layers

IMP: (10/21/08, GVG) New implementation of "different highlight color for
     network" (Bug #1776). White is the default color. Assuming it fixed bug
     #1924.

IMP: (10/21/08, SMR) Added generalized transistor function detection to "L" and
     Verilog (Bug #1858).

IMP: (10/20/08, GVG) Electric doesn't use old names information in case of
     JELIB/DELIB (Bug #1922)
FIX: Modification done in JELIB that also fixes DELIB. No need of a more
     sophisticated solution for now.

IMP: (10/17/08, GVG) Well ports added into MoCMOS transistors and pure well nodes
     (part of Bug #1910)

BUG: (10/17/08, GVG) Pure Well nodes connecting to wrong arcs (Bug #1923)
FIX: Correct well arc selected now. NOTW: TSMC180 nodes will connect to well taps
     arcs until pure well arcs are defined in that technology (to be discussed).

IMP: (10/16/08, GVG) Well arcs added into CMOS90 (part of Bug #1910)

IMP: (10/15/08, SMR) Tabbing through the fields in the Node Properties dialog
     now selects the entire field (Bug #1916).

************************* Version 8.08j: ******************************

BUG: (10/14/08, SMR) Cross-library copy doesn't always copy subcells
     if there is a naming conflict (Bug #1920).
FIX: In CellChangeJobs.copyRecursively() track cell naming conflicts and
     add a parameter to Cell.copyNodeProto() which uses the map properly.

BUG: (10/14/08, SMR) Verilog netlister is sensitive to ascending/descending
     busses preference (Bug #1919).
FIX: Improved Topology.java to evaluate bus directionality correctly.

BUG: (10/13/08, SMR) Crash deleting export when editing down-in-place (Bug
     #1913).
FIX: In Clipboard.getPasteBounds(), use proper object for a displayed object.

BUG: (10/13/08, SMR) "Duplicate Cell" dialog makes it hard to remove the default
     "NEW" appended to the cell name (Bug #1915).
FIX: The "NEW" is initially highlighted, making it easy to replace.

IMP: (10/13/08, SMR) Added multi-processor speed-up to "ERC Well Check" (Bug
     #1899).

BUG: (10/13/08, SMR) Well arcs are not drawn at some scales (Bug #1911).
FIX: In VectorCache.drawArc(), do not treat well layers specially when they are
     the only layer in an arc.

IMP: (10/13/08, DN) EPoint[] variables can't contain nulls (Bug #1901).
FIX: In database.Variable and in readers/writers.

BUG: (10/10/08, GVG) DRC of a cell should also check the
     upper levels where the current cell is used (Bug #1907)
FIX: DRC select option picks selected objects instead of using bounding box.

BUG: (10/11/08, DN) Cannot change cell view (Bug #1880).
FIX: Don't clear technology of cell in ViewChanges.ChangeCellView.doIt().

BUG: (10/10/08, DN) 3D preferences are always reset to factory values on new
     session.
FIX: In Layer.setFactory3DInfo don't change current values of preferences.

BUG: (10/10/08, DN) Can't specify more layer functions (Bug #1903).
FIX: Implement Layer.Function.Set by BitSet instead of long.

BUG: (10/8/08, GVG) Writing Spice file on Mac OS 10.5 uses ":"
     as delimiter instead of "/" (Bug #1877)
FIX: Use the Swing mode in OpenDialog under MacOSX.

IMP: (10/8/08, GVG) Well arcs added into MoCMOS (part of Bug #1910)

BUG: (10/8/08, RK) NCC runs slow on fastprox (Bug #1908).
FIX: Fixed performance bugs that become evident when instances have
     46,000 Exports.

************************* Version 8.08i: ******************************

BUG: (10/7/08, SMR) ERC regressions fail and crash (Bug #1905).
FIX: Fixed dependency on user interface and updated expected results.

BUG: (10/7/08, SMR) "List Cell Usage" ignores arrayed icons (Bug #1906).
FIX: In CellLists.listCellUsageCommand(), consider icon arrays.

IMP: (10/3/08, SMR) GDS import cannot handle volume of data (Bug #1901).
FIX: Modified the definition of Outline information: if a coordinate in the
     list is duplicated, then this indicates a "break" in the Outline, and
     a new polygon starts with the next coordinate. This allows multiple
     disjoint rectangles to be stuffed into a single Outline array.
     GDS import uses this for arrays of simple cells (with just 1 pure-layer
     node).

BUG: (10/3/08, RK) NCC changed to use new transistor functions. (Bug #1858)

BUG: (10/2/08, SMR) "Change" dialog pops-up error dialogs when certain
     selections are made (Bug #1900).
FIX: In Change.loadInfo() send better messages to Messages window.

IMP: (10/2/08) You can now right-click on an error group or on multiple
     error messages in the Explorer tree and choose "Show All" to highlight
     them (Bug #1889).

IMP: (10/2/08, SMR) Schematic DRC now checks that instance names don't
     conflict with network names (Bug #1895).

IMP: (10/2/08, SMR) Schematic DRC errors now group by cell name (Bug #1893).

IMP: (10/2/08, SMR) Sped up "ERC Well Check" significantly (Bug #1899).

IMP: (10/1/08, SMR) Added "Reverse video" option in "Layout Text" (Bug #1894).

IMP: (9/29/08, GVG) Remove ErrorLogger entries with zero Calibre errors (Bug
     #1888)

BUG: (9/25/08, GVG) Tech Wizard doesn't write GDS values properly in XML (Bug
     #1887)
FIX: Functionality added

IMP: (9/25/08, GVG) Making LE available as AbstractTest (Bug #1828)

BUG: (9/25/08, SMR) "Select All" selects invisible objects (Bug #1843).
FIX: Disable selection of primitive nodes or arcs that have no visible layers
     (already does this with click selection, now does it with "Select All").
     Also added "Selection" Preference to allow selection of invisible objects.

IMP: (9/25/08, SMR) Changing an export characteristic applys the change to
     other views of the cell (Bug #1868).

BUG: (9/25/08, SMR) GDS input crashes if no pure-layer node found (Bug #1886).
FIX: In GDS.setLayer(), handle missing pure-layer nodes.

************************* Version 8.08h: ******************************

BUG: (9/24/08, GVG) Can't find wiring target (Bug #1884)
FIX: Undoing "Incorrect placement of p-contact (Bug #1871)" because broke wiring
     target finding.

BUG: (9/24/08, GVG) Delectable bug (Bug #1885)
FIX: Typo fixed

IMP: (9/24/08, SMR) Rearranging layers, nodes, or arcs in the technology editor
     uses a drag-and-drop interface.

BUG: (9/24/08, GVG) DRC min size broken for asymmetric cmos90 contacts (Bug
     #1881)
FIX: Asymmetric min rules amended as well.

BUG: (9/23/08, GVG) DRC fails on serpentine transistors (Bug #1857)
FIX: Working with PrimitiveNodeSize and baseRectangle values now for case (1).
     Case (2) got fix with #1873.

BUG: (9/23/08, SMR) Spice templates in icons cause crash if there is a schematic
     (Bug #1879).
FIX: Handle Spice template at any place.

BUG: (9/22/08, SMR) Selecting a port on a Generic primitive shows a
     long list of possible arc connections (Bug #1878).
FIX: For Generic primitives, report connectivity simply as "ALL".

IMP: (9/22/08, SMR) Serpentine transistors now emit a single complex polygon
     for every layer (instead of breaking it up into mulitple segments, Bug
     #1873).

BUG: (9/22/08, GVG) Incorrect placement of p-contact (Bug #1871)
FIX: Skip startPort if it is available in the middle of the path. That should
     avoid infinite loops.

BUG: (9/22/08, SMR) Node Properties may spend too long listing ports (Bug #1874).
FIX: Node Properties now lists only the first 100 ports (or bus members)
     and has a "Show All" button to request the entire list.

BUG: (9/22/08, GVG) Infinite loop on transistor width casting (Bug #1875)
FIX: Transistors with ExpressionCode can properly return values now.

IMP: (9/20/08, GVG) Error logger set index for stepping (Bug #1869).
Next and previous will be with respect to the last ErrorLogger highlighted.

BUG: (9/18/08, GVG) Change in cells cases null point exception (Bug #1872)
FIX: Checking if all selected highlighted belong to the same Geometry class.

BUG: (9/18/08, SMR) Updates to the toolbar do not draw immediately (Bug #1870).
FIX: In ToolBar.redoToolbar() call updateUI().

BUG: (9/18/08, GVG) Transistor sizes wrong with mocmos/SCMOS conditions (Bug
     #1863)
FIX: Resizing of left and right edges in MoCMOS transistor primitive was missing
     so default was always picked.

IMP: (9/18/08, SMR) Preferences dialog is now modeless.  Also has
     "reset" for current panel and "reset all" for all panels.
     Individual preferences panels no longer have private
     "factory reset" buttons: "Toolbar", "Layers", "Design Rules",
     "Component Menu", "Key Bindings" (Bug #1867).

BUG: (9/18/08, SMR) "Up Hierarchy, Keep Focus" still not working right (Bug
     #1814).
FIX: Handled many special cases.

BUG: (9/18/08, GVG) Wrong 3D view of serpentine transistors (Bug #1862)
FIX: Stop merging of active regions if transistor is a serpentine.

BUG: (9/18/08, SMR) Manual viewer crashes if manual cannot be found (Bug #1865).
FIX: Initialize field variables before issuing missing manual error.

BUG: (9/18/08, GVG) Can't bind ctrl/alt/command <option> on MacOSX (Bug #1802)
FIX: Special detection of special keys on MacOSX Leopard

BUG: (9/17/08, GVG) Error Logger Import of XML doesn't seems highlight area (Bug
     #1864)
FIX: Wrong condition for cell object.

IMP: (9/17/08, SMR) Generalized specific transistor function usage
     and now use PrimitiveNode.Function methods to distinguish N-type and
     P-type transistors (Bug #1858).

IMP: (9/17/08, GVG) Serpentine transistors incomplete for getTransistorSize? (Bug
     #1861) Commenting out the line. The message is even available in 8.03p.

BUG: (9/17/08, SMR) Serpentine transistors with both field and gate poly
     emit both layers in the poly area (Bug #1857).
FIX: Fixed Technology.SerpentineTrans class to handle serpentine transistors
     better.

BUG: (9/17/08, GVG) NPE in GetInfoOutliner if click is in a 3D view window (Bug
     #1860)
FIX: Detect if the EditWindow.getCurrent() is not null (eg. if the click is on a
     3D window).

BUG: (9/17/08, SMR) Serpentine transistors don't display the proper size in the
     status bar (Bug #1857).
FIX: Use advanced size information for transistors.

************************* Version 8.08g: ******************************

BUG: (9/16/08, GVG) Exception in 3D view if transistors have only 1 poly (Bug
     #1856)
FIX: Introduced while fixing #1839. It is fixed now.

IMP: (9/16/08, SMR) Added accelerators to Sun menu (Bug #1852).

BUG: (9/16/08, SMR) New transistor types are hard to select (Bug #1855).
FIX: In Highlighter.distToNode(), make special selection code apply to
     all Field-effect transistors.

BUG: (9/16/08, SMR) FPGA technology repeaters are invisible by default (Bug
     #1848).
FIX: Made default be visible.

BUG: (9/16/08, SMR) Technology editor computes port sizes incorrectly (Bug
     #1854).
FIX: In LibToTech.getBoundingBox(), used incorrect bounding computation.

BUG: (9/16/08, SMR) Saved toolbar configuration may have errors (Bug #1851).
FIX: When errors are found, factory-reset the toolbar.

IMP: (9/16/08, GVG) Disable grid buttons on the tool bar if min/max has been
     reached (Bug #1847)

BUG: (9/16/08, DN) Exception in layer display algorithm (Bug #1846).
FIX: Encapsulate rendering result in class LayerDrawing.DrawingData for atomic
     update.

IMP: (9/15/08, GVG) Poly down  for STI (Bug #1839)  A reviewed version of 3D view
     for transistors. Only when field poly!=gate poly the LoCos shape is
     generated. 3D preferences were updated in layout techs to start with flat
     representation (STI shape).

BUG: (9/15/08, SMR) Going up hierarchy "keeping focus" when already
     descended down the hierarchy "in place" fails (Bug #1814).
FIX: If descended "in place" ignore "keep focus" when going up.

BUG: (9/15/08, SMR) Going up hierarchy when there is only one choice does
     not redisplay (Bug #1844).
FIX: In EditWindow.upHierarchy(), must fill screen after setting new cell.

IMP: (09/15/08, FYL) Added exclusion of .nfs* in build.xml

IMP: (9/12/08, GVG) Export layer information shown on status bar (Bug #1830)
     Same behavior for ports on cells.

BUG: (9/12/08, GVG) Explorer cell group drop on layout will drop a doc if exists
     (Bug #1842)
FIX: Detecting doc view and ignoring it.

BUG: (9/12/08, GVG) Exception in FillCellGen if master cell doesn't have gnd/vdd
     exports
FIX: Condition detected and code doesn't continue.

BUG: (9/11/08, SMR) New text objects in a cell are not selectable (Bug #1841).
FIX: In EditWindow.databaseChanged() clear text highlight cache (created by Bug
     #1804).

IMP: (9/10/08, GVG) Move option for Cells in ExplorerTree (Bug #1764).
     Indeed, it is a copy option to be consistent with the drag way to copy.
     It is a copy to avoid circular dependencies.

BUG: (9/10/08, SMR) "Select Object" dialog crashes (Bug #1840).
FIX: Trap empty sets in KeyBindingManager.KeyMaps constructor.

BUG: (9/10/08, SMR) Layers tab doesn't list generic technology (Bug #1838).
FIX: Used to show it only in debug mode, now show it always.

************************* Version 8.08f: ******************************

IMP: (9/10/08, SMR) New command: "Up Hierarchy, Keep Focus" goes up
     the hierarchy while keeping the cell in the same place (Bug #1814).

BUG: (9/10/08, SMR) Grid alignment doesn't fix outline-edited nodes (Bug #1833).
FIX: In CircuitChangeJobs.AlignObjects.doIt(), handle nodes with outlines.

BUG: (9/10/08, SMR) Mouse-over highlighting of text is slow (Bug #1804).
FIX: Optimized highlighting of text by caching it in an R-Tree.

IMP: (9/9/08, GVG) Disable CVS rollback if you haven't saved the library (Bug
     #1836).  Manual: only cells/libraries whose status!=NONE && status!=UNKNOWN
     can be rolled-back.

IMP: (9/9/08, GVG) Prework to fix "electric adding explicit gnd port to
     schematics" (Bug #1823)

IMP: (9/9/08, GVG) CVS update generates 1 Electric Job (Bug #1835).
     Indeed, it is the CVS status that is waiting. Message improved to avoid the
     confusion.

IMP: (9/9/08, SMR) Status bar now shows arcs that selected export can connect to
     (Bug #1830).

BUG: (9/9/08, SMR) Conversion of library to technology fails if component menu
     items are unknown (Bug #1831).
FIX: Give warnings when menu items are unknown.

BUG: (9/9/08, DN) "Factory reset" command sets zero default sizes in Artwork.
FIX: Add methods PrimitiveNode.getFactoryDefaultGridExtendX/Y and
     ArcProto.getFactoryDefaultGridExtendOverMin .

BUG: (9/8/08, DN) VerilogTest3 is broken because exported nets got private names.
FIX: In NetlistImpl.addUserName correctly init "exportedCount".

BUG: (9/8/08, GVG) MTD DRC code is not for schematics (Bug #1829)
FIX: MTD code is only valid for layout.

BUG: (9/8/08, SMR) Changes to Units preferences are not remembered correctly (Bug
     #1827).
FIX: Handle offsets correctly.

BUG: (9/8/08, SMR) Some high-voltage transistors are called "high threshold" (Bug
     #1826).
FIX: Fixed PrimitiveNode.java.

BUG: (9/8/08, SMR) Technology editor gives errors when precision is slightly off.
     Also, Export Properties shows too much precision (Bug #1825).
FIX: Made technology editor less precision-sensitive and did similar rounding
     In the Export Properties dialog.

BUG: (8/27/08, DN) Severe performance degradation in ListGeometryOnNetwork (Bug
     #1804).
FIX: Add method to Network API Netlist.getNetwork(Nodable no, Network subNetwork)
     and use it in HierarchyEnumerator.getNetworkInParent().

BUG: (9/5/08, GVG) DRC should report arcs that are not vertical nor horizontal
     (Bug #1824)
FIX: Arc is tested before checking geometries per layer.

IMP: (9/4/08, GVG) Avoid flat arcs in AutoStitch in case of ports are the same
     points. (Bug #1815)

BUG: (9/4/08, SMR) Technologies with text on the well or substrate nodes
     have that text out of scale with other contacts (Bug #1822).
FIX: In PrimitiveNode.getGroupFunction(), have Well and Substrate nodes
     grouped with contacts.

BUG: (9/4/08, SMR) Technology editor crashes when there are two pure-layer
     nodes for the same layer (Bug #1821).
FIX: In TechToLib.makeNodeInfo(), change assertion to a warning.

BUG: (9/4/08, SMR) Cannot connect Port objects in technology editor (Bug #1820).
FIX: Allow generic arcs to be routed if they connect generic nodes.

************************* Version 8.08e: ******************************

BUG: (9/3/08, SMR) External Text Editor setting in "Text" preferences
     corrupts the value and cannot be cleared (Bug #1819).
FIX: Fixed corruption and added "Clear" button.

IMP: (9/03/08, DN) Don't recompute CellBackup.Memoization in constraint system.

BUG: (9/03/08, DN) Exception caused by a move (Bug #1817).
FIX: In LayerDrawing.drawGrid and PixelDrawing.drawGrid check for "x >= sz.width"
     and "y >= sz.height".

IMP: (9/02/08, DN) Get read of most calls of "Cell.getArc(int arcIndex)" because
     of future change in its implementation for (Bug #1804).

IMP: (9/02/08, DN) Add method "boolean ArcInst.isZeroLength()" which can be
     useful for (Bug #1798).

IMP: (8/27/08, SMR) Fixes to grid alignment toolbar buttons (Bug #1801).

BUG: (8/29/08, GVG) Get List of Geometry task doesn't abort (Bug #1816)
FIX: parentJob was not included in LayerVisitor constructor signature.

IMP: (8/28/08, SMR) Started implementation of global "factory reset".
     "Reset" button works only in debug mode, and those panels which
     cannot do reset issue error messages (Bug #1744).

IMP: (8/28/08, SMR) Global text scale now applies to individual windows.
     "Text" Preferences lets you set both the default text scale for
     new windows as well as the current scale for the current window (Bug #1810).

IMP: (8/28/08, SMR) Multi-object Properties dialog on Annotation text
     now lets you move the text location (Bug #1789).

IMP: (8/28/08, SMR) Alt-S now brings up the Sun menu, not Steve (Bug #1813).

BUG: (8/28/08, SMR) When editing "in place" database is updated with
     each keystroke (Bug #1410).
FIX: Now update database only when text editing is done.

BUG: (8/27/08, GVG) mocmos as unknown technology? (Bug #1806).
FIX: Indeed the errors are due to unknown primitives. Message changed

BUG: (8/27/08, SMR) Technology libraries crash if there is no default foundry
     information (Bug #1812).
FIX: In Foundry.Type.valueOf(), handle null entries.

IMP: (8/27/08, SMR) Grid alignment now has 5 steps in menu and preferences.
     New commands to increase/decrease grid size are now in toolbar.
     Current grid alignment is shown in toolbar. (Bug #1801).

BUG: (8/27/08, GVG) DRC should not complain about zero lengths. (Bug #1798)
FIX: Flat arcs/nodes without being covered by other elements are reported as
     errors.  NOTE: Only 1 extra point is used for the scanning and that might
     not be sufficient.

BUG: (8/27/08, SMR) Cell history buttons are the same in each window (Bug #1753).
FIX: Made these buttons be window-specific.

BUG: (8/27/08, DN) Arc shortening is broken.
FIX: In AbstractShapeBuilder.computeExtension correctly scale vectors.

BUG: (8/27/08, DN) Severe performance degradation modifying cells with many arcs
     (Bug #1804).
FIX: Remove field "ArcInst.arcIndex" to save on its recalculation.

IMP: (8/26/08, SMR) Cleaned up boxing warnings.

************************* Version 8.08d: ******************************

BUG: (8/26/08, SMR) "Edit Schematic View" still doesn't fill the new window (Bug
     #1731).
FIX: In ViewMenu.editView(), call setCellWindow() after creating window.

IMP: (8/25/08, SMR) Renamed the command to switch to Cadence mode so that
     it indicates that it changes layers as well (Bug #1761).

IMP: (8/25/08, SMR) Added new transistor types in the Schematic component
     menu (Bug #1807).

IMP: (8/25/08, SMR) Made Export menu commands "Summarize Exports",
     "List Exports", and "Follow Export Up Hierarchy" run in separate
     threads (Bug #1807).

BUG: (8/25/08, SMR) Cell history buttons don't work right in SDI mode (Bug
     #1753).
FIX: In WindowFrame.WindowsEvents.windowActivated() must call
     fireCellHistoryStatus().

BUG: (8/25/08, SMR) Dragging a cell group from the explorer tree to a window
     shows no outline (Bug #1809).
FIX: In EditWindow, when dropping, handle cell groups.

IMP: (8/25/08, SMR) Added one more new transistor node function:
     FG (floating gate).

IMP: (8/22/08, DN) Rename technology.xml.Xml807 to technology.xml.XmlParam for
     less confusing. Save technology.Xml revision released in Version 8.07 as
     technology.xml.Xml807.

BUG: (8/21/08, JKG) fix bug for Verilog Cells that start with numbers

IMP: (8/21/08, GVG) Get number of arcs in a cell (Bug #1804)
     Added in "List of Nodes/Arcs in this cell" option in CellMenu.

IMP: (8/21/08, SMR) Added ability to re-export ports only for those
     ports that are already wired.  Rearranged Export menu so that the
     three commands which do exporting have sub-menus to choose which
     types of exports to wire (Bug #1769).

IMP: (8/21/08, SMR) Added new transistor node functions:
     pMOS-D (there was already a "DMOS" but that becomes "nMOS-D")
     NT (native)
     VTL/VTH (threshold low/high)
     HV1/2/3 (high voltage at three levels)
     NTHV1/2/3 (native high voltage at three levels)

BUG: (8/21/08, SMR) Highlighting a network doesn't identify export text (Bug
     #1803).
FIX: In NetworkHighlighter.addNetworkObjects(), show exports properly.

IMP: (8/21/08, SMR) Added "Window / Waveform Window / Clear All Signals in
     Waveform Window" to remove all panels from the waveform window (Bug #1768).

IMP: (8/21/08, SMR) "Cell Parameters" dialog now lets you copy parameters
     from another cell (Bug #1652).

BUG: (8/20/08, SMR) "Insert Jog In Arc" doesn't select a jog port, just a node
     (Bug #1800).
FIX: In EditMenu.InsertJogInArcListener.terminateOK(), highlight the port, not
     the node.

IMP: (8/20/08, SMR) Modified the "Up Hierarchy" command on schematics to scan the
     cell group of the schematic for ALL icons, and then look for parent
     environments of all of these icons.  Also, schematic DRC now finds export
     characteristic mismatches between icons and schematics (Bug #1799).

IMP: (8/20/08, SMR) Middle mouse button now pans the screen (Bug #1715).

************************* Version 8.08c: ******************************

IMP: (8/19/08, SMR) Spice deck generation now uses 3 digits of precision
     to the right of the decimal point (used to use 2 or 3 in different places).
     Requested by Tela Inc.

IMP: (8/19/08, SMR) Added icon generation improvements from Brian van Essen
     at University of Washington.  Now have the ability to disable the placement
     of an example icon, and also now have the ability to place ports exactly
     as they appear in the schematic.

BUG: (8/19/08, SMR) Undoing cell creation doesn't update window titles (Bug
     #1766).
FIX: In EditWindow.databaseChanged(), rewrite window titles.

IMP: (8/18/08, SMR) Waveform window extrapolates values for digital simulators
     (but still not for analog ones, Bug #1645).

IMP: (8/18/08, SMR) Improved proximity-based RC in Spice parasitics (Bug #1781).

BUG: (8/18/08, SMR) "Node" properties dialog doesn't highlight name
     when first displayed (Bug #1775).
FIX: In GetInfoNode.showDialog(), request focus on name field.

IMP: (8/18/08, SMR) "Spread" dialog now remembers settings (Bug #1797).

BUG: (8/18/08, SMR) Text on arcs uses the size in effect when the arc was
     created (Bug #1799).
FIX: In ArcInst.setName(), take a new default if the name didn't previously
     exist.

BUG: (8/18/08, SMR) Creating exports on schematics doesn't copy characteristics
     to the icon (Bug #1799).
FIX: Created Export.newInstance() variant with a PortCharacteristic on it and
     use this in creating the icon export.

BUG: (8/8/08, RK) NCC errors not detected when size checking is enabled.
     (Bug #1787)
FIX: Some cells can't be compared with size_ checking because the size varies
     with the instance. In that case perform a comparison without size checking.

BUG: (8/1/08, GVG) NPE while reading
     Routing/data/expected/MazeRouting1Result.jelib (Bug #1793)
FIX: Check if version is valid.

BUG: (7/31/08, GVG) Electric doesn't check colors can be out of range (Bug #1792)
FIX: Detect the case now in EGraphics.

IMP: (7/31/08, GVG) Switch transistor display from LOCOS to STI (Bug #1747)

BUG: (7/31/08, GVG) Assertion while loading DRC rules (Bug #1790)
FIX: Any foundry created while reading a XML tech should have mode >=1000000

IMP: (7/31/08, GVG) different highlight color for network (Bug #1776).
     Implemented using MOUSEOVER_HIGHLIGHT color.

IMP: (7/31/08, FYL) LibraryFiles.java readLibrary defaults to .jelib extension if
     extension is not given.  Added another fallback to .delib extension.

BUG: (7/31/08, DN) Assertion boundsDirty == BOUNDS_CORRECT in Cell.undo failed
     (Bug #1699).
FIX: In Cell.computeBounds() explicitely call getBounds() for all subcell.

IMP: Renaming Y-metal contacts in CMOS90 with "SR" instead of "Y". SR stands for
     square recommended.

BUG: (7/30/08, SMR) Empty pattern warnings in Tech Editor
FIX: Set outliner after the pattern is defined.

BUG: (7/29/08, GVG) Standard Technology Editor and transparency layers (Bug
     #1783)
FIX: Picking the right layer name from the variable name.

BUG: (7/29/08, GVG) Exception with unknown foundry (Bug #1782)
FIX: Change Type from enumerator to Class so it can accommodate new foundries. 
     Technology.xsd was modified.

************************* Version 8.08b: ******************************

BUG: (7/28/08, GVG) Exception while click on "See" in GetNodeInst if no ports are
     available (Bug #1784)
FIX: Detecting if list index == -1.

BUG: (7/28/08, FYL) Pasting of long geometries while locking a direction (Bug
     #1748)
FIX: Change in getDelta s.t. if mouse in X (or Y) object shadow then move is
     confined to X (or Y) otherwise follows previous 45 degree rule.

BUG: (7/24/08, GVG) ErrorLogger crashes if cellId is null (Bug #1780)
FIX: Detecting the case in doing MessageLog.getCell()

IMP: (7/24/08, GVG) Min active contacts in CMOS90. Min well contacts were
     refactored to meet similar conditions as in the active case.

IMP: (7/24/08, GVG) RouteElementArc adds a Generic universal arc if width is
     zero.  Change done for the NodeExtraction tool.

IMP: (7/24/08, GVG) NodeExtraction: Ability to interrupt the job (Bug #1779)

IMP: (7/23/08, GVG) Allow to combine contacts extracted with and without
     approximateCuts on. Higher priority to multi-cut contacts (approximateCuts
     on).

IMP: (7/23/08, GVG) ErrorLogger for extraction tool? (Bug #1772)

IMP: (7/23/08, GVG) Select all like this doesn't work on annotation text? (Bug
     #1773)

IMP: (7/22/08, GVG) No default font/color available in Multi-Object dialog (Bug
     #1774)

IMP: (7/22/08, GVG) Adding min poly contact in CMOS90

IMP: (7/17/08, GVG) Move option for Cells in ExplorerTree (Bug #1764).

IMP: (7/17/08, GVG) Min well contacts in CMOS90.

BUG: (7/16/08, GVG) Import User's preferences missing a palette refresh (Bug
     #1762)
FIX: Consistent call of UserInferface.repaintAllWindows(), function that also
     takes care of palettes and tabs.

IMP: (7/16/08, GVG) Display cell where MessageLog was found (Bug #1763)

BUG: (7/15/08, GVG) Ctrl-B for resizing does not lock properly on direction (Bug
     #1758)
FIX: Detecting X or Y conditions and avoiding to snap the corresponding
     coordinates.

BUG: (7/15/08, GVG) Can't get out of Ctrl-B mode (Bug #1760)
FIX: Not allowing to store SizeListener as oldlistener.

BUG: (7/15/08, GVG) NotSerializableException while resizing a node with ctrl-b
     (Bug #1759)
FIX: Detecting cases when objects are not longer linked.

BUG: (7/14/08, GVG) Exception while deleting illegal item in MultiObject dialog
     (Bug #1757)
FIX: Case detected.

BUG: (7/14/08, GVG) CB active/well contacts don't stretch properly if size
     increases in TSMC180 (Bug #1756)
FIX: klx="0.0" khx="0.0" kly="0.0" khy="0.0 removed from XML file.
FIX: Select in NT-N-Active contact also modified (it didn't min select extension
     from active)

IMP: (7/11/08, GVG) Add 3D cylinders so rcmos can be properly displayed (Bug
     #1554)

************************* Version 8.08a: ******************************

IMP: (7/9/08, GVG) Sending Activity logs to std out if permission is denied (Bug
     #1702)

IMP: (7/9/08, GVG) Changes to improve XML error message (Bug #1692)

IMP: (7/9/08, GVG) Selecting lightgray instead of orange for those
     CVSstatus == unknown (Bug #1754)

BUG: (7/9/08, GVG) Verilog netlist parser missing a case (Bug #1717)
FIX: Dealing with no name in element instances.

IMP: (7/8/08, GVG) Close/Open all below here in Errors explorerTree (Bug #1752).
     Also fix problems with exporting warningLogs not associated to any given
     Cell.

IMP: (7/8/08, GVG) Adding rules reported in "DRC not caught by electric" (Bug
     #1746)

IMP: (7/7/08, GVG) Calibre number of errors on Error logger (Bug #1749)

IMP: (7/7/08, JG) Added recently opened libs menu in Electric

IMP: (7/3/08, GVG) Speeding DRC code by caching multicut info in a different way.

BUG: (7/2/08, GVG) Notch in select not detected in CMOS90 (Bug #1745)
FIX: Distance A-B in checkMinDefects can be zero.

IMP: precision issues in some DRC functions noticed by running code on MacOSX and
     Linux.

IMP: (7/1/08, GVG) Primitive.CROSSCONTACT and PrimitveNode.ALIGNEDCONTACT bits to
     work on Bug #1740.

IMP: (7/1/08, GVG) Sort layers in 3D preference by layers names. This is
     a change to implementation done for bug #1723 but it looks for intuitive.

BUG: (7/1/08, GVG) 3D preferences not persistent? (Bug #1724)
FIX: Layer.setFactory3DInfo was setting the cacheObject instead of the
     factoryObject.

BUG: (7/1/08, GVG) Bogus DRC error in CMOS90 m1m2 (Bug #1737)
FIX: Allow asymmetric node size rules.

IMP: (7/1/08, JG) snap annular ring points to technology grid.
Add recently opened libs list. fix for custom sweeps for sequential arcs in
     SCTiming.

BUG: (7/1/08, GVG) DRC should report both node min.size errors if they are
     present (Bug#1741)
FIX: New strategy to check those errors.

BUG: (7/1/08, SMR) Rotated multi-line text is wrong (Bug #1729).
FIX: In ElectricObject.getPolyList() do not rotate multiline node text.

BUG: (6/30/08, SMR) Icons are invisible against a black background (Bug #1738).
FIX: Created new Special color (in "Layers" preferences) with the name
     "DEFAULT ARTWORK".  Use this value in Artwork.getProperLayer().

BUG: (6/30/08, SMR) "Cross-library copy" fails if "Use Existing Subcells" is
     checked and ports do not match (#1736).
FIX: Improved Cell:copyNodeProtoUsingMapping() to handle differences.

BUG: (6/30/08, SMR) Verilog cell names are inconsistent (Bug #1719).
FIX: Cleaned-up cell naming code.

IMP: (6/30/08, SMR) Improved Spice parasitics (from Mahesh Balasubramanian, Bug
     #1735).

IMP: (6/30/08, SMR) Added Verilog architecture parameterization facility
     (from Brian Van Essen, University of Washington, Bug #1734).
     Added "Verilog" preferences to choose formatting, standard cell handling,
     and parameter control.
     Added "Tool / Verilog / Set Verilog Default Parameter"
     Added "Verilog Parameter" and "Verilog External Code" to "Misc" component
     menu. Can now highlight Electric objects with specified color.

IMP: (6/30/08, SMR) Added input for Applicon/860 format files (Bug #1733).

************************* END OF Version 8.07, GNU RELEASE *************
************************* Version 8.07m: ******************************

BUG: (6/27/08, GVG) A-type of active contacts don't stretch properly if size increases (bug #1732)
FIX: M1 of those A-type contacts was aligned with respect to the center of the node.

IMP: (6/27/08, SMR) Made "mipsCells" library have default number of metal layers.

IMP: (6/27/08, SMR) DXF output now shows all technology polygons, not just artwork.

IMP: (6/27/08, JG) menu commands to run fill generator for 90nm

IMP: (6/26/08, GVG) Native active contact added in cmos90.

BUG: (6/26/08, GVG) cmos90 NT-N surround of active components incorrect (Bug #1727)
FIX: Value modified.

BUG: (6/26/08, SMR) Cells don't always fill the window (Bug #1730, #1731).
FIX: In EditWindow.getBoundsInWindow(), set scale properly, iterate twice.

BUG: (6/26/08, SMR) GDS output may crash on Artwork primitives (Bug #1728).
FIX: Handle null graphics information caused by Artwork auto-generation of layers.

IMP: (6/25/08, SMR) Tutorial about Technology Editor Wizard (Bug #1617)

IMP: (6/25/08, JG) dummy metal layers in 90.

************************* Version 8.07l: ******************************

IMP: (6/24/08, JG) layers for bumps in 90

BUG: (6/23/08, GVG) Exception in DRC due to layer.index() = -1 (Bug #1726)
FIX: Detecting non-layout nodes.

IMP: (6/23/08, SMR) Using "Object Properties" when nothing is selected gives
     an error instead of bringing up "Parameters" dialog.
     Removed Edit menu commands "See/Hide All Attributes on Node" and
     "Default Attribute Visibility".

BUG: (6/23/08, GVG) Sort layers in 3D preference by their Z values (Bug #1723)
FIX: Changed from LayerHeight to LayerZValueSorting.

BUG: (6/23/08, GVG) Out of bounds exception in DRC layout with schematic primitive (Bug #1725)
FIX: In MinArea, not detecting cases where NodeInsts are non-layout nodes.

IMP: (6/20/08, GVG) More improvements in TechEditorWizard but still one label is missing in GUI.

BUG: (6/19/08, SMR) HSpice output files not read properly (Bug #1721).
FIX: Sweep headers have "ConditionCount-1" values in them.

BUG: (6/19/08, SMR) Component menu preferences trouble (Bug #1720).
FIX: In TechPalette.rotateTransistor(), preserve node rotation.

BUG: (6/19/08, GVG) Possible wrong 3D values for second poly in mocmos (Bug #1722)
FIX: Indeed, poly2 in MoCMOS is fine (above poly1). Fixing tsmc180.xml file to be consistent.

IMP: (6/18/08, GVG) Improves in TechEditorWizard including better handling of errors in txt file
and layers with a null pattern.

IMP: (6/17/08, DN) Remove class text.SimpleImmutableEntry because of license.

BUG: (6/16/08, DN) SogRouterAdapter: redundant metal, preferred routing directions (Bug #1679)
FIX: Use API routing which sorts arcs by length.

IMP: (6/13/08, GVG) New way to detect directories in command line (new implementation of Bug #1704)
Previous implementaiton broke command line reader (Bug #1714)

BUG: (6/12/08, SMR) Editing down-in-place can be slow (Bug #1711).
FIX: Added new "Display Control" preference to control the dimming of upper
     levels when editing down-in-place (the alpha blending can be slow).
     Also added new "Layers" special color to control the color of the
     border.

BUG: (6/12/08, SMR) Layers that use patterns but have null patterns and
     no outline are not visible (Bug #1145).
FIX: In EGraphics.setPatternLow(), detect this and add the outline.
     Also modified CMOS90.java, MoCMOS.java, and tsmc180.xml to fix the
     Pad-Frame layer which has this problem.

BUG: (6/12/08, GVG) loading jelib from command line not working (Bug #1714)
FIX: Undone changes for Bug #1704 for now (root cause of this problem).

BUG: (6/11/08, GVG) When there are multiple Transistors in an entry of the component menu,
     the popup does not distinguish them properly (Bug #1712).
FIX: Unedited changes in "makeNodeInst()" method of "cmos90" and "mocmos" to give proper names
and put back !var.isDisplay() in TechPalette.getItemName().

BUG: (6/11/08, SMR) When there are multiple Transistors in an entry of the component menu,
     the popup does not distinguish them properly (Bug #1712).
FIX: Edited the "makeNodeInst()" method of "cmos90" and "mocmos" to give proper names.

BUG: (6/11/08, GVG) Crash in DRC regression (Bug #1713)
FIX: PrimitiveNodes defined without ports but portNum=0 was defined in the NodeLayer.
Assertion added.

BUG: (6/11/08, DN) Change operation changes the PrimitiveNode size? (Bug #1690)
FIX: In NodeInst.replace() remove test for minimum sizes.

************************* Version 8.07k: ******************************

BUG: (6/10/08, DN) Library reader creates multiple cells for unknown PrimitiveNodes.
FIX: In JELIB.instantiateCellContents check for duplicate cells.

BUG: (6/10/08, DN) Crash in PixelDrawing when drawing cached subcell (Bug #1711).
FIX: In PixelDrawing init varContext to globalContext.

BUG: (6/10/08, DN) Cell renaming doesn't mark "dirty" its library (Bug #1710).
FIX: In Cell.rename() call lib.setChanged().

IMP: (6/9/08, GVG) Should Electric detect a directoriy listed as a lib in the command line? (Bug #1704)

BUG: (6/9/08, GVG) Assertion in DRC MTD area code while cleaning DRC dates.
FIX: Not storing DRC date data during MTD DRC for area.

IMP: (6/9/08, SMR) Relaxed restriction on file name extensions and allow extra letters (Bug #1705).

IMP: (6/9/08, SMR) "Change" dialog has mnemonics on buttons, "Done" is default (Bug #1709).

BUG: (6/7/08, DN) Parallel Dijkstra algorithm in SeaOfGates router hangs sometimes.
FIX: Synchronize access to "layerSurround" maps which are modified by both threads.

BUG: (6/7/08, DN) Assertion boundsDirty == BOUNDS_CORRECT in Cell.undo failed (Bug #1699).
FIX: In Cell.computeBounds() don't skip calculations of bounds of invisible pins.

IMP: (6/6/08, RK) Stop using deprecated data in SchemeToLay.java and GateLayoutGenerator.java

IMP: (6/6/08, GVG) Renaming cells in Explorer window broken (Bug #1700).
Adding extra message to warn user about the renaming of a cells group with multiple icons.

BUG: (6/4/08, SMR) Sea-of-gates router fails to route (Bug #1689).
FIX: Switched the router to full gridless so it can handle these off-grid routes.

BUG: (6/4/08, SMR) Verilog output combines "][" into a single underscore (Bug #1697).
FIX: In Verilog.getSafeNetName(), do not merge underscores.

BUG: (6/3/08, SMR) Multi-object properties dialog doesn't handle font right (Bug #1697).
FIX: In GetInfoMulti.findComboBoxValue(), handle "no change" case.

IMP: (6/2/08, DN) Distinct methods for variables and parameters on NodeInst.

IMP: (5/30/08, DN) Move TextDescriptor.Code to CodeExpression.Code .
   TextDescriptor doesn't containt Code field.

BUG: (5/29/08, SMR) Cell extraction duplicates arcs (Bug #1694).
FIX: In CellChangeJobs.replaceExtractedArcs(), ensure arc connects to extracted cell instance.

BUG: (5/29/08, SMR) Sea-of-gates router fails to route (Bug #1689).
FIX: Must convert coordinates to EPoint/ERectangle to properly round values.

IMP: (5/29/08, DN) The consistency between parameters on icon cell and icon instances
    is invariant of Snapshot.

IMP: (5/22/08, DN) Variables and parameters on ImmutableIconInst are in separate lists.

BUG: (5/29/08, DN) NPE in updateInheritedVar (Bug #1693)
FIX: Replace CircuitsChangeJobs.updateInheritedVar by "ni.addVar(var)".

IMP: (5/28/08, SMR) Sea-of-gates router honors alternating metal better (Bug #1679).

IMP: (5/27/08, GVG) TechEditorWizard handling multi cuts rules for diff contacts.

IMP: (5/27/08, SMR) Added accelerator keys to width/length Node Properties (Bug #1688).

BUG: (5/27/08, SMR) Dialogs (specifically Multi-object Properties) may grow
     too large for the display.
FIX: In EModelessDialog.ensureProperSize(), limit dialog size.

IMP: (5/22/08, DN) New methods in ElectricObject: getVarValue, getParameterOrVariable, getParametersAndVariables.

IMP: (5/22/08, SMR) Explorer tree scrolls to show selected item (Bug #1691).

IMP: (5/22/08, DN) Variables and parameters on ImmutableCell are in separate lists.

IMP: (5/21/08, SMR) Creating parameters on instances places them correctly.

IMP: (5/20/08, RK) Place and route InstFifoAll

************************* Version 8.07j: ******************************

BUG: (5/19/08, SMR) Deleting instances with exported and wired ports leaves
     multiple disconnected pins (Bug #1681).
FIX: Reuse pins so that they are all connected.

IMP: (5/19/08, SMR) Added accelerator keys to Node and Arc Properties (Bug #1688).

BUG: (5/19/08, SMR) "Edit / Cut" on node and arc text doesn't work (Bug #1686).
FIX: Fixed Clipboard.CutObjects.doIt().

IMP: (5/16/08, DN) The consistency between parameters on icon and schematic cells in a group
     is database invariant.

BUG: (5/15/08, GVG) Exception while in TechWizardEditor if numMetals > 12 (Bug #1687)
FIX: Extra code in Layer, DRCTemplate and TechEditWizardData to catch the inconsistency.

IMP: (5/15/08, SMR) Added "Apply to instances" checkbox to "Parameters" dialog
     to request that newly-created parameters be placed on all instances.

IMP: (5/15/08, SMR) Added Electric icon to file I/O dialogs.

BUG: (5/15/08, SMR) Vector display algorithm "greeks" some cells long before
     others, causing inconsistency of display (Bug #1683).
FIX: In VectorCache.renderPoly(), ignore all implant layers when computing maximum
     feature size.

BUG: (5/15/08, SMR) "Edit / Cut" on export text doesn't work (Bug #1680).
FIX: Fixed Clipboard.CutObjects.doIt().

IMP (5/15/08, SMR): The "Node Preferences" option "Reconstruct arcs when deleting instances"
     is now "Reconstruct arcs and exports when deleting instances" and recreates
     pins for exports (Bug #1681).

BUG (5/15/08, SMR): The command "Cell / Cell Info / List Nodes In This Cell" counts "example"
     icons, which it shouldn't.  This gives incorrect instance counts when examining
     schematics (Bug #1684).
FIX: Fixed in CellLists.listNodesInCellCommand().

BUG: (5/14/08, DN) Schematic DRC regressions failed.
FIX: In IconNodeInst.composeInstParam derive isDisplay() on instance parameter from
isInterior() on icom parameter.

IMP: (5/14/08, RK) Fix NCC documentation

BUG: (5/13/08, GVG) DRC doesn't check active cut rule C, page 74 (doc) of tsmc90 (Bug #1664)
FIX: Extra code was added to switch from B to C rule if multi-cuts are detected.
The code should not be slower than before.

IMP: (5/13/08, DN) User can set TextAttributus of parameters on node instances.

IMP: (5/7/08, GVG) Add new contacts M12->M67, Poly in CMOS90 (Bug #1677)

BUG: (5/6/08, SMR) Printing quality is not well understood (Bug #1648).
FIX: Updated section 4-8 of manual to explain different hardcopy options and limitations.

BUG: (5/6/08, DN) Bugs reading mocmos.xml (Bug #1594).
FIX: In MoCMOS constructor swap some coordinates in Scalable Transistor definition.

IMP: (5/6/08, DN) Move the algorithm ensuring consistency of cell parameters in a group
   from CheckAndRepair to LibraryRead.

BUG: (5/5/08, SMR) Converting from schematics to layout creates DRC and gallery cells
     unnecessarily (Bug #1675).
FIX: In GateLayoutGenerator.generateLayoutFromSchematics(), do not create DRC or
     gallery if no Red/Purple gates were found.

BUG: (4/30/08, SMR) Converting from schematics to layout orients the transistors
     incorrectly (Bug #1674).
FIX: In ViewChanges.MakeLayoutView.MakeLayoutVisitor.placeLayoutNode(), compute
     proper transistor orientation.

BUG: (4/30/08, SMR) Replacing nodes loses node names (Bug #1672).
FIX: In NodeInst.replace(), rename old node before copying name to new node
     to prevent duplicate name errors.

IMP: (4/28/08, RK) Remove more references to
     com.sun.electric.tool.generator.layout.Tech.

IMP: (4/29/08, SMR) Auto-stitcher now has the option to create exports
     (Bug #1593).

BUG: (4/29/08, RK) My cleanup of the gate layout generation code broke
     the TSMC180 regressions 080429_0000. Repaired.

BUG: (4/29/08, DN) AND primitives don't resize correctly when adding input wires (Bug #1653).
FIX: In LayoutCell.transformByPort don't try to transform port positions of isolated ports.

IMP: (4/28/08, RK) Eliminate many references to static globals of
     com.sun.electric.tool.generator.layout.Tech.

IMP: (4/28/08, SMR) Fixed GDS project settings dialog to say that
     "Blank" layers generate no GDS, not "Negative".

************************* Version 8.07i: ******************************

FIX: (4/25/08, RK) NCC Sport regressions fail. This is because Electric no longer
     supports the fictional metal-5 to metal-8 via. This via was a
     temporary expedient. It is not worth supporting. I modified
     one Sport regression to expect the large number of mismatched cells. (Bug #1590)

FIX: (4/24/08, RK) CMOS90 Nand2en has wrong width hints. CMOS90
     generators may generate metal-1 minimum area errors. (Bug #1671)

IMP: (4/24/08, RK) I removed use of StdCellParams from FoldedMos. FoldedMos
     is supposed to be a in layer beneath StdCellParams. I moved much
     technology specific information from StdCellParams to TechType.

IMP: (4/23/08, SMR) New command "Edit / Selection / Show Current Collection of Errors"
     highlights all errors in the current collection (Bug #1621).

BUG: (4/23/08, DN) Cut and paste corrupts bus tag (Bug #1667).
FIX: Allow bus names in Clipboard Cell.

BUG: (4/23/08, DN) Quitting right after startup prompts to save library (Bug #1669).
FIX: In Main.InitDatabase.doIt call "mainLib.clearChanged()".

BUG: (4/23/08, DN) Network API is confusing (Bug #1670).
FIX: Add method Network.getGlobals().

BUG: (4/22/08, RK) CMOS90 Nand2 gate layout generator was violating tsmc90 rule CO.S.2

IMP: (4/22/08, SMR) Ports that are down the hierarchy and not selectable are
     no longer drawn (Bug #1665).

BUG: (4/21/08, SMR) HSpice input sometimes mangles signal names incorrectly (But #1630).
FIX: Only remove common signal prefixes if they also match the file name.

IMP: (4/21/08, SMR) Changed all of the "Edit XXX View" commands in the
     View menu so that if the view does not exist, you are prompted to create
     it (Bug #1609).

IMP: (4/17/08, SMR) New command "Export / Follow Export Up Hierarchy"
     shows the usage of the selected export recursively up the hierarchy (for Ivan).

IMP: (4/17/08, SMR) New command "Cell / Cell Info / List Cell Usage, Hierarchically"
     shows the usage of the current cell, but recursively shows usage of cells that use
     it further up the hierarchy (for Ivan).

BUG: (4/17/08, SMR) Changing a node to a different one keeps the same temporary name. (Bug #1662).
FIX: In NodeInst.replace(), copy name only if it is not a temporary name.

IMP: (4/17/08, SMR) Waveform window now handles "Window / Special Pan /
     Center Cursor" (^5) which centers the horizontal axis over the cursor (Bug #1654).

IMP: (4/17/08, SMR) Waveform window now remembers default panel height set by
     buttons (Bug #1656).

BUG: (4/16/08, SMR) Reinvoking Electric when there is insufficient memory ignores
     the "user.home" parameter setting (Bug #1656).
FIX: In Launcher.invokeElectric(), consult a list of parameters to copy (currently
     just "user.home".

BUG: (4/16/08, SMR) Sea-of-gates router gives "arc killed" error messages (Bug #1414).
FIX: Check for deletion before deleting arcs.

IMP: (4/16/08, SMR) Waveform window can be panned horizontally by dragging
     the time scale at the top.  Also added two new commands to the
     "Window / Waveform Window" menu: "Fill Only in X" and "Fill Only in Y" (Bug #1654).

BUG: (4/16/08, SMR) Option reconciliation dialog may be too wide (Bug #1655).
FIX: In OptionReconcile constructor, trim values to 30 characters.

BUG: (4/16/08, SMR) Waveform window draws lines all the way to the right side of the
     screen, even when the data does not exist (Bug #1645).
FIX: In Panel.processSignals(), do not extrapolate data.

BUG: (4/16/08, SMR) Testing for file existence locks the file.
FIX: In TextUtils.URLExists(), close the connection on the URLConnection.

BUG: (4/15/08, GVG) NPE if File f is null due to permissions problem (Bug #1657)
FIX: Detect the case.

BUG: (4/15/08, SMR) Waveform windows can be made too short and cause errors (Bug #1651).
FIX: In WaveformWindow.growPanels(), limit row height.

************************* Version 8.07h: ******************************

BUG: (4/15/08, SMR) Editing a new cell when descended "in place" displays wrong (Bug #1650).
FIX: In EditWindow.setCell(), clear in-place descent history if no history is given.

BUG: (4/15/08, DN) Cross-library copy problem (Bug #1649)
FIX: In CellChangeJobs.copyRecursively check if the fromCell is already moved.

BUG: (4/14/08, GVG) DRC crash when storing dates (Bug #1646)
FIX: Code was made more robust to inconsistencies in the DRC variables stored.

BUG: (4/14/08, SMR) Waveform window doesn't handle data with descending time values (Bug #1648).
FIX: Must handle edges of waveform panel specially.

BUG: (4/11/08, GVG) Sea of gates router (Bug #1414)
FIX: Sea-of-Gates scrpts in the regressions were fixed.

BUG: (4/10/08, SMR) Spice output does unusual things with quoted text (Bug #1644).
FIX: When parameter text is inside parenthesis, don't enforce quotes.

BUG: (4/9/08, DN) RevisionDate of a Cell is not clear in Generation regressions.
FIX: In Cell.lowLevelSetRevisionDate call "database.unfreshSnapshot()".
     In AbsractTest.compareResults call "cell.getDatabase().backup()".

IMP: (4/9/08, SMR) Typing "z" when in zoom mode or "p" when in pan mode now
     reverts to the last mode (not always click-zoom-wire) and can be used to
     return to paste dragging, interactive resizing, etc. (Bug #1628)

BUG: (4/9/08, SMR) ALS simulator fails because VHDL conversion fails (Bug #1636).
FIX: Fixed VHDL generation to handle ports better.

BUG: (4/8/08, DN) PadFrame generator doesn't mark generated cells as changed.
FIX: In database.constraint.Layout mark revision dates even in "quiet" mode.

BUG: (4/8/08, GVG) NPE in Database regression (Bug #1642)
FIX: Calling graphics.setLayer() after the layer index is calculated.

BUG: (4/8/08, SMR) Crossprobing not working right (Bug #1630).
FIX: More specific use of context when crossprobing.

BUG: (4/8/08, DN) Continuous NPE loop (Bug #1640)
FIX: In Variable.makeStringVar consider for null entries in an array.

BUG: (4/8/08, DN) All icons the same color (Bug #1637).
FIX: In EGraphics.setLayer don't change preferences in case of "free" layer.

BUG: (4/8/08, DN) HierarchicalEnumerator/Netlist get confused with export names like X(A,B,C) (Bug #1627, #1631)
FIX: Allow bussed names in icon and schematics Cells only.

IMP: (4/4/08, GVG) Better error message for Bug #1627.

IMP: (4/3/08, SMR) Sea-of-Gates router now defaults to use parallel processing.

************************* Version 8.07g: ******************************

BUG: (4/3/08, SMR) Sea-of-Gates router doesn't route every node on the network.
FIX: Routing.findNetEnds() improved to locate all connections.

BUG: (4/3/08, SMR) Printing crashes.
FIX: In EditWindow.getPrintImage(), recreate Rectangle instead of setting fields.

IMP: Added Technology XML format to user's manual (section 8-10)

BUG: (4/2/08, SMR) Electric cannot re-run JVM when there are spaces in the Jar path (Bug #1624).
FIX: In Launcher.invokeElectric(), wrap Jar file path in quotes if it has spaces.

BUG: (4/2/08, SMR) Auto stitcher misses zero-size ports.
FIX: Fixed quad-trees and updated Auto-stitcher.

BUG: (4/1/08, GVG) Quad tree doesn't handle zero-sized objects (Bug #1626)
FIX: ObjecQTree now can handles zero-sized objects. Basic test was added into Extraction regression.

IMP: (3/31/08, SMR) Added command "Window / Messages Window / Tile with Edit Window"
     to make the messages window tile with the edit window (Bug #1625).

IMP: (3/28/08, SMR) Using "Down Hierarchy In Place" on schematic icons
     lets you edit the icon (in place) instead of the schematic (Bug #1607).

BUG: (3/27/08, SMR) Crash while reading HSpice MT0 file (Bug #1618).
FIX: Accept files without indented continuation lines.

BUG: (3/27/08, SMR) Reloading circuit in built-in simulators crashes.
FIX: In DigitalSignal.finished(), do not finish busses if none exist.

BUG: (3/27/08, SMR) EDIF doesn't handle busses right.
FIX: No longer short all signals on a bus.

BUG: (3/27/08, DN) TechEdit writes red component of first transparent color as 0.
FIX: In tecEdit/GeneralInfo.getTransparenColors remove text before ':'.

BUG: (3/27/08, DN) Crash when TechEdit writes Xml.
FIX: In tecEdit/LibToTech check nodeSizeRule, spiceTemplate, sizeOffset.

BUG: (3/27/08, DN) Crash in tecEditTests.
FIX: In EDatabase and Cell correctly update techPool.

BUG: (3/24/08, DN) Spurious error message when editing schematics (Bug #1613)
FIX: In Foundry constructor mark Foundries with fileURL==null as loaded.

BUG: (3/20/08, SMR) Sea-of-gates router is slow (Bug #1414).
FIX: Much faster now.  Interleaves steps in the two directions.

************************* Version 8.07f: ******************************

BUG: (3/19/08, SMR) Interactive sizing doesn't work right with SHIFT key held.
FIX: Fixed detection of shift/control bits.

BUG: (3/18/08, DN) Xml technology file tolerates zero multicut size and spacing.
FIX: In Technology.xsd use PositiveDouble type.

BUG: (3/18/08, DN) Backward compatibility with XML Technologies (Bug #1611)
FIX: In Technology.xsd make <display3d.mode> <display3d.factor> <*Rule.when> attributes optional.

IMP: (3/18/08, SMR) Fragmented Spice netlister into multiple modules in preparation for
     additional Spice parasitics.  Added more parasitics options to Spice Preferences.

IMP: (3/17/08, DN) FullSize of primitive node is calculated as MBB of its layers.

BUG: (3/17/08, SMR) EDIF input doesn't handle "member" properly.
FIX: Extract proper member entry.

BUG: (3/17/08, DN) Numerous instabilities in XML.
FIX: Revert to XML syntax as in Version8-06.

IMP: (3/14/08, DN) Package com.sun.electric.technology.xml for major versions of the Technology Xml syntax.

BUG: (3/13/08, DN) UnsupportedOperationException while uploading XML tech (Bug #1606)
FIX: In Technology.technology(Generic,Xml.Technology) don't deparameterize arcs.

BUG: (3/12/08, SMR) PostScript output ignores some text.
FIX: In PostScript.recurseCircuitLevel(), draw text even at lower levels.

BUG: (3/12/08, DN) Incorrect contact size of tsmc:Metal-5-Metal-6-Con because DRC deck
    has two rules with the same name "A page 47" but with different values.
FIX: In Technology.TechDistanceContext.getRule() ignore NODSIZE and MINWIDCOND rules (Walkaround).

BUG: (3/12/08, DN) Multicut layers of primitive nodes
    "tsmc180:Metal-1-Polysilicon-2-Con" and "tsmc180:Metal-1-Polysilicon-1-2-Con"
    had sizex=A and sizey=A which is less than Poly-Cut MINWID = B .
FIX: Use rule names: <multicutbox sizeRule="A page 39" sepRule="B page 39" sepRule2D="B1 page 39"/>

IMP: (3/12/08, DN) <multicutbox> has attributes with rule names instead of numbers.

BUG: (3/11/08, SMR) Node extraction creates too many exports, names them badly (Bug #1593).
FIX: Names are taken from other exports, only one created in a place.

BUG: (3/11/08, DN) Wrong size of active arcs in TSMC foundry CMOS90.
FIX: In CMOS.getRuleAliases() add "H page 54" -> "J page 54".

BUG: (3/7/08, GVG) Disk image may be damaged on MacOSX (Bug #1592)
FIX: Adding extra flag to mkdmg.sh

BUG: (3/6/08, SMR) EDIF input doesn't always get export connected to circuitry (Bug #1591).
FIX: Create second arc if necessary so that it can be given the export name.

IMP: (3/6/08, DN) ArcPin's geometry is inherited from the ArcProto (except elib sizes).

BUG: (3/5/08, SMR) Generic technology objects are not written to PostScript.
FIX: Set "patterned on printer" to false for all Generic layers.

IMP: (3/5/08, DN) Fixes in "Write XML from Old Electric Build command".

BUG: (3/4/08, DN) Parameter properities dialog throws exception on schematic cells.

FIX: In Attrubutes.loadAttributesInfo move error message and allow schematic cells.

IMP: (3/4/08, DN) Element <arcPin> inside <arcProto> defines <acrPin> NodeLayers from ArcLayers.

BUG: (3/3/08, DN) SizeListener incorrectly determine new node size after SizeOffset changes.
FIX: Repair SizeListener

IMP: (3/3/08, SMR) Added "Toolbar" preferences (in Display section) for rearranging the toolbar.
     Also moved the "Component menu" preferences to the Display section.

IMP: (3/3/08, SMR) Added toolbar commands to pulldown menus:
     "Cell / Cell Viewing History / Go Back a Cell" and
     "Cell / Cell Viewing History / Go Forward a Cell" to move through the displayed cells in the window.

IMP: (3/3/08, DN) Element <primitiveNode> in Technology Xml contains element
    <nodeBase> instead of former <sizeOffset> . Distances in <nodeBase> are from center.

IMP: (3/3/08, DN) Added "Edit|Technology Specific|Write XML of Technology from Electric build"
    command to convert technologies from old Electric builds.

BUG: (3/2/08, DN) NPE in Poly.transform after (Bug #1588)
FIX: Check that "descript != null".

BUG: (2/29/08, SMR) EDIF input crashes (Bug #1588).
FIX: In TextUtils.isANumber(), ignore nulls.

IMP: (2/29/08, SMR) Added text rotation for rotated parameters (Bug #1587).

BUG: (2/29/08, SMR) EDIF input shorts crossed wires at an angle (Bug #1586).
FIX: In EDIF.findEDIFPort(), ensure that angled wires are computed properly.

IMP: (2/25/08, DN+JKG) Merge branches/params to the trunk:
    CheckAndRepairJob ensures consistency between parameters on icon and schematic cells.
    Icon/schematic cells in a group shares parameter names, default values, and units.
    They may differ in text descriptor (except units, param flag, inherit flag).
    CheckAndRepairJob constructs absent parameters on icon cell from name/value/unit on
    main schematics and from text text descriptor on example instance of icon cell.
    Attribute dialog also tries to maintain consistency between parameters on icons/schematics
    in a cell group, though it is not database invariant yet.

    Parameters are not allowed on cells other than icons/schematics.
    Parameters on icon instances inherits patched text descriptor from
    icon cell. Patching means: cleared params and inherit and interior flag.
    Display flag of instance parameter is the negateion of the interior flag of
    icon Cell parameter.

    Spice netlister automatically detects paramters necessary for Spice output.
    It writes them and only them as subcircuit parameters into Spice decks.
    Both Spice and Java syntax are allowed for such parameters.

************************* Version 8.07e: *******************************

IMP: (2/25/08, DN) Add FileType.JAR with file type group "Electric Build".

IMP: (2/24/08, DN) One more PrimitiveNode constructor with minSizeRule argument.

BUG: (2/22/08, GVG) Incremental DRC finds errors when there are none (Bug #1584)
FIX: Now using updateIncrementalDRCErrors function.

IMP: (2/22/08, SMR) EDIF input now reads parameters only when they are
     explicitly listed in the EDIF Preferences dialog (Bug #1533).

BUG: (2/21/08, DN) NPE in NCC regression (Bug #1583)
FIX: Repair input.ReadableDump .

IMP: (2/21/08, GVG) Better implementation of export of any given technology in XML (Bug #1567).
Adding sizeoffset to pins defined by TechEditWizard.

IMP: (2/21/08, SMR) Added ability to drag layers in the "Layers" tab
     to rearrange their order.

BUG: (2/20/08, DN) TechEditWizard writes Layer opacity "0" (Bug #1579).
FIX: In TechEditWizard compute opacity by Jon's algorithm from EditWindow.setDefaultOpacity.

IMP: (2/20/08, GVG) Better message if Technology.xsd file can't be uploaded. If null, Electric runs
without schema validation.

BUG: (2/20/08, GVG) Runtime exception in tech generated while uploading another XML tech (Bug #1581)
FIX: Layout code reorganized to prevent the error.

IMP: (2/20/08, SMR) Pad frame generator adds net names that show the core and export.

BUG: (2/20/08, SMR) Wiring may crash.
FIX: In Router.getArcToUse(), check for busses only when both ends are known.

IMP: (2/19/08, DN) Database invariants added:
    Cell parameters are allowed on icon and scheamtic cells only.
    Their names must start with "ATTR_".

BUG: (2/19/08, DN) No redisplay after merging with branches/params (Bug #1579)
FIX: In VectorCache.forceRedrawAfterChange move changedVisibility.add to proper place

IMP: (2/19/08, GVG) Wrong names in pulldown menus for new technologies created with Wizard (Bug #1580)

IMP: (2/19/08, JKG) Attributes dialog becomes parameters dialog.

IMP: (2/19/08, JKG) Added "Edit|Logical Effort|Add LE Attribute to Selected Export" command.

IMP: (2/19/08, DN) Spice netlister automatically detects spice cell parameters.

IMP: (2/19/08, DN) Code variables in database has value of type CodeExpression.

IMP: (2/17/08, DN) Size in ImmutableNodeInst matches the size written currently to JELIB.

IMP: (2/17/08, DN) Added class ImmutableIconInst to represent instances of Icon cells.
     Also merge miscellaneous changes from "params" branch.

BUG: (2/16/08, DN) TechEditor wrong places node examples.
FIX: In tecEdit.NodeInfo.compactSell correctly find biggest example.

BUG: (2/16/08, DN) Technology Creation Wizard with wrong gridoffset for ArcProto? (Bug #1576)
FIX: Replace <diskOffset> by <elibWidthOffset> in Xml.ArcProto .
     Modify techEdit so that it doesn't recalculate elibWidthOffset .

BUG: (2/15/08, SMR) Auto-stitching doesn't work well in schematics.
FIX: Use position detection for schematics, force busses where appropriate.

IMP: (2/15/08, SMR) Extended "raw" reader (used by SmartSpice output) to handle
     raw output of Spectre.

IMP: (2/15/08, GVG) Uploading of XML techs should not tolarate same names (Bug #1578)

IMP: (2/15/08, DN) Field gridOffset of Technology.ArcLayer is replaced by field gridExtend with
    slightly different meaning.

BUG: (2/14/08, GVG) Save Paramaters in TechEditorWizard not exporting diff_poly_overhang properly.
FIX: Wrong text exported.

IMP: (2/14/08, GVG) Preventing NPE in TechType constructor if technology is null.

IMP: (2/14/08, GVG) minOccurs="0" in Technology.xsd, antennaRatio

BUG: (2/13/08, GVG) Exception if number of metal layers is larger than 10 (Bug #1577)
FIX: Number of DRCmodes extended.

IMP: (2/13/08, GVG) Ability to export any given technology in XML (Bug #1567)

IMP: (2/13/08, GVG) Changes to guarantee Technology.getCurrent() won't retrieve a null tech
if problems during technology parsing occurs. More consistent way to get MocMOS tech.

BUG: (2/13/08, GVG) DRC crashes after run with error (Bug #1575)
FIX: Problem introduced when dates for spacing rules were split from dates for areas (Bug #1539)

IMP: (2/13/08, SMR) Verilog output now writes busses for layout cells.

IMP: (2/13/08, SMR) EDIF input adds cell properties that start with "def"
     as parameters (in Cadence compatibility mode only) (Bug #1533, #1568).

IMP: (2/13/08, DN) Remove versions and diskOffsets from tecEditWizard technologies
    because they are not necessary for new technologies.

IMP: (2/13/08, SMR) Technology Creation Wizard now uses rule names (Bug #1569).

BUG: (2/13/08, SMR) Technology Creation Wizard doesn't write proper XML (Bug #1571).
FIX: Reordered GDS output, fixed "+" in layer names.

BUG: (2/12/08, DN) Better catching of validation errors in XML tech files? (Bug #1574)
FIX: Don't print stack trace on parse error in Xml technology file.

BUG: (2/12/08, GVG) XML files generated by Tech Creator Wizard are not valid (Bug #1571)
FIX: Changes in TechEditWizardData.dumpTechnology

BUG: (2/12/08, GVG) NPE if current technology can't be set (Bug #1572)
FIX: Detect when the current technology is null

BUG: (2/12/08, DN) "bipolar.xml" and "cmos.xml" has port names with '+' char which is illegal in XML NCName.
FIX: Change port names.

BUG: (2/12/08, DN) Technology ".xml" file are not validated.
FIX: In Xml.parseTechnology set Schema to SAXParserFactory.
   Add "spiceTemplate" and "menuCell" entities to "Technology.xsd".
   In "Tehnology.Xml" remove import of Cell class.

BUG: (2/11/08, SMR) Technology Creation Wizard swapped transistor length/width (Bug #1564).
FIX: Swapped letters in "gate" panel.

BUG: (2/11/08, SMR) Technology Creation Wizard crashes if more than 10 metals (Bug #1566).
FIX: Allowed more than 10 (limited by color list).

IMP: (2/11/08, SMR) "Via" panel of Technology Creation Wizard now uses pulldown (Bug #1565).

************************* Version 8.07d: *******************************

IMP: (2/11/08, SMR) Component menu dialog now supports cell instances.

BUG: (2/4/08, DN) New: NPE while reading an old JELIB library (Bug #1555)
FIX: In LibraryFiles.findPortProto() return single-port only for empty port name.

IMP: (2/8/08, DN) Remove ReadubleDump ".txt" libraries from com.sun.electric.lib .

BUG: (2/8/08, DN) Reading process got broken (Bug #1562).
FIX: In JELIB.figureOutPortInst use local variable for transformed port position.
     In.JelibParser.getVariableValue extract substring for x value of EPoint .

IMP: (2/7/08, SMR) "Cells" component menu entry now shows only appropriate
     cell types (Bug #1557).

BUG: (2/6/08, DN) Illegal exception while reading an old library (Bug #1561)
FIX: In JELIB.realizeCellsRecursively add version number for dummy CellId.

************************* Version 8.07c: *******************************

BUG: (2/6/08, SMR) EDIF input now ignores EDIF for existing cells (Bug #1532).
     Also, EDIF Preferences dialog made prettier.

BUG: (2/6/08, GVG) via, M1_PP_Contact, M1_NP_Contact and PNJunction nodes in bipolar tech
should be CONTACT instead of CONNECT in bipolar.xml
FIX: Fixed and new 3D values were added.

BUG: (2/6/08, SMR) Technology edit commands are in a confusing place (Bug #1559).
FIX: Moved tech-edit commands to their own submenu.  Fixed technology edit
     component editing so that it is clear that it is part of tech-edit.
     Also added "Factory Reset" to Component Menu preferences panel.

BUG: (2/6/08, SMR) Verilog output still writes fragmented busses wrong (Bug #1523).
FIX: In Verilog.writeCellTopology(), write module header and invocation as
     separate signals when bus is fragmented.

IMP: (2/4/08, SMR) Improved "Technology Creation Wizard".

BUG: (2/5/08, SMR) Spice output tries to write internal nets in subcircuit headers.
FIX: In Spice.writeCellTopology(), ignore signals with no exports or globals.

BUG: (2/5/08, SMR) Spice output may crash.
FIX: In Spice.writeCellTopology(), check for null networks.

BUG: (2/4/08, DN) Stack overflow while placing sch into icon (Bug #1556)
FIX: 1) Check recursion in Snapshow.with method.
     2) Forbid subcell instances in icon cell

IMP: (2/4/08, DN)  JELIB reader parses cell string in parse stage instead of realize stage

BUG: (2/4/08, DN) New: NPE while reading an old JELIB library (Bug #1555)
FIX: In Cell.getPort() use getExportChron().

IMP: (2/4/08, SMR) Added "Technology Creation Wizard" (from Andrew West).

BUG: (2/1/08, DN) Vector display algorithm and wrong display of highlighted geometries (#Bug 1551)
FIX: In PixelDrawing.Drawing.paintComponent use the same rerendering condition as in LayerDrawing.
    Also moved all redisplay staff in package user.redisplay .

IMP: (2/1/08, DN) Add "tftTest" to technology regressions.

BUG: (2/1/08, DN) In "tft.xml" pure layer nodes HiK, Pent, Via1 try to connect to
   non-existing arcs.
FIX: Comment <portArc> for these pure layer nodes.

IMP: (2/1/08, DN) Rename TFT.xml to tft.xml so that file name matches tech name.

BUG: (2/1/08, DN) Activity logger crashes when Job.getUserInterface is null yet.
FIX: Print message to System.out in this case.

BUG: (2/1/08, DN) Exception in PaletteFrame when current technology is not set yet.
FIX: In PaletteFrame.loadTechnologies test curTech for null.

BUG: (2/1/08, DN) Xml technology loader doesn't check PrimitivePort connections.
FIX: Add checks to Technology(Generic,Xml.Technology) and PrimitivePort(...) constructors.

IMP: (2/1/08, GVG) Add 3D values to layout technologies (Bug #1553).
Better detection if no non-flat nodes are found.

IMP: (1/31/08, GVG) 3D Viewer should not be restricted to 180/90nm techs (Bug #1550).
Warnings will be given if the technologies don't have any non-zero 3D values.

BUG: (1/31/08, GVG) NPE when running MTDRC only min area.
FIX: Avoid NPE and more fixes for skipping layers in min area.

IMP: (1/31/08, DN) JELIB writer can write single CellRevision.

BUG: (1/30/08, GVG) DRC code was not skipping properly layers for minArea checking.
FIX: Added extra code in QuickAreaEnumerator.skipLayer().

BUG: (1/30/08, GVG) DRC dates are missing in MTDRC code (Bug #1546)
FIX: Code added and working.

BUG: (1/30/08, GVG) DRC dates wrong in SimpleHierarchy example (Bug #1539)
FIX: Min area date is stored in a different cell variable so only it is independent of the spacing rules.

BUG: (1/30/08, GVG) Not properly reset of DRC dates if they were stored as Variables before (Bug #1549)
FIX: Clear all cell vars even if it is not the inMemory mode.

IMP: (1/30/08, DN) JELIB writer doesn't write 'G' lines, because Cell's Groups is
     defined by a field in 'C' line.

IMP: (1/28/08, GVG) Merge MTDRCArea with Spacing code (Bug #1544)

BUG: (1/28/08, GVG) Inconsistency found in maxSurround rule in single and MT threaded versions (Bug #1547)
FIX: Deterministic algorithm now.

IMP: (1/28/08, GVG) Ability to switch between single-threaded DRC and the multi-threaded version (Bug #1548).
New option added in DRC preference.

IMP: (1/28/08, SMR) Improved EDIF input.

BUG: (1/27/08, DN) Abort works for EXAMINE jobs only (Bug #1354).
FIX: In Job.abort() mark both clientJob and serverJob as aborted
     (this works only in single-JVM mode).

IMP: (1/27/08, DN) Added SeaOfGates regression tests.

BUG: (1/26/08, DN) Avoid floating imprecisions in Project Setting Reconcilation (Bug #1538).
FIX: "ProjectSettings | Parasitics" dialog shows parasitics values without rounding now.
    It shows that imprecisions existed in disk library.

IMP: (1/25/08, GVG) PolyBase.isInside() checks if point is inside bounding box to speed up
the process. checkMinAreaLayerWithLoops in mTDRCArea checking.

BUG: (1/24/08, GVG) Picking wrong DRC spacing rule when notches are checked together with minArea (Bug #1540)
FIX: Search among all possible candidates if wideS < 0. Mostly valid only for notch checking in
new MTDRC code.

BUG: (1/24/08, SMR) EDIF mapping now handles cells (Bug #1471).

BUG: (1/24/08, GVG) ErrorLoggers are not added into Explorer (Bug #1541)
FIX: Missing termLogging added.

BUG: (1/24/08, GVG) Can't abort MTDRCArea jobs (Bug #1542)
FIX: Added missing abort function.

BUG: (1/24/08, DN) STAOpptionDialogs calls setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    This value is invalid for JDialog and Java 1.6 detects it.
FIX: Do not change the default close operation.

BUG: (1/24/08, DN) New: quit when unable to save (Bug #1537)
FIX: Create FileMenu.RenameAndSaveLibraryTask objects in GUI and pass it to doIt
     methods of QuitJob, ReadLibrary, ImportLibrary, CloseLibrary jobs.

BUG: (1/23/08, GVG) Quit command does not longer work (Bug #1543)
FIX: Missing QuitJob.startJob().

IMP: (1/23/08, SMR) EDIF import obeys library names in the EDIF file (Bug #1532).

************************* Version 8.07b: *******************************

IMP: (1/23/08, SMR) Added "DebugMenuDinesh" and "DebugMenuFrankie" to provide
     sandboxes for them.

IMP: (1/22/08, GVG) Final implementation of PWell process flag in Technology dialog
in ProjectSettings (Bug #1439). By default, the processes are pwell.

IMP: (1/18/08, GVG) Part of the code to implement Bug #1439 (PWell process).
Changes are not active yet until the regressions are updated. New setting in Technology
dialog in ProjectSettings.

IMP: (1/18/08) GetInfo menu added to ExplorerNodes (Bug# 1536).

BUG: (1/18/08, GVG) Wrong pulldown menu if two root nodes in Explorer are selected (Bug #1535).
FIX: Detect if number of selected nodes is bigger than 1. If yes, skip that particular menu.

BUG: (1/18/08, GVG) NPE while sorting DRC errors per rule (Bug #1534)
FIX: If rule name is null them take DRC type for the grouping.

IMP: (1/17/08, GVG) Removing old MT DRC code under MultiDRC classes. They have been
replaced by MTDRC*. Added PolyBase.isPointInsideCutAlgorithm to replace
PolyBase.isInsideGenericPolygonOriginal because it is faster. PolyBase.bitRectangle added.

IMP: (1/17/08, SMR) Sea of gates router now handles multiple processors.

BUG: (1/16/08. GVG) NPE in export PNG (Bug #1531)
FIX: Now the code detects when the print service is not available for whatever reason.

IMP: (1/16/08, SMR) EDIF input handles busses properly, places offpages well.

IMP: (1/16/08, SMR) "Change" is now more forgiving when two ports share
     the same location.

BUG: (1/16/08, DN) Highlighter.getOneElectricObject doesn't find IconNodeInsts.
FIX: Use type.isInstance(eobj) instead of type == eobj.getClass().

************************* Version 8.07a: *******************************

BUG: (1/14/08, SMR) Wide symbols may get split in Verilog output.
     Fix: In Output.writeWidthLimited(), handle wide symbols properly.

IMP: (1/11/08, DN) Parameters on icon instances are virtual.
     They inherit from icon cell everything except value.
     This feature is disabled now by NodeInst.VIRTUAL_PARAMETERS = false .

IMP: (1/11/08, DN) Algorithm to detect Spice parameters in DebugMenuDima.detectSpiceParams .

BUG: (1/11/08, DN) Assertion during deserialization.
FIX: In NodeInst make readResulve package-private, In EObjectOutputStream treat Nodables correctly.

BUG: (1/10/08, DN) Assertion creating IconNodeInst.
FIX: Change visibility of NodeInst constructors.

IMP: (1/10/08, SMR) Spice Preferences now has option for writing .end statement
     and has choice of resistor shorting (Bug #1447).

IMP: (1/10/08, DN) Inctances of icon cells have type IconNodeInst .

IMP: (1/10/08, DN) CellRevision and all Immutable* classes are technology independent.

BUG: (1/9/08, DN) NPE while reading nanosim output file (Bug #1530).
FIX: Initialize EpicAnalysis.signalsUnmodifieable in EpicAnalysis constructor.

BUG: (1/9/08, SMR) Sea-of-Gates router creates notches (Bug #1476).
FIX: Fixed code that compares part of route with previous parts of same route.

IMP: (1/9/08, SMR) Added new command: "Export / Manipulate Exports..."
     which displays exports in cell in a dialog.  One of the buttons in this
     dialog is "Renumber Selected Numeric Export Names" which takes a set
     of numeric exports (i.e. exports with numeric suffixes, such as "gnd_1",
     "gnd_3", etc.) and renumbers the suffixes so that they have no gaps and
     start with an unnumbered name (Bug #1465, 1526).

IMP: (1/9/08, SMR) Verilog netlister now uses backslash notation for busses
     with gaps (Bug #1523).

BUG: (1/8/08, SMR) Creating a new attribute doesn't include settings in dialog (Bug #1528).
FIX: In Attributes.CreateAttribute constructor, build initial TextDescriptor.

IMP: (1/8/08, DN) ImmutableArcInst is technology independent.

IMP (1/7/08, SMR) Improved "Arc Properties" and "Node Properties" dialogs
     so that the current bus arc/port's members can be listed (Bug #1529).

IMP: (1/7/08, SMR) Array command remembers all settings in preferences (Bug #1527).

BUG: (1/6/08, DN) Compilation error in TechPool on Java 1.5.
FIX: Copy AbstarctMap.SimpleImmutableEntry class from Java 1.6 into database.text directory.

IMP: (1/5/08, DN) Added TechPool class which is a map from TechId to Technology.

BUG: (1/3/08, SMR) Adding AC or DC signals to the waveform window brings
     them up in a Transient panel, and they are not remembered (#1469).
FIX: Set the panel type correctly when creating them.

BUG: (1/3/08, SMR) Node/Arc/Export Properties sometimes truncates data.
FIX: Must pack dialogs when reloading them.

BUG: (1/3/08, DN) Crash reading HSpice ".mt0" file.
FIX: In HSpiceOut.addMeasurmentData prepare common "time" array.

IMP: (1/3/08, SMR) Improved "Select All/Next/Previous Like This" to handle
     text attributes (Bug #1519).

IMP: (1/3/08, DN) All *Id modules are moved to database.id package.

BUG: (1/3/08, SMR) Geometry extraction fails to handle rotated contacts (Bug #1475).
FIX: Added detection of asymetric contacts.

IMP: (12/28/07, DN) Offscreen buffer in waveform window is VolatileImage for faster repaint.

BUG: (12/27/07, DN) Dragging main/ext cursors in waveform window is slow when waveforms are large.
FIX: In user.waveform.Panel paint cursors directly to screen instead of offscreen buffer.

BUG: (12/26/07, DN) Ploting of .ac0 (ac analysis ) not working properly (Bug #1522).
FIX: Refactor simulation code so that it handles complex waveforms.
     Only amplitude plot is shown. Phase information is available internally,
     but GUI is still to be changed to show it.

IMP: (12/20/07, RK) Fix NCC regressions. qFourP2 had arc names that depended
     upon case insensitive matching.

BUG: (12/13/07, SMR) Spice still writes too many "'" wrappers (Bug #1452).
FIX: In Spice:replacePortsAndVars() to add quotes only if not already in them.

BUG: (12/17/07, SMR) EDIF input is inconsistent with cell names that start
     with an ampersand (Bug #1455 in the old Bugzilla, #1467 in the new one).
FIX: In EDIF input, all cell names, port names, and net names that start
     with & and a number have the ampersand removed.

BUG: (12/17/07, SMR) VHDL generation of layout transistors may miss the poly connection.
FIX: In GenerateVHDL.addRealPorts(), consider topological equivalences.

IMP: (12/05/07, DN) Only arcs with same name (in case-sensitive sense) are connected into same network.
    Warning if there are arcs with case-insensitive match. (Bug #1398).

************************* END OF Version 8.06, GNU RELEASE *************
************************* Version 8.06o: *******************************

BUG: (12/14/07, GVG) "Change all in this library" is misleading (Bug #1460)
FIX: The change process is applied to the library of the cell in the current WindowFrame.

IMP: (12/13/07, DN) Warning if technology parameter is changed and this technology already used.

IMP: (12/13/07, DN) Netlist Engine names unnamed buses in descending order.

IMP: (12/13/07, DN) JELIB writer puts version number 8.03 instead of 8.04k when writing in old format.

************************* Version 8.06n: *******************************

BUG: (12/13/07, SMR) Spice writes too many "'" wrappers (Bug #1452).
FIX: In Spice:replacePortsAndVars() do not call formatParam().

BUG: (12/12/07, SMR) Editing a cell in a new window doesn't fill the window.
FIX: In EditWindow.setCell(), recache the window size.

BUG: (12/12/07, RK) Stephen Friedman accidentally made NCC depend upon PIE plugin
FIX: Remove the dependency by moving Permutation and PIEOptions and by using reflection.

BUG: (12/12/07, SMR) Technology editor ignores port topology in non-transistor nodes.
FIX: In LibToTech.extractNodes(), always extract port topology.

IMP: (12/11/07, DN) Support of multi-task tests by AbstractTest and FakeTestJob.

BUG: (12/10/07, SMR) HSpice measurement files read badly.
FIX: In HSpiceOut.breakMTLine(), parse continuation lines properly.

IMP: (12/10/07, DN) Class MultiTaskJob - a draft of framework for multitask computations.

IMP: (12/7/07, GVG) More MT DRC improvements.

BUG: (12/7/07, DN) CrossLib copy and cell revision dates: the cells are never described as "Same" (Bug #870).
FIX: Don't update cell revision date if it was just set by Cell.lowLevelSetRevisionDate.

BUG: (12/7/07, DN) Electric does not deal with missing cells properly (Bug #1283).
FIX: In input.JELIB.fugireOutPortInst apply transform to missing port position.

BUG: (12/6/07, SMR) Extracting node with Essential Bounds ignores the EB nodes.
FIX: In CellChangeJobs.extractOneLevel(), extract Essential Bounds if there are no
     others in the top-level cell.

BUG: (12/6/07, GVG) Exception ErrorLogger creation in case of a resolution DRC error while sorting per rule names.
This was triggered by Bug #936.
FIX: Non-null rule name for resolution errors.

BUG: (12/6/07, GVG) ErrorLogger in ExplorerTree doesn't cluster properly groups sorted by DRC rule names (Bug #1451).
FIX: The DefaultMutableTreeNode nodes used as group are created in advanced.

BUG: (12/6/07, SMR) "Cleanup Pins Everywhere" only affects current library (But #1449).
FIX: In CircuitChanges.cleanupPinsCommand(), made it affect all libraries.

BUG: (12/6/07, SMR) "Cross Library Copy" uses "Old" markers in a confusing manner (Bug #870)
FIX: Changed "Old" to "New" so that the arrow points to the newer cell.

BUG: (12/05/07, GVG) FillGenerator can't generate tsmc180 fill cells (Bug #1417)
FIX: Extra submenu added in ToolMenu this time and code was fixed.

IMP: (12/05/7, GVG) Latest changes in Multi-Threaded DRC to work with regressions.

IMP: (12/05/07, RK) Layout generators: remove calls to deprecated method
Cell.getNetlist(boolean).

IMP: (12/05/07, RK) NCC: Change MAX_REC_BIRTHDAYS to 500. Change NCC so
it prints "birthday" warnings only when NCC preferences specify more
detailed messages.

IMP: (12/03/07, GVG) More changes in Multi-threaded DRC. Improved Layer.Function.Set so now
considers extraBits to distinguish layers such as Poly-Cut and Active-Cut.

IMP: (12/03/07, RK) Add nand2en to cmos90 gate layout generators (Bug #1446)

IMP: (12/02/07, DN) If network is connected by case-insensitive name match, report error instead of warning.

BUG: (12/02/07, DN) sch/ic port check should be case sensitive (Bug #1398).
FIX: Make NodeProto.findPortProto() case-sensitive.

IMP: (11/30/07, GVG) First version of multi-threaded DRC for spacing rules (no area-related).

IMP: (11/30/07, GVG) No checking contact layers such as vias in multi-threaded version of minArea.

BUG: (11/30/07, DN) The various attributes of a piece of text are losing their value (Bug #1447).
FIX: Displayability of TextDescriptor is one of: NONE, HIDDEN, SHOWN.
     They are written in JELIB as: "D" - SHOWN, "d" - HIDDEN.

IMP: (11/29/07, GVG) DBMath.isGreaterThan() using HALF_EPSILON instead of 0.5/GRID.
PolyBase.isInsideGenericPolygonOriginal() testing for bounding box of the polygon first
(strategy gave good results in new min area algorithm).

IMP: (11/29/07, RK) I enabled Dima's change to make '.' a port separator
in layout as well as schematic. I fixed NCC regression to accomodate this change.

************************* Version 8.06m: *******************************

IMP: (11/28/07, GVG) Second version of multi-threaded min area DRC checking.
It collects layers per cell.

BUG: (11/27/07, SMR) Spice primitive templates don't handle width/length (Bug #1422)
FIX: In Spice.replacePortsAndVars() added "width" and "length".

BUG: (11/27/07, DN) Grid axes are not always correct (Bug #1430).
FIX: drawGrid methods use scale/offset from Drawing instead of EditWindow.

IMP: (11/26/07, SMR) "Select All Like This" now matches Export by their
     characteristic (i.e. selecting an input port will match all other
     input ports) (Bug #1433).

BUG: (11/21/07, SMR) Showing Project Management history crashes if PM not setup (Bug #1439).
FIX: In HistoryDialog.examineThisHistory(), call ensureRepository().

IMP: (11/20/07, DN) Replace calls of deperecated HierarchyEnumerator.enumerateCell(Cell,VarContext,Visitor,boolean).

BUG: (11/20/07, DN) Ncc regression fails with ShortResistors API (Bug #1426).
FIX: Declare NccNetlist.SHORT_RESISTORS constant and pass it consistently
     to Cell.getNetlist() and HierarchEnumerator.enumerateCell() methods.

IMP: (11/20/07, SMR) Added note in Attributes dialog (in debug mode only)
     that Parameters must start with "ATTR_".

IMP: (11/20/07, SMR) Sue input now has an option to convert Sue
     expressions to Electric form.

BUG: (11/20/07, SMR) Grid axes are not always correct (Bug #1430).
FIX: Must set the offset values immediately in the Drawing.render() method.

BUG: (11/20/07, DN) LayerCoverageTool.LayerCoverageData doesn't find short resistor Networks.
FIX: Detect ShortResistors mode from networks and pass it to HierarchyEnumerator.

BUG: (11/19/07, DN) Topology does not handle shorted resistors settings correctly (Bug #1426).
FIX: Three modes of Netlist.ShortResistors are possible: NO, PARASITIC, ALL .

BUG: (11/19/07, GVG) Major library save error (Bug #1063)
FIX: DELIB using the same code as ELIB and JELIB.

BUG: (11/19/07, GVG) Changing attribute of exports (Bug #1434)
FIX: Electric was setting export type when option was "leave alone".

BUG: (11/19/07, SMR) "Change" ignores internal arcs (from node to itself, Bug #1437).
FIX: Improved algorithm in NodeInst.replace().

BUG: (11/19/07, SMR) "Change" should use name disambiguation even if asked to
     "Ignore Port Names" (Bug #1436).
FIX: In NodeInst.portAssociate() use names to disambiguate.  Also restored "C"
     code to disambiguate by port connectivity.

IMP: (11/17/07, DN) Netlist class is abstract with two subclasses: NetlistImpl and NetlistShorted .

IMP: (11/17/07, DN) Names are moved from Network to Netlist. Network objects are allocated lazily.

BUG: (11/16/07, RK) HierarchyEnumerator uses too much heap (Bug #1424)
FIX: Use hash table instead of array for netIdToNetDesc

BUG: (11/16/07, GVG) fill cell generator generates exception (Bug #1432)
FIX: LayoutLib.openLibForWrite was missing lib.setLibFile()

IMP: (11/16/07, SMR) Improved SUE reader to handle Spice code.

IMP: (11/16/07, GVG) FillGenerator.writeLibrary() will write JELIB files
instead of ELIBs.

BUG: (11/15/07, DN) Exception adding new instance (Bug #1431)
FIX: In Snapshot.getCellsDownTop change check of cell usage.

IMP: (11/15/07, GVG) First version of multi-threaded DRC min area checking per layer.

BUG: (11/15/07, SMR) "Change" dialog doesn't restore if obscured up on Linux.
FIX: In Change.showChangeDialog(), close previous dialog.

BUG: (11/15/07, DN) Slow redisplay (Bug #1408).
FIX: Accurate implementation of refreshing of export information in VectorCache.

BUG: (11/14/07, RK) NCC: hierarchical doesn't work if Cell has no Wires and no Parts (Bug # 1429)
FIX: Make sure even empty Cells get entered into the subcircuit cache.

************************* Version 8.06l: *******************************

BUG: (11/14/07, SMR) Highlighting of lines has incorrect bounds (Bug #1423).
FIX: In Highlight2.HighlightLine.getHighlightedArea() compute area correctly.

BUG: (11/14/07, SMR) GDS import of paths has wrong endcaps (Bug #1428).
FIX: Angle computation was wrong in GDS.determinePath().

IMP: (11/14/07, SMR) Added "Spice Template" field to primitive nodes.
     Affects Node editing in the technology editor (Bug #1422).

BUG: (11/14/07, GVG) Factory reset all layers does not reset background (Bug #1425)
FIX: Indeed, all special colors such as for grid and waveforms had the same problem. Done some refactorization
to clean the code. Consistent way to reset to factory colors from WindowMenu option.

IMP: (11/13/07, RK) Add physical design classes for Infinity-2

BUG: (11/12/07, GVG) Narrow layers not detected by DRC (bug #1418)
FIX: Quick.foundSmallSizeDefect() should still analyze zero area boxes.

IMP: (11/09/07, GVG) Ability to switch between min area algorithms. Added new algorithm based on local
calculations per cell.

BUG: (11/08/07, GVG) Fill Cell Generator Dialog box initial size is wrong (Bug #1419).
FIX: Difficult to size JTabbedPanel. Fixed size values that are valid for techs with up to 9 metals.

BUG: (11/08/07, GVG) DRC reports false layer surround errors (Bug #1421)
FIX: Removed rule for tsmc180.

IMP: (11/08/07, GVG) Need menu item to import saved drc errors (Bug #1420).
Implemented by adding import option in File -> Import -> XML Error Logger.

IMP: (11/8/07, SMR) Added methods to NodeInst and Technology to find the "alternate"
     gate port on a transistor.

BUG: (11/07/07, GVG) FillGenerator can't generate tsmc180 fill cells (Bug #1417)
FIX: Extra submenu added in ToolMenu. The title in the dialog box includes the tech name now.

BUG: (11/07/07, GVG) NPE in FillGenerator if dimensions for cell templates are too small (Bug #1415).
FIX: Added LayoutLib.error() if cap transistors can't be sized because the cell is too small.

BUG: (11/7/07, SMR) Changing nodes with arcs doesn't work right (Bug #1416).
FIX: Now attach contacts better and set their sizes properly.

IMP: (11/07/07, GVG) Remove notion of CS in cells and allow EBs to drive array command (Bug #1413).
Cell properties dialog was modified as well.

IMP: (11/06/07, GVG) Delete entire group from Explorer (Bug #1409)
Code checks whether the entire group can be deleted or not.

IMP: (11/06/07, GVG) Indexing errors folder (Bug #766).
ErrorLoggers can now sort errors/warnings per cell, rule or nothing (flat representation).
Per cell is the default now.

IMP: (11/06/07, GVG) ErrorLogger and flat representation (Bug #936).
XML syntax for ErrorLogger was extended to cluster messages by groups.

BUG: (11/6/07, SMR) Epic signals are not draggable as a group (Bug #1411).
FIX: In ExplorerTree.java, handle EpicSignals uniformly.

BUG: (11/05/07, GVG) NPE while reading a XML ErrorLogger without loading a design (Bug #1412)
FIX: Allowing to read ErrorLogger even if cell is not found.

IMP: (11/05/07, GVG) Add essential bounds/characteristic spacing to fill cells (Bug #1361)

IMP: (11/05/07, GVG) Cleaning min area in tsmc180 technology

************************* Version 8.06k: *******************************

BUG: (11/02/07, GVG) DRC minArea issue with well and hierarchies in CMOS90 (Bug #1284)
FIX: Code rewritten. The version is slower but more reliable. It should be optimized from here.

BUG: (11/02/07, GVG) DRC not detecting holes (part of Bug #509 and Bug #1406)
FIX: Detecting holes only while checking the minArea since the sampling done for checkDist is not
good enough and can skip cases. Using now Quick.checkMinAreaLayerWithTree().
The solution involves a version of the code that is slower but more reliable.

IMP: (11/02/07, GVG) Changes in ExportForeignTest to get IO regressios working again after
Spice changes.

BUG: (11/01/07, GVG) Exception after deleting of more than 1 cell in group (Bug #1410)
FIX: Similar fix to the one for Bug #1170.
Detecting cases where objects are accessed by Swing but are being modified at the same time.

BUG: (10/31/07, SMR) Saving to a path with spaces in it (such as the Windows desktop)
     may fail.
FIX: In TextUtils.makeURLToFile() use URLDecoder.decode() on the string.

IMP: (10/31/07, SMR) Added more Spice output tests to handle bug 1403.

BUG: (10/30/07, GVG) polyCoverByAnyVTLayer not properly implemented
FIX: Not allowing set of polygons to cover VT area

BUG: (10/30/07, GVG) Finish in polyCoverByAnyVTLayer (Bug #498)
FIX: Finish recursive part by using Quick::lookForLayerWithPoints()

BUG: (10/30/07, SMR) Spice output doesn't handle global partition right (Bug #1403).
FIX: In Spice.java, do not rely on the network globals, but instead use the
     results of the hierarchial traversal data.

************************* Version 8.06i: *******************************

BUG: (10/29/07, GVG) Delib not loading (Bug #998)
FIX: Due to code in BasicFileChooserUI:actionPerformed. Workaround in OpenFile:isTraversable
and OpenFile:isDirectorySelectionEnabled.

BUG: (10/29/07, SMR) Spice output emits excess quotes (').
FIX: Supress quotes in Spice2 and Spice3.

BUG: (10/29/07, GVG) Exception in ElectricObject after massive delete (bug #1170)
FIX: Detect cases where objects are accessed by Swing but are being modified at the same time.

BUG: (10/25/07, GVG) DRC and Extension rule PP.EN.1 (Bug #1286)
FIX: New version of Quick.checkExtensionRules by using conditional rules.
The code will be slower with the extension checkings.

BUG: (10/25/07, RK) Implement highlighting for Export Assertion failures.
      These are broken exportsConnectedByParent promises (Bug #1397)
FIX:  Highlight network

BUG: (10/25/07, SMR) Multiple text replacements in one string may fail (Bug #1405).
FIX: In EditWindow.StringSearch.changeOneText(), always update other strings.

BUG: (10/24/07, SMR) Finding text in an area does not work for annotation text (Bug #1404).
FIX: Consider areas as well as selected nodes.

IMP: (10/24/07, GVG) Modification in Quick:lookForLayerNew to not evaluate
points if it was already found.

IMP: (10/24/07, SMR) When multiple waveform windows are opened on the same cell,
     crossprobing references from the schematic/layout use the most recently
     referenced (activated) waveform window (Bug #1400).

BUG: (10/23/07, GVG) Conditional spacing rules still giving bogus errors (Bug #1378).
FIX: Do not skip the primitive whose layer is under evaluation in Quick:lookForLayerNew()

BUG: (10/23/07, SMR) Cannot tell the connectivity of the selected port (Bug #1399)
FIX: In the "Node Properties" dialog, highlight the line that shows the
     selected port.

BUG: (10/22/07, SMR) Undoing in-place text editing does not work.
FIX: Made all changes to in-place text editing happen immediately.

BUG: (10/22/07, SMR) "Bus Parameters" dialog may crash.
FIX: In BusParameters constructor, test for null pointer.

BUG: (10/22/07, DN) NetworkTool doesn't consider isBusAscending option.
FIX: Stephen Friedman's fix is inserted into NetSchem. It is disabled by
  DESCENDING_BUS key for now, because it is necessary to implement
  refreshing of networks after changing this option.

IMP: (10/19/07, RK) Add "FLAG" Fleet LAyout Generator

IMP: (10/17/07, SMR) EPIC reader now always uses separate process (Bug #1371)

BUG: (10/17/07, DN) JELIB/DELIB reader doesn't read cell groupping(Bug #1393).
FIX: In input.JELIB.readTheLibrary consider groupName fields correctly.

BUG: (10/17/07, SMR) Changes to a text window are not remembered if
     save is issued while in the window.
FIX: Store all changes immediately instead of marking the text "dirty".

IMP: (10/16/07, JG) If you hit shift-#, it changes the visibility to
     metal# and metal#-1 (including contacts of those levels).  If you hit
     shift-0, it shows everything.  This makes it easy to quickly check metal
     layers without having to click on the layers tab, especially for global routing.

BUG: (10/16/07, GVG) Rotated DRC exclusion regions don't get correct
     set of points from NodeInst.getShapeOfNode() (Bug #1258).
     Extra test in regression added.
FIX: Apply transformation in Quick.accumulateExclusion()

IMP: (10/15/07, GVG) Conditional spacing rules implemented (Bug #1378).
     Not supported by TechEditor.

IMP: (10/15/07, SMR) "Find Text" now has "Limit Search to the Highlighted Area"
     checkbox (Bug #1392).

BUG: (10/15/07, SMR) Export text is in the wrong place (Bug #1396).
FIX: In VectorCache.initPortShapes(), set the text style.

IMP: (10/12/07, GVG) First version of conditional DRC rules (Bug #1366).
     Full overlapping is the first type implemented. Not supported by TechEditor.

************************* Version 8.06h: *******************************

IMP: (10/11/07, SMR) Sea of Gates router now avoids DRC errors (Bug #1344).

BUG: (10/10/07, GVG) Bogus spacing errors for NT-N layers (Bug #1395)
FIX: Wrong description of non-electrical layers in NT-N Transistors. This is important
     in Quick.lookForLayerNew().

BUG: (10/10/07, GVG) Bogus spacing errors for select layers (bug #1394)
FIX: Added extra bit to NT-N layer and Technology.sameLayer will check the extra bits.

BUG: (10/9/07, GVG) NT-N node and NT-N transistor problems in TSMC180 (Bug #1378)
FIX: Disabled for now in tsmc180.xml

IMP: (10/9/07, SMR) Waveform window now groups signals with "#" variations (Bug #1172).

BUG: (10/9/07, SMR) Multiple cell deletions may fail if dependencies
     exist between them.
FIX: Improved CellChangeJobs.DeleteManyCells to delete cells in appropriate order.
     Use this in CellBrowser.performAction().

IMP: (10/9/07, RK) Skew tree generator adds external arc

BUG: (10/8/07, SMR) When cells are renamed, expansion is lost (Bug #1384).
FIX: In Cell.rename(), save expansion information and restore it later.

IMP: (10/8/07, SMR) Cell lists ("Edit Cell", "Place Cell Instance",
     "Rename Cell", "Duplicate Cell", "Delete Cell", and cell selection)
     now have "Evaluate Numbers when Sorting Names" checkbox to control
     whether numbers in cell names are sorted numerically or lexically.
     Also, the Cell Explorer's context menu for "LIBRARIES" has the same
     checkbox for sorting within the explorer.  Also, the "General Cell Lists"
     dialog has the checkbox. (Bug #1346).

BUG: (10/8/07, DN) Exception after reading library twice).
FIX: In NetworkManager.updateAll check for recreated Cells.

TEC: (10/5/07, SMR) Technologies represented as XML fail DRC.
FIX: Added electrical layers to transistors, fixed N-Active size in "mocmossub".
     Also rearranged layers to satisfy technology-edit regressions.

************************* Version 8.06g: *******************************

IMP: (10/3/07, RK) Add Skewed tree generator for Fleet

IMP: (10/3/07, SMR) Technology editor now has port option for "gate/gated"
     to handle nonstandard transistors.

IMP: (10/2/07, SMR) Generalized the file name decoding scheme in TextUtils.URLtoString().

IMP: (10/2/07, SMR) When moving objects, movement is shown in status area,
     not in the screen center.

IMP: (10/2/07, SMR) Multi-object Properties now shows a "Color and Pattern"
     button if there are Artwork components (Bug #801).

IMP: (10/1/07, SMR) LEF input handles multiple ports on a single path.

BUG: (10/1/07, SMR) Very large instance name text may draw outside box.
FIX: In PixelDrawing.RenderTextInfo.buildInfo(), use shift factor.

BUG: (10/1/07, SMR) Changing cell expansion from Object Properties dialog doesn't work.
FIX: In GetInfoNode.ChangeNode class, added TerminateOK() to handle expansion.

IMP: (10/1/07, SMR) "New Export" dialog defaults to characteristic of subport.

IMP: (10/1/07, SMR) Technology editor shows errors better.

BUG: (10/1/07, DNA) IllegalStateException moving elements.
FIX: Don't use mutable objects in Route.endBatch().

IMP: (9/26/07, SMR) Preferences, Project Settings, and User's Manual now
     highlight current tree element on the left.

BUG: (9/26/07, SMR) Technology editor doesn't handle transistors right.
FIX: Many small improvements to tech editor.

IMP: (9/25/07, SMR) Icon preferences now allow exports to be placed according
     to the placement in the original cell.  Also allow control of text size
     on icon body.

BUG: (9/25/07, SMR) Offset exports now display properly on instances.

************************* Version 8.06f: *******************************

IMP: (9/20/07, GVG) Cleaning VerilogData in code.  Adding \t to a tokenizer for full design.

IMP: (9/20/07, SMR) Icon Preferences now allow specification of "always drawn"
     for all export text.

BUG: (9/20/07, SMR) Multi-object Properties doesn't handle all fields of exports.
FIX: In GetInfoMulti.loadMultiInfo(), distinguish exports from text.

BUG: (9/19/07, SMR) "Change" may create too many cells (Bug #1383).
FIX: In Change.ChangeObject.doIt(), remember which nodes were changed.

BUG: (9/19/07, SMR) "Go back a cell" doesn't always work (Bug #1385).
FIX: Fixed a number of commands to use WindowFrame.setCellWindow()
     instead of EditWindow.setCell():
     CellChangeJobs.NewCellVersion.terminateOK()
     CellChangeJobs.DuplicateCell.terminateOK()

BUG: (9/19/07, SMR) Placing artwork primitives may move them to the origin.
FIX: In Artwork.setDefaultOutline(), set the outline at the correct location.

IMP: (9/19/07, SMR) Modeless dialogs have "minimize" buttons.

BUG: (9/19/07, SMR) Printing ignores "what to print" preferences.
FIX: Store desired print area in ElectricPrinter object and use it.

IMP: (9/18/07, SMR) Object properties dialogs (node, arc, multi Get Info)
     now remember their size between invocations.

IMP: (9/18/07, SMR) Cell Properties dialog can now set/clear expansion
     state on all cells.

IMP: (9/18/07, SMR) When duplicating circuitry, the initial highlighting is
     in the same position as it was before.

IMP: (9/18/07, SMR) Icon preferences now allow rotation to be given for
     each type of port.

BUG: (9/17/07, GVG) NT-N node and NT-N transistor problems in TSMC180 (Bug #1378)
FIX: Disabled for now.

IMP: (9/14/07, GVG) Initial time is also global and changes in TimingModeBucketJob
     so report job will be kicked in batch mode.

************************* Version 8.06e: *******************************

IMP: (9/14/07, GVG) Last changes in Oyster before move to SVN. Initial memory is
     global now.

BUG: (9/14/07, SMR) Exports don't show rotation, size, etc at higher levels.
FIX: In VectorCache.VectorCell.initPortShapes(), use "portDescript", not "descript".

IMP: (9/14/07, SMR) DEF input ignores logical wires when not selected.
     DEF preferences updated to be clear about input.

IMP: (9/14/07, SMR) Spice preferences now remember the last header/trailer
     card setting even if you select "none" (Bug #1382).

IMP: (9/13/07, GVG) Update in splitNode mode. Multithread and single versions.

IMP: (9/13/07, GVG) Arrivals with splitNode option. Multithread and single versions.

IMP: (9/13/07, DN) A small change in CircuitChangeJobs.CleenupChanges.doIt to
     speed up bulky arcs kill. Command "Tests|Dima|cleenup arcs" to remove
     duplicate arcs.

IMP: (9/12/07, GVG) splitNodes in Oyster.

BUG: (9/12/07, SMR) Editing the component menu fails for the "Misc." text.
FIX: Generalized all component menu text so that strings are defined just once.

IMP: (9/12/07, GVG) Detecting job finished with string in Oyster multithread job

BUG: (9/11/07, SMR) DEF input doesn't handle all orientations of instances.
FIX: Improved LEF/DEF reader.

IMP: (9/11/07, SMR) Added Thin Film technology (tft).

IMP: (9/11/07, GVG) Code to create cells in multithreaded jobs for Oyster

IMP: (9/10/07, GVG) Code to multithread the reading of Verilog files.

IMP: (9/10/07, SMR) Nodes that are invisible do not show or select exports (Bug #1348).

IMP: (9/10/07, SMR) Key binding preferences now warn when binding to ALT keys
     that are attached to menus (Bug #1108).

IMP: (9/10/07, GVG) Sorting wires and ports in Oyster. Sorting pinNames.
     New names for supply pins: name + "@0". No extracting single pins in busses for benchmarks

IMP: (9/8/07, GVG) No icon for benchmarks in Oyster

IMP: (9/8/07, GVG) No essential bnds, no center for benchmarks, using STRING_NUMBER for sorting.

IMP: (9/7/07, GVG) Sorting modules, instances, wires, ports in VerilogReader to improve reading time

BUG: (9/7/07, DN) Redisplay exceptions when switching off/on layer visibility.(Bug #1358).
FIX: PatternedTransparentRaster.current was used concurrently by EditWindow and by TechPalette.

BUG: (9/7/07, DN) Peek causes other cells to disappear in LayerDrawing (Bug #1338, #1373).
FIX: Implement correctly LayerDrawing.clearImage().

BUG: (9/7/07, DN) [Bug 1225] Layer Display Algorithm color blending poly/diffusion/metal
FIX: Ask him

BUG: (9/7/07, DN) [Bug 1136] "invisible outside of cell" does not work with new display algorithm
FIX: Ask him

IMP: (9/6/06, GVG) Verilog reading change to allow the upload of multiple files.

BUG: (9/6/07, SMR) Ctrl-Shift-X doesn't bind (Bug #1381).
FIX: In KeyBindingManager.processKeyEvent(), consider alpha property by
     examining KeyCode, not KeyChar.

IMP: (9/6/07, SMR) Added new context menu "Show All" to ERROR part of
     the Explorer tree to highlight all errors (Bug #1377).

IMP: (9/6/07, DN) Removed import of technology classes from technology.Xml module.

BUG: (9/6/07, DN) "mocmos:P-Base" layer hasn't default GDS and CIF codes.
FIX: Put them into MoCMOS.java .

BUG: (9/5/07, JKG) Wiring tool did not interpret arc angle restrictions correctly
FIX: In SimpleWirer, figureAngle returns tenth-degrees instead of degrees.

BUG: (9/5/07, SMR) Cannot delete multiple selected ERROR sections from the
     Explorer tree (Bug #1375).
FIX: In ErrorLoggerTree.ErrorLoggerTreeNode.actionPerformed(), check the selection
     and delete all.

BUG: (9/5/07, SMR) Double-clicking the open/close (+/-) box affects the selected
     explorer tree entry even if that entry wasn't clicked (Bug #1379)
FIX: In ExplorerTree.TreeHandler.mousePressed(), make sure double-click happens
     to a selected entry.

IMP: (9/5/07, SMR) Enhanced "Describe This Cell" command to give bounds
     in X and Y (Bug #1374).

IMP: (9/5/07, SMR) LEF/DEF reader more powerful.

IMP: (9/5/07, SMR) Verilog output reader now supports Modelsim.

BUG: (9/5/07, SMR) Auto-routing may connect two arcs that do not touch (Bug #1369).
FIX: In AutoStitch.compareTwoArcs(), fix second call to "getShapeOfArc" to use second arc.

IMP: Function in SunAsyncMenu to migrate a MOSIS lib into TSMC180 (requested by Justin)

IMP: (9/4/07, RK) Add N-Well-RPO-Resistor to NCC

************************* Version 8.06d: *******************************

BUG: (9/4/07, SMR) Epic reader doesn't always find the JVM (Bug #1370).
FIX: Using System.getProperty("java.home") to get the right JVM.

IMP: (8/30/07, SAF) PIE: Added counters and fixed options for benchmarking.

BUG: (8/30/07, SAF) PIE: Backtracking doesn't properly restore partition tree.
FIX: Backtrack all leaf nodes instead of only unmatched leaves.

BUG: (8/29/07, SMR) Technology editor crashes when arc list is bad on ports.
FIX: More robust both in technology conversion and in port list editing.

IMP: (8/29/07, SMR) Added "Component Menu" preference panel to customize
     the Component Menu for the current technology.  Also added the command
     "Edit / Technology Specific / Edit Component Menu..." to customize the
     component menu in the technology editor.

IMP: (8/22/07, SMR) When dragging a single node or arc, highlighting
     shows design rules and simple violations.  Controlled from tool/DRC
     Preferences with "Show worst violation while moving nodes and arcs".

BUG: (8/22/07, SMR) Two-key bindings still don't work right (Bug #980).
FIX: In KeyBindingManager.validKeyEvent(), ignore KEY_TYPED events and
     use KeyChar only when SHIFT held down on non-alpha key.

BUG: (8/21/07, GVG) Bogus errors reported for rule "C page 20" (TSMC180) (Bug #1367)
FIX: correction in Technology.sameLayer to consider P-Active-Well == P-Active

BUG: (8/21/07, SMR) Using ">" and "<" to scroll through errors is broken (Bug #1365)
FIX: fixed

************************* Version 8.06c: *******************************

IMP: (8/16/07, SAF) PIE: Independent ports are now treated as single
     islands instead of a group, which allows factoring to propegate up
     the hierarchy better.

BUG: (8/16/07, SAF) PIE: Leftover hash codes were breaking port to port
     matrix computation for subsequent matrix columns.
FIX: Properly zero and reinitialize all hash codes.

BUG: (8/16/07, SAF) PIE: Partition tree objects didn't know parents upon
     restore for sub-NCC.
FIX: Have all partition tree records adopt their children after backtrack.

IMP: (8/16/07, SAF) PIE: Added annotation to prevent interchange.

BUG: (8/16/07, SMR) Two-key bindings don't work right (Bug #980).
FIX: In KeyBindingManager.validKeyEvent(), ignore code zero.

IMP: (8/15/07, SMR) Added a new Preferences panel: "Added Technologies"
     so that new technology XML files can be linked into Electric more easily.

IMP: (8/15/07, SMR) Highlight text now scales with global text scale.

BUG: (8/13/07, SMR) Waveform crossprobing makes unnecessary warnings (Bug #1302).
FIX: In WaveformWindow.findSelectedSignals(), removed warning message.

BUG: (8/13/07, SMR) "Package into Cell" should package the exact highlighted
     objects but instead gathers everything in the highlighted area (Bug #1360).
FIX: In CellChangeJobs.PackageCell class, take a set of nodes and arcs to package.

IMP: (8/10/07, SMR) Digital waveforms now show the "Z" state (from Verilog)
     as a thick green bar.

BUG: (8/10/07, SMR) Changing arcs (with nodes) may loop infinitely (Bug #1359).
FIX: In Change.findPathToArc(), track arcs used, not primitives.

BUG: (8/10/07, SMR) Cannot save JELIBs to Windows desktop.
FIX: Paths with spaces in names fail.  Fixed TextUtils.URLtoString()
     to convert "%20" to a space on Windows.

IMP: (8/09/07, SMR) Upgraded GPL version 2 to version 3 in all code.

BUG: (8/09/07, SMR) Text change in edit windows repeats changes (Bug #1357).
FIX: In EditWindow.StringSearch, remember changes and avoid duplication.

BUG: (8/09/07, SMR) Sea-of-Gates router crashes (Bug #1335).
FIX: Ignore arcs with no network information.

BUG: (8/08/07, SMR) Sea-of-Gates router creates notch errors.
FIX: Added more complex spacing checks.

BUG: (8/08/07, SMR) The "Always Drawn" property of exports doesn't work.
FIX: In VectorCache.drawNode() and in PixelDrawing.showCellPorts(),
     force drawing when this property is set.

BUG: (8/08/07, SMR) "Change" dialog doesn't remember checkboxes (Bug #1353).
FIX: In Change.java, remember "Ignore Port Names", "Allow Missing Ports" and
     "Change Nodes With Arcs".

BUG: (8/08/07, SMR) Expanded state of a node is not copied properly (Bug #1349).
FIX: Must also copy expanded state whenever copying "state bits".

IMP: (8/7/07, RK) Remove "power" Cell hacks from FillGeneratorTool.
     These were workarounds to get C-NCC to work with multiple power supples.
     Merge my changes to FillGenerator90 (Bug #1351) into FillGeneratorTool.
     First cut at making FillGeneratorTool accessible from bean shell script.

IMP: (8/7/07, JKG) Added option under Prefs->Selection to not highlight
     connected nodes. This improves performance when editing vdd/gnd in very large
     cells when you do not need to see everything connected.

BUG: (8/7/07, DN) Editing layout too slow when lots of stuff in cell (Bug #1355)
FIX: In CellBackup.Memoization sort connections a little faster.

IMP: (8/6/07, JKG) added new layers: RPDUMMY, , metal dummy (Bug #1356).
IMP: (8/6/07, GVG) RPDUMMY added to Poly RPO resistors (Bug #1356).

IMP: (8/06/07, SAF) Added benchmarking counters to NCC.

BUG: (8/6/07, DN) Netlist crash (Bug #1354)
FIX: In Spice.addNodeInformation test capacitance after technology.

IMP: (8/1/07, RK) Allow fill generator to place peripheral and internal exports on whatever layer the designer specifies. (Bug #1351)
     I fixed FillGenerator90. Later I'll see if we can delete FillGenerator90 and move the changes to the FillGenerator.

BUG: (8/1/07, RK) NodeInst.findEssentialBounds() returns wrong bounds when NodeInst is rotated. (Bug #1350)
FIX: call transformOut() instead of translateOut()

BUG: (8/1/07, DN) Print command throws exception on Solaris.
FIX: In EditWindow.getPrintImage test if ColorSupported attribute is absent on platform.

IMP: (7/31/07, SAF) PIE: Added benchmarking counters and made
     performance optimizations.

BUG: (7/25/07, RK) Make NCC's joinGroup annotation work on schematic
     Cells as well as layout Cells (Bug #1345)

************************* Version 8.06b: *******************************

BUG: (7/25/07, DN) m5 to m8 connection not made correctly in TSMC90 technology *Bug #1344)
FIX: In VerticalRoute.findConnectingPorts ignore contacts which are not used in technology.

BUG: (7/24/07, SMR) GDS import leaves "_" on export names and does not
     make NCC annotations to show unified names (Bug #1343).
FIX: In GDS.CellBuilder.makeInstances(), accumulate duplicate names and
     write NCC annotation.

IMP: (7/11/07, SAF) PIE: Changed subcircuit factoring to compose
     hierarchically and use internal hierarchy connections.

IMP: (7/3/07, SAF) PIE: Added options to control backtracking search.

IMP: (7/2/07, SAF) PIE: Switched from internal to external stimulus for
     port to port matrix creation (stimulus on port,as if attached to wire).

BUG: (7/2/07, SMR) Spice decks truncate NPN area value.
FIX: In Spice.writeCellTopology(), do not limit digits in "AREA=" output.

BUG: (7/2/07, SMR) Schematic DRC complains about touching artwork ports.
FIX: In Schematic.checkPortOverlap(), ignore Artwork technology.

BUG: (6/29/07, SAF) PIE/NCC: Hash used for computing port multipliers
     was always 0.
FIX: Modified name hashing code to return different hashes.

BUG: (6/29/07, SAF) PIE: All transistor port multipliers are the same,
     including NMOS vs. PMOS multipliers.
FIX: Port multipliers now generated in PartType to be unique for each
     type of part.

IMP: (6/28/07, SAF) PIE: Added full backtracking support to algorithm.

BUG: (6/28/07, SAF) PIE: With subcircuit factoring on, unique pins did
     not update their hash codes properly.
FIX: Hash code update code in CSwapPart amended.

BUG: (6/27/07, DN) Netlist problem for NPN transistor in MOCMOS technology (Bug #1341).
FIX: In MoCMOS contructor fix port topology of "mocmos:NPN-Transistor:collector".

IMP: (6/27/07, RK) Infinity: router is adding (DRC incorrect) wires

BUG: (6/27/07, RK) NCC doesn't recognize NPN layout transistors. (Bug #1340)
FIX: Change NCC to work with NPN layout transistors

IMP: (6/26/07, GVG) New TSMC180 pure layer nodes: UBM, PLMIDE, CBD and ESD1DMY.

BUG: (6/26/07, DN) "mocmos:NPN-Transistor" collector should include N-Active boxes.
FIX: In MoCMOS constructor use "activeLayers[N_TYPE]" instead of activeLayers[P_TYPE].

IMP: (6/26/07, DN) TechId object in IdManager, mapping TechId->Technology in Snapshot and EDatabase.

IMP: (6/26/07, DN) Update Bean Shell to version "packaging/bsh-2.0b4.jar".

BUG: (6/26/07, DN) "ant jarForGNUSource" doesn't work in GNU Source distribution.
FIX: In "build.xml:jarWithVersion" don't exclude "packaging/electric.mf" and "packaging/*.txt".

BUG: (6/25/07, SAF) NMOS stacks with incorrectly interchanged gates can
     be matched by local partitioning and are never re-examined, which leads
     to false NCC passes in hierarchical mode.
FIX: Forced one hashing step of all parts after any operation that could
     cause the bug behavior to detect the faulty interchange.

BUG: (6/25/07, SAF) PIE: If only one instance of a part exists it was
     automatically matched by local partitioning without verifying proper
     interchange.
FIX: Any place where the algorithm can return without having checked
     interchange, all parts are forced to be examined for interchange first.

BUG: (6/25/07, SAF) PIE: CSwapPart hash sets were not properly compared.
FIX: Code now properly compares the signals.

************************* Version 8.06a: *******************************

BUG: (6/25/07, GVG) Biderectional exports are not defined "inout" in Verilog description (Bug #1339)
FIX: Case not detected in Verilog.writeCellTopology(). Code amended.

IMP: (6/24/07, GVG) CMOS90 aligned active contacts added.

BUG: (6/22/07, SMR) Layer/Pattern preferences gives spurious warnings (Bug #1333).
FIX: In ColorPatternPanel.colorChanged(), ignore if data is changing.

BUG: (6/22/07, SMR) LEF input improved (Bug #1336).

BUG: (6/22/07, SMR) Closing the current library doesn't select another (Bug #1337).
FIX: In FileMenu.CloseLibrary.terminateOK(), select another library if there is no current one.

IMP: (6/22/07, GVG) GUI option to run Sea-of-Gates as router in the fill cell generator
     instead of the built-in one.

IMP: (6/21/07, SAF) PIE: Updated to reflect progress made at UofW.
     Added preferences panel for PIE specific options.  Added port
     permutation to NCCResult for saving the permutation found via
     isomorphic mapping.  PIE now uses a permutation caching algorithm
     with caching implemented via base and strong generating set with
     Schreier-Sims Algorithm.

IMP: (6/20/07, SMR) New extraction option to ignore select/well layers.

BUG: (6/20/07, SMR) Sea-of-gates router uses larger contacts which cause DRC errors ([Bug #1334)
FIX: Sort contacts in list so that the smaller ones are preferred.

IMP: (6/20/07, GVG) Sea-of-Gates router available in onlySkill mode in CellFillGenerator.

************************* END OF Version 8.05, GNU RELEASE *************(version8.05GNU tag)
************************* Version 8.05p: *******************************

IMP: (6/18/07, GVG) First attempt to connect Sea-of-Gates router to the FillGen. Allowing the definition of metal
widths when running BINARY/ADAPTIVE options.

IMP: (6/17/07, DN) Initial version of sandbox which laods old elecric jars and starts jobs there.

BUG: (6/17/07, DN) Port names of one-port primitives are omitted in JELIB, except in PortInst variable.
    This single technology dependence will prevent reading JELIB before technology initialization.
FIX: In output.JELIB omit port names of one-port primitives in PortInst.
     In Technology.convertOldPortName() convert anything in case of one-port primitives.

IMP: (6/17/07, DN) Xml.Technology is serializable (together with EGraphics, Version, SizeOffset).

BUG: (6/14/07, DN) Tech editor test doesn't detect some technology mismatches.
FIX: In TechnologyEditTest.compareTechnologies test port topology and serpentine numbers.

BUG: (6/14/07, DN) Tech editor doesn't preserve order of NodeLayers.
FIX: In Example.getExamples sort nodes obtained by search iterator.

BUG: (6/14/07, DN) Layer thick3D and height3D are not rounded in Xml description.
FIX: In Layer.setFactory3DInfo round values.

IMP: (6/14/07, RK) Infinity: extract layout specifications from schematic

IMP: (6/14/07, GVG) Simplyfied version of get_ports and get_clocks in SDCParser.jj.

IMP: (6/14/07, RK) Abut Router working

IMP: (6/14/07, GVG) Latest changes in STA tool to get main_t1 example working.

IMP: (6/13/07, SMR) Improved LEF and DEF readers.

BUG: (6/13/07, DN) Assertion after changing technology parameters.
FIX: In ArcInst.check() and NodeInst.check() check sizes in debug mode only until better implementation.

IMP: (6/13/07, GVG) Dir and mode options in OUTPUT_DELAY and INPUT_DELAY constraints.

IMP: (6/12/07, RK) Infinity: check vdd & gnd export locations, create
      stages in column.

************************* Version 8.05o: *******************************

BUG: (6/12/07, SMR) Duplicating nodes with exports doesn't preserve export order
     (Bug #1330)
FIX: In Clipboard.copyListToCell(), sort exports by name before reexporting.

IMP: (6/12/07, GVG) Extra code to handle controlblock example in STA tool.
     100% match in critical paths. Adding exports on vdd/gnd inputs in
     VerilogReader.

BUG: (6/11/07, SMR) Technology editor doesn't handle multi-cut contacts right
     (Bug #1329).
FIX: In LibToTech.getMultiCutRule(), set bounds of the layer properly.

IMP: (6/9/07, GVG) Transparency mode in select layers is set to SCREEN_DOOR due
     to visibility issues in Java3D (Bug #1326).  Even though  it doesn't look as
     good as with NICEST, the select layers will be seen for all angles.  Note
     added in the 3D manual.

BUG: (6/8/07, GVG) Strange DRC min error related to well layer (Bug #1327)
FIX: Indeed, the DRC error is valid (detected by Quick.checkMinDefects()). Just
     the errorLog is pointing to the wrong geometry.

BUG: (6/8/07, DN) Assertion in SwingUtilities.isEventDispatchThread() while
     reading library from command line (Bug #1328).
FIX: Option reconciliation dialog was called from database thread. Move
     initCommandLibs and runScript from InitDatabase.doIt to
     InitDatabase.TerminateOk.

BUG: (6/8/07, DN) Assertion while deleting pin and arc at the same time (Bug
     #1321).
FIX: In Cell.killNodes don't remove nodes which are already removed.

IMP: (6/7/07, GVG) New 3D information for some MOCMOS layers suggested by
     external user (Bug #1326).  Transparency mode and factor were added as layer
     preferences so few extra classes were modified for this change.

BUG: (6/7/07, SMR) Command-line startup may crash (Bug #1328).
FIX: In EDialog constructor, make sure there is valid graphics information.

IMP: (6/7/07, SMR) Made technology initialization quieter and able to
     handle missing technologies.

IMP: (6/7/07, SMR) Made default memory size match default JVM size.

IMP: (6/7/07, SMR) Removed unused "Gate Layout Generation" Project Settings
     panel.

************************* Version 8.05n: *******************************

IMP: (6/7/07, DN) Pins unification. Their shape is taken from arcs.
     I tried to preserve the size of pin's port. Affected pins:
     cmos90:Active-Pin
     cmos90:N-Active-Pin
     cmos90:N-OD18-Active-Pin
     cmos90:N-OD25-Active-Pin
     cmos90:N-OD33-Active-Pin
     cmos90:P-Active-Pin
     cmos90:P-OD18-Active-Pin
     cmos90:P-OD25-Active-Pin
     cmos90:P-OD33-Active-Pin
     cmos90:RDL-Pin
     mocmos:Metal-6-Pin
     mocmos:Polysilicon-2-Pin

IMP: (6/6/07, DN) Preferences saves not absolute arc/node default size, but
     differences to "min width" sizes.

IMP: (6/6/07, DN) Preparation for change in JELIB format which occurs since
     8.05o.

BUG: (6/6/07, DN) TecEdit regressions fails.
FIX: In LibToTech.makeTech construct new technology using Xml.

BUG: (6/6/07, SMR) Cannot bind to "[" and other special keys.
FIX: In the array KeyStrokePair.specialKeyStrokes, added more special cases.

BUG: (6/6/07, SMR) Saving to windows desktop fails (Bug #1325).
FIX: Made TextUtils.URLtoString() and use it in getFilePath(),
     getFileNameWithoutExtension(), and getExtension().

BUG: (6/5/07, GVG) Assertion in Verilog Import (Bug #1324).
FIX: Current Verilog parser can't read all expressions. Warnings added. It should
     be documented.

IMP: (6/5/07, GVG) Extra code to deal with busses while reading Verilog instances
     such as .root({a[5], a[4], a[3], a[2], c})

BUG: (6/5/07, GVG) Missing refresh in Explorer after changing current library
     (Bug #1323)
FIX: ChangeCurrentLib.repaintAllAfterCurLibAction() added.

BUG: (6/5/07, GVG) NPE when setting current library if no one is set (Bug #1322)
FIX: Not getting library name in dialog box if no current library is set.

IMP: (6/5/07, SMR) Added cell contents extraction commands to go all the way or
     by an arbitrary amount (Bug #1317).

IMP: (6/5/07, DN) Reconciliation occurs before reading libraries to avoid
     resizing.

IMP: (6/4/07, DN) Disk readers emit warning instead of error on too small
     arc/nodes.

IMP: (6/4/07, GVG) DRC Schematics added into the regression

IMP: (6/4/07, GVG) Remove Export Verilog from FileMenu

BUG: (6/3/07, GVG) Null exception in 3D preference due to cell bounding box (Bug
     #1320)
FIX: 3D Java appearance associated to the cell bounding box was only
     initialized if a 3D view was available.  Initialized now when 3D tab is
     created. Same happens with axes and it was fixed.

BUG: (6/1/07, GVG) cInvR,cAdd,cSub,cAddR,cSubR,cMulR in awe.java modified due to
     reference issue affecting the Java code, effect not seen in C. This allowed
     to get 100% match in 64bitadder example.

IMP: (6/1/07, GVG) Playing with sorted list in CSA code to get deterministic
     results. To facilitate comparisons with Oyster.

IMP: (6/1/07, JKG) A 'primitive' module defined in the Verilog View cannot have
     its ports referenced by name (.name(net)), but must be referenced by order.

BUG: (6/1/07, GVG) Assertion running DRC MinArea on thick transistors (Bug# 1319)
FIX: Problem found in MinArea code changed for bug# 1240 and 1244. The active
     layers were wrongly detected.

BUG: (5/31/07, SMR) Waveform window numbers may be scaled by 100 (Bug #1315).
FIX: In TextUtils.convertToEngineeringNotation(), scale number properly.

BUG: (5/31/07, SMR) PostScript output of fully-flattened circuit shows all
     cell-centers and essential-bounds nodes, cluttering output (Bug #1316).
FIX: In PostScript.recurseCircuitLevel() skip those nodes at lower levels.

BUG: (5/30/07, DN) Some primitive ports have negative polygon.
FIX: Swap lx and hx in
     tsmc180:P-Poly-RPO-Resistor:right-rpo
     tsmc180:N-Poly-RPO-Resistor:right-rpo
     tsmc180:P-Well-RPO-Resistor:right-well-resistor
     tsmc180:N-Well-RPO-Resistor:right-well-resistor

BUG: (5/30/07, DN) Minimal-sized instance of some primitives have negative
     polygons.
FIX: Set minSize rule the same as default size for primitives:
     cmos90:X-Metal-1-Metal-2-Con
     cmos90:X-Metal-2-Metal-3-Con
     cmos90:X-Metal-3-Metal-4-Con
     cmos90:X-Metal-4-Metal-5-Con
     cmos90:X-Metal-5-Metal-6-Con
     cmos90:X-Metal-6-Metal-7-Con
     cmos90:X-Metal-7-Metal-8-Con
     cmos90:X-Metal-8-Metal-9-Con
     cmos90:X-Metal-4-Metal-7-Con
     cmos90:OD18-P-Transistor
     cmos90:OD25-P-Transistor
     cmos90:OD33-P-Transistor
     cmos90:OD18-N-Transistor
     cmos90:OD25-N-Transistor
     cmos90:OD33-N-Transistor
     cmos90:NT-OD18-N-Transistor
     cmos90:NT-OD25-N-Transistor
     cmos90:NT-OD33-N-Transistor

BUG: (5/30/07, GVG) NPE if you Cancel ExpandCellInstances->SpecifiedAmount
     (Bug#1318)
FIX: Cancel operation returns a null object. Detecting the case now.

IMP: (5/30/07, SMR) Created Job.getUserInterface().getGridAlignment() to get
     alignment in a universal way.

BUG: (5/30/07, SMR) Progress dialogs sometimes remain on the screen.
FIX: In UserInterfaceMain.startProgressDialog(), close previous one;
     In Progress.close(), cleanup better.

BUG: (5/29/07, SMR) VHDL and Verilog generation don't handle pseudo-inverters
     right.
FIX: In GenerateVHDL.java, and in Verilog.writeCellTopology(), do not save
     Connections in maps; use ArcInsts.

IMP: (5/29/07, DN) Library readers gives errors on arcs and nodes with sizes less
     than minimal.

IMP: (5/29/07, DN) Xml description for technology "tsmc90".

************************* Version 8.05m: *********************************

IMP: (5/29/07, SMR) Schematic DRC now flags nodes that have touching but
     unconnected ports.

IMP: (5/25/07, GVG) Getting 64bit adder working.
     TimingGraph.updateLoadConstraint(node) disconnected with LOAD.
     Changes in TimingReport so precision can be set (set_option precision
     <double>).  Constraints parser allows to upload all inputs/outputs if no
     ports are specified.  Using TimingAction to control sequence of calls.

BUG: (5/25/07, DN) Flatten hierarchy is too slow (Bug #1243).
IMP: CellChangeJobs.ExtractCellInstances.doIt works in a little more bulky mode.

IMP: (5/24/07, SMR) Created Cell.killNodes() to delete many nodes at once
     (improves speed of deleting significantly...46,000 deletions took 3 hours,
     now take 6 minutes).

BUG: (5/24/07, SMR) Zooming in waveform window inverts the Y axis (Bug #1314).
FIX: In Panel.mouseReleasedZoom(), compute min/max Y values properly.

IMP: (5/24/07, DN) Xml technology can have versions.

IMP: (5/23/07, GVG) Changes in VerilogReader to deal with busses. This allows
     better handling in the timing graph.  It could use more memory though so it
     has to be tested in big examples (more than 10k nodes).

BUG: (5/23/07, SMR) HSpice reader removes leading "x" from signal names.
FIX: In Simulate.removeLeadingX(), do not remove leading "x" in last part.

IMP: (5/22/07, SMR) Added "Show Redundant Pure-Layer Nodes" command to
     Edit / Cleanup Cell menu to eliminate duplication.

BUG: (5/22/07, DN) Can't import ReadableDump.
FIX: In io.input.ReadableDump and in tool.menus.FileMenu .

IMP: (5/17/07, SMR) Added progress dialog to color PostScript output.

BUG: (5/21/07, SMR) HSpice reader still has problems with StarSim output.
FIX: In HSpiceOut.readTRDCACFile(), fixed name reader.

BUG: (5/21/07, SMR) Spice output does not write NPN transistor area.
FIX: In NodeInst.getTransistorSize(), do not exclude non-FET transistors.

BUG: (5/17/07, DN) Boolean project settings not read from library (Bug #1313).
FIX: In LibraryFiles.realizeMeaningPrefs don't skip Boolean values.

IMP: (5/17/07, SMR) Visible layers and TechPalette (Bug #1241)

IMP: (5/17/07, SMR) Waveform window allows multiple measurements.  Right-click
     to clear them.  Measurements have an extra digit of precision. (Bug #1308)

BUG: (5/17/07, GVG) Cannot set "Disallow Stacked Vias" for mocmos technology (Bug
     #1312)
FIX: Added SPACINGE to the switch in XMLRules.loadDRCRules().

BUG: (5/17/07, DN) JELIB reader crashes on unknown PrimitiveNode.
FIX: In input.JELIB.instantiateCellContnts add test "np != null.

************************* Version 8.05l: *********************************

BUG: (5/17/07, SMR) PostScript output takes too long (Bug #1262).
FIX: Added progress dialog.

BUG: (5/17/07, SMR) PostScript uses different default fonts (for Ivan).
FIX: In PostScript.java, unify use of "Times" and "Times-Roman".

BUG: (5/17/07, SMR) Unknown fonts do not appear in "Properties" dialogs.
FIX: Added EDialog.ensureComboBoxFont() to add unknown fonts to the list.

BUG: (5/16/07, SMR) PostScript output doesn't handle exports on mirrored nodes.
FIX: In PostScript.recurseCircuitLevel() use Poly.rotateType() to adjust the
     style of export text.

BUG: (5/15/07, SMR) Project setting reconciliation sometimes asks about Boolean
     values that are equal.
FIX: In GenMath.objectsReallyEqual() also handle comparison between Boolean and
     integer.

BUG: (5/15/07, SMR) Measurements in the waveform window don't scale with the
     window (Bug #1309).
FIX: In Panel.java, store measurements in waveform space, not screen space.

IMP: (5/15/07, SMR) HSpice reader now ignores the "V()" wrapper around signal
     names for better cross-probing.

BUG: (5/15/07, DN) Electric hangs (and consumes vast amounts of memory) writing
     JELIB.
FIX: In ImmutableNodeInst.PortInstIterator advance "chronIndex".

BUG: (5/14/07, SMR) Improved HSpice reader (for Ian).

IMP: (5/14/07, GVG) Adding primitive/specify/table keys to Verilog Reader
     (reported by Bill).

IMP: (5/14/07, GVG) Allowing to find Verilog view based on the cell group
     (reported by Bill).

IMP: (5/10/07, GVG) Added layer PLDMY (GDS 124/0) to CMOS90 (Bug#1310)

IMP: (5/10/07, GVG) Renaming of XML DRC deck files to avoid name conflicts on
     MacOSX and Windows. As of today, they are named <techName>DRCDeck.xml.

IMP: (5/9/07, SMR) Added Technology Edit to the Tests menu.

IMP: (5/9/07, GVG) Cleaning pseudo references in XML DRC decks.

BUG: (5/8/07, DN) DRCTemplate writer writes DRCMode "M3" as "M3|M23".
FIX: Reorder DRCMode values and modify writing algorithm.

FIX: (5/7/07, DN) Temporarily rollback Xml description of "cmos90".

BUG: (5/6/07, DN) DRCTemplate writer skips some DRCRuleTypes.
FIX: Write FORBDEN and EXTENSIONGATE rules, comment CUTSURX and CUTSURY rules,
     assert on SLOTSIZE rule.

IMP: (5/5/07, DN) Xml description for technology "cmos90".

IMP: (5/5/07, DN) Rename some nodes in "cmos90" to fit Xml syntax restrictions:
        "cmos90:X Metal-1-Metal-2-Con" -> "cmos90:X-Metal-1-Metal-2-Con"
        "cmos90:X Metal-2-Metal-3-Con" -> "cmos90:X-Metal-2-Metal-3-Con"
        "cmos90:X Metal-3-Metal-4-Con" -> "cmos90:X-Metal-3-Metal-4-Con"
        "cmos90:X Metal-4-Metal-5-Con" -> "cmos90:X-Metal-4-Metal-5-Con"
        "cmos90:X Metal-5-Metal-6-Con" -> "cmos90:X-Metal-5-Metal-6-Con"
        "cmos90:X Metal-6-Metal-7-Con" -> "cmos90:X-Metal-6-Metal-7-Con"
        "cmos90:X Metal-7-Metal-8-Con" -> "cmos90:X-Metal-7-Metal-7-Con"
        "cmos90:X Metal-8-Metal-9-Con" -> "cmos90:X-Metal-8-Metal-8-Con"
        "cmos90:X Metal-4-Metal-7-Con" -> "cmos90:X-Metal-4-Metal-7-Con"

IMP: (5/4/07, DN) Pseudo-layers are hidden:
     1) They are not mentioned in technology Xml files;
     2) Tecnology.getLayers() doesn't contain them;
     3) Technology.NodeLayer.getLayer() always returns non-pseudo layers;
     4) Poly.getLayer() always returns non pseudo-lauer;
    How to access pseudo-layers:
     1) They are implicitely created for nodes with <shrinkArcs/> flags.
     2) masterLayer.getPseudoLayer();
     3) Technology.NodeLayer.getLayerOrPseudoLayer();
     4) Poly.getLayerOrPseudoLayer();
    How to test for pseudo-layer:
     3) Technology.NodeLayer.isPseudoLayer();
     4) Poly.isPseudoLayer();

************************* Version 8.05k: *********************************

IMP: (5/4/07, SMR) Improved EDIF reading of unusual schematics.

IMP: (5/4/07, DN) Xml description for technologies: bicmos, bipolar, cmos,
     mocmosold, mocmossub, nmos.

IMP: (5/3/07, GVG) Assigning sink-cap parasitics to missing driver nodes. Added
     set_input_transition, set_clock_transition and code to deal with
     set_driving_cell.

IMP: (5/3/07, SMR) No longer shows blue "prehighlight" when in area-selection
     mode.

BUG: (5/3/07, SMR) Interactively sizing a rotated polygonally-defined node fails.
FIX: In SizeListener.ScaleNode.doIt(), calculate new points correctly.

IMP: (5/3/07, SMR) Area delete (when area-selection is deleted) now splits
     polygonally-defined nodes.

IMP: (5/3/07, SMR) Auto-stitcher now creates only as many arcs as are necessary
     to connect many nodes in a tight area.

BUG: (5/3/07, DN) Some layers in cmos90 technology have patterns wider than 16
     bits.
FIX: Mask the patterns by 0xFFFF.

BUG: (5/1/07, GVG) Exception while reading noname library (Bug #1306)
FIX: Prevent the exception when the input library is named noname.

BUG: (5/1/07, SMR) "Delete Old Unused Versions" works only in the current
     library.
FIX: Now looks everywhere and prompts user to delete from non-current libraries.

BUG: (4/30/07, GVG) Transistors in MoCMOS-Mosis too tiny in the palette (Bug
     #1304)
FIX: npnTransistorNode.setSkipSizeInPalette();

IMP: (4/30/07, GVG) Removing Highlight from CVS (old version of Highlight2)

IMP: (4/30/07, GVG) New layers in CMOS90: DEXCL-RDL, SDI, ESD1DMY, ESD2DMY, ESD3,
     DIODMY (Bug #1305)

BUG: (4/30/07, SMR) Waveform window gives error if cross-probing to wrong cell
     (Bug #1303).
FIX: In WaveformWindow.crossProbeWaveformToEditWindow(), do not call
     hl.addNetwork() if the cell does not match.

IMP: (4/26/07, SMR) Added "Analog" checkbox to Technology Project Settings.

IMP: (4/26,07, DN) Parameter "Analog" was added to "mocmos" technology, which is
     off by default. If it is enabled, then a layer "mocmos:P-Base" and nodes
     "mocmos:NPN-Transistor" and "mocmos:P-Base-Node" appear. A new "when" "AN"
     was added to DRC template. A few rules are added to "Mosis180.xml".

IMP: (4/25/07, DN) TechnologyTest added to regressions.

BUG: (4/24/07, DN) Some pure layer node have strange connections.
FIX: Remove connections:
     mocmos:Thick-Active-Node  Polysilicon-1 arc
     tsmc180:Thick-Active-Node Polysilicon-1 arc
     tsmc180:BJTDUMMY-Node     Polysilicon-1 arc
     tsmc180:DIODUMMY-Node     Polysilicon-1 arc
     tsmc180:RWDUMMY-Node      Polysilicon-1 arc
     tsmc180:ESD2DMY-Node      Polysilicon-1 arc
     tsmc180:sdiDMY-Node       Polysilicon-1 arc

BUG: (4/24/07, DN) Some pure layer nodes have non-zero port indent.
FIX: Set zero port indent for pure layer nodes:
     rcmos:Metal-1-Node
     rcmos:Metal-2-Node
     rcmos:Polysilicon-Node
     rcmos:Active-Node
     rcmos:D-Active-Node
     rcmos:Select-Node
     rcmos:Cut-Node
     rcmos:Poly-Cut-Node
     rcmos:Active-Cut-Node
     rcmos:Via-Node
     rcmos:Well-Node
     rcmos:Passivation-Node
     generic:DRC-Node
     generic:AFG-Node

BUG: (4/24/07, DN) CIF writer writes pseudo-layer pins.
FIX: In output.CIF.writeLayer() return false on pseudo-layers.

BUG: (4/23/07, DN) Spice writer tries get capacitance of pseudo-layers.
FIX: In output.Spice insert checks for pseudo-layers.

BUG: (4/20/07, DN) Sometimes properties of pseudo-layer don't match master layer.
     For example: "tsmc180:Pseudo-NT-N" has function "DIFFN", though
     tsmc180:NT-N" has function "IMPLANTN"; "cmos90:Pseudo-OD18",
     "cmos90:Pseudo-OD25", "cmos90-Pseudo-OD33" haven't extra function "THICK"
     while "cmos90:OD18", "cmos90:OD25", "cmos90:OD33" have it.
FIX: Add method Layer.makePseudo() and use it everywhere.

BUG: (4/20/07, DN) There are pseudo-layers without master layer, though they are
     not used.
FIX: Don't set "PSEDO" extra function to layers:
     nmos:Transistor, cmos:Transistor, bicmos:Transistro, mocmosold:Transistor,
     mocmossub:Transistor .

BUG: (4/19/07, GVG) CsaClient.computeTestVar returns wrong
FIX: signature change CsaOpVariable.

IMP: (4/19/07, GVG) Latest changes to get running required in both early/late
     graphs.

BUG: (4/19/07, SMR) Signals in waveform window change color when dragged to a new
     panel (Bug #1301).
FIX: In WaveformWindow.WaveFormDropTarget.drop(), pass the new color to
     WaveSignal.addSignalToPanel().

IMP: (4/18/07, GVG) Preparing code to get rid of Highlight and leave only
     Highlight2.

BUG: (4/18/07, DN) Infinite loop of exception in HighlightText.describe (Bug
     #1300).
FIX: Make "HighlightText.eobj" final and don't modify it at
     "HighlightText.getGeometric".

IMP: (4/17/07, DN) Numbers in MoCMOS:Metal-5-Metal-6-Con primitive are updated to
     described default SCMOS 6-metal sizes.

IMP: (4/17/07, DN) NodeLayer has MULTICUTBOX representation. Its two tech points
     define a rectangular region where cut centers are located. The NodeLayer
     also have cutSizeX, cutSizeY, cutSep1D, cutSep2D special values. The zero-
     sized region can contain only one cut. Large regions can have as many cuts
     as allowed by special values. PrimitiveNode can have a few NodeLayers with
     MULTICUTBOX representation, this resistor primitives are described in
     regular way, and we don't have to override "Technology.getShapeOfNode"
     methods to handle their shapes.

BUG: (4/17/07, DN) ELIB reader crashes.
FIX: In ELIB.readNodeProto restore "ignore the cell bounding box" code.

BUG: (4/16/07, GVG) contact spacing incorrect for large contacts in tsmc180
     (Bug#1298)
FIX: This bug was most probably introduced around 8.04x. From now, multi-cut
     spacings in poly contacts (nxm) is dictated by "B1 page 39".

IMP: (4/13/07, GVG) Threading late/early modes in Oyster. More decent results for
     arrivals.

BUG: (4/11/07, DN) Re-exporting a large number of ports takes a long time (Bug
     #1296).
FIX: In ExportChanges.reExportPorts remove unused "acquireUserNetlist".

BUG: (4/10/07, DN) DELIB reader gets invalid sizes of primitives when versions of
     header file and cell file are different.
FIX: Add field revision to JELIB.CellContents and use it in realizeCellContent
     method.

IMP: (4/9/07, GVG) Added warning message in Technology.getSelectedFoundry in case
     the PrefFoundry is not available and the first one defined in the list is
     used. This is mainly to explain results in DRC primitives regression.

BUG: (4/6/07, GVG) Wrong numbers of expected results in
     DRCToolTest.primitiveTechTest due to change in TSMC180 tech.
FIX: Expected numbers fixed.

BUG: (4/6/07, GVG) Error in CSA GateTimModelWrap constructor.
FIX: Set correct condition for second switch statement.

BUG: (4/6/07, GVG) Precision issue in awe.awe_LUFactor().
FIX: Added extra isZero condition. It might need to be used in other part of the
     code. Other issue related to wrong pointer increment done in Rice.

IMP: (4/5/07, GVG) Changes in build.xml to automatically calculate the version in
     the MacOS package (plist file).

BUG: (4/5/07, DN) Some pure layer nodes have no POLYGONAL special type.
FIX: Set POLYGONAL special type to "generic:DRC-Node" and "generic:AFG-Node".

BUG: (4/5/07. DN) Some pure layer nodes have non-zero port indent.
FIX: Set zero port indent for pure layer nodes:
     tsmc180:NT-N-Node
     cmos90:VTH-N-Node
     cmos90:VTH-P-Node
     cmos90:VTL-N-Node
     cmos90:VTL-P-Node
     cmos90:OD18-Node
     cmos90:OD25-Node
     cmos90:OD33-Node
     cmos90:NT-N-Node
     cmos90:Metal-1-Node
     cmos90:Metal-2-Node
     cmos90:Metal-3-Node
     cmos90:Metal-4-Node
     cmos90:Metal-5-Node
     cmos90:Metal-6-Node
     cmos90:Metal-7-Node
     cmos90:Metal-8-Node
     cmos90:Metal-9-Node
     cmos90:Polysilicon-Node
     cmos90:N-Active-Node
     cmos90:P-Active-Node
     cmos90:N-Well-Node
     cmos90:P-Well-Node
     cmos90:Transistor-Poly-Node

BUG: (4/5/07, SMR) Modeless dialogs are not brought to the front when created
     (Bug #949).
FIX: Added "toFront()" call after creating modeless dialogs.

BUG: (4/5/07, SMR) Keyboard input lost when Text Properties dialog appears (Bug
     #945).
FIX: In GetInfoText.loadTextInfo() do not call "theText.setEnabled(false)"

IMP: (4/5/07, DN) PortCharacteristic class converted to enum.

IMP: (4/5/07, DN) Removed isHoldsOutline from "generic:Universal-Pin" node.

IMP: (4/5/07, SMR) Removed foundry selection from "mocmos" section of Technology
     Project Settings.

IMP: (4/5/07, DN) [NP]-Transistor-Scalable are excluded from TSMC180 technology.

IMP: (4/5/07, DN) Second polysilicon (if available) is shown in "mocmos" and
     "tsmc180" tech palettes.

IMP: (4/5/07, DN) Technology name is not uppercased in a name of
     "xxxSecondPolysilicon" preferences.

IMP: (4/4/07, DN) MoCMOS technology doesn't have TSMC foundry anymore.

BUG: (4/4/07, SMR) Dummy NodeInsts are always at the origin.
FIX: In NodeInst.makeDummyInstance(), use the "center" parameter.

BUG: (4/03/07, DN) Nodes "bicmos:Ndiff_Node" and "bicmos:Ndiff_Node" are marked
     as pure layer nodes, but the have more than one NodeLayer.
FIX: Set their function to PrimitiveNode.Function.UNKNOWN .

BUG: (4/03/07, DN) Some layout layers have not pure layer nodes.
FIX: Create pure layer nodes according with the following table:
     tsmc180:sdiDMY           tsmc180:sdiDMY-Node
     mocmosold:N-Select       mocmosold:N-Select-Node
     mocmosold:N-Well         mocmosold:N-Well-Node
     mocmosold:S-Active-Well  mocmosold:S-Active-Well-Node
     rcmos:D-Active           rcmos:D-Active-Node

BUG: (4/03/07, DN) "tsmc180:NT-N" layer hasn't pure layer node.
FIX: Use "NT-N-Node" as pure layer node for this layer.

BUG: (4/03/07, DN) "mocmossub:Pad-Frame" layer has "Passivation-Node" as its pure
     layer node.
FIX: Change pure layer node of this layer to "Pad-Frame-Node".

BUG: (4/03/07, DN) "cmos90:VTL-N-Node" and "cmos90:VTL-P-Node" have polygons of
     layer "VTH-N" and "VTH-P".
FIX: Set layers to "VTL-N" and "VTL-P".

BUG: (4/03/07, DN) Layer with name "cmos90:pseudo-RDL" layer has not PSEUDO extra
     function.
FIX: Set its function by "pseudoRdlLayer.setFunction(Layer.Function.METAL10,
     Layer.Function.PSEUDO);".

IMP: (4/02/07, DN) In MoCMOSOld, MoCMOSSub, nMOS use double constants instead of
     floats for foundry values of parasistics.

************************* Version 8.05j: *********************************

IMP: (3/29/07, SMR) When variable names are similar, examples are given (Bug
     #1211).

BUG: (3/29/07, SMR) Wiring schematics at 30 or 45 degrees doesn't work (Bug
     #1251)
FIX: Improved SimpleWirer.planRoute() to handle direct arcs where appropriate.

BUG: (3/29/07, SMR) Wiring from unrouted arc no longer moves the unrouted arc
     (Bug #1290).
FIX: In Router.createRouteNoJob(), fixed computation of other end of arc.

BUG: (3/29/07, SMR) Text Properties dialog has inconsistent focus rules (Bug
     #945).
FIX: In GetInfoText, do not request focus for text area until dialog gets focus.

BUG: (3/29/07, DN) Reading ELIB libraries is slow in NFS because
     "TextUtils.getFileNameWithoutExtension(URL fileURL);" is called on each
     external NodeInst, and this methods requests NFS to resolve absolute path
     (200 msec from St.Petersburg).
FIX: Use new method "TextUtils.getFileNameWithoutExtension(Strign filePath);"

IMP: (3/28/07, GVG) Adding Poly-Active spacing rule to ST/TSMC 90nm DRC decks
     (Bug #1287)

IMP: (3/26/07, DN) ELIB/ReadableDump writers don't modify scale settings of
     irrelevant technologies.

BUG: (3/23/07, DN) When libraries are specified in a command-line, project
     settings may be read from directory other than libraries.
FIX: In FileMenu use "TextUtils.getFilePath(fileURL)" instead of
     "User.getWorkingDirectory()".

BUG: (3/23/07, DN) Reading Spice, SiliconCompiler, PLA, PAD libraries changes all
     project settings.
FIX: In LibraryReader.readLibrary don't change project settings.

IMP: (3/23/07, DN) Project settings are reset before each AbstractTest and
     restored after it.

IMP: (3/22/07, DN) ProjSettings.exportSettings writes all Settings (even with
     default values).

IMP: (3/21/07, SMR) Default state of "icon technology" is now schematic,
     not universal (Bug #1295).

IMP: (3/21/07, SMR) Improved sea-of-gates router.

IMP: (3/21/07, SMR) Restored CRC checksum reporting to CIF export.

IMP: (3/21/07, SMR, from Bob Reese) Improved DEF import.

IMP: (3/17/07, DN) "importPrefs" command doesn't change project settings.

BUG: (3/17/07, DN) GDS layers settings are not initialized to factory values.
FIX: In Technology.newFoundry() method pass "gdsLayers" to Foundry constructor.

IMP: (3/16/07, GVG) Patching XMLRules so they can still be loaded even if project
     settings are inconsistent.  This is related to Bug#1294.

IMP: (3/16/07, DN) Added project setting "tsmc180.UseSecondPolysilicon".

IMP: (3/16/07, SMR) Added "tsmc180" technology project settings.

IMP: (3/16/07, DN) Actual changing of project settings is performed in Change
     Jobs. Project setting dialog submit jobs to change project settings.

BUG: (3/16/07, DN) Database JUnit regressions loads AWT classes.
FIX: Move ImageIcon stuff from EGraphics.Outline to ColorPatternPanel.

BUG: (3/16/07, DN) Database JUnit regressions crash in Setting initialization.
FIX: Add "EDatabase.theDatabase.lowLevelBeginChanging(null);" to JUnit "setUp()"
     methods.

IMP: (3/15/07, DN) Technology.getTSMC180Technology() and TechType.TSMC180 link to
     TSMC180 technology instead of TSMC foundry of MOCMOS technology.

BUG: (3/15/07, DN) Setting don't change when new value is factory value.
FIX: In Setting.set compare new value with getValue() instead of factoryObj.

BUG: (3/15/07, DN) Startup fails in MDI mode.
FIX: In TopLevel move MDI initialization from OSInitialize to InitializeWindows,
     so that it is executed after technology initialization.

BUG: (3/15/07, DN) ClassCastException in OptionReconcile
FIX: Consider both Boolean and Integer objects in OptionReconcile constructor.

BUG: (3/15/07, DN) Broken numberofmetals setting in MoCMOS technology.
FIX: In TSMC180.getNumMetal distinguish what technology isthis.

IMP: (3/15/07, DN) Added project setting "tsmc180.NumMetalLayers".

BUG: (3/15/07, DN) Factory values of Technology.Foundry setting should be one of
     supported foundries.
FIX: In BiCMOS, Bipolar, MoCMOSOld, MoCMOSSub define factory value of Foundry as
     MOSIS.

BUG: (3/15/07, DN) Crash entering GDS tab in project settings dialog.
FIX: In Foundry.finish use "gdsLayerSettings[layerIndex] != null" instead of
     "gdsLayerSettings != null".

IMP: (3/14/07, DN) Reader of "projsettings.xml" resets project Settings value to
     factory default, it this Setting  was not encountered in ".xml" file.

BUG: (3/13/07, GVG) Min area issues reported by Misook (Bug#1244, 1240)
FIX: Special treatment of active in transistors so they will be added to left and
     right networks. DRC regression has new minArea test.

************************* Version 8.05i: *********************************

BUG: (3/12/07, DN) Electric doesn't start when User.getDefaultTechnology is
     artwork.
FIX: In Technology.initAllTechnology set "curLayoutTech = MoCMOS.tech".

BUG: (3/12/07, GVG) DRC minArea and active arcs between transistors (Bug #1288)
FIX: Not to stop searching of the valid bucket after the first instance is found
     in QuickAreaEnumerator.visitNodeInst

BUG: (3/12/07, DN) Renaming libraries causes icons to become unexpanded (Bug
     #1289).
FIX: In Cell.update update "expandedNodes".

IMP: (3/7/07, SMR) Added new Display preference to control the MDI/SDI style
     (Bug #1277).

IMP: (3/7/07, SMR) Sea of gates router now handles vias properly.

IMP: (3/7/07, SMR) Improved "Estimate Delays" calculations.

IMP: (3/6/07, SMR) Sea of gates router has parameters in "Routing preferences".

BUG: (3/05/07, DN) "Easy shape" bit of ImmutableArcInst can become invalid after
     foundry change.
FIX: Remove check "gridFullWidth <= protoType.getMaxLayerGridOffset()" from
     definition of "Easy shape" bit, to "AbstractShapeBuilder.genShapeEasy" and
     "ImmutableArcInst.genBoundsEassy".

IMP: (2/28/07, GVG) Poly ports in CMOS90 transistors are zero size for the
     default sizes. Requested by JonG.

BUG: (2/28/07, SMR) New cell attributes all appear at (0,0) (Bug #1282).
FIX: Created Cell.newVarOffset() and use it in Attributes.CreateAttribute.doIt()
     and also in ToolMenu.MakeTemplate.doIt().

************************* Version 8.05h: *********************************

IMP: (2/27/07, SMR) Sea-of-gates router runs faster.

IMP: (2/26/07, SMR) In the "Tool / Logical Effort" menu, renamed
     "Print Info for Selected Node" to "List Info for Selected Node" to be
     consistent (print means to the printer).

BUG: (2/26/07, SMR) Reloading a text cell marks the library "dirty" (bug #1280).
FIX: In TextWindow.java, when reloading, prevent change detection.

IMP: (2/23/07, GVG) FillGenerator for CMOS90 enabled. Only working
     the tiles generator without caps. The rest of the code not ported yet.

BUG: (2/23/07, GVG) Fill generator crashing in CapLayer (bug#1278)
FIX: Correct detection of templates job in FillCellGenJob

IMP: (2/21/07, GVG) LayerCoverageTool test repaired after changes in code to get
     electrical layers during NetworkCoverage calculation. ExtractionTest removed
     as it is a duplicate of LayerCoverageTool.

IMP: (2/21/07, SMR) Added command "Tool / Logical Effort / Estimate Delays"
     to do a simple Logical Effort calculation.

BUG: (2/21/07, SMR) Java 1.6 prints error when initializing the explorer tree
     (Bug #1276).
FIX: In ExplorerTree.setUI(), ignore the ClassNotFoundException.

************************* Version 8.05g: *********************************

IMP: CMOS90 Dummy CrossM5M8Node disabled in CMOS90 tech.

IMP: (2/17/07, GVG) New RDL-related arc, pin, contact in CMOS90/TSMC.
     including some DRC rules. Not available for ST.

BUG: (2/17/07, GVG) GateGenerationTest not working from Test menu due bad
     Renaming of classes after refactorization.
FIX: Class name fixed.

IMP: (2/17/07, GVG) Removing scale factor to compose MoCMOS tech name.

BUG: (2/16/07, GVG) Test -> GenerationGateTest -> * were not working since last
     refactorization
FIX: Calling the correct constructor, GenerationGateTest instead of
     GenerationTest

BUG: (2/15/07, SMR, from Bob Reese) Prefuse does not compile under Java 1.6
FIX: In ExpandedFilter.getAllDepths(), added "false" as second parameter to
     m_bfs_whole.next() call.

BUG: (2/15/07, SMR) Pad frame generator doesn't handle schematic cores with bus
     ports.
FIX: In PadGenerator.createPadFrame() handle export wiring better.

BUG: (2/15/07, SMR, from Bob Reese) Crash during save after DRC on Java 1.6.
FIX: In output.ELIB.putOutVar(), the "Long" case should cast to "Long", not
     "Integer".

IMP: (2/14/07, SMR) Converting to "alternate layout view" improved to handle
     conversion from mosis/tsmc to tsmc technology.  Now prompts for new library.

BUG: (2/14/07, SMR) Simulating cells with reserved VHDL names (i.e. "nand")
     crashes.
FIX: In GenerateVHDL.addString(), append "_" to end instead of start when a
     keyword.

BUG: (2/14/07, SMR) VHDL cannot be generated from layout.
FIX: In ToolMenu.makeVHDL(), ignore schematics restriction.

BUG: (2/14/07, SMR) Implant coverage tool deletes lower-level implants.
FIX: In LayerCoverageTool.LayerVisitor.visitNodeInst(), only add implant
     regions to delete list when in the top-level.

IMP: (2/14/07, DN) Technology "tsmc90" was renamed to "cmos90" with same
     foundries (TSMS and ST). JELIB reader treats "tsmc90" as alias of "cmos90".
     It also patches names of meaning preferences. However, I didn't change
     reader of ProjectSettings. Also, a technology "tsmc180" was added with a
     single foundry (TSMC). "mocmos" technology still contains both foundries
     (MOSIS and TSMC) for some time period necessary to migrate projects from
     "mocmos/tsmc" to "tsmc180/tsmc".

IMP: (2/13/07, GVG) Detecting if user has write permission for temporary
    file in Edit Text Cell Externally otherwise, it doesn't work. Bring up a
    message in case of error.

BUG: (2/13/07, GVG) Edit Text Cell Externally not working on MacOSX
FIX: Detecting correct path for MacOSX application.

************************* Version 8.05f: *********************************

BUG: (2/12/07, SMR) Clicking and dragging a cell from the explorer to the
     edit window fails if the cell is not already selected (Bug #1276).
FIX: This is a known bug in Java 1.5.  The workaround is to override the
     method setUI() in ExplorerTree.java.

IMP: (2/12/07, GVG) Adding RDL layers as pure layer nodes.

BUG: (2/12/07, SMR) Verilog netlists MOS transistors incorrectly
     (writes 4 parameters instead of 3).
FIX: In Verilog.writeCellTopology(), prevent both gates of the
     transitor from being written.

IMP: (2/12/07, SMR) Added the command "Edit / Text / Edit Text Cell
     Externally..." to edit the current textual cell in an external editor.
     The editor is chosen in the Display / Text Preferences.

BUG: (2/8/07, SMR) When switching layers with a digit key, new contact
     is not highlighted (Bug #1274).
FIX: In InteractiveRouter.MakeVerticalRouteJob constructor, pass the "verbose"
     argument to the super-class constructor.

IMP: (2/7/07, SMR) Schematic frames now print properly.

BUG: (2/7/07, SMR) Cannot delete old versions of schematics because the syste
     thinks their icons are in use.
FIX: In Cell.isInUse(), consider icon usage only for most recent version.

IMP: (2/7/07, SMR) Text windows now print.

************************* Version 8.05e: *********************************

IMP: (2/6/07, SMR) Exporting from an arrayed node now creates an arrayed export.

BUG: (1/31/07, DN) Get rid of those "has connections on port
     'generic:Port[].center" messages (Bug #829).
FIX: Remove messages about connections on Artwork.tech.pinNode from
     DRC.checkNetworks.

IMP: (2/5/07, RK) Add simple layout generation example for Ivan.

BUG: (2/5/07, SMR) Implant coverage generation leaves notch errors (Bug #1272).
FIX: In LayerCoverageTool.LayerCoverageData.doIt(), merge close implants.

BUG: (2/5/07, GVG) Schematic DRC should not complain about artwork elements
     (Bug#1273)
FIX: Artwork arcs are not checked in Schematic.schematicDoCheck()

IMP: (2/2/07, DN) Using BaseSizes of primitives in JELIB.

BUG: (2/2/07, DN) Stack overflow in NCC GUI on JDK 1.6.
FIX: Workaround for bug in JDK - use separate class for CellTreeRenderer.

IMP: (2/1/07, SMR) Waveform window now lets you drag the divider between panels
     to individually change the size of any panel (Bug #951).

IMP: (1/31/07, SMR) Improvements to LEF output and DEF input from Bob Reese.
     Now have "File / Import / DEF (Design Exchange Format) to current cell..."

BUG: (1/31/07, DN) Get rid of those "has connections on port
     'generic:Port[].center" messages (Bug #829).
FIX: They are transferred to DRC.

BUG: (1/27/07, DN) Some regression tests failed on JDK 1.6 because of HashSet
     order.
FIX: In PAL, TEGAS and LENetlister1 use TreeSet instead of HashSet. Regression
     results updated.

BUG: (1/25/07, SMR) Outline information is no longer specified relative to node.
     Cleaned up EDIF, CIF, DXF, GDS, Sue input.

************************* Version 8.05d: *********************************

IMP: (1/24/07, SMR) First working version of Sea-Of-Gates router.

BUG: (1/23/07, SMR) Text cell I/O should give proper warnings (Bug #1271).
FIX: In TextWindow.java, added error messages and valid file checks.

IMP: (1/19/07, GVG) Import of Verilog files in FileMenu

BUG: (1/19/07, DN) Cell.isInUse() returns false for schematics cells regardless
     if icon is an instance elsewhere (Bug #511).
FIX: Check icon cells also in Cell.isInUse().

IMP: (1/17/07, SMR) Initial code for Sea-of-Gates router.

IMP: (1/17/07, SMR) Generalized RTNode to handle a RTBounds object.

BUG: (1/8/07, SMR) Explorer tree forgets the expanded state of cell groups (Bug
     #1246).
FIX: Added an "equals" method to CellGroup so that it could compare these
     temporary objects by name.

IMP: (1/5/07, SMR) Improved maze router and regressions.

IMP: (1/5/07, SMR) Improved "copy topology" routing command to handle busses.
     Added two more regressions.

IMP: (1/3/07, SMR) Compaction tests (from the test menu) work now.

BUG: (1/3/07, SMR) Cannot drag multiple signals from explorer tree to waveform
     window.
FIX: In ExplorerTree.java, redid implementation of drag-and-drop from the tree.
     This has the side-effect of disabling the right-click-drag of cells from one
     library to another (which used to cause the entire tree to be copied, see
     Bug #630).

BUG: (12/11/06, DN) Null exception while accessing artwork in palette components
     (Bug #1270)
FIX: Detecting if parent is null before calling
     Constraints.getCurrent().modifyNodeInst(this, oldD) in
     NodeInst.modifyInstance()

IMP: (12/6/06, DN) Removed invariant "LibId/CellId/ExportId" values of variables
     must be in the Snapshot. Such variables are almost not used, but the
     maintenance of this invariant took time.

IMP: (12/5/06, RK) Move information from Tech.java into TechTypeMoCMOS,
     TechTypeCMOS90, and TechTypeTSMC180.

IMP: (12/5/06, GVG) Changes to get Generation test working after recent
     modifications. Some changes to get Routing tests to run from regression.
     Small changes in VerilogReader.

IMP: (12/5/06, SMR) Made "Routing" test menu work.

BUG: (12/5/06, SMR) Maze routing doesn't work.
FIX: In Routing.findNetEnds(), compare Connections more carefully.

BUG: (12/5/06, SMR) Array command crashes (Bug #1268).
FIX: In Array.ArrayStuff.doIt(), assign "cell" correctly.

BUG: (12/4/06, SMR) Closing a library causes a crash (Bug #1267).
FIX: In Cell.getName(), test for null "groupName" field.

BUG: (12/4/06, GVG) PWLSignal.java: missing initalization of vPoints.
     Gate.java: Wrong location of the Point constructor in computePWLOutput.
     New timing conditions in DTimViewAnData Liberty parser.
     gate_inv_16x_25ff_hiR passes.

BUG: (12/1/06, DN) CellBackup.cellUsages invariant is not valid after rename (Bug
     #1235).
FIX: In "CellBackup.with" check if "this.d.cellId != d.cellId".

BUG: (12/1/06, DN) Exception checking database invariants (Bug #1266).
FIX: In ArcInst.check snap polygon bounds to database grid.

BUG: (12/1/06, GVG) Drag-n-dropping a cell group onto a cell produces a NPE (Bug
     #1265).
FIX: Exception avoided. Improvements: if you drag a group on a layout cell, it
     will create an instance of the first layout found. If you drag it on a
     schematic cell, it will add the first icon found.

************************* Version 8.05c: *********************************

IMP: (12/1/06, GVG) completePWLResponse had swapped signature fields.
     net_dir_non_const_transfunction passes now.

BUG: (11/30/06, SMR) When "Node Moves With Text" is selected, deleting an
     export also deletes the node (Bug #1255).
FIX: In CircuitChanges.deleteSelected(), temporarily disable the moves-with-text
     state when deleting.

IMP: (11/29/06, RK) Change Tech.java so its interface consists of methods rather
     than data members

BUG: (11/29/06, SMR) New cell creation crashes if there is no library (Bug
     #1264).
FIX: In NewCell.ok() check for valid library.

IMP: (11/29/06, SMR) Bus parameters allowed on nodes; may use simple arithmetic
     operators.

BUG: (11/29/06, DN) Assertion changing arc width (Bug #1261).
FIX: In ImmutableArcInst.withGridSize update "easyShape" flag properly.

IMP: (11/28/06, GVG) CSA regresssion run_gate_instNetList working (very simple).
     Getting rid of "unknown signal" in VerilogReader for vss.

IMP: (11/28/06, SMR) When replacing pure-layer nodes, do not adjust sizes.

BUG: (11/28/06, SMR) Canceling a dialog that asks for a text field crashes.
FIX: In UserInterfaceMain.askForInput(), check result for null.

IMP: (11/28/06, GVG) CSA regression gate_basic_load half working.

IMP: (11/27/06, GVG) Well contacts in TSMC180 can connect to well arcs.

IMP: (11/22/06, GVG) First version of Lib/Verilog readers working with CSA
     regression det_msff_12x_testvalue.

BUG: (11/21/06, SMR) Electrical layers for TSMC180 transistors is wrong.
FIX: In MoCMOS.resizeNodes(), fix poly overhang calculation.

BUG: (11/21/06, SMR) Auto-router will not connect touching primitives that
     do not line-up.
FIX: In AutoStitch.comparePoly(), test for line-up only if one node is a cell.

IMP: (11/21/06, SMR) Added new functions to polygon merge.

BUG: (11/21/06, SMR) Wiring fails some L-shaped situations.
FIX: In SimpleWirer.planRoute(), treat ArcProto.getAngleIncrement() as degrees,
     not tenths-of-a-degree.

IMP: (11/20/06, SMR) Extractor now has options to unify Active and control
     minimum polygon size.

BUG: (11/16/06, SMR) Slow startup.
FIX: In Technology.initAllTechnologies(), batch Preference changes.

BUG: (11/15/06, GVG) Extension not added to hspice netlists (bug #1259)
FIX: Mistake was introduced while cleaning the code.

BUG: (11/14/06, DN) Check library throws assertion on directed and negated arcs.
FIX: In ArcInst.check use "getShape" instead of "makeGridPoly".

BUG: (11/14/06, DN) Arc name "a," was considered valid.
FIX: In Name.checkNameThrow more thorough test for empty subnames.

IMP: (11/14/06, GVG) Well arcs added in TSMC180.

IMP: (11/14/06, GVG) Adding corner butted well contacts in TSMC180.

IMP: (11/14/06, DN) All library writers (ELIB, ReadableDump) work on immutable
     objects only. ImmutbaleArcInst.gridLength removed. Null elements in
     Variables are forbidden.

BUG: (11/10/06, GVG) DRC exclusion regions not working hierarchically (bug#1257)
FIX: Check exclusion at the layer level instead of geometry level or report
     level. Note: it could slow down the code.

IMP: (11/8/06, GVG) Adding corner butted active contacts in TSMC180

TEC: (11/8/06, SMR) Auto-stitching serpentine transistors fails.
FIX: The problem is that the MOCMOS serpentine transistors are incorrectly
     specified. In "MoCMOS.java", fixed the loading of "transistorPolyLLayers",
     "transistorPolyRLayers", "transistorActiveTLayers", and
     "transistorActiveBLayers". In Technology.SerpentineTrans, added the
     appropriate list of NodeLayers to the constructor so that Electrical layers
     can be specified.  Also, in MoCMOS.resizeNodes(), resize the serpentine
     factors.

IMP: (11/8/06, SMR) Moved test menus (make fake circuitry, make fake waveform
     window) from "Help" menu to "Steve" menu.

BUG: (11/7/06, DN) tool.generator.LayoutLib.widestWireWidth doesn't return
     DEF_WIDTH when no wire is attached to port.
FIX: Test if maxWid < 0.

BUG: (11/7/06, DN) Some arcs has improper functions.
FIX: BiCMOS.Active_ARC (METAL5->DIFF), RCMOS.metal2_arc (METAL1->METAL2),
     RCMOS.polysilicon_arc (METAL1->POLY1).

IMP: (11/7/06, DN) Technology.ArcLayer is immutable. Some field of ArcProto are
     final.

IMP: (11/7/06, SMR) Mimic router now has option to create arcs even if
     they already exist topologically.

IMP: (11/7/06, SMR) Node extraction no longer has option to force exact cut
     placement (it does it always).

IMP: (11/6/06, GVG) Added DSPF and LIB as FileTypes

BUG: (11/2/06, GVG) Scalable transistors not available under Mosis foundry
FIX: Wrong setup of setNotUsed

IMP: (11/2/06, GVG) Butted active/well contacts (only top edge).

BUG: (11/2/06, SMR) HSpice output reader fails with multiple conditions (Bug
     #1254).
FIX: In HSpiceOut.readTRDCACFile(), read two-value sweep header when more
     than 1 condition.

BUG: (11/2/06, GVG) Crash in TechPalette:mouseReleased if obj is null (no
     Bugzilla)
FIX: Case detected

BUG: (11/2/06, SMR) MutableBoolean used everywhere but located in SunRouter.
FIX: Refactored to GenMath.

IMP: (11/2/06, DN) getShapOf* methods don't generate text Polys,
     so they don't depend on "EditWindow" and "VarContext".

BUG: (11/1/06, DN) Stack overflow in NetworkTool.
FIX: Implement NetCell.addToDrawn without recursion.

IMP: (10/31/06, DN) New methods in Geometric class was extended by:
     "Iterator<Poly> getShape(Poly.Builder polyBuilder)"
     "Rectangle2D getLambdaBounds(Rectangle2D r)"
     "Rectangle2D getGridBounds(Rectangle2D r)"

IMP: (10/30/06, DN) Points in ArcInst.getPoly() are aligned to GRID.
     Four variants of arc.getWidth:
       getLambdaFullWidth  - full width in lambda units (same as old getWidth()
       getGridFullWidth - full width in grid units
       getLambdaBaseWidth - base width (GUI selection width) in lambda units.
                            Usually same as full width except for diffusion arcs.
       getGridBaseWidth - base width in grid units.
     Results of GeometryOnNetwork test were updated.

************************* Version 8.05b: *********************************

IMP: (10/30/06, GVG) DIODUMMY layer (gds=56) added into TSMC180.

BUG: (10/28/06, DN) RTree is not fresh after undo (Bug #1252).
FIX: In Cell.update and Cell.updateSubCells add call of "topology.refreshRTree".

BUG: (10/27/06, DN) Constraint system having problems with angled arcs (Bug
     #1253).
FIX: In "LayoutCell.nonOrthogFixAng" search "bestAI" among arcs connected to the
     same port as other end of "ai".

IMP: (10/25/06, DN) GridWidth of ImmutableArcInst is always even.

BUG: (10/25/06, DN) RTree is not fresh after creating new arc (Bug #1252).
FIX: Call unfreshRTree after arc changes. Rollback lazy RTree creation for now.

IMP: (10/25/06, RK) Non-functional layout generator project settings tab.

IMP: (10/25/06, DN) Layer.Function is enum. Layer.Function.Set is implemented and
     used in Technology.getShapeOfNodes/Arcs methods.

IMP: (10/24/06, DN) Extended API of immutable classes EPoint, ERectangle,
     ImmutableArcInst. They have getters and factory methods in double lambda
     units and in long grid units. Grid units are long in API, but they are
     restricted to "int" range in current implementation. Additional memory cost
     is 8 bytes per EPoint. Alternative ECoord implementation is possible, which
     is more memory efficient, but a little slower.

BUG: (10/23/06, DN) Short arcs in TechPalette (Bug #1250).
FIX: In ArcProto.getShapeOfDummyArc swap end coordinates, so that arc's angle is
     0.

BUG: (10/23/06, GVG) Problems with alternate poly rules in 180nm (Bug #1249,
     reported by David Harris)
FIX: Poly and active nodes in primitives were not properly resized after major
     XML changes done.

BUG: (10/21/06, DN) Cannot select horizontal arcs (Bug #1248).
FIX: In EDatabase.getBackup() call ai.getBounds() for each arcs to precompute arc
     bounds.

BUG: (10/20/06, GVG) [Bug 1245] File->Project Settings->Technology page is
     confusing/inconsistent (Bug# 1245)
FIX: Technology tab in project preferences was re-organized. For MoCMOS tech, the
     feature size is included as part of the panel title.

BUG: (10/20/06, GVG) Exception in TechPalette if Mosis is chosen and you select
     min or aligned primitives (TSMC180)
FIX: More checking for unused elements.

IMP: (10/18/06, DN) Added class topology.Topology to manage graph of nodes and
     arcs. Classes Geometry and RTNode are moved to database.topology package.

IMP: (10/17/06, DN) ImmutableArcInst can compute its bounds without real ArcInst.

IMP: (10/17/06, GVG) Refactoring spicenetlist so some classes can be reused in
     DSPF reader.

IMP: (10/17/06, GVG) Import of Cadence colors moved to WindowMenu -> Colors.
     Action is in a job now.

IMP: (10/17/06, SMR) Added Cell expansion controls to Network / Node Extraction
     Preferences.

BUG: (10/17/06, DN) Zero-length arcs with angles 0 and 90 generates Polys with
     swapped head and tail extension.
FIX: In Poly.makeEndPointPoly use "angle == 0" and "angle == 900" conditions.
     In debug menu "Dima|Find error-prone arcs" command show such arcs in all
     loaded libraries.

BUG: (10/16/06, DN) API allows to create negated layout arcs.
FIX:  Negated arc end is always connected to PrimitivePort which "isNegatable".

BUG: (10/16/06, DN) Delete subcells, then undo. Their expansion status is lost.
FIX: Keep info about expanded nodes on a Cell.

IMP: (10/16/06, GVG) Skeleton to read DSPF

IMP: (10/16/06, DN) Connectivity index was moved to immutable CellBackup.
     Now database has less memory size, because it doesn't keep Connection.
     However, "ArcInst.getConnection", "NodeInst.getConnections",
     "PortInst.getConnections" are slower, because they allocate temporary
     Connections.

BUG: (10/12/06, SMR) Wiring a port to itself crashes (Bug #1242).
FIX: In Router.createRouteNoJob(), make sure route.getStart() is valid.

IMP: (10/11/06, GVG) More min contact primitives for node extraction.

IMP: (10/11/06, DN) "CellBackup" has index of exports sorted by original node.
     It will be used in Geometry calculations in immutable data base.
     "NodeInst.exports" field is no more necessary.

IMP: (10/10/06, DN) Lazy computation of Cell's RTree.

BUG: (10/9/06, DN) Random ExportIds are created too often.
FIX: Create them only when there is another export with the same externalId.

BUG: (10/6/06, SMR) Variables on exports on rotated nodes don't move right (Bug
     #1232).
FIX: In CircuitChangeJobs.ManyMove.moveSelectedText(), only transform Export text
     if it is the export name.

IMP: (10/6/06, SMR) Generalized routing to handle individual end extension.

BUG: (10/4/06, SMR) Narrow non-manhattan polygons not detected by DRC.
FIX: Fixed GenMath.intersectRadians() and Quick.checkMinWidth().

IMP: (10/4/06, SMR) Added "Window / Waveform Window / Export Simulation Data" to
     write tab-separated file of simulation data.

IMP: (10/3/06, SMR) Moved "Plot Date In Corner" to the PostScript
     section of the Printing Preferences.

BUG: (10/3/06, SMR) Routing node to arc may crash.  Reporting sometimes bad.
FIX: Moved reporting from Routing.createRouteNoJob() to
     Routing.reportRoutingResults().

************************* Version 8.05a: *********************************

BUG: (10/03/06, DN) Ports disappearing with wire deletion (Bug #1236).
FIX: In NodeInst.kill mark for deletion only exports connected to this NodeInst.

IMP: (10/02/06, GVG) Adding nodes that meet min rules in TSMC180.

IMP: (9/28/06, GVG) Warning if you try to bring a 3D view from technologies
     without 3D factory values.

BUG: (9/28/06, DN) Exception in cellGroup.contains(Cell) in duplicateGroupAction
     (Bug #1234).
FIX: cellGroup.contains(Cell) returns false when Cell argument is null.

BUG: (9/28/06, DN) ExportChanges.DeleteExports job calls GUI in doIt.
FIX: Move cantEdit calls out of ExportChanges.DeleteExports.doIt.

IMP: (9/28/06, DN) Remove some calls of "NodeInst.hasExports()",
     "NodeInst.getNumExports()", "NodeInst.getExports()" out of critical database
     modification loops. Future refactoring for memory saving will make these
     methods slower when called after Cell modification.

IMP: (9/28/06, GVG) Enable zoom via selection area (Bug #135). Indeed, entire
     tool bar was disabled because the scenegraph is displayed in its own frame
     and it is not worth it to hack it.  Solution only valid for SDI mode.

BUG: (9/28/06, DN) NCC regressions fail when cell group has multiple schematics.
FIX: In Cell.CellGroup.setMainSchematic use first schematic cell.
     In Cell.checkAndRepair issue warnings about extraneous schematic cells.

BUG: (9/28/06, DN) A lot of warnings during Nodable deserialization.
FIX: In EObjectOutputStream.ENodable.readResolve use getNetlist() instead of
     getUserNetlist().

BUG: (9/27/06, SMR) When "Node Moves With Export" is selected, all export
     text moves the export (Bug #1232).
FIX: In DisplayedText.objectMovesWithText(), only test export name.

BUG: (9/27/06, SMR) IRSIM "vector" and "set" commands don't work.
FIX: In Analyzer.setIn(), add "case '1':" after "case 'h':" and add
     "case '0':" after "case 'l':".

BUG: (9/27/06, GVG) Cropping of poly arcs over transistor poly not working (Bug
     #501)
FIX: The order in which arcs and nodes are cropped is important.

IMP: (9/27/06, GVG) Cleaning XML DRC according to memo published. One 180nm wide
     spacing rule fixed.

IMP: (9/27/06, DN) LibId/CellId/ExportId contains "external" names. IdManager
     maintains uniqueness of these names. This will be used for reading isolated
     CellBackups for DELIB library/cell updates. Artifact: Renamed cells and
     cells of renamed libraries are not linked to the database. New objects are
     created instead.

BUG: (9/26/06, SMR) Rotated nodes with text on them select badly (Bug #1202).
FIX: In Highlighter.findAllInArea(), use same code to select as to display.

IMP: (9/25/06, GVG) Reporting number of layer instances whose geometries are
     identical in Document Current Technology.  Using DocColumn class to handle
     the printing on standard output.

IMP: (9/22/06, GVG) Not printing NotInUsed nodes in Document Current Technology".

BUG: (9/22/06, DN) AlphaBlender crashes on narrow images.
FIX: In AlphaBlender.composeLine add return when minInt == maxInt.

IMP: (9/22/06, SMR) Node type in Node Preferences is now selectable (Bug #1218).

BUG: (9/22/06, SMR) "Document Current Technology" crashes.
FIX: In Manipulate.describeTechnology(), remove the lines:
		ai.setExtended(ArcInst.HEADEND, false);
		ai.setExtended(ArcInst.TAILEND, false);
     and change:
		double area = poly.getArea() / ai.getLength();
     to:
		Rectangle2D bounds = poly.getBounds2D();
		double area = Math.min(bounds.getWidth(), bounds.getHeight());

IMP: (9/22/06, GVG) Detecting if zero length arc is covered by other polygon of
     the same layer and avoid DRC warning (Bug #1174). Regression data updated.

IMP: (9/22/06, GVG) default M4 arc width = 3(old=4) and M6 arc width = 5(old=4).

IMP: (9/22/06, SMR) Added control for legacy blending.

BUG: (9/22/06, DN) Drawing in the TechPalette doesn't match the actual primitives
     in the EditWindow (Bug #1213).
FIX: TechPalette.drawShapes uses either VectorDrawing or LayerDrawing depending
     on preferences.

IMP: (9/21/06, SMR) Added copyright notices.

BUG: (9/21/06, GVG) Null Exception in Color Pattern dialog after unselecting
     highlighted object (Bug #1230).
FIX: PatternView.Info is null if you unselect an object and leaving the
     ColorPattern dialog open.

IMP: (9/21/06, SMR) Made "Describe This Technology" more readable.

IMP: (9/21/06, SMR) Removed text input field from bottom of messages window.

IMP: (9/21/06, SMR) Using Math.hypot() where appropriate.

BUG: (9/21/06, SMR) Default arc end-extension not always used.
FIX: In VerticalRoute.buildRoute(), use proper extension in calls to
     RouteElementArc.newArc(). In InteractiveRouter.planRoute(), compute
     extension properly.

BUG: (9/21/06, SMR) HSpice output with multiple conditions read badly.
FIX: In HSpiceOut.readTRDCACFile(), read a name for every "cndcnt".

BUG: (9/21/06, SMR) After editing text in-place, focus is lost (Bug #1221).
FIX: In GetInfoText.EditInPlaceListener.closeEditInPlace(), remove the
     key listener and do "wnd.requestFocus();".

BUG: (9/21/06, SMR) Directional arrows are not visible (Bug #1229).
FIX: In Technology.getShapeOfArc(), change last 3 mentions of "lastLayer" to
     be "Generic.tech.glyphLay".

BUG: (9/21/06, SMR) Crashes in digital waveform viewer.
FIX: In Panel.removeSignal(), change:
		signalButtons.remove(but);
     to:
		if (signalButtons != null) signalButtons.remove(but);
     And in WaveformWindow.deleteSignalFromPanel(), change:
		wp.getSignalButtons().validate();
		wp.getSignalButtons().repaint();
     to:
		if (wp.getSignalButtons() != null)
		{
			wp.getSignalButtons().validate();
			wp.getSignalButtons().repaint();
		}

BUG: (9/21/06, SMR) Artwork with transparent layers crashes in wrong technology.
FIX: In ColorPatternPanel.setColorPattern(), before:
		transparentLayer.setSelectedIndex(li.transparentLayer);
     insert:
		if (li.transparentLayer < transparentLayer.getItemCount())

IMP: (9/20/06, GVG) Detecting if format of measurement files is wrong and
     printing an error message (Bug #1228)

************************* Everything below here was announced in the 8.04 release *********************************

************************* Version 8.04z: *********************************

IMP: (9/19/06, GVG) Refactorization in Fill generator. Build.xml was also updated.

BUG: (9/19/06, GVG) Fixing again Bug #1215.
FIX: Trailer and Header writers used the exactly the same code.

BUG: (9/18/06, SMR) Auto-stitch may connect contact to wrong side of transistor (Bug #1226).
FIX: Prevent arc-to-node routing on well layers.

IMP: (9/18/06, DN) Default value of useClientServer option is off.

************************* Version 8.04y: *********************************

BUG: (9/15/06, SMR) Technology editor cannot handle PCB technology.
FIX: Fixed conversion from tech-to-lib and from lib-to-tech to handle circles and dots.

BUG: (9/14/06, DN) Assertion error in layer drawing (Bug #1224)
FIX: In LayerDrawing.drawList combine both VectorCircle cases.

BUG: (9/14/06, GVG) Design Rules dialog not working properly for TSMC90 and many wide rules
FIX: designRulesEditChanged fixed.

BUG: (9/14/06, SMR) Interactive sizing fails on rotated nodes (Bug #1201)
FIX: In SizeListener.getNewNodeSize(), reallocate farthest point.

IMP: (9/14/06, GVG) Improvements in FillGenerator dialog to give access to fills with cap transistors.

IMP: (9/14/06, SMR) Layers preferences warns you when changing the color of
     a layer that is transparent...it will affect other layers.

BUG: (9/14/06, SMR) Cross-library copy may copy too many cells (Bug #1222).
FIX: When multiple items are selected, send them all for copying at once.

BUG: (9/13/06, DN) ExceptionInInitializerError in initAllTechnologies due to custom user preferences (Bug #1219).
FIX: In Layer.newInstance check only factory colors.

BUG: (9/13/06, GVG) AFG not working properly with min spacing distance between metals
FIX: getting the correct DRC value.

BUG: (9/13/06, DN) AssertionError in Cell.addNode after library rename (Bug #1220).
FIX: In NodeInst.newInstance/ArcInst.newInstance search for spare nodeId/arcId.

IMP: (9/12/06, GVG) 3 new dummy layers in TSMC90. RPDMY was added into rpo poly resistors.

BUG: (9/12/06, GVG) More fixes for foundry setting and project settings.

BUG: (9/12/06, SMR) Going up hierarchy may show wrong export (Bug #1217).
FIX: In EditWindow.upHierarchy() change history if port is selected.

BUG: (9/12/06, SMR) Fixed Silicon Compiler to show results; fixed compile
     bug in Routing Preferences; fixed Splash screen in MDI mode; removed
     separate TSMC180 gate generation.

BUG: (9/11/06, GVG) drc missing metal notch violations (bug #1145)
FIX: Attempts to fix #483 broke the notch violations.

************************* Version 8.04x: *********************************

IMP: (9/11/06, JKG) Added import/export command for project settings,
removed "write to disk" button from dialog

IMP: (9/11/06, GVG) Changes to define selected foundry for MoCMOS and TSMC90 independently.

BUG: (9/11/06, DN) Exception when renaming library (Bug #1216).
FIX: In Cell.update don't reuse old NodeInst when node prototype changed.

IMP: (9/8/06, SMR) Redid Display Control Preferences to indicate status of algorithms.

BUG: (9/8/06, GVG) Few issues with Technology preferences stored as project settings.
     Also fixing a PolyBase bug affecting extraction code.
FIX: Making sure TechPref.technologyChanged is called properly.

BUG: (9/8/06, SMR) Crash when reading HSpice measurement files (Bug #1214).
FIX: Improved HSpiceOut.addMeasurementData() to handle all files.

IMP: (9/7/06, SMR) Removed "Easy Selection of Annotation Text" from Selection Preferences
     (It was never used...just an idle checkbox that does nothing).

BUG: (9/7/06, GVG) Switching of metal numbers in TSMC90 was not working since proj preferences were introduced
FIX: Call the TechPref.allTechnologiesChanged() or TechPref.technologyChanged(). These functions also included
UI refresh calls.

BUG: (9/7/06, SMR) Spice Trailer cards may duplicate the "." in the extension (Bug #1215).
FIX: In Spice.writeTrailer(), removed extra ".".

BUG: (9/7/06, SMR) Layers Preferences shows pseudo layers, confuses (Bug #1190).
FIX: Psuedo layers no longer shown.  Also, opacity no longer just for printers.

BUG: (9/6/06, GVG) DRC on old technologies not working since a long time ago.
FIX: Correct index for a pair of layers.

IMP: (9/6/06, GVG) Changes in Build.xml

BUG: (9/4/06, SMR) Transistors in component menu doesn't show text.
FIX: In TechPalette.rotateTransistor(), copy variables.

IMP: (9/6/06, SMR) Minor improvements to cell graphing.

BUG: (9/6/06, DN) Crash reading old ELIB libraries (MAGIC9 .. MAGIC11).
FIX: In ELIB.readThLibrary check if nextInCell == null.

BUG: (9/6/06, DN) Force quit and save does not save export name change (Bug #1175).
FIX: In FileMenu.forceSave show message box with name of directory where libraries are saved.

BUG: (9/6/06, DN) New Display algorithm not good with old layout technologies (Bug #1213).
FIX: In classes from technology.technologies make factory layer colors match factory transparent layer definition.

BUG: (9/4/06, SMR) Component menu doesn't show text.
FIX: In PixelDrawing.drawNode(), always draw text if "forceVisible" is true.

BUG: (9/4/06, DN) Text is invisible (Bug #1158).
FIX: Add LayerDrawing.canDrawRelativeText threshold to smarter reject small text.

IMP: (8/31/06, SMR) Attributes dialog no longer shows "ATTR_" prefix.

IMP: (8/31/06, GVG) Refactoring of DRC decks. Old MOSRules decomissioned and TSMCRules class became
the global under the name XMLRules. 180nm primitives are consistent resized according to rules
provided. Similar work is being done for 90nm primitives.
Surround distances are taken from decks, not from the Java code. Rules such as CUTSPA, CUTSPA2D
and CUTSUR were eliminated. DesignRules dialog was modified and only 1 value is required (instead of
unconnected/connected values).

IMP: (8/31/06, RK) PIE: runs on LoCo memory. The results are promising.

IMP: (8/30/06, SMR) Changed "Edit / Erase / Geometry" to "Edit / Erase / Selected"

FIX: (8/30/06, RK) Remove references to PIE in non-plugin code base.

FIX: (8/30/06, RK) Restore the NCC GUI User's manual. Somewhere along the way it disappeared!

IMP: (8/30/06, Tarik) First version of the new graph view based on prefuse.

IMP: (8/30/06, SMR) Moved "CVS" menu from "Tools" to "File".

IMP: (8/29/06, SAF) PIE: InterchangeParts are now properly retrieved as neighbors of
     UniquePort Parts.  Fixed bug in grouping equivalent interchangeable ports.  Changed
     InterchangePart so that in normal NCC, the proper wire hash code is retrieved and
     the port to port matrix is modified by the current EquivRecord code.

IMP: (8/29/06, RK) PIE: hash code partitioning wasn't partitioning non-composite parts.
     I added more debugging printouts for hash coding process

IMP: (8/29/06, SMR) Combined waveform-window commands into one place.
     Former commands in "Tool / Simulation (Built-in)":
        Save Waveform Window Configuration to Disk...
        Restore Waveform Window Configuration from Disk...
     Former commands in "Tool / Simulation (Spice)":
        Refresh Simulation Data
     Are now in "Window / Waveform Window"

IMP: (8/29/06, SAF) PIE: Avoid computing hash codes using parts stripped away
    from islands/fixed equivalent island mapping.

BUG: (8/29/06, SMR) Resizing rotated nodes with outline information is bad (Bug #1201).
FIX: Transform the points when resizing.

IMP: (8/29/06) PIE: Add print method to SubcircuitExtractionResult to help debugging

FIX: (8/28/06) PIE: Ports are now separated by type properly.

BUG: (8/28/06, SMR) Waveform window sweep display bad (Bug #1210).
FIX: Changes to inclusion/exclusion now show immediately; sweep highlighting
     works now, and the overall sweep header has an option to remove.

IMP: (8/28/06, SAF) PIE: Active frontier hashing properly recognizes composite
     parts as still active and recognizes pseudo parts belonging to the same
     composite part as neighbors.

BUG: (8/28/06, SMR) GNUCap simulation output is wrong.
FIX: In tool.io.output.Spice.java, use "0" for "gnd" and supress "@" for GNUCap.

IMP: (8/28/06, SMR) Added new Export commands: "Re-Export Deep Highlighted Area"
     and "Re-Export Deep Highlighted Area, With Wired Ports".  Deep reexporting
     recursively examines cell instances, creating exports from the bottom of the
     hierarchy (Bug #726).

BUG: (8/28/06, RK) PIE: Backtracking bug hides much ambiguity, type string should be one to one with type code

IMP: (8/25/06, SAF) PIE: InterchangePart access of P2P matrix from shared info, ports
     partitioned by wire equivalence classes.

IMP: (8/25/06, RK) PIE: Store CompositeInfo in CompositePart

IMP: (8/25/06, GVG) Code to count number of transistors in Schematics (bug #1209)

IMP: (8/25/06, RK) PIE: First cut at equivalent pins

IMP: (8/25/06, RK) PIE: Deal with topologically identical islands

IMP: (8/25/06, SAF) PIE: All pseudo part info created with cannonical port ordering.

IMP: (8/25/06, JKG) Added menu command for down hier in place to object, bug#733

IMP: (8/24/06, SAF) PIE: Hash using sub-cell port to port matrix when creating port
     to port matrix. Pins and pseudo-parts classified by equivalence type.

IMP: (8/24/06, GVG) Function to count number of transistors in Schematics.

IMP: (8/22/06, RK) PIE: Composite Part Information prints out

IMP: (8/22/06, SMR) Improvements to node extractor.

IMP: (8/24/06, SMR) Made waveform improvements: (1) Can now use the
     right-button to drag signals from one panel to another (this copies them,
     instead of moving them). (2) Can now drag a signal from one panel to
     horizontal axis of another (Bug #893).

BUG: (8/24/06, JKG) Bug #975 - Keypad keys do not work over VNC
FIX: VNC transmits different key codes than normal, so I have added those keycodes to the
menu items bound to keypad keys.

IMP: (8/23/06, RK) PIE: Composite Information begun

IMP: (8/23/06, SAF) PIE: Subcircuit island extraction and port to port matrix generation.

************************* Version 8.04w: *********************************

IMP: (8/23/06, JKG) Spice option to use cell model from file needs some enhancements (bug #1168)
Note from Gilda: Implemented during this released by JonG.

IMP: (8/22/06, SMR) Improvements to node extractor.

IMP: (8/22/06, RK) PIE: Create class CompositeInfo for creating Composite parts in netlist

IMP: (8/22/06, RK) PIE: Backtrack after successful comparison

IMP: (8/21/06, SAF) PIE: Support for composite parts in pie.strategy.StratHashParts.

BUG: (8/21/06, GVG) Exception when printing waveform (bug #1206)
FIX: Detecting if PrinterJob or ColorSupported is null.

IMP: (8/18/06, RK) PIE: Save EquivRecords before guessing

BUG: (8/18/06, SMR) GDS arrays are read incorrectly (Bug #1204).
FIX: In GDS.determineARef(), do not transform offset of array elements.

BUG: (8/18/06, SMR) Waveform window crashes when reloading with non-time X axis (Bug #1205).
FIX: Must reevaluate X axis signals when reloading; must save signals when X axis changes.

IMP: (8/18/06, SMR) Smart Text Placement now in its own Preferences panel,
     includes smart text placement for arcs (Bug #1058).

BUG: (8/18/06, SMR) TextDescriptor.withPos() does nothing.
FIX: Added td.setPos(p);

BUG: (8/17/06, GVG) Avoiding PS export and printing of document cells (Bug #1203). Some users
believe this is possible.
FIX: Detect View type and suggest to use "Text Cell Contents".

IMP: (8/17/06, RK) Put PIE into Tools menu. Make PIE pass regressions.

BUG: (8/16/06, SMR) Pad-frame generator regression fails.
FIX: Fixed AutoStitch.comparePoly to do proper port alignment test.

IMP: (8/16/06, RK) Create a new plugin, PIE for Port Interchange Experiment

IMP: (8/16/06, SMR) New commands in "Edit / Selection":
     "Select Next Like This" and "Select Previous Like This" (Bug #879).

BUG: (8/16/06, SMR) Primitive nodes don't auto-route (Bug #1176).
FIX: In AutoStitch.comparePoly(), don't exclude ports due to quad-tree.

IMP: (8/15/06, RK) Comment out obsolete code, old hash code partitioning

BUG: (8/14/06, SMR) Autorouter incorrectly connects arcs to rotated nodes (Bug #1199).
FIX: In AutoStitch.compareNodeWithArc, transform node polygons.

BUG: (8/14/06, SMR) Interactive sizing of rotated nodes is wrong (Bug #1201).
FIX: In SizeListener.getNewNodeSize(), determine new center properly.

BUG: (8/10/06, SMR) Color chooser patch not always correct (Bug #1198).
FIX: In ColorPatternPanel.setColorPattern() set the preview color.

BUG: (8/10/06, GVG) PostScript Export ignores "instance names" flag (bug #1197)
FIX: Checking if "instance names" is on/off

************************* Version 8.04v: *********************************

BUG: (8/7/06, GVG) auto-stitch exception (Bug #1194) due to refactoring done for AutoStitch and regressions (7/21/06).
FIX: check if lists are null.

IMP: (8/4/06, GVG) Selected layer pattern not highlighted in patterns palette (Bug #1193)
Basic marking done. It might be beneficial to rewrite the pattern selection section.

BUG: (8/3/06, GVG) Exception in LayerDrawing because of null layer in getRaster() (Bug #1191).
This seems due to artwork in layout cells.
FIX: If layer==null in LayerDrawing -> layer = Artwork.tech.defaultLayer. Similar fix with Graphics == null.
     In Technology.getShapeOfArc call setLayer for arrowed arcs.

IMP: (8/3/06, GVG) Different message dialogs in case of XML errors while importing DRC deck. Printing only parser
error in case of problems, not full trace.

IMP: (8/1/06, DN) EditWindow.getBlendingOrder don't put Generic.Gluph layer into blending order on solid layers.
     So essential bounds are not shown.

IMP: (8/1/06, DN) EditWindow.getBlendingOrder uses LAYERS_BY_HEIGHT_LIFT_CONTACTS to sort layers.
    So every contact is higher than its upper metal. Requested by Jonathan Gainsley.

IMP: (7/30/06, DN) "Alpha blending limit" preference renamed to "Alpha blending overcolor limit".
    When zooming out below this limit, standard alpha blending composition rule is used.
    When zooming in above this scale, alphablending with overcolor composituin rule (as inMagic editor) is used.

BUG: (7/31/06, DN) Layer redisplay doesn't take stipple patterns from Cadence preferences (Bug #1190).
FIX: Add call of "setPatternLow" to "EGraphics.setLayer" and "EGraphics.recachePrefs" so that
     it updates "reversedPatterned".

IMP: (7/31/06, GVG) Colapsing pin names like vdd_*/gnd_* in vdd/gnd while exporting in GDS (Bug #1188).
This is for Fire/Ice extraction tool. A new flag in User GDS tab was added.

BUG: (7/31/06, DN) Deep zoom in can crash X11 servers because of large text.
FIX: In LayerDrawing.drawText limit text size to MAXIMUMTEXTSIZE = 200.

************************* Version 8.04u: *********************************

BUG: (7/30/06, DN) Layer outlines sometimes missing with new display algorithm (Bug #1187).
FIX: In LayerDrawing.expendedCellCached change "cell is too large" threshold from 1/2 to 1/32.
    This expands range of scales when outlines are visible.

IMP: (7/30/06, DN) "Alpha blending limit" preference is added to DisplayControlTab.
    When zooming out below this limit, an alpha blending composition rule (with opacity controlas) is used.
    When zooming in above this scale, a traditional electric composituin rule (transparent/opaque layers) is used.

IMP: (7/26/06, GVG) Refactoring AutoStitch to get regressions working.

BUG: (7/22/06, DN) N-well disappears in LayerDrawing.
FIX: In PatternedTransparentRaster.copyBits use "continue" instead of "return".

IMP: (7/21/06, GVG) Request to add errors to list in real-time (bug #1169)
Done using option in User's preferences for DRC until issues with job queuing is clarified.

BUG: (7/21/06, JKG) CVS: IllegalArgumentException: URI is not hierarchical (bug #1184)
FIX: CVS only operates on files, however, so CVS will just ignore anything that cannot be converted to a file.

IMP: (7/21/06, JKG) Added option to writeLibrary to write only delib header if delib file.

TEC: (7/20/06, GVG) Default # metal layers in MoCMOS = 6. Second polysilicon in MoCMOS available by default.
Changes triggered by demo in SSC Sydney.

IMP: (7/20/06, DN) In LayerDrawing algorithm use alpha blending for both patterned and solid scales.

IMP: (7/19/06, GVG) Changes in 3D defaults in preparation for the SSC Sydney.

BUG: (7/19/06, GVG) Working directory path not updated properly (bug #1181)
FIX: Setting path for database file group explicitely

IMP: (7/18/06, GVG) Switching "External Reader JVM" on by default due to "small nanosim waveform takes forever to load" (bug #1177).

IMP: (7/17/06, GVG) Adding level control to AFG.

BUG: (7/17/06, GVG) Cell Info -> Graphically not working. Calling redisplay inside doIt() (bug #1180)
FIX: Move redisplay call to terminateOK().

IMP: (6/28/06, GVG) Changes in DRCToolTest to run DRC batch mode inclusing saving of XML file containing DRC ErrorLogger.

IMP: (6/27/06, RK) NCC: Rewrote hash code algorithm to make it strictly activity directed. This allows NCC to handle ambiguity more efficiently. (Bugzilla# 1165)

BUG: (6/23/06, GVG) demo.j3d was not loaded from electric.jar
FIX: Using URL and InputStream classes to upload files contained in jar.

BUG: (6/23/06, SMR) When doing cross-library copy and copying subcells,
     schematics don't copy with the icons (Bug #1130).
FIX: In CellChangeJobs.copyRecursively(), copy related views independent
     of "delete after copy".

BUG: (6/23/06, SMR) Using shift-right click to zoom out fails when down-in-place (Bug #1164).
FIX: In ClickZoomWireListener.mouseReleased(), transform coordinates when zooming out.

BUG: (6/22/06, GVG) DRC exclusion layer not working (Bug#1166)
FIX: Exclusion area was expecting that both geometries were completely inside the area.
     Changed to only 1.

************************* Version 8.04t: *********************************

IMP: (6/21/06, GVG) Cleaning Generation regression.

IMP: (6/21/06, GVG) BJT dummy layer for PNP transistors and LVS.

BUG: (6/21/06, GVG) No multi-cuts in native active contacts
FIX: Via layer MUST be last one defined in the primitive. This is not good!
Split of NT on native transistors to correct port assignments.

BUG: (6/21/06, GVG) Null exception in Spice netlister (bug #1160)
FIX: Detecting when transistor has null size

BUG: (6/21/06, GVG) Attribute text not visible with black background (bug #1161)
FIX: Fixed side effect while fixing 1150.

IMP: (6/21/06, RK) New method for Jonathan's cross probing: NetEquivlence.findEquivalentNetShortingResistors().
     Handles Networks connected to ports. Shorts Resistors. Untested.

BUG: (6/21/06, GVG) Working directory confused by Sun menu (Bug #1157)
FIX: Assura files are stored in path relative to the database file type group.

BUG: (6/20/06, RK) NCC: Refine the test for logical effort gates. Check for getDrive()
     and getdrive() instead of LEGATE (Bugzilla# 1139)

BUG: (6/20/06, RK) NCC GUI prints wrong cell names for root node in tree pane, (Bugzilla# 1156)

************************* Version 8.04s: *********************************

BUG: (6/20/06, SMR) "Smart select" broken (selects similar objects to
     what is already selected (Bug #1061).
FIX: In Highlighter.getSimiliarHighlight(), same types have same class,
     not different class.

BUG: (6/20/06, SMR) Centered, multiline text is shown left-justified.
FIX: In ElectricObject.getPolyList(), rotate node text only if not centered.

IMP: (6/20/06, GVG) Most of the changes in AFG for BIC tape-out.

IMP: (6/20/06, GVG) NT_N_ACTIVE pins and arcs. Adding NT_N MINWID=7.4

IMP: (6/19/06, GVG) Need NT_N_ACTIVE contacts (Bug #1148)

BUG: (6/19/06, GVG) Exception using the new algorithm while opening TSMC180.jelib (Bug #1150)
FIX: Catching cases where layer==null (Arcwork arrows) and assigning Generic.glyphLay.

BUG: (6/19/06, SMR) Deleting a locked node is always allowed (Bug #1152).
FIX: In CircuitChangeJobs.eraseObjectsInList(), remove locked nodes from the list
     of nodes to delete.

IMP: (6/19/06, SMR) Waveform window shows large numbers with engineering notation
     (Bug #1140).

IMP: (6/18/06, GVG) Generation regression got TemplateFill test and CMOSPLA test
     was moved to plugin package. Ability to run SaveLibrary in batch mode.

BUG: (6/17/06, GVG) Missed drc errors on poly resistor with W=4 (Bug #1146)
FIX: Nothing to fix indeed. The poly can't be smaller that w=4. Added the rule in
     the primitive

BUG: (6/17/06, GVG) If only primitive min size is violated, it should not saved
     the DRC dates.

BUG: (6/17/06, GVG) NT_N clearance to OD not checked correctly (Bug# 1149)
FIX: NT_N.C.1 added  into TSMC180.xml

BUG: (6/17/06, GVG) Minimum NT_N spacing error missed (Bug# 1147)
FIX: "C page 19" added into TSMC180.xml

IMP: (6/16/06, GVG) AFG working gap value in case of "only around" option.

BUG: (6/16/06, GVG) Extraction not working? (Bug#1141). Regressions won't catch the problem.
FIX: Wrong flag to kick the job

************************* Version 8.04r: *********************************

IMP: (6/15/06, SMR) New option in mimic stitching: bus widths must match.

BUG: (6/15/06, SMR) Exporting PNG of waveform window alters color scheme
FIX: In WaveformWindow.getPrintImage() reset colors only if set.

IMP: (6/14/06, DN) "File|Export|JELIB (Version 8.04k)" command in debug mode to save libraries in old Jelib format.

IMP: (6/14/06, GVG) ToolTips for 3D tab (Bug #215).

IMP: (6/14/06, RK) New experimental command: "Tool -> NCC -> Copy All Schematic Names to Layout" for Jonathan Gainsley

IMP: (6/14/06, SMR) Expressions allowed in Array dialog (Bug #1100).

BUG: (6/14/06, SMR) Mimic stitcher responds to its own arcs (Bug #1048, #1134).
FIX: Routing.endBatch() now ensures that the snapshot was not from the router.

BUG: (6/14/06, RK) I repaired the gate layout generator regression (Bugzilla# 1137)

IMP: (6/14/06, GVG) (a) Added extra flag in GDS import user preferences to have option
     to simplify via contacts (for BIC). Only available in debug mode.
     (b) AFG attempts to detect elements overlapping that belong to same nets based on
     characteristics.
     (c) Able to run flat job in batch mode.

IMP: (6/14/06, SMR) Can now drag cells or cell groups from the explorer
     tree to another library in the tree, which does a cross-library copy (Bug #630).

IMP: (6/14/06, GVG) Changes in GeneralTab/IO/FileTypeGroup dialog to accomodate
     resetting of default values. These changes cover Bugzilla #397 and #1021.

IMP: (6/13/06, GVG) DRC and AFG exclusion layers available in LayerTab

BUG: (6/13/06, GVG) Search and replace "objects to search" persistence (Bug 1127)
FIX: lastSearch clear anytime the toggles are changed.

IMP: (6/13/06, SMR) Spline editing in outline mode shows the adjusted spline (Bug #165).

BUG: (6/13/06, SMR) Window scale not restored after "up hierarchy" (Bug #1099).
FIX: In ExplorerTree.editCellAction(), always call setCellWindow().

BUG: (6/13/06, SMR) Duplicating circuitry crashes (Bug #1120).
FIX: In Clipboard.java, the "down in place" transform was not being used properly.

IMP: (6/13/06, GVG) Ability to abort Mimic Stitch job.

IMP: (6/13/06, GVG) Changes related to groups associated to different file types to
     be able to store different paths depending on tools/features.

IMP: (6/12/06, RK) Add nand2LTen and nand2HTen to MOCMOS gate generator. (Bugzilla# 1119)

BUG: (6/12/06, SMR) Adding busses to the waveform window shows the signals
     in random order (Bug #1113).
FIX: In WaveformWindow.findSelectedSignals(), sort the selected signals by name.

BUG: (6/12/06, SMR) "Back" button doesn't ascend schematic hierarchy (Bug #1112)
FIX: In EditWindow.downHierarchy() record the schematic cell in addToHistory().

BUG: (6/12/06, SMR) Multi-object properties crashes (Bug #1106).
FIX: In GetInfoMulti.applyActionPerformed(), must handle special controls.

BUG: (6/12/06, SMR) Copy and paste of arcs that are offset from their
     port center adjusts the arcs to the center (Bug #1117).
FIX: In Clipboard.java, remember offset and restore it.

BUG: (6/12/06, SMR) Pasting when editing down-in-place creates objects with
     original (incorrect) orientation (Bug #658).
FIX: In Clipboard.java, code added to adjust orientation of paste, copy, and
     cut when editing down-in-place.

************************* Version 8.04q: *********************************

IMP: (6/12/06, RK) Speed up NCC "hierarchical with size checking" by taking advantage
     of restricted schematics (Bugzilla# 1116)

IMP: (6/12/06, RK) Restrict schematics so it's easier to tell if all instances of a
     schematic cell have the same transistor sizes (Bugzilla# 1115)

BUG: (6/12/06, GVG) Drc doesn't display error properly (Bug #1114). This is the case of two overlapping
     vias coming from two different cells.
FIX: In case of overlapping vias, the errorLog should only contain the rectangle that the 2 vias form.

BUG: (6/9/06, GVG) Inconsistent scale for angles in GetNodeInfo v/s GetMultiInfo (Bug#1109)
FIX: Values in GetInfoMulti.java were inconsistently scaled to integers.

BUG: (6/9/06, GVG) Bogus min area drc errors reported on dp_stageN{lay} (Bug #1111).
     Problem: the abort signal given by user was not considered when leaving the cell using the enumerator.
FIX: Extra condition added.

BUG: (6/8/06, DN) Display mode isn't chang immediately.
FIX: Call EditWindow.displayAlgorithmChanged() from DisplayControlTab.

BUG: (6/8/06, DN) Export->ReExport* broken (Bug #1107).
FIX: In PortInst.hasConnections().

IMP: (6/8/06, GVG) Electric needs a way to cycle through windows (bug #954)
     Final solution in CVS. Cycle through all WindowFrame windows + messages window
     added as dynamic message.

BUG: (6/8/06, SMR) Too much selected after "Up Hierarchy" (Bug #1105).
FIX: In EditWindow.upHierarchy(), set selection only if no previous cell
     history found.  In WindowFrame.setCellByHistory(), set only port
     or highlights, but not both.

BUG: (6/8/06, SMR) "Show ports on node" and other export highlighting
     crops text on the right side (Bug #1030).
FIX: In ExportChanges.showPortsAndExports(), draw text better.

BUG: (6/8/06, GVG) Waveform viewer does not display DC signals from EPIC output (Bug#1103)
FIX: Wrong boundary condition for end point events.

BUG: (6/8/06, GVG) exception when refining object selection in layout (Bug #1106)
FIX: detecting if currentChangeTypes array is null. Extra: typesafe enum added
     and rotation information is shown.

BUG: (6/7/06, SMR) Initial splash window obscures everything (Bug #822).
FIX: Splash window no longer insists on being topmost.

BUG: (6/7/06, SMR) "Up hierarchy" always shows a full-screen view (Bug #1099)
FIX: In EditWindow.setCell(), only fill the screen if no context.

BUG: (6/7/06, SMR) Inserting a "T" in an arc triggers mimic deletion of the
     arc (Bug #1101).
FIX: In MimicStitch.mimicStitch(), mimic arc deletion only if no creations
     were done.

BUG: (6/6/06, SMR) Reloading waveform windows crashes (Bug #775).
FIX: Prevent null pointer problem in HSpice signal data.

BUG: (6/6/06, SMR) Waveform window makes uneven height panels, and may clip
     Y axis values (Bug #1095).
FIX: Panel height no longer taken from previous panels; Y axis values forced
     to be visible even if they cross to the right of the origin.

BUG: (6/6/06, SMR) Auto-stitching makes incorrect wires (Bug #1096).
FIX: New quad-tree code fixed to ensure valid connections.

BUG: (6/6/06, SMR) "Back" button crashes if cell has been deleted (Bug #1097).
FIX: In WindowFrame.setCellByHistory(), test for dead cells.

IMP: (6/6/06, SMR) Created new Preferences panel "Display / Display Control"
     to select and control the 3 display algorithms.  Removed items from the
     "Display" section of the "General" preferences panel.
     "Always Prompt for Index when descending into Array nodes" is in "Nodes".
     The "layers" sidebar now has a slider for controlling opacity.  Also, it
     includes the "Generic" technology in debug mode.

BUG: (6/5/06, GVG) Edit->Change fails if instances are not the same (Bug #1087)
FIX: Change code shouldn't return false if it is not done with nodes in the list.

BUG: (6/5/06, SMR) Some commands crash when a text window is displayed (Bug #532).
FIX: Fixed the Array command and the Rotate command.

BUG: (6/5/06, SMR) PNG output of waveform window fails
FIX: In WaveformWindow.getPrintImage(), do not scale if there is no former image.

IMP: (6/5/06, SMR) Reversed the arrow in the spiceparts node "pulseCurrent"
     (Bug #1076) and added PWL node (Bug #950).

IMP: (6/5/06, SMR) Can now select multiple cells and regroup them (Bug #1086).

BUG: (6/5/06, SMR) Cannot resize nodes with outline information (Bug #1088).
FIX: In SizeListener.ScaleNode.doIt(), handle nodes with outlines.

IMP: (6/4/06, GVG) Configurable grid alignment buttons (full,half,quarter) (Bug #1083)

BUG: (6/3/06, GVG) Duplicating {lay} view also duplicates {ic} (Bug #1090)
FIX: If not the entire group is copied, only Schematics would trigger the copy of its icons.
     Problem introduced while implementing Bug #894.

IMP: (6/2/06, SMR) "Back" button now works with text windows (Bug #324).

************************* Version 8.04p: *********************************

BUG: (6/2/06, GVG) Still exception in Analysis.getSweep(index) due to how signals
     without sweeps are handled. This was introduced while fixing Bug #1077.
FIX: Detect if sweeps list is null.

BUG: (6/2/06, SMR) Excluding or including all sweeps in an analysis affects
     all sweeps in ALL analyses (Bug #1084).
FIX: In ExplorerTree.setAllSweepsAction(), compute sweeps under that node.

IMP: (6/1/06, SMR) Preferences XML is now properly formatted.

IMP: (5/31/06, SMR) Sped up waveform window when sweeps are included or
     excluded (Bug #1078).

IMP: (5/31/06, SMR) Adding an analog signal to an existing panel scales
     the panel in Y (Bug #1079).

************************* Version 8.04o: *********************************

BUG: (5/31/06, SMR) GDS input may crash (Bug #1081).
FIX: In Export.newInstance(), check for invalid names BEFORE checking for
     unique names.

BUG: (5/31/06, RK) NCC: print correct Wire counts in Part local partitioning mismatch diagnostics (Bugzilla# 1080)

BUG: (5/31/06, SMR) "Back" and "Forward" buttons don't handle "down in place"
     editing (Bug #1060).
FIX: In EditWindow, handle down-in-place data with other factors.

BUG: (5/31/06, RK) NCC: repair implementation of forced matching (Bugzilla# 713)

IMP: (5/31/06, SMR) "Select Object" now scrolls through the list as search
     text is typed. (Bug #965)

BUG: (5/30/06, GVG) Size interactively does not show preview highlight (Bug #1075).
FIX: SizeListener.java:mouseMoved() is active again (commented out in 1.34 version. Not clear why.

BUG: (5/30/06, DN) Client doesn't show fresh ExplorerTree on startup.
FIX: In ServerJobManager write latest snapshot on connection.
     In ClientJobManager show initial snapshot immediately.

BUG: (5/30/06, GVG) Include/Exclude options not working when more than 1 signal included a sweep (Bug #1077)
FIX: The code to retrieve the correct sweep of a given AnalogSignal was incorrect.
     Extra code and refactorization to guarantee the correct index is retrieved from the Explorer.
     Disable direct access to Analysis.sweeps and WaveformWindow.sweepSignals lists.

IMP: (5/30/06, SMR) Added drop shadow to highlighted text (Bug #747).

BUG: (5/30/06, SMR) Renaming a cell group that has heterogenous cell names
     fails (Bug #1073).
FIX: In CellChangeJobs.RenameCellGroup.doIt(), detect groups with different-
     named cells, and force them to the same group.

IMP: (5/30/06, SMR) New command: "Tool / Network / Show All Networks"
     shows every network in a different color (Bug #943).

IMP: (5/30/06, SMR) New "Technology" preference allows layout transistors
     to be rotated 90 degrees (Bug #369).

BUG: (5/30/06, SMR) IRSIM stimuli can get out of order.
FIX: In Analyser.newVector(), change the line
		afterSV.value = curTime + stepSze - insertTime / cmdFileUnits;
     to be:
		afterSV.value = (curTime + stepSze - insertTime) / cmdFileUnits;

BUG: (5/30/06, SMR) Waveform window crashes when too many panels (Bug #1071)
FIX: Fixed default panel sizes.  Also fixed other bugs in waveform window.

IMP: (5/30/06, DN) Refactoring of redisplay code. Class PixelDrawing_ for new redisplay code.

IMP: (5/30/06, DN) Client Electric connects to a server machine specified in command-line "-client <serverMachineName>".

FIX: (5/26/06, RK) NCC: fix for regression failure 060526_0000

FIX: (5/26/06, RK) NCC: "Copy schematic names to layout" didn't copy names of both nets connected by polysilicon resistor (Bugzilla# 1069)

IMP: (5/26/06, RK) NCC: new annotation: forcePartMatch (Bugzilla# 713)

IMP: (5/26/06, SMR) When adding an export to a schematic, new icon export
     uses standard lead lengths. (Bug #902).

IMP: (5/26/06, SMR) Added new context-menu item in explorer tree:
     Cell Groups can be duplicated, copying everything in the group (Bug #894).

IMP: (5/26/06, SMR) Added command "Window / Special Pan / Match Other Window
     in X, Y, and Scale" to do all window matching at once (Bug #808).

BUG: (5/26/06, SMR) Undoing mimic stitching may trigger new stitching (Bug #1055).
FIX: In UserInterfaceMain.DatabaseChangeRun fixed spelling error, use "undoRedo"
     in call to "endBatch()".

BUG: (5/26/06, SMR) Crossprobing fails when there is an extra level of names
     in the simulation output file (Bug #1067)
FIX: In WaveformWindow.crossProbeWaveformToEditWindow() and findSelectedSignals()
     handle extra cell name in the signal names.

BUG: (5/26/06, SMR) Arc Preferences dialog lets you set negation where inappropriate.
FIX: In GetInfoArc.ChangeArc.doIt(), set negation only where allowed.
     Also disable the negation popup if both ends are disallowed.

BUG: (5/26/06, SMR) Typing a numeric key to change pin levels destroys
     the export name (Bug #1064).
FIX: In InteractiveRouter.MakeVerticalRouteJob.doIt(), only delete the pin
     if it is not exported.

BUG: (5/26/06, SMR) "Change" of arcs that includes "nodes with arcs" fails (Bug #1031).
FIX: In Change.replaceAllArcs(), corrected head/tail reversal, maintain node names.

IMP: (5/25/06, GVG) Cursor in Name field in Attributes dialog can be moved to the middle of the word.
     Done by not calling showSelectedAttribute(varKey).

BUG: (5/25/06, GVG) [Bug 1065]  New: NullPointerException on toggle head and tail (Bug #1065)
FIX: Indeed, the exception is in Toggle Port Negation. Exception was due to Highlight2 not serializable.
Code changed so list of ElectricObjects is used in the doIt() method.

IMP: (5/25/06, RK) NCC: add test for "forceWireMatch" to regression suite

IMP: (5/25/06, SMR) "Layers and Patterns" preferences has "Factory Reset" (Bug #1037).

IMP: (5/25/06, RK) NCC: Remove  print statements I put in for debugging Bugzilla# 969.

IMP: (5/25/06, GVG) Workaround for KeyBindings in EToolBarRadioButton for MacOSX (Bug #1056).
     Problem: JRadioButtonMenuItem doesn't handle accelerators well.
     In case of Command-S and S in two different functions, JRadioButtonMenuItem assumes
     are identical and a conflict is generated. Temporary workaround:
     Switch from JRadioButtonMenuItem to JMenuItem for EToolBarRadioButton on MacOSX.
     Thus the accelerators will be displayed and user can use toolbar icons to know what is selected.

IMP: (5/24/06, RK) Improvements to NCC GUI user manual

IMP: (5/24/06, GVG) List User Preferences in HelpMenu.

IMP: (5/23/06, GVG) Accelerators in ToolTip text of ToolBar buttons.

BUG: (5/23/06, SMR) Smooth zooming can crash (Bug #1054)
FIX: In ZoomAndPanListener.mouseDragged(), prevent negative scale.

BUG: (5/23/06, SMR) Mimic stitching doesn't show all cases when running interactively (Bug #1048).
FIX: In MimicStitch.MimicDialog, run new dialogs without redisplay.

BUG: (5/23/06, SMR) GDS Input ignores illegal export names (Bug #1044).
FIX: In Export.newInstance(), mangle illegal names before rejecting.

BUG: (5/23/06, DN) Electric doesn't display anything after the language assertion error (Bug #1054).
FIX: EditWindow.setScale throws IllegalArgumentException when scal is negative.
     RenderJob.doIt clears "runningNow" in finally block.

IMP: (5/23/06, GVG) Extra messages for Spice netlister export (Bug #1046, tail file appending).

BUG: (5/23/06, SMR) Waveform measurement doesn't display small numbers (Bug #1004).
FIX: In Panel.repaintOffscreenImage(), use convertToEngineeringNotation.

BUG: (5/23/06, GVG) Exception in Waveform viewer due to non-existing DC signals (Bug #1053)
FIX: Skip computeSmallestValues if no signals are found.

BUG: (5/23/06, DN) Null Pointer Exception in mimic unstitch (Bug #1047).
FIX: Check if end of deleted arc killed too.

BUG: (5/21/06, GVG) No calling of TechPref.sideEffect while reading cacheObj values from XML (Bug #1043).
     Noticed by loading XMl for TSMC.
FIX: cacheObj must be changed by calling Pref.setDouble/setInt/setString functions.

************************* Version 8.04m-8.04n: *********************************

BUG: (5/19/06, DN) Invariant "Names are unique" is not always true.
FIX: In Name.findTrimmedName don't override busy entry in hash array.
     Now all names must be unique, and multipart icons are not allowed
     (there is no way to unify them).

IMP: (5/19/06, DN) Warning in NetCell.addNetName about possible change to
     CaseSensitive network name matching in future versions.

BUG: (5/20/06) Changes are not "bolden" (Bug #1032).
FIX: Don't use "italic" more. "modified" flag, revision date and last desiner are set
    after all changes except DRC variable.

BUG: (5/20/06, DN) CellName.compareTo is inconsistent with CellName.equals .
FIX: Make CellName.equals case-sensitive.

BUG: (5/20/06, DN) Exception when deleting cell (Bug #1041).
FIX: Set mainSchematics in EThread. Check cell.isLinked() in ExplorerTree.convertValueToText.

BUG: (5/19/06, DN) VarContext is not serializable whne it contains killed export (Bug #969).
FIX: Remove "VarContext.pi" field. Maintain "EditWindow.selectedPorts" stack.

IMP: (5/19/06, RK) NCC: First cut at GUI User Guide. (Very Ugly) (Bugzilla# 1035)

FIX: (5/19/06, RK) NCC: clarify "can't build netlist" error (Bugzilla# 1035)

FIX: (5/19/06, RK) NCC: command to insert NCC annotations throws exception (Bugzilla# 1038)

IMP: (5/19/06, RK) NCC: I added a forceWireMatch annotation. This helps the user debug hash code violations. I updated the documentation as well. (Bugzilla# 713)

BUG: (5/19/06, DN) CrossLibMove doesn't mark changed the old library (Bug #1020).
FIX: In Library.removeCell() add setChanged().

IMP: (5/19/06, DN) Database assertion error on reload of library (Bug #1018).
FIX: In Update.UpdateJob.doIt fill libsToReload by reloaded libraries.
     Better diagnostics of non-serializable objects.

BUG: (5/19/06, DN) Pref.allPrefs list happens to contain nulls (Bug #1039).
FIX: Synchronize access to this Pre.allPrefs .

BUG: (5/19/06, DN) Can't write out library with dummy cells (Bug #1034).
FIX: Move askForChoice from io.output.Output to FileMenu.saveLibraryCommand.

BUG: (5/18/06, SMR) Changing color schemes doesn't affect waveform windows (Bug #1036).
FIX: In WindowMenu.whiteBackgroundCommand() and others, do fullRepaint.

BUG: (5/18/06, SMR) Left-aligned exports select badly on rotated nodes (Bug #964).
FIX: In Highlighter.findAllInArea(), must transform before calling setExactTextBounds.

IMP: (5/18/06, DN) JELIB/DELIB format has cellGroupName field into "C" line.
     Name of cell group is base name of a main schematics if any,
     otherwise shortest base name. On reading both legacy "G" lines and this new field
     are treated to gather cells into groups.

BUG: (5/18/06, DN) Client/server mode doesn't work.
FIX: Repair ClientJobManager.

IMP: (5/17/06, GVG) electric.log on MacOX is in user.home instead of user.dir (Bug #1033)

BUG: (5/17/06, DN) Nodable names must be unique (Bug #850).
FIX: Uniqueness of NodeInst names is database invariant.
     However, uniqueness of NodeProxies is not implemented yet.

BUG: (5/17/06, DN) Regression failed after export rename.
FIX: In library readers (Jelib, Elib, ReadbaleDump) always search exports by exportId.

BUG: (5/17/06, SMR) Bus pins don't select well (Bug #1012).
FIX: In ImmutableNodeInst.computeBounds(), ask the schematics technology
     for the bus pin's size.  One might be tempted to remove the "WipeOn1or2"
     factor from bus pins.  But then, they are always too large, and users
     complain that bus pins at the edges of icons cause the icons to grow.

BUG: (5/17/06, SMR) Cleanup pins doesn't remove zero-length arcs (Bug #1023).
FIX: In CircuitChangeJobs.Reconnect.reconnectArcs, make better check for obtuse angles.

BUG: (5/16/06, DN) Regression failed after export rename.
FIX: In Jelib reader always search exports by exportId.

BUG: (5/16/06, SMR) Including/Excluding multiple sweeps doesn't update explorer
     window (Bug #774).
FIX: In ExplorerTree.setSweepAction(), added call to updateUI().

BUG: (5/16/06, SMR) Waveform window draws numbers badly and creates
     new panels that may not align with others (Bug #1004).
FIX: Improved new panel creation code and "convertToEngineeringNotation"

IMP: (5/16/06, SMR) GDS input now handles invalid node names.  Also mangles
     duplicate export names so that indices don't change (Bug #988).

BUG: (5/16/06, DN) Exception in VectorDrawing (Bug #1002).
FIX: In VectorCache invalidate cache in EThread.

BUG: (5/16/06, DN) IRSIM command launches createWindow in EThread.
FIX: Runs Analyzer.startIrsim in GUI thread instead of Job.

BUG: (5/16/06, DN) Regression failed because of duplicate temporary name.
FIX: In NodeInst.newInstance(Cell,ImmutableNodeInst) update d.name on duplicate names.

BUG: (5/15/06, GVG) DELIB files can't be open with OpenDialog on Mac (#996)
FIX: Temporary fix: using Swing dialog even for MacOSX.

BUG: (5/13/06, DN) GDS import fails to complete (Bug #987).
     Database has slow NodeInst sorting, because it tries to save memory.
FIX: Sort NodeIns in GDS reader before supplying to database.

BUG: (5/13/06, DN) Bad behaviour with empty export name and temporary export name (Bug #993, Bug #1003).
FIX: Make valid export name a database invariant. ExportIds are taken as is, ExportNames are repaired in Export.newInstance.

BUG: (5/12/06, GVG) Shorten selected arc causes Exception (see log shorten-selected electric) (Bug #1001).
FIX: cell not setup in ShortenArcs job.

BUG: (5/12/06, GVG) Problems with text size <1 (Bug #986).
FIX: Consistent setting of min and max values in TexInfoPanel.java by adding Size.TXTMINPOINTS and Size.TXTMINQGRID.

IMP: (5/12/06, DN) In EidtKeyBindings dialog edit hidden submenu as "Shortcuts" submenu.

BUG: (5/12/06, DN) Exception when define accelerator for submenu.
FIX: In EditKeyBindings forbid editing accelerators of separators and submenus.

BUG: (5/12/06, DN) Russian manual is not properly displayed.
FIX: In ManualViewer.loadPage add explicitly name of encoding: "UTF-8".

IMP: (5/11/06, GVG) NT-N-transistor in TSMC180

BUG: NCC. Insert print statements to help debug Bugzilla# 969, 977

BUG: (5/11/06, GVG) NullPointerException on delete area (Bug #982)
FIX: ERectangle instead of Rectangle2D

BUG: (5/11/06, GVG) ClassCastException in KeyBindingManager:inputMap (Bug 981)
FIX: There were some wrong casts to List<String> instead of Set<String> in KeyBindingManager.java

************************* Version 8.04k-8.04l: *********************************

BUG: (5/10/06, DN) Exception in EMenuItem.getDescription (Bug #973)
FIX: For toolbar buttons which are not registered in menu, getDescrioption returns text.

BUG: (5/10/06, DN) -mdi crashing (Bug #972)
FIX: In TopLevel.getMenuBars check for topLevel == null.

IMP: (5/9/06, GVG) Catching any type of exception while flusing preferences such as java.lang.SecurityException.
This tends to crash regressions if they can't save preferences.

IMP: (5/9/06, RK) NCC Regressions print out system properties so I can figure out what version of jvm was used to run the regressions

IMP: (5/9/06, RK) Print out execution times for Assura LVS

BUG: (5/9/06, DN) No accelerator nor dimmed status updates on MacOSX (Bug #968).
FIX: Reimplement EMenu classes to generate standard JMenu.

IMP: (5/8/06, GVG) DRC InMemory data doesn't require UpdateDataJob

NOTE: It is versio 8.04l since May 8, 2006

IMP: (5/7/06, DN) Exports in memory database have both creation name (id) and user name.
    Disk files will have id only since 8.04l. Library reader can read future files, but
    it continue to save in old format (user names).

IMP: (5/6/06, GVG) Window Cycle changes

IMP: (5/6/06, DN) Better diagnostics in JELIB reader in case of renamed/deleted export.

BUG: (5/6/06, DN) Null pointer exception closing library - redisplay error (Bug #967)
FIX: In VectorCache.cellChanged use cellId instead of cell.

BUG: (5/5/06, GVG) Search and Replace text exception (Bug #963)
FIX: Code optimized and exception is caught and handled gracefully. Only one exception generated due to pattern.

IMP: (5/5/06, RK) NCC regression. Move contents of bean shell scripts into Java.

BUG: (5/5/06, DN) Sometimes VectorCache is not updated.
FIX: In VectorCache.forceRedraw and VectrorCellGroup constuctor.

IMP: (5/5/06, GVG) Working with Netbeans profiler: Many finished() functions added.
     In EMenuBar.Instance, LayerTab.finished(), Stimuli, HSpiceAnalogSignal,
     Analysis, AnalogSignal, TimedSignal, Signal gv = null in Poly

BUG: (5/4/06, DN) Deserialization of equal TestDescriptors returned different objects.
FIX: Implement TextDescriptor.readResolve to resolve unique TestDescriptor.
     Make TextDescriptor.Code an enumeration.

BUG: (5/4/06, GVG) Problems with ModifyNodeProperties job (no Bugzilla)
FIX: TextDescriptor.Code serializable

IMP: (5/4/06, DN) PixelDrawing takes shapes from VectorCache for faster redisplay.

BUG: (5/4/06, DN) Wrong names of SelectObjects/SelectArea buttons.
FIX: Swap them in ToolBar.java.

BUG: (5/3/06, SMR) Auto Stitcher crashes wiring a node to an arc (Bug #958)
FIX: In AutoStitch.compRoutes.compare(), handle sorting arc wirings.

IMP: (5/3/06, GVG) [Bug 961] Ability to refresh simulation data with KeyBinding.

BUG: (5/3/06, GVG) "Easy selection of cell instances" off makes impossible to select primitive nodes with MouseOverHighlighter.
FIX: if (!findSpecial && !User.isEasySelectionOfCellInstances()) condition applied only if
     cell instance is found, not longer in phase 0

BUG: (5/3/06, GVG) "package into cell" throws exception (Bug #960)
FIX: We can't use Rectangle2D.Double as field in Job. They can't be serializable. Changed to EPoint+double

BUG: (5/2/06, GVG) Quarter motion button missing in toolbar (Bug #957)
FIX: Added into ToolBar.java. Left off in v8.04j.

IMP (5/2/06, JKG) Added CVS Page in HTML Manual

BUG: (5/2/06, GVG) Strange clean up of goodDRCdates in Quick.java (no Bugzilla)
FIX: Not cleaning the Data list if only errors.

IMP: (5/2/06, DN) Vector cache is moved from VectorDrawing to a new class as a preparation of
     further redisplay changes.

BUG: (5/2/06, DN) No marking library in bold after cleaning up NCC annotations (Bug #941)
FIX: Move clean up of NCC annotations to CheckAndRepairJob.

BUG: (5/1/06, GVG) Waveform viewer Measurement mode Can't zoom, fit window (Bug #934)
FIX: Initialization problem related to measurements

BUG: (5/1/06, GVG) Print info for selected node doesn't work (Bug #944)
FIX: More problems found. In LENetlister2.printResults(). comparing NodeInst now.

BUG: (5/1/06, GVG) Zoom when plotting HSPICE has wrong cursor (Bug #948)
FIX: WindowContext.setCursor() defined so WaveformWindow would be able to set cursor for each individual wavePanels.
     Remove unnecessary calls from wave.Panel to ZoomAndPanListener.setProperCursor(evt)

BUG: (4/28/06, GVG) Snapping problems in Clipboard.copyListToCell after fixing Bug #899.
FIX: Getting arc port information based on new node locations. This should fix 947 and 899.

BUG: (4/27/06, GVG) Exception in printing due to WindowFrame being null (Bug #953)
FIX: Detect wf==null in EditWindow.fireCellHistoryStatus() (dirty fix!)

BUG: (4/26/06, GVG) Get info dialog box remains behind other windows (Bug #949). Affecting only MacOSX apparently.
FIX: Fixing unexpected change done for bug #878.

IMP: (4/25/06, GVG) Aligning metals based on maximum numbers assigned to reserved tracks and spacing values in
     template fill generator otherwise tracks get misaligned.

IMP: (4/24/06, GVG) Preparing AFG dialog box for release

IMP: (4/24/06, GVG) Tests plugin refactored. Added DRC tests for primitive nodes using TechEdit
     functions.

************************* Version 8.04j: *********************************

IMP: (4/21/06, GVG) Better handling of unknown HSPICE versions in Electric (Bug #942)

BUG: (4/20/06, GVG) print info for selected node doesn't work in LE (Bug #944)
FIX: Mistake when Highlight2 was introduced.

IMP: (4/20/06, GVG) Snapping to grid (Bug #899). Elements in Clipboard.copyListToCell() get snapped to grid.
     Similar to Bug #937 solution.

IMP: (4/20/06, GVG) Avoing null exception if Manual index can't be found (no Bugzilla)

IMP: (4/20/06, GVG) Making sure exports on icon are on grid (Bug #937)

BUG: (4/20/06, GVG) Inconsistent cell displayed after undo that deletes that cell (Bug #927)
FIX: Extra code in UserInterfaceMain.firePropertyChange to clean current cells in WindowFrame
     if they are not longer linked.

BUG: (4/18/06, GVG) SPICE template for CCVS fixed (reported by Ian).

IMP: (4/18/06, GVG) More changes in DRC dates.

BUG: (4/18/06, GVG) Exception in VectorCellGroup:clean because exports list is null.
FIX: Put the condition.

BUG: (4/15/06, GVG) ErrorLogger XML reader crashing if geom was null (NodeInst or ArcInst)
FIX: Skipping those cases and printing a message

BUG: (4/14/06, GVG) More fixes for Bug #931. The ones introduced on 4/13/06 were not sufficient.
FIX: It loads initial DRC variables from disk if values are kept on cache. ValidVersion variable not used
     for now. Later I might clean the code.

BUG: (4/14/06,DN) "fieldVariableChanged" doesn't work for Examine Jobs launched from client.
FIX: Add field to JobsTest.FakeJob. Fix EJob.serializeResult

BUG: (4/14/06, GVG) Exception from Tool->Network->ListGeometryOnNetwork (Bug #939) due to Examine job setting
     fieldVariableChanged variables. This is illegal for jobs running on client.
FIX: No fieldVariableChanged set.

IMP: (4/14/06, GVG) Re-arraging debug menus. Consolidated in DevelopersMenus and moved to tests plugin.

BUG: (4/14/06, DN) Exception when zooming layout with outlined layers.
FIX: Add PixelDrawing.drawOutline() with proper clipping.

BUG: (4/13/06, GVG) ErrorLogger writing invalid characters for XML parser such as ">" and "<".
     This is related to Bug #933.
FIX: Replacement of special XML characters. Extra changes: avoding crash in reading Assura if cell is null.

IMP: (4/13/06, GVG) Entering text (Bug #935). Implemented by adding a new item under EditMenu -> Text
     so KeyBindings can be used.

BUG: (4/13/06, GVG) Fix for DRC redoing on already checked cells (Bug #931)
FIX: Inconsisten caching of stored dates if you switch from data on memory to data on disk.

BUG: (4/13/06, GVG) Fix for Error logger loading (Bug #933)
FIX: Inconsistent DTD header after changes in highlight.

BUG (4/13/06, DN): Exception in NetworkManager after cell deletion.
FIX: In NetworkManager.updateAll use "l" instead if "i" in "some cells deleted" loop,

BUG (4/13/06, DN): Concurrent modification in redispaly (Bug #909, #923, #932).
FIX: PixelDrawing.forceRedraw collects changed cells in a Set.
    Caches are invalidated later in a Job.

BUG: (4/12/06, GVG) Editing a {doc} view getting database problems (Bug #930)
FIX: ChangedCellText added in TextWindow.

BUG: (4/12/06, GVG) Null exception in new MenBar if debug is false (Bug #929)
FIX: Skip item==null in EMenuBar constructor.

BUG: (4/12/06, DN) Lose keyboard input, when the very first window is closed (#Bug 890).
FIX: Menu template classes are implemented. They are llisteners of keyboard event.
    No dependency of very first window.

BUG: (4/11/06, GVG) Wiring problems in Schematics (Bug 926). Due to rounding issues,
     startLoc.getX() == endLoc.getX() || startLoc.getY() == endLoc.getY() is never true in that particular case.
FIX: Condition using DBMath.

************************* Version 8.04i: *********************************

BUG: (4/11/06, DN) Batch output is too verbose.
FIX: In Main.UserInterfaceDummy.setProgressValue compare new procent with previous one.

IMP: (4/11/06, DN) Preparation for new revision of JELIB/DELIB format. It will happen in "8.04l".
     Versions "i", "j" and "k" can already read new format. They ignore new fields.

BUG: (4/11/06, GVG) Bug in mouseOver highlighter introduced on 4/5/06
FIX: Highlighter.overHighlighted() returns the unique element overlapping so mouseOver highlighter never grows more than 1.

BUG: (4/11/06, DN) Keyboard input doesn't work: z - zoom, s - select (Bug #925).
FIX: In EditMenu.java use KeyStroke.getKeyStroke(ch, 0) instead of KeyStroke.getKeyStroke(ch).

IMP: (4/9/06, GVG) Cleaning extra Comparators.

IMP: (4/9/06, DN) Menu API changed: Tools make generic menus EMenu which are
     used to generate actual JMenus for every window. This is preparation to fix bug #890.

IMP: (4/8/06, GVG) More changes in AFG including AFG exclusion regions working.

BUG: (4/5/06, GVG) Network highlight does not highlight (Bug #921). It also covers #716.
FIX: Major changes in Highlighter and Highlight2 classes.
(1). Making sure mouseOverHighlight contains only 1 element (changes in ClickZoomWireListener.mouseOver, Highlighter.findObject)
(2). Optimization in Highlighter.showHighlights().
(3). showInternalHighlight for NodeInst only highlights objects electrically connected to it only if 1 highlight element is drawn.
The code is not efficient and extremely time consuming. Eg. DrawTime(2415 HighlightEOBJ)=43925 msecs, DrawTime(1445)=10 msecs.
This might be a temporary solution until code is rewritten

IMP: (4/6/06, GVG) Adding AFG exclusion regions.

BUG: (4/5/06, GVG) Another NullPointerException when making certain layers invisible (Bug #920)
FIX: This is not a permanent fix, just detecting that index doesn't go over greekedCell.fadeImageColors.length.

BUG: (4/5/06, GVG) Highlighter selects wrong object when dialog windows are open (Bug #917).
FIX: Error in Highlight2.getInfo(): it changed eobj value.

BUG: (4/5/06, SMR) Export names are not incremented properly (Bug #916).
FIX: In ElectricObject.uniqueObjectNameLow(), check names without case.

IMP: (4/5/06, GVG) Expanding and marking cell in case of giving library in command line (no Bugzilla)

BUG: (4/5/06, GVG) Exception in TopLevel on MacOSX in case of -mdi and reading library from command line.
FIX: desktop instance created before that topLevel. Still unknown why creation of topLevel has problems on MacOXS

IMP: (4/5/06, GVG) Refactoring calling to Progress class. Extra interface added in UserInterface.

BUG: (4/4/06, GVG) Rolling back again those changes in NetworkHighlighter.java:TRIMMEDDISPLAY. The code
becomes extremely slow but affects Bug 716.
FIX: TRIMMEDDISPLAY = true

BUG: (4/3/06, DN) Not Serializable exception in IdManager (Bug #916).
FIX: Make Cell.idManager field transient.

BUG: (4/3/06, GVG) Null exception in Simulation.java if format is not correct but anIt.hasNext() == TRUE.
FIX: test if an==null in Simulation.java;732.

BUG: (4/3/06, GVG) Wrong icon in View->Edit Icon View if more than 1 icon is in the same group (Bug #915)
Cell.otherView() was retrieving first icon found in the group regardless if it belongs to the correct schematics.
FIX. Matching name as well.

IMP: (4/3/06, GVG) Cleaning gateGenerator and moving major regression code to GenerationTest. Gate regressions
have failed in the last two days due to modifications in Quick class that were not reflectedin test code. This should
prevent the failures in the future. All regression tests are available in Test->Generation menu.

IMP: (4/3/06, DN) Separate list for filled shapes in VectorDrawing.

IMP: (4/1/06, GVG) Adding message dialog when DRC decks are loaded (with and without errors).

BUG: (4/1/06, GVG) Crash in DRC if selectMerge was found (due to latest changes in minArea to speed up
the process). This was noticed while checking Bug 121 (fixed already).

BUG: (4/1/06, GVG) DesignRulesPanel not caching minAreValue.
FIX: (1) MOSRules.setMinValue fixed. (2) DRCDocumentListener added to minArea/minEncArea Texts.
Extra: more editChanged functions added to avoid the redoing of the entire set of rules every time
a field was changed.

IMP: (4/02/06, DN) JUnit tests of database are added to CVS, build.xml and regression scripts updated.

BUG: (3/31/06, GVG) Boundary problems with qTree used in autostich (Bug #912)
FIX: Detection of empty buckets (no nodes).

BUG: (3/30/06, GVG) Fixing Bug 910 (Incremental Schematic DRC is broken).
FIX: Re-organization of errorLoggers so incremental logger will be shared by Layout and Schematics DRC.
Detecting when nodes are been checked in Schematics DRC.

BUG: (3/30/06, GVG) Mistake in TSMC180.xml DRC deck (wrong NODSIZE for m5m6 contact)
FIX: value="ALL" instead of value="DE" in ruleName="29.1 TSMC".

IMP: (3/30/06, GVG) Refactoring of test code.

BUG: (3/30/06, DN) Slow after JobException.
FIX: Use "undo" instead of "recover" after JobException.

BUG: (3/30/06, DN) Removal of entry after move to another library (Bug #868).
FIX: Use Cell.move in CellChangeJobs.copyRecursively.

IMP: (3/28/06, GVG) More AFG code. Java1.5 modifications in DRC/LayoutCoverage/GeometryHandler code.

BUG: (3/28/06, RK) All-Java NCC regression test causes Netlist tool to throw exception. First exception was bug in regression, not Netlist tool.
I no longer see the second exception so I think Dima fixed it. (Bugzilla #907)

************************* Version 8.04h: *********************************

BUG: (3/27/06, GVG)  (Exception in incremental DRC on file read in (Bug #906)
FIX: Variable was not serializable.

IMP: (3/24/06, RK) First step in moving NCC regressions to Dima's and Gilda's all-Java model

IMP: (3/24/06, GVG) TestTab and GenerationTest class

BUG: (3/24/06, GVG) MaxPerm=0 on Windows causes problems (not seen on Linux/Mac) (Bug #905)
FIX: detect the condition.

IMP: (3/24/06, DN) Added method Cell.move(Library newLib) for CrossLibraryMove.
     Database methods checkFresh moved to check.

BUG: (3/24/06, DN)) Read Library Job used getCurrentCell inside doIt.
FIX: Move it to terminateOK.

IMP: (3/23/06, GVG) Access to reloadLibrary in ExplorerTree (no cvs mode).

IMP: (3/23/06, JG): Need facility to reload changed libraries from disk (Bug #721)

IMP: (3/23/06, RK) NCC: trace resistor connectivity when highlighting equivalent Networks. Update User Manual.

IMP: (3/22/06, GVG) Extra code in StreamClient to force stack size = 0 for Mac.

IMP: (3/22/06, GVG) Number keys should switch between wire and bus in schematics (Bug 651)

BUG: (3/21/06, GVG) STACK_SIZE in Thread must be 0 on MacOSX.
FIX: Refactoring of a few classes and OS class was moved from TopLevel to Client class.
Avoiding multiple ways to determine OS so please use Client API.

BUG: (3/21/06, GVG) Few problems with Colors prefs on Mac described in Bug #645.
One of them was that Electric was reloading only transparent colors after Pref import
FIX: Recaching all color preferences. PrefType enum added.

BUG: (3/21/08, DN) Regressions and those errors not catched/running forever... (Bug #901)
FIX: Uodate Regression.java to recent changes in ServerClient.java

BUG: (3/21/06, DN) All libraries marked changed after loading up (Bug #900)
FIX: In Main.InitDatabase insert Input.changesQuiet(false).

IMP: (3/21/06, DN) Snapshot Logging which is enabled by button in GeneralTab panel.
   Logging is performed to temporary file in platform-dependent  directory. Name of the file
   is printed to "electric.log" and to stdin.

BUG: (3/21/06, DN) Exception in WindowFrame.composeTitle after close of current library.
FIX: Check if current Library is null.

BUG: (3/21/06, DN) Database is currupted after node change (Bug #897).
FIX: In CellBackup.getInstCount check for null CellUsageInfo.

BUG: (3/21/06, DN) Database invariant checking prevents Force quit-save (Bug #861).
FIX: Force quit find last consistent Snapshot and saves it to panic directory.

BUG: (3/21/06, GVG) duplication {lay} versioning detecting wrong view (Bug #895)
FIX: View was not checked.

BUG: (3/21/06, DN) Assertion in CellBackup on incorrect definedExports(seen in FillGenerator) (Bug #891).
FIX: In CellBackup.with correctly update definedExports set.

BUG: (3/20/06, GVG) CheckAndRepair on arcs only reporting the error in repair mode.
FIX: Create the error logger also in check mode.

IMP: (3/19/06, GVG) Ability to leave unconnected pins (Bug 488)
New preferences added in Routing tool.

Bugzilla #s to close: 318 (works now),

IMP: (3/19/06, GVG) Able to close the last library (Bug #812)

BUG: (3/19/06, DN) System.out.println() is blocked while append in MessagesWindow occurs.
     New thread is invoked every 200 ms.
FIX: In MessagesWindow remove "dump" out of synchronized block.
     Use one Ticker thread for all the time.

BUG: (3/19/06, DN) Some export names are not repaired.
FIX: In Cell.checkAndRepair iterate over copy of exports array.

IMP: (3/18/06, GVG) Select Object dialog was useless if you navigate down/up the hierarchy (Bug #862)

BUG: (3/18/06, GVG) "Project file not fund" message in Project Management (Bug #849).
FIX: RetrieveLibraryFromRepositoryJob implements terminateOK() instead of terminateIt.

BUG: (3/17/06, GVG) Arc routing complaing about "domain violation while figuring angle in radians" (Bug #888).
It happens when you are rounting two nodes in top of each other (tail and head points are identical).
FIX: Detecting the case.

IMP: (3/17/06, GVG) Adding tests plugin including TestMenu. Using reflection to avoid dependency on new plugin
LayerCoverageTool tests are there for now. DRC and ERC should come next.

BUG: (3/16/06, GVG) Coverage Implant not serializable.
FIX: Fixed by change LayerCoverageTool job

BUG: (3/16/06, RK) Fix bug in NCC regression script

BUG: (3/16/06, GVG) Cannot serialize HighlightEOBJ in ChangeArcProperties job (Bug #885)
FIX: Replace HighlightEOBJ dependency by using a list of ElectricObject.

BUG: (3/15/06, GVG) Cannot serialize on rename (Bug #883)
FIX: renameCellInJob doesn't require serialization of Cell.CellGroup class

************************* Version 8.04g: *********************************

NOTE: Regressios for v8.04g release were tagged as version8-04gAgain

BUG: (3/15/06, GVG) FindAndReplace dialog: find doesn't highlight some nodes (Bug #882)
FIX: detecting null key.

BUG: (3/15/06, GVG) Wrong focus after putting a cell instance down (Bug #877)
FIX: Forcing EditWindow.requestFocus() in PlaceNewNode.terminateOK().

BUG: (3/15/06, SMR) "Insert Jog In Arc" fails (Bug #881).
FIX: Made Highlight parameter transient, converted Point2D to EPoint.

BUG: (3/15/06, DN) User can't change case of a letter in export/node/arc names (Bug #873).
FIX: In ImmutableExport/NodeInst/ArcInst compare name.toString() instead of name.

BUG: (3/15/06, RK) NCC: Change NccJob to avoid Bug # 825 and the bugs introduced in an attempt to fix it.

IMP: (3/15/06, RK) NCC: Choose alphabetically first name for a Port (Bugzilla #540). Add regressions to test this.

BUG: (3/14/06, GVG) Content of ReplaceTextJob not serializable (Bug #874).
FIX: Job reorganized. Same task for ReplaceAllTextJob on the way. Side effect: class WhatToSearch converted
into enum and moved to TextUtils.

BUG: (3/14/06, GVG) "Mark All Libraries for saving" command was not wrapped in a job (Bug #872)
FIX: New Job class added.

BUG: (3/14/06, GVG) Problem highlighting networks (Bug #871). getHighlightedNetworks returns null if varKey != null.
FIX: condition removed since that condition doesn't hold after HighlightText and Export changes.

IMP: (3/13/06, GVG) Ability to mark selected cell if you do "Edit in New Window" (Bug #864)

IMP: (3/13/06, RK) NCC: delete initial version of local wire paritioning code.

IMP: (3/13/06, GVG) Multiple selection in cross library copy (Bug #867)

BUG: (3/13/06, GVG) Date/Content in CrossLibCopy dialog was not filled if "Date/Content" toggle
is selected (Bug #869).
FIX: Call showCells function. Side effect: message between "()" only if content is compared otherwise
doesn't have sense.

IMP: (3/12/06, GVG) Ability to set MaxPermSize option as preference (Bug #866)
If value is zero, then doesn't set anything. New item in General Tab.

IMP: (3/12/06, GVG) Make saving last DRC date with libraries an option (Bug #847).
New flag in DRC tab.

IMP: (3/10/06, JKG) Added DELIB file format. This is a just a distributed
    JELIB format, where each cell has it's own file. This will be used for
    CVS version control of cells.

BUG: (3/9/06, GVG) Bug in DRC after fixing Bug #507 (no detecting well good drc date in goodDRC.put())
FIX: Compare DRC date with revision date (must be newer).

BUG: (3/9/06, DN) GUI thread sometimes calls Cell.getTechnology before "tech" field is initialized (Bug #859).
FIX: In NodeInst.newInstance call subCell.getTechnology() to initialize "tech" field.

BUG: (3/9/06, DN) Syntax of export names is not checked.
FIX: Check it in Export.newInstance, Export.rename, and Cell.checkAndRepair .

BUG: (3/9/06, DN) Nodable names must be unique (Bug #850).
FIX: Temporary names are fixed in Bug #860. User names are repaired in CheckAndRepair job.
     New nodes and renamed nodes are checked on uniquie names.
     It is not database invariant yet. It is still GUI constraint.

BUG: (3/9/06, DN) ConcurrentModificationException in Cell.getNewestVersion.
FIX: Add newestVersion field to Cell and maintain it.

BUG: (3/9/06, DN) Duplicate temporary node names were not caugt by snapshot check (Bug #860).
FIX: Check this invariant int CellBackup.check().
     In Cell.addTempName(NodeInst) alway update maxSuffix.

IMP: (3/9/06, RK) New NCC related command. Suppose designer highlights Network or Node in schematic. Command higlights equivalent Network or Node in layout. (Bugzilla #863)

IMP: (3/9/06, RK) New NCC related command. Copy Network and Node names from schematic to layout (Bugzilla #754)

BUG: (3/8/06, GVG) Algorithm to truncate coordinates in StatusBar in case of long VarContext was not working (Bug#846)
FIX: Calculate string length based on fieldHierCoords.getWidth() instead of fieldHierCoords.getParent().getWidth()

BUG: (3/8/06, DN) Highlighting works bad after undo because undo
     leaves deleted geoms in RTree. (Bug #852, Bug #853 and maybe Bug #851).
FIX: In Cell.update() clear RTree in both undo and recover cases.

BUG: (3/8/06, DN) Exception in Snapshot while deleting cells and then closing library (Bug #845).
FIX: In Library.kill() removed this library from referencedLibs lists of other libraries.

BUG: (3/8/06, DN) Library is not marked changed after its cell changed cell group.
FIX: In Cell.setCellGroup call "lib.setChanged()".

IMP: (3/8/06, RK) Make all the "was called from DatabaseChangesThread" warnings in ServerJobManager.java print the stack trace so we can find and fix those calls

BUG: (3/7/06, GVG) HistoryDialog crashing because ProjectCell.getComment() was null (Bug #856)
FIX: Assigning "" if comment is null.

BUG: (3/7/06, GVG) LayersTab not catching NullException if j3DUtilsClass is null (not sure why) (Bug#857)
FIX: Check if j3DUtilsClass before searching for get3DColorsInTab method.

IMP: (3/6/06, RK) More support to copy Node names from schematic to layout

BUG: (3/7/06, GVG) Error in ERCWell code that prevents regressions from running.

BUG: (3/7/06, GVG) Too long messages in UserInterfaceMain.askForChoice (Bug #854).
FIX: Ability to shrink message and display only 10 256-character lines.

BUG: (3/6/06, DN) Error whne initializing imn MDI mode.
FIX: Remove "new EventProcessor" from "UserInterfaceMain.initializeInitJob".

IMP: (3/6/06, RK) More support to copy Node names from schematic to layout

BUG: (3/6/06, DN) Check invariants at creating snapshot is too slow.
FIX: Check them more incrementally.

BUG: (3/5/06, GVG) On Mac OX S, double click on library didn't open in Electric.
FIX: Another job in UserInterface to call "setInitJob".

BUG: (3/3/06, GVG) Exception in MenuBar.finished() and ToolBar.finished() when setUI(null) (Bug #843).
FIX: line commented out.

IMP: (3/3/06, GVG) New Spice engine in SpiceTab. This is for those running HSpice for Assura.

IMP: (3/3/06, RK) Add NCC Annotation to Cell throws serialization exception. Due to new client/server model. (Bugzilla# 844)

IMP: (3/2/06, GVG) Adding DRC and AreaCoverage regression tests in main code.

IMP: (3/2/06, GVG) DRC Exclusion working hierarchically (Bug #841)

IMP: (3/2/06, GVG) DRC Exclusion nodes available as annular rings (Bug #842)

IMP: (3/2/06, RK) Support for highlighting equivalent Networks and NodeInsts

************************* Version 8.04f: *********************************

BUG: (3/2/06, GVG) Wrong initialization on Mac. Class MacOSXInterface was moved to tool.user package (#bug 837)
FIX: Change in class load path.

BUG: (3/1/06, SMR) Waveform window doesn't draw signals with only 1 data point (Bug #836).
FIX: In Panel.processSignals() draw extrapolation of last data point.

BUG: (3/1/06, SMR) Spice model files cannot be changed (Bug #840).
FIX: Made them preferences instead of storing them in cells.

BUG: (3/1/06, SMR) Cannot create attributes (Bug #838).
FIX: In Attributes.checkName(), detect existing attributes properly.

BUG: (3/1/06, SMR) "Cleanup Pins" doesn't work (Bug #839)
FIX: Made parameters all be serializable.

BUG: (3/1/06, SMR) R-Tree fails to find objects.
FIX: Use Epsilon when searching the tree.

BUG: (3/1/06, SMR) HSpice output parser doesn't handle ".ic0" files (Bug #834).
FIX: Recognize the extension and give an error (.ic0 is the same as .sw0).

BUG: (2/28/06, GVG) NodeInst objects created for the TechPalette have problems with parent field (null)
and being linked. Thus ENodeInst constructor will produce assertion (Bug #835).
FIX: PlaceNewNode doesn't require NodeInst object (data required is copied). Side effect: Orientation is serializable.

BUG: (2/28/06, SMR) When preferences have side-effects, they crash (Bug #815).
FIX: In Technology.TechPref.setSideEffect(), invoke UI changes in the AWT thread.

BUG: (2/25/06, SMR) R-tree can become corrupt (Bug #833).
FIX: In Cell.update(), reset R-tree to RTNode.makeTopLevel().

IMP: (2/25/06, GVG) GDS numbers associated to foundry instead of the technology.

BUG: (2/24/06, DN) "Class exception in Undo" (Bug #831)
FIX: Correct condition for "full" case in "Cell.undo" .

BUG: (2/24/06, SMR) "Save As" fails (Bug #827)
FIX: Use local variables (not Library flags) to determine whether to prompt for a file.

BUG: (2/24/06, SMR) Mouse-over highlighting is gone (Bug #828)
FIX: In ClickZoomWireListener.mouseOver(), add a window repaint after updating highlights.

BUG: (2/24/06) Node extraction crashes after undo.
FIX: In EDatabase.undo and EThread.run .

BUG: (2/23/06) Undo after crash can crash too.
FIX: Add parameter "full" to EDatabase.undo . In "full" mode undo doesn't rely of
     EDatabase correctness.

IMP: (2/23/06) LibraryReaders doen't try to repair arcs ends. They start RapairJob instead.
     RepairJob detects bad arc end and reports them to constraint system. Repair step is undoable.
     IO regressions scripts were modifed to changed number of repair errors.

BUG: (2/23/06, DN) Redisplay slow.
FIX: In User.endBatch calls wnd.redisplayContents only most once per Window.

BUG: (2/23/06, SMR) Auto-routing is very slow (Bug #510)
FIX: Now using quad-trees in auto-routing.

BUG: (2/23/06, DN) Library is not marked as changed after deleting a cell (Bug #826).
FIX: Put "lib.setCHANGED()" IN "CELL.KILL()".

BUG: (2/23/06, DN) For Jobs started on server result is not serialized (Bug #824, #825).
FIX: Remove "else" in Client.EJobEvent.run method.

IMP: (2/22/06, SMR) Changed the basic GRID unit (in DBMath.java) from 100 to 400
     to allow smaller fractions, and especially half, quarter, etc. (can now handle 1/16).

************************* Version 8.04e: *********************************

BUG: (2/22/06, GVG) Bug in DRC.getLastDRCDateBasedOnBits(Cell cell, int activeBits) due to changes from Integer[] to
Long in cell date.
FIX: Handle Integer[] and Long as object type.

BUG: (2/22/06, GVG) Cells should not be added into goodDRCDates list if they have a valid date from previous run
(same Electric version) (Bug #507).
FIX: Check if (!validVersion || lastGoodDate == null).

IMP: (2/21/06, GVG) More code for fill generator.

BUG: (2/21/06, DN) JELIB reader silently reads longs as ints.
FIX: Use Long.valueOf(s) which throws exception on error.

BUG: (2/21/06, DN) Assertion deleting NodeInst (Bug #823).
FIX: Don't assume that exportUsage.length == cellUsage.length, because subcell may be used without exports.

BUG: (2/21/06, DN) Protection database by ReadWriteLock leads to deadlocks and slowness.
FIX: Remove this lock. GUI can access modifying database again. Netlists are fully computed in database thread.

IMP: (2/20/06, GVG) ResetDefaultWidthJob out.
IMP: (2/20/06, GVG) More complex algorithm to extract single polygons with rings.

BUG: (2/20/06, DN) Cell bounds restored incorrectly by Undo.
FIX: In EDatabase.undo restore bound for cells whose contents was not modified.

BUG: (2/20/06, DN) Incremental DRC show dialog on every cell.
FIX: In ErrorLoggerTree check if the logger is already shown.

BUG: (2/20/06, DN) Assertion in ServerJobManager and reconcilation dialog twice (Bug #820).
FIX: Fixed as a result of general Job cleaning.

IMP: (2/19/06, DN) Database access is protected by ReadWriteLock (exclusive write, shared read).
     Netlists for cells are created by demand to save memory.
     Drawback: GUI is inactive during library reading and other long CHANGE jobs.

BUG: (2/17/06, DN) CellBackup asserts failed because of incorrect calculation of cell bounds (Bug #819)
FIX: In Cell.getBounds() calculate bounds of subcells in case of BOUNDS_COMPUTE alse.

IMP: (2/17/06, DN) Tool's deamons are called once per Job in GUI thread.

IMP: (2/16/06, SMR) Better crossprobing with waveform window.

IMP: (2/16/06, DN) Undo system reimplemented based on snapshot.

BUG: (2/15/06, SMR) Selection of Exports by the "Select Object" and "Find Text"
     commands doesn't work (Bug #817)
FIX: In SelectObject.listClicked(), use Export name when highlighting.
     In EditWindow.findNextText(), use Export key when export is selected.

IMP: (2/15/06, RK) Make NCC recognize scalable MoCMOS transistors (Bugzilla# 602)

IMP: (2/15/06, RK) Add an NCC sub-menu that allows designer to add any NCC annotation. (Bugzilla: 646)

IMP: (2/15/06, RK) Re-implemented NCC command "Copy Schematic Names to Layout". It now copies Network names for all schematic/layout cell pairs.

IMP: (2/15/06, RK) Conversion of NCC to client server model

IMP: (2/14/06, SMR) Moved all requests for the "current cell" to the UserInterface object.

BUG: (2/13/06, DN) Regression fails, because projects settings from disk files are not reconciled.
FIX: In LayoutLib.openLibraryForRead call readLibrary with "quick=false".

BUG: (2/13/06, SMR) Curved arcs are not selectable after being read.
FIX: In ArcInst.addVar(), check for curvature variables and update geometry.

BUG: (2/13/06, SMR) Compaction loops infinitely (Bug #813).
FIX: In Compaction.java, compare motion amounts against epsilon, not zero.

BUG: (2/13/06, SMR) Arcs with no angle increment are always drawn horizontally.
FIX: In InteractiveRouter.getClosestAngledPoint(), handle 0 degrees specially.
     In RouteElementArc.addHighlightArea(), use more general code.

BUG: (2/13/06, SMR) Attributes dialog loses the selected variable name when new valeus are typed.
FIX: In Highlighter.java, fire highlight changes only for the main highligher (not the
     mouse-over or ruler highlighters).  Also in Attributes.java, remember the selected variable.

BUG: (2/10/06, GVG) Fixing error in DRC schematics due to the adding of Variables during examing job (Bug #814).
FIX: Collect variables and then later kick a DRCUpdate job.

BUG: (2/10/06, DN) MOSSIM regression results are not determenistc.
FIX: Make "Topology.SortNetsByName" comparator transitive.

BUG: (2/10/06, DN) Project settings are not loaded from disk libraries.
FIX: Remove "meaning = null" int Pref.init* methods.

IMP: (2/9/06, DN) Fixes in Compaction and Generation regressions to run in client/server mode.

IMP: (2/9/06, SMR) GDS input no longer complains about text layers, creates good size text.

IMP: (2/9/06, SMR) Fixed "RouteElementArc.doAction()" to make zero-length arcs go
     in the right direction.

IMP: (2/8/06, SMR) Split "Preferences" into "Preferences" and "Project Settings".

BUG: (2/8/06, GVG) Preferences tree didn't expand correctly if Technology->Technology
was selected
FIX: Search for identical string "Technology"), not "Technology ".

IMP: (2/7/06, GVG) DRC annotation to skip std cell.

IMP: (2/7/06, GVG) First version of ESD devices. TSMC180 devices not in palette
if MOSIS is the foundry.

IMP: (2/7/06, DN) When User.useClientServer option is on in GeneralPreferences dialog,
     Electric tests snapshots and job serialization.

BUG: (2/7/06, SMR) Crossprobing between waveform and edit window is bad.
FIX: Cleaned up highlighting and crossprobing.

BUG: (2/6/06, DN) Can't select wires once waveform viewer is open (Bug #811).
FIX: In WaveformWindow use getCurrentlySelectedObject(0).

BUG: (2/6/06, DN) Exception when opening spice waveform window (Bug #810).
FIX: In Simulate.ReadSimulationOutputJob open window in treminateOK().

BUG: (2/3/06, DN) WindowFrame together with contents remains in memory after close.
FIX: Use new class WeakReferences for storing Listeners.
     Don't use static fields EditMenu.moveFull, EditMenu.moveHals, EdiitMenu.moveQuarter, WindowMenu.closeWindow.
     Added TopLevel.removeFromDesktop, toolBar.setUI(null), menuBar.setUI(null),

IMP: (2/3/06, GVG) NWell resistors in TSMC180.
IMP: (2/3/06, GVG) TSMC180 as subclass of MoCMOS to isolate rules in plugins.
     Renaming tsmc90 plugin to just tsmc.

IMP: (2/2/06, SMR) Created new submenu "Cell / Merge Libraries" and moved
     "Export / Add Exports from Library..." there.  Also added "Replace Cells from Library..."
     which replaces instances in the current cell with like-names ones from another library.

BUG: (2/2/06, GVG) New highligh doesn't draw thick lines.
FIX: Solution allows lines from PolyBase to became thick lines and Highlight.drawOutlineFromPoints
     doesn't depend on thickCenter.

BUG: (1/30/06, GVG) ErrorLogger XML couldn't read cellName if string contains libraryName
IMP: Parsing also library name.

************************* Version 8.04d: *********************************
IMP: (2/1/06, DN) ExplorerTree isn't rebuilt completely on JobTree changes.

BUG: (2/1/06, SMR) HSpice insists on having a ".tr0" file (Bug #805).
FIX: In HSpiceOut.java, use more general method of finding file names.

IMP: (2/1/06, SMR) Removed text window methods from UserInterface.

IMP: (2/1/06, SMR) Technologies with no node groups (from the technology editor)
     have them created automatically in Technology.getNodesGrouped().

BUG: (2/1/06, SMR) Transistors are not placed correctly (Bug #802).
FIX: In EditWindow.showDraggedBox(), adjust preview box.

BUG: (2/1/06, SMR) Regressions fail because of extra technology information.
FIX: In Pref.getMeaningVariables(), ignore invalid options.

IMP: (1/31/06, GVG) Move MessagesStream.messagesStream out of TopLevel (all regression scripts checked).
More fixes in regressions.

IMP: (1/31/06, SMR) Added NodeInst.isCellInstance() to distinguish cells from primitives
     without using "instanceof".

BUG: (1/30/06, DN) Regression tests hang.
FIX: In ServerJobManager.DatabaseChangesThread.run do System.exit on empty job queue in batch mode.

BUG: (1/30/06, SMR) When global text is scaled, small text is still not displayed.
FIX: In VectorDrawing.drawList(), account for global scale when clipping text.

IMP: (1/30/06, SMR) Added Pref methods "delayPrefFlushing()" and "resumePrefFlushing()"
     to speed up bulk preference changes.  Used in WaveformWindow.preserveSignalOrder(),
     Layer.preserveVisibility(), Pref.importPrefs(), Pref.finishPrefReconcilation().

BUG: (1/30/06, SMR) Saved error logs do not read back in.
FIX: Adjusted parsing to match new output.

IMP: (1/28/06, GVG) Incremental Schematic working now

IMP: (1/27/06, GVG) Update StatusBar on click on EditWindow (Bug#799).

IMP: (1/27/06, GVG) More improvements in MinArea algorithms.

BUG: (1/27/06, SMR) Inherited attributes are placed badly (Bug #788).
FIX: In CircuitChangeJobs.updateInheritedVar(), place from the icon position.

BUG: (1/27/06, SMR) Printing looks bad (Bug #785).
FIX: Redid printing interface, now chooses better colors.

BUG: (1/27/06, SMR) Modeless dialogs don't update properly.
FIX: Made HighlightListeners a static list, independent of windows.

BUG: (1/27/06, SMR) Escape key doesn't abort component menu placement (Bug #800).
FIX: In PaletteFrame.PlaceNodeListener.placeInstance(), added "wnd.requestFocus();"

IMP: (1/26/06, DN) Command-line key "-threads <recommendedNumThreads>" specifies
     recommended number of threads executing Jobs.
     "-threads 1" is convinient for debugging without thread swapping.

BUG: (1/26/06, DN) Highlight exception using wiring tool (Bug #798)
FIX: In "Job.fieldVariableChanged" search for superclass fields too.

IMP: (1/25/06, RK) Remove obsolete code

IMP: (1/25/06, SMR) Converted all usage of ErrorLogger to use single calls
     (instead of creating a log and then making extra calls to add geometric, export, etc.)
     This is necessary in order to make ErrorLogs immutable.

IMP: (1/25/06, GVG) NetworkTool.redoNetworkNumbering() skips Clipboard (hidden library) to avoid complains about unconnected pin
(Bug #793).

IMP: (1/25/06, GVG) LayerCoverage tool ready for the new client/server structure.

IMP: (1/25/06, GVG New MinArea changes that stop checking if minimums are reached. Decomissioning ALGO_QTREE structure.

IMP: (1/23/06, GVG) DRC, ParasiticTools, FillGenerator, GateRegression, GateLayoutGenerator ready for new client/server structure.
ErrorLogger is serializable.

IMP: (1/23/06, DN) VarContext and Nodable are serializable.

IMP: (1/20/06, GVG) DRC.resetDRCDates() using a Change job now.

IMP: (1/18/06, DN) Job.terminate* methods are executing in AWT thread.

IMP: (1/17/06, DN) Serialization ot TextDescriptor, RouteElement .

IMP: (1/17/06, DN) Added Job.startJobOnMyResult method to start a new Job on result snapshot of current Job.
    Compaction tools uses it to launch a chain of Jobs.
    Job.terminateOk and Job.terminateFail instead of Job.terminateIt .

IMP: (1/16/06, SMR) Further reorganization for client/server split:
     More Job classes recoded.
     Removed use of "Name" object for tracking highlighting, replaced with Variable.Key.

IMP: (1/12/06, DN) Serialization/deserialization of Job objects. It is tested in "-debug" mode.

IMP: (1/12/06, SMR) Further reorganization for client/server split:
     Added null constructor to every Job class.
     Finished reorganazation of package tool.user.

IMP: (1/12/06, GVG) Reorganizing DRC rules stored so they belong to the foundries and
     easily replaced by imported data. New class Foundry.

IMP: (1/11/06, DN) Added method Job.terminateIt. This method will be called on client side
     after termination of Job.doIt on server side.

IMP: (1/10/06, SMR) Reorganized "CircuitChanges.java" into client and server parts.
     Created "CircuitChangeJobs.java" with server parts.
     Created com.sun.tool.JobException (no contents) and subclass CantEditException.

IMP: (1/10/06, DN) Cell bounds are stored in immutable class ERectangle and are shared with Snapshot.

IMP: (1/9/06, GVG) Reorganizing and cleaning TechPalette.
     New bits for special transistors (H/L VT, native, etc).

IMP: (1/9/06, SMR) Sweeps in the waveform window now show inclusion and exclusion
     more distinctly (Bug #782).

IMP: (1/9/06, SMR) Waveform windows can now be exported as PostScript (Bug #564).

BUG: (1/9/06, SMR) Annular ring construction crashes.
FIX: In AnnularRing.MakeAnnulus.doIt() do not try to change EPoint coordinates.

IMP: (1/8/06, SMR) Initial implementation of PostScript output for Waveform Window (Bug #564).

BUG: (1/5/06, SMR) Multi-object "Properties" dialog doesn't show distance when two are selected (Bug #781).
FIX: In GetInfoMulti.loadMultiInfo(), include distance information in the list of text.

IMP: (1/5/06, SMR) Removed unused method AbstractTextDescriptor.isAbsoluteSize().

BUG: (1/5/06, SMR) PolyMerge.contains(Layer, Rectangle2D) does not work.
FIX: Must use same method as in PolyMerge.contains(Layer, PolyBase),
     subtracting areas and seeing if the result has near-zero size.

IMP: (1/5/06, SMR) Added option to merge geometry while reading GDS in.

IMP: (1/3/06, SMR) The "Edit / Erase" command is now a submenu and has
     two new entries: "Arcs Connected to Selected Nodes" and
     "Arcs Connected Between Selected Nodes" (Bug #610).

IMP: (1/3/06, SMR) Moved "Edit / Info / Show Undo List" to "Edit / Show Undo List".

IMP: (1/3/06, SMR) When two EditWindows share the same cell, they share Highlighters,
     too (Bug #402).

IMP: (1/3/06, SMR) The "Window / Center" submenu is now called "Window / Special Pan"
     and includes two new commands: "Match Other Window in X" and
     "Match Other Window in Y" (Bug #402).

IMP: (1/3/06, SMR) "Select Object" dialog allows quick-key commands to "pass through"
     (but it works only when the "Find" button or no dialog item is current) (Bug #370).

IMP: (1/2/06, SMR) New command: Export / Manipulate Ports on Node (Bug #697).

BUG: (1/2/06, SMR) Changing default text font doesn't update display (Bug #771).
FIX: In TextTab.term() redraw all edit windows if font changes.

IMP: (1/2/06, SMR) Mimic unstitch now works interactively (Bug #488).

BUG: (12/28/05, SMR) Dragging or deleting text fails.
FIX: In Highlight2.getHighlightedText() changed "return" to "continue" in last loop.

IMP: (12/27/05, SMR) Added commands "Edit / Properties /  Parameterize Bus Name"
     and "Edit / Properties / Edit Bus Parameters..." to parameterize busses.

IMP: (12/26/05, SMR) Sped up exporting many ports by a factor of 3.

BUG: (12/23/05, SMR) Changing an instance size may not redisplay the parent cell.
FIX: In User.markCellForRedraw(), recurse if the cell changed.

IMP: (12/23/05, SMR) "Show Network" used repeatedly does not show dots on nodes.

IMP: (12/23/05, DN) Reduced the amount of memory used by Epic signals (Bug #712).
Context strings are not stored in memory. Instead they are generated by demand from path.

IMP: (12/22/05, GVG) More changes towards automatic fill generation. Extra work in fill generator to reduce number
of arcs and pins generated.

BUG: (12/20/05, DN) Cross-probing doesn't work with EpicReaderProcess.
FIX: In EpicOutProcess.readEpicFile setSignalContex before setSignalName.

BUG: (12/19/05, GVG) Error in Highlighter.overHighlighted not calling correct HighlightEOBJ.overHighlighted()
FIX: A parameter was missing with respect to the abstract function.

BUG: (12/19/05, GVG) 3D Colors were gone since last changes in LayersTab.java
FIX: Code is back again

IMP: (12/19/05, GVG) Two new Epic preferences in Spice tab.

IMP: (12/16/05, GVG) Small change in EpicOut.java to speed up reading process. This is for Bug#779.

IMP: (12/16/05, GVG) Major changes in ErrorLogger.ErrorHighlight and Highlight.

IMP: (12/16/05, SMR) Explorer window allows multiple selections where sensible
     (waveform signals, sweeps, deleting cells, re-viewing cells) (Bug #774).

IMP: (12/16/05, SMR) Dragging panels in the waveform window now places it above
     or below according to the final mouse position (Bug #778).

IMP: (12/16/05, DN) Preliminary code for EpicReader, spawned as another process.

IMP: (12/15/05, GVG) Preliminary code for automatic fill.

BUG: (12/15/05, GVG) Can't not paste a single object in Clipboard (Bug #777)
FIX: User.FRAME_LAST_CHANGED_BY should not be counted as Variable.

BUG: (12/14/05, SMR) Project management crashes when changes are made to un-checked-out cells (Bug #776).
FIX: In Project.detectIllegalChanges(), make the prompt happen in the GUI thread.

BUG: (12/12/05, SMR) Interactive sizing disallows dragging on the other side of the anchor (Bug #558).
FIX: In SizeListener.getNewNodeSize(), handle dragging beyond the opposite point.

BUG: (12/9/05, GVG) getCurrentCell not defined in Main.UserInterfaceDummy but it is required (Compactation regression failed).
FIX: Move code under BATCHMODE code to UserInterfaceDummy. In case of batch mode, current cell is from current library.
Remove conditions in WindowFrame.java if Job.BATCHMODE.

BUG: (12/9/05, GVG) Rounding problem in GateGeneration regression noticed while working on the memo.
FIX: Use StdCellParams.getResolution() instead of value stored in Technology.

IMP: (12/8/05, GVG) No com.sun.electric.tools.user.ui dependencies in Cell.java and Pref.java.

BUG: (12/7/05, SMR) Text Properties dialog sets offsets incorrectly (Bug #770).
FIX: In TextInfoPanel.ChangeText.doIt() use proper offset determination.

BUG: (12/7/05, SMR) PostScript writes incorrect text on cell instances (Bug #773).
FIX: In PostScript.recurseCircuitLevel(), use untransformed cell bounds.

BUG: (12/7/05, SMR) Waveform window always calls horizontal axis "seconds", even if it isn't time.
FIX: Use pure numbers when a signal is on the X axis.

IMP: (12/7/05, SMR) Added David Harris's "merged PostScript" output.
     Fixed MOSIS CMOS technology color opacity.

IMP: (12/7/05, GVG) Got rid of ExplorerTree activities in Job.java

IMP: (12/6/05, GVG) Got rid of user.ui dependencies in ActivityLogger and Job

IMP: (12/3/05, GVG) Similar work with DRC and ErrorLogger.

IMP: (12/2/05, SMR) Major changes to decouple EditWindow and WindowFrame from database.

************************* Version 8.04c: *********************************

IMP: (12/1/05, SMR) New waveform window icons.

IMP: (12/1/05, SMR) Making windows fill the screen works right in MDI mode.

BUG: (12/1/05, SMR) Initial cell display doesn't fill the window (Bug #562).
FIX: In WindowFrame.createEditWindow(), set window size properly.

IMP: (12/1/05, SMR) Cell Properties lets you specify the font of text cells (Bug #662).
     Changed the layout of the "text" preferences tab.

BUG: (11/30/05, SMR) PostScript text scale is wrong (Bug #763).
FIX: Increased PostScript text size.

BUG: (11/30/05, SMR) Pasting shows undisplayable cell variables (Bug #760);
FIX: In Clipboard.paste() ignore variables that are not displayed.

IMP (11/30/05, SMR) New commands in Tool / Simulation (Built-in):
     "Save Waveform Window Configuration to Disk..." and
     "Restore Waveform Window Configuration from Disk..." remember the waveform
     window configuration (Bug #704).

BUG: (11/30/05, SMR) Menu text sometimes appears in the edit window (Bug #765).
FIX: In PixelDrawing.java, make text drawing use a non-static buffer.

BUG: (11/30/05, SMR) Some dialogs don't follow the main window (Bug #581).
FIX: Removed "setLocation()" from GetInfoNode, GetInfoExport, and GetInfoText.
     Also remember the messages window location.

IMP: (11/30/05, SMR) Reduced the amount of memory used by signals (Bug #712).

IMP: (11/30/05, DN) Command-line switch "-server" to dump snapshot trace.

IMP: (11/29/05, GVG) More changes related to the DISPLAY dependency while running batch jobs.
Ability to reconcile options in batch mode (some code in OptionReconcile.java moved to Pref so it
can be used in batch mode).

IMP: (11/29/05, SMR) Waveform panels use offscreen buffers (Bug #239).

BUG: (11/29/05, SMR) Redoing text changes may crash (Bug #762).
FIX: In TextWindow.redo(), must catch the CannotRedoException exception.

IMP: (11/28/05, SMR) Entering "measure" mode clears previous measurements (Bug #761).

IMP: (11/28/05, SMR) Waveform window can show lines, points, or both.

IMP: (11/28/05, SMR) Waveform window can handle many types of analysis (transient,
     AC, DC, and Measurements).  HSpice reads them.

IMP: (11/28/05, DN) Changes towards Snapshots.

************************* Version 8.04b: *********************************

IMP: (11/22/05, GVG) Changes to get rid of DISPLAY dependency while running with -batch.

IMP: (11/21/05, SMR) Refactored the waveform window.

IMP: (11/21/05, DN) NodeInst.redoGeometric allocated less temporary objects.

IMP: (11/18/05, SMR) Waveform window can now draw horizontal axis logarithmically.

BUG: (11/18/05, SMR) Waveform window drops zeros from numbers.
FIX: In TextUtils.convertToEngineeringNotation() remove trailing zeros only if
     there is a decimal point in the number.

BUG: (11/18/05, SMR) Crash when deleting a cell (Bug #759).
FIX: In User.endBatch(), ignore cell changes to deleted cells.

IMP: (11/17/05, GVG) Adding Ctl-W to NCC GUI (Bug 756)

IMP: (11/17/05, SMR) Waveform window can now plot any signal on the X axis.
     Drag the signal to the time bar to set it as the X axis.  Right-click on
     time bar to reset to time on the X axis.

BUG: (11/17/05, SMR) Project management cannot find some cells (Bug #751).
FIX: In Project.copyrecursively(), use the version number in the cell name so that
     new repositories are correct.  In Project.getCellFromRepository(), be forgiving
     of versions to handle existing repositories.

BUG: (11/16/05, SMR) Deleting a cell instance loses arc names on reconnected arcs (Bug #758).
FIX: In CircuitChanges.eraseObjectsInList(), apply old name to new arc.

IMP: (11/16/05, DN) Memory optimization: Name module stores only canonic String instead of Name.

IMP: (11/15/05, SMR) Spice templates can now have multiple lines.

IMP: (11/15/05, SMR) New command: "Tool / Network / Repair Power and Ground" fixes
     export characteristics that are inconsistent (Bug #380).

IMP: (11/15/05, SMR) Now have "Tool / NCC" command to create NCC annotations (Bug #646).
     NCC attributes are NOT inheritable or parameters (cleaned-up on library input).
     Cell attributes that are not inheritable are mentioned in properties dialogs.

BUG: (11/14/05, SMR) Project management presents libraries unsorted (Bug #750).
FIX: Sort the libraries.

BUG: (11/13/05, GVG) Few bug fixes in the design rules tab due to changes for DRC deck and typesafe
enum.
FIX: Mainly in DesignRulesTab.java and DesignRulesPanel.java.

BUG: (11/11/05, SMR) "Set Focus" command does not make changes that are browsable (Bug #746).
FIX: Improved "SetFocus.java" to use the focus browser.

BUG: (11/11/05, SMR) Crashes when adding all libraries to the repository (Bug #740).
FIX: Now adds libraries just once (was adding them twice).

IMP: (11/11/05, SMR) Adding libraries to repository has "Yes to All" option
     for also adding dependent libraries (Bug #742).

BUG: (11/11/05, SMR) Adding fill library to the repository takes too long (Bug #749).
FIX: Improved skeletonization speed.

BUG: (11/11/05, SMR) Checking out cells marks them as modified (Bug #748).
FIX: Cell changes must be done without change control to avoid other changes.

BUG: (11/10/05, SMR) Crash when drawing upside-down text (rotated 180).
FIX: In PixelDrawing.drawText, 180 degree case should use the index:
     ((rasHeight-y-1)>>shiftUp) * textImageWidth + ((rasWidth-x-1)>>shiftUp)

IMP: (11/9/05, SMR) New command: "Window / Set Focus..." lets you control
     the window zoom and pan (Bug #722).

IMP: (11/9/05, SMR) Now have "Export /Re-Export Selected Port on All Nodes"
     which takes a single node/port selection and re-exports that port on all
     similar node/port combinations in the cell (Bug #660).

IMP: (11/9/05, SMR) Now have "Last Changed By" field in title box (Bug #609).

IMP: (11/9/05, SMR) Auto stitching now considers highlighted area more precisely (Bug #725).

IMP (11/9/05, JKG) Added "exemptedNets" capability and options to simple parasitic extraction
    for spice netlister. Updated manual (Parasitic Extraction), but did not update
    manual picture.

BUG: (11/9/05, SMR) Menus are not accessable through mnemonic keys (Bug #730).
FIX: In EditWindow.paintComponent(), do not request focus.

BUG: (11/9/05, SMR) Node Properties takes too long when there are many ports (Bug #736).
FIX: In GetInfoNode.showProperList(), use "setListData" to load the list.

IMP: (11/9/05, SMR) Project management now uses user names without asking
     for accounts to be created.  Higher-level of security can be had by changing
     Project.LOWSECURITY to false (Bug #737).

BUG: (11/9/05, SMR) Library closing gives cryptic error messages (Bug #739).
FIX: Better message in Library.kill().

IMP: (11/9/05, SMR) Project management menu now has "Add All Libraries to
     Repository" (Bug #740).

IMP: (11/9/05, SMR) Adding a library to the repository now asks if dependent
     libraries should also be added (Bug #742).

IMP: (11/9/05, SMR) Project management command "Cancel Checkout" is now
     "Rollback and Release Checkout" (in explorer and in menus).  The command
     checks sensibility before confirming the operation (Bug #743).

BUG: (11/9/05, DN) Exception writing Spice netlist in hierarchy enumerator (Bug #663).
FIX: In NetSchem.calcDrawnWidth set bus width to widest connected bus or export.

IMP: (11/8/05, SMR) Dialogs move with the main display (Bug #581).

BUG: (11/8/05, SMR) Cells do not fill the screen when first edited (Bug #562).
FIX: In EditWindow.java, use true screen size instead of 500x500.

BUG: (11/8/05, SMR) Interactive sizing always stretches to farthest corner (Bug #558).
FIX: Must click to start sizing, and it remembers the farthest corner.

IMP: (11/8/05, SMR) Added "Down Hierarchy" commands to keep the focus and
     edit in a new window (Bug #732).

BUG: (11/8/05, SMR) Aborting the "quit" dialog with an ESCAPE quits anyway.
FIX: In FileMenu.preventLoss(), handle dialog aborts.

BUG: (11/8/05, SMR) "Last measured distance" is wrong.
FIX: In MeasureListener, define it as the last valid distance (ignores part aborted by right-click).

BUG: (11/7/05, SMR) Mimic arc deletion does not work right (Bug #488).
FIX: In MimicStitch.mimicdelete(), use same node/port matching rules as arc creation.

BUG: (11/7/05, SMR) Area-selection is not a valid way to select "auto stitch in area" (Bug #725).
FIX: In Highlighter.checkOutObject(), allow direct hit to match at <=, not < and in
     Highlighter.findAllInArea(), initialize direct hit distance to a small value, not zero.

BUG: (11/4/05, SMR) Changes in text-only cells are not undoable (Bug #324, #503).
FIX: Added undo tracking when editing text cells, incorporated it into undo commands.

IMP: (11/4/05, SMR) "mocmos" technology has ports on pure-layer nodes extending to the node edges
     (were inset on some pure-layer node ports).

BUG: Select-All doesn't include text on arcs (Bug #530).
FIX: In EditMenu.doSelection(), include text.

IMP: (11/4/05, SMR) New icons in the toolbar.

IMP: (11/4/05, SMR) Ant scripts updated to exclude Sun menus from build,
     Javadoc cleaned up

IMP: (11/3/05, GVG) XML format for ErrorLogger (bug #715). You can save and restore errorloggers
from disk.

IMP: (11/2/05, GVG) Adding index to ErrorLogger.Message so it would be easier to
exchange information about DRC errors (Bug #729). This affects all ErrorLogger instances.

BUG: (11/2/05, SMR) Redisplay slow when zoomed far in (Bug #719).
FIX: Text drawing is slow when the font is very large.  Large fonts are
     reduced in size and scaled up.  Also did other text optimizations in
     PixelDrawing.java.

BUG: (11/2/05, SMR) Thick outlines around layers may crash.
FIX: In PixelDrawing.drawBox(), check coordinates of thick outlines.

BUG: (11/2/05, SMR) Multi-object properties dialog has slow performance (Bug #718).
FIX: In GetInfoMulti.java, optimized "Remove" and "Remove All" buttons,
     also rebuild scroll list instead of clearing it.

BUG: (11/2/05, SMR) "Show Network" highlights too much information (Bug #716).
FIX: In NetworkHighlighter.java, removed highlighting of cell instances and exports.
     Reduced arc highlighting to a single line.

************************* Everything below here was announced in the 8.03 release *********************************

BUG: (11/01/05, SMR) Cancelling the cell selection after reading simulation data
     does not cancel the operation (Bug #711).
FIX: In Simulate.plotSimulationResults(), abort if cell is null.

IMP: (10/31/05, SMR) Added Spice primitives (Amp and DiffAmp) are now visible.

IMP: (10/31/05, SMR) IRSIM and ALS give better errors when no signal is selected (Bug #710).

IMP: (10/31/05, SMR) Silicon compiler works when number of cells is less than
     the number of rows.  Also finds layout technologies better (Bug #708).

IMP: (10/31/05, GVG) Undo.Type converted into typesafe enum.

IMP: (10/30/05, GVG) TSMC1080.xml ready with all TSMC rules for 180nm tech

IMP: (10/29/05, GVG) Mosis.xml ready with all Mosis rules for 180nm tech

IMP: (10/28/05, GVG) PP/NP.C.1 implemented in TSMC180 (Bug 703, 642, 689).
This is a new type of SPACING rule where one of the layer must belong to P/N well nodes.

IMP: (10/28/05, SMR) Changed the window "view" to a window "focus".

BUG: (10/28/05, SMR) Deleting nodes and exports produces an error message.
FIX: In CircuitChanges.eraseObjectsInList(), do not delete nodes already deleted.

IMP: (10/27/05, SMR) Technology Editor produces proper Java.

IMP: (10/27/05, GVG) More changes towards DRC deck handling. Import/Export of DRC deck under Tools->DRC.
Typesafe enums for DRC options. Generic DTD for DRC rules and can be loaded using EntityResolver.resolveEntity.

BUG: (10/26/05, SMR) Auto-stitcher connects pure-layer nodes of well (Bug #388).
FIX: Disallow pure-layer nodes in auto-stitching.

BUG: (10/26/05, SMR) Edit-in-place looks bad (Bug #635).
FIX: In EditWindow.java, change the method paint() to paintComponent().

BUG: (10/26/05, SMR) Auto-stitcher connects annotation text objects (Bug #695).
FIX: Disallow Generic technology nodes in auto-stitching.

IMP: (10/26/05, SMR) Spice output sorts subcircuit signal names (Bug #694).

IMP: (10/26/05, SMR) Auto-stitching avoids adding duplicate arcs.

IMP: (10/26/05, SMR) "Find Text" dialog now has "alt" keys on its buttons (Bug #671).

IMP: (10/25/05, SMR) Waveform window signal order saved in preferences, not cells.

BUG: (10/25/05, SMR) Double-clicking text does not edit it in-place.

BUG: (10/25/05, GVG) rename dialog resets to current cell every time you hit (bug #692)
FIX: lastSelectedCell in rename job didn't include view abbreviation.

BUG: (10/25/05, SMR) Double-clicking text does not edit it in-place (Bug #693).
FIX: In EditMenu.getInfoCommand(), do not ignore text that is not special.
     In SpecialProperties.java, rehighlight the text after the "more" button is clicked.

BUG: (10/25/05, DN) PortCharacteristic of Exports is not undoable.
FIX: Side effect of implementing ImmutableExport for transactional DB.

BUG: (10/24/05, SMR) Nonmanhattan arcs may be produced when they are long.
FIX: In SimpleWirer.planRoute() make special case for manhattan routes.

IMP: (10/24/05, SMR) Many changes to use generics.

IMP: (10/23/05, SMR) Greeked cell cache is cleared when layer visibility changes.
     Vector display cache is cleard when technology preferences change.

BUG: (10/23/05, SMR) Export changes are allowed even when nodes or cells are locked.
FIX: Added checking code to CircuitChanges.DeleteSelected.doIt(), NewExport.MakeExport.doIt(),
     and ExportChanges.DeleteExports.doIt().

BUG: (10/23/05, SMR) Waveform window grid has bad horizontal lines.
FIX: Grid lines are now aligned with tick marks.

BUG: (10/20/05, DN) Deleting objects takes forever (Bug #666).
FIX: In CircuitChanges.Reconnect.reconnectArcs reconnect only obtuse-angled arcs.

BUG: (10/22/05, GVG) renaming of subcells should be major change (Bug #685)
FIX: Set to major change in Undo.java:Change:setDirty()

BUG: (10/21/05, GVG) DRC does not find overlapping geometry that are not connected (bug #684)
FIX: Still problems with arc crops if elements overlap. Previous pin code for bug 483 only valid if geometries don't overlap.

BUG: (10/21/05, SMR) Waveform window has memory leak (Bug #679).
FIX: In WaveformWindow.finished(), remove listeners and highlighters.

BUG: (10/21/05, SMR) Converting layout to schematic produces a bad database (Bug #675).
FIX: Do not make manhattan in ViewChanges.convertSchematicCell().

BUG: (10/21/05, SMR) Selecting stimuli can be slow (Bug #664).
FIX: In Stimuli.java, always use fast lookup method.  Modify hash table to see all variations.

IMP: (10/20/05, SMR) Measure mode highlighting is persistent, must use
     right click to stop adding measures or to clear (Bugs #590, #668).

BUG: (10/20/05, SMR) Selection slows down when grid is being displayed (Bug #568).
FIX: Instead of drawing the grid with every redisplay,
     render the grid into the offscreen buffer.

BUG: (10/20/05, SMR) Silicon Compiler uses wrong type of arc and crashes.
FIX: Override parameter and select arc in Maker.createConnection().

BUG: (10/20/05, SMR) Copy/Pasting, Duplicating, or Arraying of exports
     does not go in the right order (Bug #672).
FIX: In Clipboard.copyListToCell(), gather all exports before reexporting.

BUG: (10/20/05, SMR) When plotting HSpice output files ending with ".tr1",
     still looks for name file that end with ".pa0" (Bug #674).
FIX: In HSpiceOut.readPA0File(), copy number from one extension to the other.

IMP (10/20/05, GVG) Two new cells representing 2 amplifiers in spiceparts.jelib (Bug #682).
Changes in TechPalette to show only icon cells in spiceparts library.

IMP (10/20/05, JKG) Added Spice option to only extract nets with a name that
    contains 'extractme' from layout.

BUG: (10/20/05, GVG) More option in SpecialProperties dialogs was broken if text was selected (Bug #678)
FIX: Detect those cases where the more button was hit and bring the NodeInst dialog box.

IMP: (10/20/05, GVG) Ability to connect bus wire to capacitors in Schematics (Bug #677)
Solution: bus_wire added as capacitor port.

IMP: (10/19/05, SMR) New display algorithm now "greeks" small cells better
     (uses an image of the cell instead of a single color).

IMP: (10/19/05, SMR) "Nodes" preferences now has option to control reconstruction of arcs
     when cells are deleted.

BUG: (10/18/05, GVG) Special KeyStrokes such as KeyStroke.getKeyStroke('<') don't get properly uploaded if
there is more key bindings for the same function (Bug #670).
FIX: KeyStrokePair.stringToKeyStroke handles the situation now

IMP: (10/17/05, SMR) Undo and Redo now state the activity that is being undone/redone.

IMP: (10/17/05, SMR) Typing ESC while editing in-place aborts and reverts the text (Bug #661).

BUG: (10/17/05, SMR) When editing text in-place, changes to zoom or pan ruin the display (Bug #659).
FIX: Terminate editing in-place when zoom or change happens.

BUG: (10/17/05, SMR) Typing ESC in the Zoom tool doesn't work (Bug #654).
FIX: Added escape processing to ZoomAndPanListener.java.

IMP: (10/17/05, SMR) Error display (such as viewing DRC errors) now flashes small objects (Bug #656).

IMP: (10/17/05, GVG) Movements recorded in the electric message window (Bug #655).
Verbose mode of all ChangeBatch actions in messages window. Added extra flag in Preferences/General tab.

BUG: (10/17/05, SMR) Array dialog doesn't leave room for numeric fields (Bug #657).
FIX: Added call to pack() at end of constructor.

BUG: (10/17/05, SMR) Aborting a drag leaves the dragged rectangle on the screen (Bug #654).
FIX: In ClickZoomWireListener.keyPressed(), clear the area drag when aborted.

BUG: (10/17/05, SMR) GDS preferences are sensitive to spaces and may update too often (Bug #474)
FIX: In GDSTab.java, compare values, not the string.

IMP: (10/17/05, SMR) Deleting a cell instance reconstructs the arcs to the cell (Bug #491).

BUG: (10/17/05, DN) exception while doing cross-library copy (Bug #652).
FIX: In Cell.copyNodeProtoUsingMapping use getVar(SCHEM_FUNCTION, String.class).

BUG: (10/16/05, DN) Irsim doesn't saves stimuli to disk correctly (found by Moscow students in GNU 8.02).
FIX: In irsim.Analyzer.newVector don't divide thisStep by cmdFileUnits twice.

BUG: (10/14/05, SMR) Importing preferences doesn't update component menu (Bug #645).
FIX: In PreferencesFrame.importActionPerformed(), update all component menus.

BUG: (10/14/05, SMR) New database doesn't allow variables to be Point2D (Bug #648).
FIX: Converted to EPoint in ViewChanges.makeIconForCell(), AnnularRing.MakeAnnulus.doIt(),
     PadGenerator.createPadFrame(), CIF.nodesPoly(), Connectivity.convertAllGeometry(),
     Connectivity.realizeNode(), DXF.readLineEntity(), EDIF.doPoly(), EDIF.KeyRectangle.pop(),
     GDS.determineBoundary(), GDS.determinePath(), OutlineListener.InitializePoints.doIt(),
     Sue.readFile(), LayerCoverageJob.doIt().

BUG: (10/14/05, SMR) Ports on subcells are not drawn properly (Bug #647).
FIX: In VectorDrawing.showCellPorts(), caches proper port locations.

BUG: (10/14/05, SMR) Changing layer visibility is slow (Bug #649).
FIX: Do not write visibility changes to preferences until exiting program.

IMP: (10/14/04, SMR) The "New Nodes" and "New Arcs" preferences are now just called
     "Nodes" and "Arcs".  In the "Nodes" preferences is "Disallowing changes to complex nodes"
     which prevents changes to instances or transistor/contacts.

IMP: (10/14/05, GVG) Rolling back cutspace optimization in active and well contacts. The cutspace remains at 2.8 (2D value)
because causes misalignments on contacts whose heights are multiple of 5.

FIX: (10/13/05, JKG) Fixed Pad frame generator (bug #621), Updated manual

BUG: (10/13/05, GVG) Exception in ColorPatternPanel when li.outlinePatternDisplay was null (eg SPECIAL:TEXT) (Bug #644)
FIX: Skip setting of outlinePatternDisplay in that case.

IMP: (10/13/05, JKG) Added Window Menu items to go back/forward between saved views of EditWindow.

BUG: (10/12/05, GVG) Cadence preferences can't be imported on Mac OS X (Sun menu) (Bug #643)
FIX: Change InputStream(String) by InputStream(URL) so Cadence file available in electric.jar can be open.

BUG: (10/12/05, SMR) Unnecessary resize of GetMultiInfo (bug #641)
FIX: Preserve size of scroll area in GetInfoMulti.highlightChanged().

IMP: (10/12/05, SMR) "Artwork Appearance" now called "Artwork Color and Pattern".
     The dialog is modeless.  Instead of having color popups in the node and arc
     Properties dialogs, there is a "Color and Patterns" button.

BUG: (10/12/05, GVG) Unnecessary resize of GetMultiInfo (bug #641)
FIX: Remove lock in GetInfoMulti.highlightChanged().

IMP: (10/11/05, GVG) Size and Tech labels in StatusBar disappear if window is not big enough (Bug #628).

IMP: (10/11/05, SMR) Pad Frame generator now handles view types properly (Bug #621).
     Also, pad frame generator has a "views" command to specify views to generate.

IMP: (10/11/05, SMR) Old outline textures are now used in the new scheme.

BUG: (10/11/05, SMR) Multi-object properties doesn't understand rotated transistors (Bug #626).
FIX: Rotated transistors are handled properly.

BUG: (10/11/05, SMR) Non-centered text on rotated nodes doesn't select properly (Bug #536).
FIX: In Highlighter.findAllInArea(), transform text area after precisely defining it.

BUG: (10/11/05, SMR) Rotated text with multiple lines draws badly (Bug #629).
FIX: Improved location computation, highlighting, and rendering.

IMP: (10/11/05, DN) Simplification of NodeInst and ArcInst ("duplicate" removed, "arcId/nodeId" is used instead).

BUG: (10/10/05, DN) Alignment of text in cross-library copy (Bug #632).
FIX: In CrossLibCopy.showCells use "CellName.compareTo" instead of STRING_NUMBER_COMPARE.

BUG: (10/10/05, GVG) Correcting poly pin centers. They should be a point, not a rectangle.
FIX: Changing offset in primitive.

BUG: (10/10/05, GVG) Find doesn't work with simple regular expressions (bug #636).
FIX: SelectObject dialog now uses Pattern/Match classes for the regular expression because
String.matches doesn't seem to work.

BUG: (10/10/05, SMR) Spice output fails to instantiate subcells that are replaced by a model file (Bug #637).
FIX: In Topology.Visitor.enterCell(), cache cell information even if being ignored.

BUG: (10/10/05, SMR) Cell-center nodes are not visible in black-background colors (Bug #627).
FIX: The commands to switch color schemes now change the Generic layer colors.

BUG: (10/10/05, SMR) When editing "down in place", scroll bars and arrow keys are wrong (Bug #634).
FIX: Scroll bars fixed in EditWindow.setScrollPositionUnsafe, bottomScrollChanged, and rightScrollChanged.
     Arrow keys fixed in ClickZoomWireListener.moveSelected.

IMP: (10/09/05, SMR) Added different outline patterns to textured layers (Bug #617).
     Affects "Artwork Appearance" and "Layers" preferences.
     Updated technology editor to handle it.

BUG: (10/07/05, GVG) Cut spacing in 1xN and MxN poly contacts was not 2.5 and 2.8 respectively (Bug #624)
FIX: Split of cut DRC rules into CUTSPA and CUTSPA2D as it is done in TSMC90.

BUG: (10/07/05, GVG) Fix CUTSUR to 1.4 for well contacts in TSM180.

IMP: (10/07/05, GVG) Cadence Preferences XML under SunAsync menu. It will allow you to backup previous configuration.

IMP: (10/07/05, GVG) Disconnect resizing of arcs when you switch from Mosis->TSMC until better solution is found.

BUG: (10/07/05, SMR) Pure layer nodes of well or select are not drawn (Bug #622).
FIX: In VectorDrawing, do not ignore well/select layers from pure-layer nodes.

IMP: (10/07/05, SMR) Parasitics preferences now have technology popup.

BUG: (10/07/05, SMR) Component menu has wrong background color (Bug #620).
FIX: Moved initialization of background color in PixelDrawing.java.

BUG: (10/06/05, DN) Epic waveform viewer exception while reading incomplete out file (Bug #619)
FIX: In EpicOut.EpicReader.readBug set "bufL = 0" on EOF.

IMP: (10/06/05, SMR) Grid preferences now offers option to show axes through origin (Bug #616).

BUG: (10/06/05, SMR) Graphical cell lists always show the entire library,
     never from current cell (Bug #614).
FIX: In CircuitChanges.GraphCells constructor, save "top" parameter.

BUG: (10/06/05, SMR) List Cell Usage doesn't handle icons (Bug #618).
FIX: In CellUsage.java, consider icon cells, too.

BUG: (10/06/05, SMR) Colors are not updated after importing preferences.
FIX: Added recaching to EGraphics, delayed background caching to PixelDrawing.

BUG: (10/06/05, SMR) New "Layers" tab doesn't always show the preview.
FIX: Made the preview be separate from the color chooser.

BUG: (10/06/05, SMR) Cell frames are not visible when the background is black (Bug #615).
FIX: Use proper color, not black.

BUG: (10/06/05, SMR) Printing schematics and layout is wrong.
FIX: In EditWindow.paint() and EditWindow.repaintContents(), ignore windows with no frame.

IMP: (10/06/05, DN) In many places generic type parameters are added for static type-checking.
     runAll4.sh script is added to regressions of main branch by Java 1.4 .

************************* Version 8.04a: *********************************

BUG: (10/05/05, GVG) Navigation with < and > fixed in ErrorLogger (Bug #624).

IMP: (10/05/05, SMR) Title box now defaults the designer name to the current user (Bug #609).

IMP: (10/05/05, GVG) Extra dialog for bug 588 to avoid exception message.

BUG: (10/05/05, GVG) KeyBinding explorer tree did't describe properly keybinding like '>'
     due to keyCode = KeyEvent.VK_UNDEFINED (Bug #604).
FIX: Apply getChar in this case.

BUG: (10/05/05, SMR) Spice output doesn't notice header/trailer files in
     directories that are not where the library came from (Bug #594).
FIX: In "Spice.writeHeader()" and "Spice.writeTrailer()", use current output file's directory.

IMP: (10/05/05, SMR) New command in SDI mode: "Window / Remember Location of Display"
     saves initial window location.

BUG: (10/05/05, SMR) Zooming-out (with Shift key) while editing down-in-place fails (Bug #492).
FIX: In ZoomAndPanListener.mouseReleased(), transform coordinates when down-in-place.

BUG: (10/05/05, SMR) Outline edit mode places new points in strange locations (Bug #154).
FIX: In OutlineListener.mousePressed(), take new point from cursor.

BUG: (10/05/05, SMR) Importing preferences doesn't update layer appearance (Bug #601).
FIX: Must recache all EGraphics information after importing preferences.

IMP: (10/05/05, DN) Transactional DB: PortInst stores its Variables in ImmutableNodeInst.

BUG: (10/05/05, DN) JELIB reader doesn't convert variables on port inst.
FIX: Move conversion from ELIB to LibraryFiels.

IMP: (10/04/05, RK) Add loco2 and sport to NCC regressions

IMP: (10/04/05, GVG) Original fix for enhacement #507 didn't work as expected. So new code should check if
cells are in goodDRCDate. If cells are there, it means they were touched by the current run.

BUG: (10/04/05, DN) Pattern matching called from "EvalJavaBsh.replace()" allocates too many temporary objects.
FIX: Cache "replace" results in HashMap.

BUG: (10/04/05, DN) Message "Unlinked var ART_message added to highlight" when roaming text.
FIX: In user.Highlight.setVar print message when var is NOT linked.

BUG: (10/04/05, DN) Some regressions fails in progress dialog (Bug #197).
FIX: In methods of class user.dialogs.Progress insert "if (Main.BATCHMODE) return".

BUG: (10/04/05, DN) Spice (Epic) waveform viewer cross-probing broken again after #583 fix (Bug #580).
FIX: In WaveformWindow.findSelectedSignals use findSignalForNetwork after findSignalForNetworkQuickly failed.
     In Signal.setSignalName use getFullName() instead of signalName.

IMP: (10/03/05, SMR) Combined the "Layers" and "Colors" preferences into a single panel.
     Extended the "Artwork Appearance" dialog to include layers and colors.

IMP: (10/03/05, SMR) Modified more "Preferences" panels to have their own technology popup:
     Routing, Logical Effort.

BUG: (10/03/05, DN) Assertions in Cell.java and Out of Bounds exceptions (Bug #598).
FIX: In PortInst.isLinked() check nodeInst.isLinked()

BUG: (10/03/05, GVG) During preferences, key bindings might get duplicated. This was noticed while fixing Bug #578.
FIX: Replace List by Set as elements of userMap hash table.

IMP: (10/02/05, RK) NCC: Improvement to hash coding algorithm (Bug# 599)

IMP: (10/02/05, DN) Transactional DB: Variable and TextDescriptor are immutable classes. They have "with*" API.

BUG: (09/30/05, GVG) preferences don't "stick" (Bug#575).
FIX: Making DRC options not meaning variables to avoid confusion.

IMP: (09/30/05, GVG) Foundry in StatusBar part of technology message. It can't be in
second row because of hierarchical information. See "IMP: (09/21/05, GVG) Foundry shown.."

IMP: (09/30/05, SMR) Modified some "Preferences" panels to have their own technology popup:
     CIF, GDS, Antenna Rules, Coverage, New Arcs, New Nodes.

IMP: (09/30/05, SMR) When plotting simulation output, prompt for associated cell allows
     any cell to be chosen (Bug #595).

BUG: (09/30/05, RK) NCC regressions don't run on Windows (Bug #596).

BUG: (09/30/05, RK) NCC: Local Partitioning perfomance bug for large number of PortInsts (Bug #572).

BUG: (09/30/05, SMR) Black background doesn't draw text right (Bug #593).
FIX: Changed default black color to an appropriate one for the background.

IMP: (09/30/05, SMR) Schematic DRC no longer checks for overlap of graphics.

IMP: (09/30/05, SMR) "Layers" preferences panel has intelligent "outline" checkboxes.

BUG: (09/30/05, SMR) Crossprobing from the schematics to the waveform window takes too long (Bug #583).
FIX: Use hash tables to optimize name lookup.

IMP: (09/29/05, SMR) Added keyboard shortcut listing in manual.

IMP: (09/29/05, SMR) Added manual entry for schematic DRC.

IMP: (09/29/05, SMR) Added section in "Layout Tutorial" of manual that explains
     how to connect a contact to a transistor.

BUG: (09/30/05, GVG) Solid colors in ColorsTab are not updated because the information
relies on values found in LayersTab (Bug #589).
FIX: Make layerMap in LayersTab a singleton.

BUG: (09/30/05, DN) Cleanup Cell/Shorten Selected Arc, does opposite (Bug #587).
FIX: In CircuitChanges.ShortenArcs.doIt use ArcInst.HEADEND and ArcInst.TAILEND instead of 0 and 1.

BUG: (09/26/05, DN) Deleting arcs is too slow (Bug #547)
FIX: Comment check of Connections in Cell.check().

BUG: (09/29/05, DN) Schematic VDD Symbol misleading (Bug #586)
FIX: In technologies.Schematics change "pwr" to "vdd" and add item to "converOldPortName".

BUG: (09/29/05, GVG) Sizes of poly arcs change depending on order libraries are read in (Bug #576).
FIX: Add ResetDefaultWidthJob(lib) every time a library is read because it can't rely on
the reconcilation dialog. As side effect, only gate arcs parallel to the transistors will
be resized.

BUG: (09/28/05, SMR) Text is always black: does not show up on black background.
FIX: In "PixelDrawing.drawText()", initialize color to proper default.

BUG: (09/28/05, SMR) Printing does not work.
FIX: In "FileMenu.printCommand()", must call "getOutputPreferences()" all the time,
     not just when printing Waveform windows.

BUG: (09/28/05, SMR) Toolbar buttons for arrow key distance are not set right.
FIX: In "ToolBar.createToolBar()" set defaults from Preferences value.

IMP: (09/28/05, DN) Transactional DB: ImmutableArcInst and ImmutableNodeInst are subclasses of ImmutableElectricObject.

BUG: (09/28/05, GVG) KeyBindings are not cached if preferences are imported. Export/Import
as new button names in Preferences (Bug #578)
FIX: Calling MenuBar.restoreSavedBindings(false) in Preferences.

BUG: (09/27/05, DN) Spice (Epic) waveform viewer cross-probing broken down in hierarchy.
FIX: In io.input.EpicOut.readEpicFile add "removeLeadingX()" to strip 'x' from Epic names.

BUG: (09/27/05, DN) "Spice.segmentedNets.PortInstComparator.compare" doesn't obey the contract for "compare".
FIX: Compare NodeInsts of PortInsts first.

BUG: (09/27/05, DN) Compaction regression fails.
FIX: In constraint.LayoutCell replace "arcModified" by "arcMoved", so that change of bits doesn't lock arc.

BUG: (09/27/05, DN) NullPointerExceptions in BATCH mode.
FIX: In WindowFrame.createEditWindow insert "if (Main.BATCHMODE) return null;"

BUG: (09/27/05, DN) NullPointerException in TextUtils.formatDouble.
FIX: In TextUtils.formatDouble change numberFormatPostFix to numberFormatSpecific.

BUG: (09/27/05, DN) Icons should be always be expanded cells/instances (Bug #570)
FIX: In Cell.isWantExpanded() and NodeInst.setExpanded() ensure that icon instances are always expanded.

IMP: (09/27/05, DN) Branch "version8-03-stable" was created from tag "version8-03.h".
     The main branch has version number "8.04a".

BUG: (09/26/05, GVG) Changes in the code to be able to run regressions without setting the environment variable DISPLAY (bug 197).
FIX: Decouple messages stream from messages window. Regressions updated.

BUG: (09/26/05, RK) Bug: Node Info dialog has MoCMOS polysilicon resistors width and length swapped. (Bugzilla# 574)

BUG: (09/26/05, RK) Bug: NCC doesn't recogognize MoCMOS polysilicon resistors.
FIX: I made MoCMOS names same as TSMC90 (Bugzilla# 573)

BUG: (09/26/05, RK) I fixed: NCC: Comparing a Cell and its child yields match. (Bugzilla# 571)

BUG: (09/26/05, SMR) New VectorDrawing module doesn't handle complex orientations right.
FIX: In "VectorDrawing.render()", reverse Orientation concatenation.

BUG: (09/26/05, DN) Deleting arcs is too slow (Bug #547)
FIX: Guard some of checkInvariants by "if (Main.getDebug()).

BUG: (09/26/05, DN) GetInfoArc dialog creates "ART_color" variable though nothing was changed.
FIX: In GetInfoArc.doLoadInfo assign "DEFAULT COLOR" to initial value".

BUG: (09/26/05, DN) State bits of nodes and arcs are not Undoable.
FIX: In NodeInst and ArcInst use Undo.modifyNodeInst and Undo.modifyArcInst instead of Undo.otherChanges.

IMP: (09/26/05, DN) Transactional DB: ImmutableElectricObject which stores ImmutableVariables.

IMP: (09/24/05, GVG) Option -v doesn't initialize any GUI stuff so it could run without setting
the DISPLAY variable.

IMP: (09/24/05, GVG) N-Well should be hard to select by default (Bug #368)
Implemented for new nodes created with the TechPalette.

BUG: (09/23/05, DN) Icons should be always be expanded cells/instances (Bug #570)
FIX: In input.JELIB.instantiateCellContents don't use expand flag from disk file, because it is false now.
     Expand bit of NodeInsts will be set either from preferences or from Cell default "getProto().isWantExpanded()".
     Icon cells have "isWantExpanded()=true", so they are expanded by default.

************************* Version 8.03h: *********************************

BUG: (09/23/05, GVG) Icons should be always be expanded cells/instances (Bug #570)
FIX: Force expansion for master icons (in schematics master) and instances.
Added if (ni.isIconOfParent() || ((Cell)ni.getProto()).isIcon()) ni.setExpanded(true); in Cell.loadExpandStatus().

IMP: (09/23/05, DN) Transactional DB: Changes in library readers, Input.readLibrary moved
     to LibraryFiles.readLibrary ( regression scripts updated ).

BUG: (09/22/05, GVG) Exception in WindowMenu -> Move to other Display due to latest changes in ToolBars (Bug #560)
FIX: Detect if allButtons.size() == 0 and return false;

BUG: (09/22/05, GVG) Problem renaming cells for GDS export when name conflicts were found. This was the reason
ExportGDS_CIF was failing since v8.03f for qFourP2.
FIX: Changes in GDS.makeUniqueName().

BUG: (09/22/05, GVG) Gate generations for TSMC180 and TSMC90 passe now.
FIX: Some resolution errors fixed in fillDiffAndSelectNotch while extending region to cover
select on transistors not aligned.

BUG: (09/22/05, SMR) Icon cells get "greeked" out (Bug #561).
FIX: In VectorDrawing.drawCell, clear maximum feature size information for icons.

BUG: (09/21/05, SMR) Arcs in the component palette are not drawn (Bug #565).
FIX: In ArcInst.makeDummyInstance(), compute dummy arcs properly.

IMP: (09/21/05, GVG) Correcting regression data due to latest changes in network, GDS layers, etc that make the
regressions to fail.

BUG: (09/21/05, GVG) Still having problems with notches in TSMC180 gate regression, few errors though for some
weak transistors not aligned with the rest of the primitives.

IMP: (09/21/05, GVG) Foundry shown in StatusBar below technology. Valid only for layout technologies.

BUG: (09/21/05, DN) Strange behavior - lots of networks (Bug #557)
FIX: NetworkHighlighter finds highlights for a set of Networks avoiding duplicates.

IMP: (09/21/05, DN) Transactional DB: ImmutableVariable.
     ElectricObject.newKey was moved to Variable.newKey.

IMP: (09/21/05, SMR) Added David Harris's Electric tutorial to the user's manual.
     Added his MIPS library to the library area; added new command under Help / Load Built-in Libraries
     to load it.

************************* Version 8.03g: *********************************

BUG: (09/21/05, JKG) Null exception in Export Spice (Bug #556)

BUG: (09/21/05, SMR) Editing cell in new window gets size wrong (Bug #417)
FIX: In WindowFrame.createEditWindow, call fillScreen() before repaintContents().

BUG: (09/21/05, DN) NetSchem throws exception when icon port has no equivalent port (Bug #554 #555).
FIX: In NetSchem.buildNetworkLists add loop by NodeInsts to give temporary names to unconnected Networks.

BUG: (09/20/05, GVG) Bug fixes for TSMC180 gate generator. Select notch fill function
was not working when left mos was not aligned with right mos.

BUG: (09/20/05, SMR) Changing a cell lower in the hierarchy may not redraw it higher
     up the hierarchy in other windows (Bug #437).
FIX: In User.markCellForRedraw, always recurse up the hierarchy.

IMP: (09/20/05, SMR) "Select Object" can now search by regular expressions (Bug #370).

IMP: (09/20/05, SMR) Selecting a node shows its size in the status bar (Bug #341).

BUG: (09/20/05, SMR) Layers tabs in different windows don't update properly (Bug #431).

BUG: (09/20/05, SMR) Absolute text (in points) is not considered in cell size (Bug #386).
FIX: In ElectricObject.getTextBounds, do not ignore absolute text.

IMP: (09/20/05, SMR) Multi-object Properties dialog is smarter about the selected objects (Bug #403, #435)

BUG: (09/20/05, DN) Cleanup pins doen't delete all duplicate arcs (Bug #552).
FIX: In CircuitChanges.cleanupCell iterates on arcs instead of on nodes.

BUG: (09/20/05, DN) Network names "p1-2" and "p12" are considered equivalent by NetworkTool.
FIX: In text.Name class remove "trimPlusMinus".

BUG: (09/20/05, DN) "s1.toLowerCase().equals(s2.inLowerCase()" is not equivalent to s1.equalsIgnoreCase" but is used in many places.
FIX: In TextUtils add "canonicChar" and "canonicString" methods and use them.

BUG: (09/20/05, DN) Assertion error after bus width error messages (Bug #549)
FIX: In NetSchem.localConnections do something plausible when width mismatches.

BUG: (09/20/05, DN) Not all error messages are shown.
FIX: In ErrorLogger.clearLogs(Cell) don't clear trimmedLogs.

BUG: (09/18/05, DN) Exports in Spice are not in STRING_NUMBER_ORDER.
FIX: In "Topology.doGetNetworks" sort by name. In Spice.java use STRING_NUMBER_ORDER.

IMP: (09/18/05, GVG) Gate generator for TSMC180

BUG: (09/18/05, DN) If we add 90-angle polysilicon arc to the unconnected end of 45-angle transistor in
    "Help|Make fake circuitry MoCMSO" example, we shall get a notch.
FIX: Do not use "canShrink" in "PortInst.updateShrinkage" until PrimitiveNodes can be drawn shortened
     in JElectric.

BUG: (09/18/05, DN) 45-angle arc is not shrinked properly in "Help|Make fake circuitry MoCMOS" example.
FIX: Add "PortInst.updateShrinkage" and "PortInst.checkShortening" methods which are improved verions of
    "ArcInst.updateShrinkage" and "ArcInst.checkShortening".

BUG: (09/18/05, DN) Expanded status of Cells which have '/' in name is not saved in preferences.
FIX: In Cell.loadExpandStatus and Cell.saveExpandStatus put "cellName.replace('/', ':')".

BUG: (09/18/05, DN) Compaction regression failed.
FIX: In ArcInst.copyConstraintsFrom insert copy angle as well.

BUG: (09/16/05, RK) Fixed FillGenerator. It was placing Well outside Cell boundary on left and right. (Bugzilla# 551)

IMP: (09/16/05, SMR) Added another General preference: the portion of the screen
     that a cell must consume to NOT be greeked by the display system.

BUG: (09/16/05, SMR) Spice output removes apostrophies unnecessarily (Bug #546).
FIX: Allow them in parameter substitution of templates.

BUG: (09/16/05, DN) Inverse alphabatical order of net names.
FIX: In Network.addUserName put "<" instead of ">".

BUG: (09/16/05, DN) Sometimes constraint system swaps ends of modified ArcInst.
FIX: In constraint.LayoutCell use ArcInst.HEADEND and ArcInst.TAIEND .

IMP: (09/15/05, RK) FillGenerator modified to work for tsmc180. (Bugzilla# 545)

BUG: (09/15/05, DN) HierarchyEnumerator should choose user-defined name for nets shortened by resistor.
FIX: In HierarchyEnumerator.numerNets choose the most appropriate name.

IMP: (09/15/05, SMR) When interactively sizing, Shift key now constrains
     proportions; hold Control-Shift to do sizing about center (Bug #344).

IMP: (09/15/05, SMR) "Select Object" command now flashes small selections and
     points out those off the screen (Bug #401).

BUG: (09/15/05, SMR) CDL files should not include "Spice Code" information (Bug #426).
FIX: Code and Declarations ignored in CDL mode.

IMP: (09/15/05, SMR) In "zoom" mode, right click and drag up/down does
     continuous zooming in and out.

IMP: (09/19/05, SMR) Can now create "Spice Declaration" objects which are emitted at the
     head of the cell (Bug #456).

BUG: (09/15/05, SMR) New windows are created with improper toolbar button settings (Bug #475).
FIX: In ToolBar.createToolBar(), initialize buttons properly.

BUG: (09/15/05, SMR) Measure mode crashes when multiple SDI windows are crossed.
FIX: In MeasureListener.mouseDragged, make sure the drag was properly initiated.

BUG: (09/15/05, SMR) Typing ^K when there is no window crashes (Bug #532).
FIX: Make sure the results of EditWindow.needCurrent() are tested everywhere.

BUG: (09/15/05, SMR) Plotting Spice/Verilog listings doesn't prompt for associated cell. (Bug #535, 542)
FIX: In Simulate.plotSimulationResults(), fixed bad test for cell validity.

IMP: (09/15/05, DN) Transactional DB: ImmutableArcInst.java.

IMP: (09/15/05, GVG) GateGenerator changes for TSMC180 (not all)

IMP: (09/14/05, SMR) Can now change the font and size of text when editing textual cells.

IMP: (09/14/05, SMR) EDIF Preferences now has "Cadence compatibility" checkbox.
     In Cadence mode, multidimensional and symbolic busses are made into scalars.

IMP: (09/14/05, SMR) Preferences dialog now has "Save" and "Restore" buttons (Bug #541).

IMP: (09/14/05, SMR) Waveform viewer shows the name of the stimulus file (Bug #544).

IMP: (09/14/05, SMR) New display algorithm handles variable context properly.
     Aborts cleanly when new display is requested.
     Has control (in "General" preferences) for greeking level.

BUG: (09/13/05, SMR) Display flashes occasionally, briefly clearing everything.
FIX: Made EditWindow be "Opaque" so that it is not cleared by Swing.
     Ensured that EditWindow.paint() always draws.

IMP: (09/12/05, SMR) Complete rewrite of display code.  New module, "VectorDrawing.java"
     caches low-level graphics for each cell, allowing caches to be "played-back" rapidly.
     Has better performance than "PixelDrawing" which caches expanded cell images.
     Does not need to recache when zoom scale changes, layer visibility changes, etc.
     Only downside is that cache creation is slow when large chip is first fully-instantiated.

BUG: (09/11/05, DN) Slow display (Bug #537).
FIX: In PixelDrawing make maxObjectSize and halfMaxObjectSize static (they were 0 in cache cells).
     Use class ExpandedCellKey instead of String. Don't create Image for cache cells.

BUG: (09/11/05, DN) Problem with rotation of bus arcs (Bug #539).
FIX: In CircuitChanges change method RotateSelected.doIt .
     In LayoutCell use arcModified test instead of getChangeClock .

IMP: (09/10/05, JKG) Added option under NCC to back-annotate layout with schematic
    net names. This allows easier probing when writing netlists from layout (Parasitic extraction).

IMP: (09/09/05, JKG) Added Sun-specific menu. This is a plug-in meant only
    for use in our async group, for better integration with tools here.

IMP: (09/09/05, JKG) Option to convert Export names when writing GDS if NCC
    annotation 'exportsConnectedByParent' is present. This asserts a virtual connection
    between networks that have exports matching the annotation. Other CAD tools provide
    this functionality, but only match names that have a ':' in them and match exactly.
    This option renames those exports to all the same name with a ':' in them so other
    tools can provide the same functionality as 'exportsConnectedByParent'.

BUG: (09/09/05, DN) JELIB reader reads only last decimal digit of tech-specific bits.
     For example, it corrupts PortCharacteristic of Global-Signal instances.
FIX: In io.input.JELIB.instantiateCellContents line 868 put "break parseStateInfo;" into loop parsing NodeInst's sateInfo .

IMP: (09/09/05, DN) Wiped bit is not stored to library files, because it is computed form database.
    So 'W' and 'E' bits are not written to JELIB node inst lines more.

BUG: (09/09/05, DN) Expand cell instances should not modify referenced library (Bug #366).
FIX: Expand instance bits are no more part of database. They are user preferences,
     which are saved to registry on Quit. Unfortunately, they are not undoable now.
     OBJECTREDRAW in Undo doesn't set cell modified flag, so expand cells doesn't touch
     Cell explorer.

IMP: (09/07/05, JKG) Added max series resistance option under parasitics.
     This breaks long single PI models into series of distributed PI models.

BUG: (09/09/05, DN) Mirroring not correct on icons *Bug #531).
FIX: In CircuitChanges.java change method RotateSelected.doIt().

BUG: (09/09/05, DN) Spice netlister should use alphabetically first export name fo rsignal name independently of its width (Bug #512)
FIX: In Topology.java add "isChooseBestExport()" decider, In Spice.java override it by "false".

BUG: (09/08/05, DN) HierarchyEnumerator was shorting polysilicon resistors when it wasn't supposed to. (Bugzilla# 529)

BUG: (09/07/05, SMR) Invisible components are selected when "Dragging must enclose objects"
     is checked (Bug #335).
FIX: Reorganized Highlighter.checkOutObject() to ensure objects are visible.

BUG: (09/07/05, RK) 90nm fill cell generator fixed to not extend well outside cell boundaries (Bugzilla# 469)

BUG: (09/07/05, RK) NCC now stops when the user aborts the job (Bugzilla# 523)

IMP: (09/07/05, SMR) Modified compactor to enable regression testing of it.

IMP: (09/07/05, SMR) Export Properties dialog now shows the export center location (Bug #481).

IMP: (09/07/05, SMR) "Attributes" dialog now has "Edit" button next to value field (Bug #517).

************************* Version 8.03f: *********************************

IMP: (09/05/07, SMR) Further improvements for EDIF bus output.

BUG: (09/07/05, SMR) When components from two different technologies are displayed,
     the color maps may interfere (Bug #500).
FIX: Removed color maps from the Schematics technology so it can mix properly.

BUG: (09/06/05, SMR) Attributes "Value" field moves cursor to end with each change (Bug #517).
FIX: Do not update field when typing has occurred.

IMP: (09/06/05, SMR) Layout text can now take multiple lines (Bug #520).

BUG: (09/07/05, DN) IRSIM and some other netlisters doesn't treat properly PolyResistors and SpiceAmmeters.
FIX: This is not a fix yet, but prearation for it.
     The solution will be: HierarchicalEnumerator will create its own Netlists dependent of parameters.
     Now I removed Netlist parameter from HierarchicalEnumerator.enumerateCell methods .

BUG: (09/07/05, DN) Expand/unexpand is broken in Layout (Bug #525)
FIX: In PixelDrawing.expandedCellCached swap getShearX() and getShearY().

BUG: (09/07/05, DN) NodeInst.getInstancesOf returns instances of other cells (Bug #526, Bug #527)
FIX: In NodeInst.NodeInstIterator.findNext test ni.getProto().

BUG: (09/06/05, RK) NCC no longer displays Part, Wire, Port counts when a netlist error prevents it from building a netlist. Instead it says couldn't build netlist. See errors. (Bugzilla #519)

BUG: (09/06/05, RK) NCC suggests use of resistorType annotation if resistor type is missing. Updated NCC user manual to describe transistorType and resistorType annotations (Bugzilla #484)

IMP: (09/06/05, JKG) Added option to encase top level cell in subckt defintion for spice output.

BUG: (09/06/05, SMR) Attributes "Value" field moves cursor to end with each change (Bug #517).
FIX: Do not update field when typing has occurred.

IMP: (09/06/05, SMR) Layout text can now take multiple lines (Bug #520).

IMP: (09/05/05, SMR) Further improvements for EDIF bus output.  Configuration
     settings are now in EDIF Preferences.

IMP: (09/05/05, DN) Transactional DB: LibId.java, ExportId.java, PortProtoId.java.

IMP: (09/06/05, DN) GenMath.figureAngle rounds to nearest 1/10 (was to lower).

IMP: (09/05/05, GVG) Add one option in Edit menu to toggle between neither end/both ends (bugzilla #489)

IMP: (09/05/05, GVG) Ability to search cells by name under ExplorerTree

IMP: (09/05/05, GVG) Expand explorer tree in Manual to place where html page is open (bugzilla #515).
Same for preferences dialog.

IMP: (09/05/05, GVG) Include library name in error message in LE (Bugzilla #516)
FIX: Added 'in (" + localCell.getLibrary().getName()+")' in error message.

IMP: (09/04/05, JKG) Add button to allow user to reset layer parasitics to factory default values

IMP: (09/04/05, DN) In getShape methods EditWindow class is replaced by EditWindow_ interface
    for future changes.

IMP: (09/04/05, DN) Step to transactional database: CellId.java, CellUsage.java, NodePortoId.java .

IMP: (09/04/05, DN) Less error messages on "unconnected pins" in NetCell.java .

IMP: (09/03/05, GVG) Max length rules for slot wires implemented. The code runs together with min area
checking because max length should be checked in extracted geometry (Bugzilla #518)

IMP: (09/02/05, GVG) Italian font when cells/libraries are marked with minor changes. Minor/major status
also valid for cells. Some code to determine if cells can be removed.

IMP: (09/02/05, GVG) Bold/italic fonts also for groups (Bugzilla #499)

BUG: (09/2/05, GVG) Exception in Cell information if no DRC was run (no Bugzilla)
FIX: DRC.getActiveBits() needs Technology as parameter.

IMP: (09/02/05, DN) Speed up redisplay:
  1) Don't use slow Math.round in databaseToScreen .
  2) Don't initialize temporary EditWindow when create PixelDrawing for subcell.

BUG: (09/02/05, SMR) Zero width arcs are drawn incorrectly (Bugs #521 & #522).
FIX: Incorrect optimization of zero-width arcs repaired.

IMP: (09/01/05, JKG) Simple Parasitic Extraction from layout for spice

IMP: (09/01/05, SMR) Speed up redisplay.

IMP: (08/31/05, SMR) EDIF I/O configuration now handles global name conversion.

************************* Version 8.03e: *********************************

IMP: (08/30/05, SMR) Initial changes to speed up redisplay when small amounts change.

IMP: (08/29/05, SMR) Improved EDIF I/O (and the "edif.cfg" file) for Cadence compatiblity.

BUG: (08/29/05, SMR) Drawing transparent layers from a technology other than the current
     produces an error and fails to draw the layers (Bug #500).
FIX: In PixelDrawing.java, convert the transparent layers to opaque layers.

BUG: (08/29/05, SMR) Closing a library is prevented if instances from it are in the clipboard (Bug #504).
FIX: Clear the clipboard in such situations.

IMP: (08/30/05, GVG) Changes in DRC documentation to deal with Bug #496

IMP: (08/27/05, DN) Connections of NodeInst are sorted by port index. This speeds
    up PortInst.getConnections() method in case of cell instances with many exports.

IMP: (08/27/05, GVG) Option under ERRORS in Explorer Tree to delete all loggers at once.

BUG: (08/26/05, SMR) When editing "down in place", double-clicks from explorer fail (Bug #506).
FIX: In EditWindow.setCell(), must set in-place bit properly.

IMP: (08/26/05, SMR) When cycling through errors, if selected objects are not visible,
     screen shifts to them

IMP: (08/26/05, SMR) "Measure" mode in waveform window snaps to lines, not just points.

IMP: (08/25/05, SMR) Waveform window now crossprobes between Explorer tree and schematic.
     Also have "R" key bound to "Remove from Waveform" in "Edit / Selection".
     (Bug #502).

BUG: (08/25/05, SMR) Moving 45-degree arcs crashes.
FIX: In CircuitChanges.ManyMove.doIt(), guard against singularities in computing intersection.

BUG: (08/24/05, SMR) Arc Properties dialog sometimes shrinks fields (Bug #487).
FIX: Must repack dialog when fields change.

BUG: (08/24/05, SMR) When text is "greeked" (drawn as a line because it is too small)
     The line is too long (Bug #424).
FIX: In "PixelDrawing.drawText()", compute size properly.

IMP: (08/25/05, GVG) Version not updated once library is saved (Bug #508)

IMP: (08/25/05, GVG) Improvements on DRC tool regarding cells that already being checked without no errors (Bug #507)

BUG: (08/25/05, DN) Compilation error on Java 1.5 (Bug #505).
FIX: Change Integer.valueOf(n) to new Integer(n) in LayoutCell.java.

BUG: (08/25/05, DN) Undoing moving of cell center (Bug #453).
FIX: Change in constraint/undo system.

IMP: (08/25/05, DN) NodeInst costructors and modifieds use Orientation.

IMP: (08/24/05, SMR) Modified generators (pad frame, ROM, CMOS, Silicon compiler)
     so that they can be tested in automatic regressions.

BUG: (08/24/05, DN) Epic ".out" reader doesn't incput current waveforms.
FIX: In EpicOut add waveform type. Calculate mivV/maxV for every signal.

IMP: (08/23/05, GVG) Disconnect PP/NP.R.1 from DRC. Those rules are guaranteed by construction and causing more
distraction now.

IMP: (08/23/05, GVG) More suitable combination of TSMC180 rules in MoCMOS technology.

IMP: (08/23/05, GVG) Adding overlap value in DRC error messages. polyCoverByAnyVTLayer() only available in 90nm.

IMP: (08/22/05, SMR) Modified printing so that common print dialog is used
     (used PrintRequestAttributeSet parameter to PrinterJob.print()).

IMP: (08/22/05, SMR) Fixes to node extractor.

************************* Version 8.03d: *********************************

BUG: (08/22/05, GVG) Problems with poly to active spacing (Bug #483)
FIX: the crop functionality doesn't work when multiple arcs overlap. This is a patch and still is not perfect.

BUG: (08/22/05, GVG) VT{H/L}_{P/N}.D.2 not available in ST90 (only available if TSMC is the foundry) (Bug #493)
FIX: Make code available under ST foundry

IMP: (08/22/05, GVG) RH layer added in TSMC90 and poly resistors (same scale as select layers) (Bug #486)

BUG: (08/19/05, SMR) Spice output doesn't handle long comments in "Spice cards" (Bug #442).
FIX: Now recognizes comments and handles continuation properly.

IMP: (08/19/05, SMR) Non-HSpice output readers now recognizes all HSpice formats (Bug #461).

BUG: (08/19/05, SMR) When copying a schematic to another library with "use existing subcells"
     checked, it will copy the icon instead of using an existing one (Bug #444).
FIX: In "CircuitChanges.copyRecursively()", must actually check the destination library
     to prevent duplicate copying.

BUG: DRC on loPI fill throws exception in method PolyBase.getSortedLoops (Bug #467).
FIX: PolyBase is not Comparable, so pass AREA_COMPARATOR to "sort()" method.

IMP: (08/18/05, GVG) More changes for Mosis->TSMC switch (select surround in active contact) (Bug #477).
RPO is silicide block and with same pattern as in 90nm

************************* Version 8.03c: *********************************

BUG: (08/18/05, GVG) Fix for bogous DRC rule RPO.R.1 (Bug #478)

IMP: (08/17/05, GVG) RPO resistors in 180nm (Bug #458)

IMP: (08/17/05, GVG) More changes for Mosis->TSMC switch in 180nm

BUG: (08/17/05, GVG) Problems getting via spacing rules for multi-cuts. (Bug #468)
Note: This might generate more errors in TSMC90 because vdd/gnd must be connected explicitly in some
cells.
FIX: Three states for multi cuts: -1 (don't care), (0) 1xN arrays, (1) MxN arrays for contacts.

IMP: (08/17/05, GVG) ALGO_SWEEP default in DRC area checking

BUG: (08/17/05, GVG) imported cells from GDS should be given type {lay} (Bug #472)
FIX: Added View.LAYOUT.getAbbreviation() to the cell name during importing of the cell.

BUG: (08/16/05, RK) GDS import places Exports on wrong layer (Bug #471)

BUG: (08/16/05, GVG) Unable to probe global signals in Waveform (Bug #470)
FIX: Added Globals in Waveform.getSpiceNetName() because globals are nor marked
as export.

BUG: (08/16/05, DN) Bug in "List connections on network" (Bug #466).
FIX: In ToolMenu.listConnectionsOnNetwork use "HashSet ports" instead of "PortProto pp".

BUG: (08/14/05, GVG) Fix to avoid exception if layers[i] is null in Technology.setColorMapFromLayers()
on Mac (not sure if happens on other machines)

IMP: (08/12/05, RK) 90nm Layout Generator: add invCLK (Bug# 463)

BUG: (08/12/05, RK) NCC Fix for: NCC throws exception: "Must be leaf", (Bug# 459)

IMP: (08/12/05, GVG) Extra functions to covert MoCMOS cells into TSMC180 ones.
Resize of primitive nodes only available for 180nm tech. Poly arcs and transistor lengths
are resized to multiple of the default value (2.0 for MoCMOS or 1.8 for TSMC).

BUG: (08/12/05) Several bug fixes related to preferences that might have fixed Bug #462.

IMP: (08/10/05, GVG) Foundries only available for 90nm and MoCMOS technologies.

BUG: (08/10/05, GVG) Exception if trying to read HSpice file with PSpiceOut reader (Bug #460)
FIX: Detect error and abort reading.

IMP: (08/10/05, GVG) TSMC switch in 180nm technology. Primitive nodes are resized.
Different GDS values are stored for TSMC. Resize functions available in Preferences.

IMP: (08/10/05, DN) NodeInst rotation methods use Orientation class.

BUG: (08/10/05, DN) Outline edit broken if shape is mirrored (Bug #452)
FIX: In NodeInst.setTrace put getXSizeWithMirror instead of getXSize.

IMP: (08/10/05, IM) NCC GUI: Segregated matched and mismatched Parts/Wires in
     equivalence classes. Mismatches are printed in red, matches in green.

BUG: (08/09/05, GVG) Stack overflow in CrossLibCopy while moving cell with subcells, related views and delete after (Bug #448)
FIX: allRelatedViewsThisLevel instead of allRelatedViews in one CrossLibCopy.copyRecursively() inside that function

BUG: (08/09/05, GVG) can't change spice preferences to "No Header Cards" (Bug #455)
FIX: Functions getSpiceTrailerCardInfo and getSpiceHeaderCardInfo were wrongly swapped in term() function.

************************* Version 8.03b: *********************************

IMP: (08/09/05, RK) NCC: More and better regression tests for size disambiguation for MOS and Resistors

IMP: (08/09/05, RK) NCC: Add Ammeter to spiceparts.jelib and spiceparts.txt. Make NCC treat Ammeter as short. Make SPICE netlister treat it as DC voltage source v=0 (Bug# 454)

IMP: (08/08/05, RK) NCC: Add size disambiguation for Resistors (Bug# 449)

BUG: (08/08/05, RK) NCC: Fix Heater regression non-determinism (Bug# 415)

BUG: (08/06/05, GVG) Edit->Change loses polygon shape (reported by JonL) (Bug #450)
FIX: PossibleVariables.validKey doesn't consider TRACE so it will skip checking in replaceNodeInst

BUG: (08/06/05, GVG) Infinite loop while doing cross-libraries with delete and subcells options (Bug #445)
FIX: Just patch to avoid the infinite loop

IMP (08/05/05, JKG) Made Cell name length in output GDS files a preference instead
    of hard coded to 32 (a limit not enforced by most tools nowadays)

IMP (08/05/05, JKG) Tool -> DRC -> Read Calibre DRC Errors reads in calibre drc results

IMP: (08/05/05, RK) NCC: When "Halt on first mismatched Cell" is enabled, don't stop for size mismatches (Bug# 446)

BUG: (08/05/05, RK) Warning: "Improvement" below disables NCC GUI until GUI is changed to accomodate new data structures.

IMP: (08/05/05, RK) Improvement to Local Partitioning algorithm. (Bug #447)

IMP: (08/05/05, DN) Yet another Spice format: Epic simulation output (for nanosim).
    Format choice list in SpiceTab dialog has one more item - "Epic".

BUG: (08/05/05, DN) Problem with arc and tail extensions deleting a jog from arc.
FIX: In CircuitChanges.reconnectArcs fill "ra.extendHead/Tail" from proper arc end only.

BUG: (08/05/05, DN) Duplicating export causes exception (Bug #443).
FIX: ElectricObject.uniqueObjectName retries until it obtains Cell.isUniqueName or fail in 100 iterations.
     In Export.newInstance check if uniqueObjectName returns null.

BUG: (08/04/05, DN) Problems with arc head and tail extensions (by Frankie Liu).
FIX: In EditMenu.InsertJogPoint set head and tail extensions.

IMP: (08/02/05, GVG) OpenDialog AWT way on MacOS only when no directories must be available

IMP: (08/01/05, GVG) Calling CheckAndRepair after OptionReconcile dialog and layers switch in the tech.

IMP: (08/01/05, JKG) Modified Output netlisters to get netlist from HierarchyEnumerator so
that the connectivity will be correct for parasistic versus explicit resistors.

BUG: (07/30/05, GVG) Error in Quick.foundSmallSizeDefect() due to rounding errors. Reported by Boz
FIX: DBMath.pointInsideRect() uses isGreaterThan instead of operators. This could slow the code.

IMP: (07/30/05, GVG) Length/width of poly resistors (schematics/layout) can be changed in GetInfoNode
(similar to transistors). Schematic poly resistors display variables. Reported by Boz.

IMP: (07/29/05, GVG) Ability to check and repair libraries if original files contain
layers that are not in used. Extra function to convert JELIB files into 7Layer tech
by mapping unused layers/primitive nodes into valid ones. Eg. M8M9 -> M6M7, M5M8 -> M5M6.
Done for arcs and nodes.

BUG: (07/28/05, GVG) GDS number for RPO 29 instead of 155 (reported by JonG)

IMP: (07/28/05, JKG) Added Include File option to CDL tab (global include file).
    CDL (Spice) netlister now uses CDL_template attributes.

BUG: (07/28/05, JKG) Connecting contacts to contacts/arc in tsmc90 created broken arcs (Reported by Frankie).
FIX: fixed bug in port size calc for wiring tool in NodeInst.getShapeOfPort()

BUG: (07/28/05, JKG) Zoom mode does not clear current highlights (Boz).
IMP: (07/28/05, JKG) Window->special zoom->zoom box can now use left mouse in addition to right mouse (Jon/Boz)

BUG: (07/27/05, GVG) Wrong names in 90nm N transistors (reported by Boz, no bugzilla)
FIX: Function wrongly assigned in PrimitiveNode (TRAPMOS instead of TRANMOS)

BUG: (07/26/05, GVG) Wrong flag in getShapeOfNode for poly resistors in TSMC90
FIX: change "false" by electrical (reported by Lexau, it should be in Bugzilla)

IMP: (07/26/05, JKG) Acepting String Arrays in Verilog (reported by Tarik, it should be in Bugzilla)
(comments added by GVG)

IMP: (07/26/05, IM): Added Unrecognized Part Type table to NCC GUI.
     It merged Unrecognized MOS Type and Unrecognized Resistor Type
     classes and tables.

BUG: (07/26/05, IM): NCC GUI displays hash code errors when it shouldn't (Bug #438)
FIX: Make NccComparisonMismatches to report hash code failures only when text
     version of NCC would do so.

************************* Version 8.03a: *********************************

IMP: (07/21/05, RK) NCC: Add Poly resistor tests to NCC regression

IMP: (07/21/05, GVG) Metal layers switch for 90nm technology. In 90nm tech tab, you can choose between
7, 8 o 9 metal layers where the last 2 layers are thick. DRC rules are rebuilt after each switch.

FIX: (07/21/05, RK) Change "Node Properties" dialog so it reports dimensions of 90nm Poly resistors as "length" and "width" instead of "x size" and "y size"

IMP: (07/21/05, RK) NCC: Add Poly resistors. This is incomplete because I haven't implmented size disambiguation for resistors yet. I will do this after I've fixed size diambiguation.

IMP: (07/19/05, IM) NCC GUI:
     1) reworked selection and expansion of wire class tree nodes;
     2) improved data alignment in size mismatch tables.

BUG: (07/19/05, GVG) Exception in Schematics.getShapeOfNode() if wnd is null due to
User.isTextVisibilityOnNode()=false (Bug #441)
FIX: Check if wnd is null before doing wnd.getCell()

BUG: (07/19/05, GVG) Wrong object assigned to listener in PaletteFrame when an element from the pulldown
list was selected and another click was made on the icon (Bug #440)
FIX: Assign "obj" instead of "np" when listener is not null in PaletteFramce.placeInstance().

BUG: (07/19/05, DN) Layout Poly resistors are always shorted (Bug #439).
FIX: 1) Set different port topology to "ports of Layout Poly resistor in TSMC90 constructor.
     2) In HierarchyEnumerator distinguish poly resistor by its function

BUG: (07/18/05, GVG) DRC having problems to detect errors in default mode (one error per node pair) (Bug #421)
This was already reported in Bug #311 however solution there didn't fix #421.
FIX: New strategy based on original cell triggering Quick.checkCellInstContents.

IMP: (07/18/05, IM) NCC GUI: icons for wire class nodes in the tree

BUG: (07/18/05, SMR) ALS simulation of transistors crashes.
FIX: In "sim.als.Flat.processFunction()",
     after the first line: primPtr2 = new ALS.Model(modHead.name, 'F');
     add: primPtr2.ptr = new ALS.Func();

IMP: (07/15/05, DN) HierarchyEnumerator can shorten resistors.

IMP: (07/15/05, DN) "DumpHeap" and "AnalyzeHeap" commands in DebugMenus
     to assist in memory leakage investigateions.

IMP: (07/14/05, IM) Each comparison in NCC GUI displays the number of
parts, wires, and ports in its cells.

BUG: (07/14/05, IM) Clicking on a hyperlink in Size Mismatch Table in NCC GUI
only highlights the top-level cell (bug 434).
FIX: obtain the proper cell from the MOS to be highlithed.

BUG: (07/14/05, IM) NCC GUI occasionally throws exception when moveCaretPosition()
method is invoked on JEditorPane (bug 429). This is a bug in Java 1.4
(http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4688560).
FIX: call moveCaretPosition() through SwingUtilities.invokeLater().

IMP: (07/13/05, GVG) Making public fix for bug 312 (in previous commit was only available in debug mode).

IMP: (07/13/05, GVG) Poly resistors added in Schematics. They were implemented as variant of normal resistors
(following similar to capacitor approach).

IMP: (07/13/05, IM) NCC GUI features: Export Assertion failures,
Export conflicts, unrecognized MOSes

IMP: (07/13/05, RK) Double default height of Cells generated by MOCMOS gate layout generator

IMP: (07/13/05, RK) Allow the detection of multiple "bad transistor type" errors

IMP: (07/13/05, RK) Add method to count Parts, Wires, and Ports for GUI

BUG: (07/13/05, RK) Bug# 433. Changes for GUI cause NCC to throw an Exception for designs with black boxes (heater, qLite).

BUG: (07/13/05, GVG) Problems with DRC dates stored (Bug #422) in exhaustive mode. Root cause: new checkMinDefect
in checkDist.
FIX: Remember if there ware min defect errors in exhaustive mode.

IMP: (07/12/05, GVG) Consolidating majority of minor/major change checking calls by just a global call.
Adding tooltip to explain significant vs insignificant changes.
Another solution for Bug #428: change type Type.OBJECTRENAME marked as major.

BUG: (07/12/05, GVG) Fix for invalid DRC resolution errors with rotated nodes (Bug #432)
FIX: resolution must be checked after transformation is applied in checkNodeInst().

IMP: (07/11/05, GVG) Highlighter working now for new 90nm resistors. PrimitiveNode.Function.RESIST in layout
primitive nodes and ability to select the nearest port (similar to transistors).

IMP: (07/11/05, IM) Added NCC GUI

BUG: (07/11/05, IM) NetworkHighlighter wasn't highlighting networks without arcs
FIX: (07/11/05, IM) Make NetworkHighlighter highlight all the PortInsts on a Network

BUG: (07/11/05, IM) comparison of two VarContexts doesn't work beacuse pointer
comparison of Nodables is not reliable
FIX: (07/11/05, IM) Compare Nodable parents and names

IMP: (07/11/05, GVG) LayerTab class extends JPanel instead of JFrame (suggested after Dima ran profiler).

IMP: (07/11/05, GVG) Changing exports should mark library as changed (Bug #428).
Implemented by checking also if there is a minor change in the library.

IMP: (07/11/05, GVG) Bold font for cells in ExplorerTree if they have been modified.
Implemented by adding MODIFIED bit in Cell class (Bug #425).
BUG: (07/6/05, SMR) VHDL generation doesn't work right for busses on icons.

FIX: In user.GenerateVHDL.addPortList(), after the comment "// flag important ports",
    add: if (ni != null && np instanceof Cell) nl = ((Cell)np).acquireUserNetlist();
    Also rewrote the network-finding code for arcs and exports in "addRealPorts()".

BUG: (07/01/05, SMR) Schematic arcs should be allowed to cross in DRC (Bug #376)
FIX: In DRC.Schematic.checkPolygonVicinity() changed last parameter of last
     call to "checkPoly()" from "false" to "true".

************************* END OF Version 8.02, GNU RELEASE *********************************
************************* Version 8.02: Released 7/1/05 *********************************

BUG: (07/01/05, DN) When duplicationg a cell the arc's head and tail settings are swapped (Bug #423).
FIX: In Cell.copyNodeProtoUsingMapping and NodeInst.replace swap head and tail.

IMP: (06/30/05, GVG) First version of 3D manual.

BUG: (6/30/05, GVG) Exception in DesigRulesTab during initialization of selectedFoundry.

BUG: (06/30/05, SMR) Cell names can have spaces in them (Bug #419).
FIX: Disallow spaces in Cell.lowLevelPopulate().

IMP: (06/30/05, GVG) Check first if Java3D is available in the machine before opening jd3 class.

IMP: (06/29/05, GVG) 3D submenus in HelpMenu (3D view plus demo).
     Added trim() in ManualViewer in case blanks are found after chapter name in toc.txt
     Started 3D folder in manual.

BUG: (06/29/05, SMR) Cannot mention "bugzilla" in released version.
FIX: In ActivityLogger.java, removed mention of "bugzilla" for released versions.

IMP: (06/28/05, GVG) Reorganizing again JMF and Java3D classes to create different plugins

BUG: (06/29/05, SMR) Cross-library copy doesn't copy schematic when icon gets copied (Bug #408).
FIX: Made cross-library copy more sensible: "copy subcells" always forces "copy all related views",
     copies schematic if icon gets copied recursively.

************************* Version 8.02p: *********************************

BUG: (06/28/05, GVG) DRC resolution check for active arcs must be done before they are cropped.
FIX: Move resolution code before Quick.cropActiveArc() in checkArcInst.

BUG: (06/28/05, SMR) Autorouting reports arcs that it does not create (Bug #413).
FIX: In AutoStitch.runAutoStitch(), only ignore wires that are already directly connected.

BUG: (06/28/05, SMR) Pad frame generation handles "gap" incorrectly (Bug #412).
FIX: Cleaned-up code.  Also now use "cell" instead of "facet" in array file.

BUG: (06/27/05, SMR) "Select all" should not select the cell center because
     it is never desired, and often causes unexpected results.
FIX: Disallow selection of cell center in "select all".

BUG: (06/27/05, SMR) Grid doesn't display when editing down-in-place (Bug #411).
FIX: Fixed grid code to handle in-place orientation.

IMP: (06/28/05, GVG) Pref.exportPrefs(String fileName) public again due to the regressions.
Menu name change: new: Window->3D Window-> 3D View, old:Window->3D View->3D Window

IMP: (06/28/05, GVG) Moving Sun's proprietary to JMFAndJ3D plugin (ex JMF plugin).
     3D axes are only available if JMFAndJ3D plugin is available.
     Same for J3DQueryProperties.queryHardwareAcceleration function.
     Changes in build.xml to create JMFAndJ3D jar.

BUG: (06/28/05, GVG) Previous bug fix for "Repeat Last Action" didn't work (Bug #246).
FIX: Solution based on menu name.

IMP: (06/28/05, GVG) J3DAxis using previous code with cylinders and cones.

BUG: (06/27/05, GVG) Bug fix for #395 (DRC error not reported by Electric but reported by Cadence)
FIX: Electric was not detecting violation on via/cut sizes. They must be of certain value.
     Refactoring of DRCRules to store those name rules.

BUG: (06/27/05, SMR) SDI mode doesn't show icons on messages window.
FIX: Added icon in SDI mode.

BUG: (06/27/05, SMR) Editing alternate views doesn't warn if the view is missing.
FIX: Fixed code in ViewMenu.java.

BUG: (06/25/05, SMR) Compactor doesn't compact properly.
FIX: In PolyBase.getBox(), allow "CROSSED" polygons to be boxes.

BUG: (06/27/05, DN) ELIB reader reads incorrecly schematic cell with layout
     subcell (Bug #405).
FIX: In ELIB.spreadLambda fix lambda only in icon subcells of schematic cells.

IMP: (06/24/05, GVG) Refactoring DesignRulesTab to re-use part of the dialog in
     TechEdit.

IMP: (06/24/05, SMR) Added Javadoc comments.

IMP: (06/24/05, SMR) Changes to the technology in the "layers" tab of the side
     bar changes it everywhere.

IMP: (06/24/05, SMR) Redid "Node Properties" dialog to remove unneeded controls
     at bottom.

IMP: (06/24/05, GVG) Getting rid of those WARNING (312) and WARNING (408)
     introduced by latest changes in output/GDS (when layer numbers were
     introduced). This causes failures in regressions (increment in number of
     errors).

BUG: (06/24/05, GVG) ESC still moves instance even if it has been looked.
FIX: Adding -1 as valid option for in CircuitChanges.cantEdit() dialog (Bug #404)

IMP: (06/24/05, GVG) Adding setCIFOutMergesBoxes(true) into GateRegression so it
     won't complain about min resolution for center points.

BUG: (06/24/05, GVG) While fixing DRC bug #312, appeared new candidates for min
     defect cases however they have to be ignore because they come from different
     cell instances and Geometric.objectsTouch(nGeom, geom) should be skip.
     Noticed by Bug #383.
FIX: Use parameter sameInstance in Quick.badBoxInArea()

BUG: (06/23/05, SMR) Silicon compiler places wells wrong.
FIX: Fixed Maker.

BUG: (06/23/05, SMR) "Peeking" doesn't always work.
FIX: In "PixelDrawing.expandedCellCached()" must call "drawCell()" with proper
     bounds.

BUG: (06/24/05, DN) Old IO regressions have errors concerning text descriptors.
FIX: In Export constructor and ImmutableTextDescriptor constructor canonize
     descriptors.

BUG: (06/24/05, DN) Reading a library causes an exception (Bug #398)
FIX: "io.input.ELIB.getArcEnd" saves MessageLog in a private fields
     "getArcEndError".

IMP: (06/23/05, RK) Add NCC regression tests for Global Partition

IMP: (06/23/05, RK) Add modified heater to NCC regression

IMP: (06/23/05, RK) For netlist errors, save NccGlobals so IvanM can report
     errors

BUG: (06/23/05, GVG) Problem to detect min size if elements were touching other
     nodes of the same layer (wells in Bug #396). The code was checking only one
     direction (X or Y)
FIX: Function to iterate along all possible directions (X, Y).

IMP: (06/23/05, GVG) Refactoring of DRC supporting classes for DesignRules tab. More changes in DesignRules tab

BUG: (06/23/05, SMR) CDL output writes include statements (Bug #387)
FIX: Ignore subcircuit overrides when writing CDL.

BUG: (06/23/05, SMR) Cannot connect "Simulation Probe" nodes
FIX: Make them have universal connectivity.

BUG: (06/23/05, DN) Arc properties not preserved when using Duplicate (Bug #391).
FIX: In ArcInst.copyConstraintsFrom assign newBits ti userBits.

BUG: (06/23/05, DN) Network module complains on unconnected pin in GEM and EFIDO
     technologies.
FIX: Don't check in cells with these technologies (NetCell.makeDrawns).

IMP: (06/22/05, GVG) DRC: Sweep as default algorithm. Capacitance demo out of 3D
     menu.  List Layer Coverage on Cell moved to DRC menu. Ability to abort
     coverage job (Bug #389).  Same printing for List Coverage on Cell and Check
     Area Coverage.

IMP: (06/21/05, SMR) Improved waveform window titles.

IMP: (06/21/05, SMR) Improvements to "Design Rules" tab.

IMP: (06/21/05, SMR) Added commands for curved arcs.

IMP: (06/21/05, GVG) RPO resistors in 90nm technology

BUG: (06/20/05, GVG) Displaying DRC error in wrong window frame while checking
     min defects (Bug #383)
FIX: Carrying down into the hierarchy the cell which triggered the checking.

IMP: (06/20/05, SMR) Changed "Design Rules" preferences to handle multiple wide
     rules.

BUG: (06/20/05, SMR) "Make Selected Easy" and "Make Selected Hard" commands
     crash.
FIX: Put them in a job.

IMP: (06/20/05, GVG) Moving foundry pulldown menu and output resolution text field to DesignRule tab

BUG: (06/18/05, SMR) Compaction spreads circuits apart.
FIX: Better algorithm for moving lines.

IMP: (06/17/05, SMR) Antenna check now aborts cleanly (Bug #382).

BUG: (06/20/05, RK) NCC hierarchical with size checking fails to compare top
     level cells (Bug #384)

IMP: (06/20/05, RK) NCC confuses the user for an unusual situation (Bug #385)

IMP: (06/19/05, DN) Warning in ElectricObject.findKey about possible change to
     CaseSensitive search in future versions.

IMP: (06/18/05, GVG) Refactoring describe() functions and using toString() in
     more places.

BUG: (06/18/05, GVG) Exception in parasitic tool for AND gate if network is null
     in port (Bug#377)
FIX: Skipping the layer if is diffusion.

BUG: (06/18/05, DN) JELIB reader doesn't connect mismatched arc to dummy pin.
FIX: In io.input.JELIB.figureOutPortInst assign dummy node to "portNI".

BUG: (06/18/05, DN) DebugMenus|JonG|DescribeProtoVars causes exception on
     PrimitiveNodes.
FIX: Add "if (ni.getProto() instanceof Cell)".

IMP: (06/17/05, GVG) Ability to select "scalable" transistors again.

IMP: (06/17/05, GVG) 3D View back under WindowMenu.

IMP: (06/17/05, GVG) Methods to extract DRC rules for preferences tab.

BUG: (06/17/05, SMR) Status bar clips bottom of component menu (Bug #381).
FIX: In StatusBar constructor, set "fieldHierCoords" to be a non-null string.

IMP: (06/17/05, SMR) Removed "Show Special Transistors" from "mocmos" part of
     "Technology" preferences.

IMP: (06/17/05, SMR) "Align to Grid" now moves pins and grid-aligns arcs better
     (Bug #360).

IMP: (06/17/05, SMR) Manual being updated (Bug #379).

IMP: (06/17/05, SMR) Preferences dialog now has "Help" button to take you to
     proper manual page (Bug #378).  Removed "help" button in Logical Effort tab.

IMP: (06/16/05, SMR) Fixed the color/pattern panel of the "Artwork Appearance"
     command and "Layers" Preferences to automatically set Displayed "Use Stipple
     Pattern".

IMP: (06/16/05, SMR) Refactored the Assura DRC error reader to be in the DRC
     tool.

IMP: (06/16/05, SMR) When GDS changes the library name, a warning is issued.

IMP: (06/16/05, SMR) Cleanup for Javadoc.

IMP: (06/16/05, GVG) Out check resolution moved from CIF I/O to DRC (Bug #362)
     Side effect: code in CIF.java commented out, left only CIF format resolution
     (Bug #365)

BUG: (06/16/05, DN) Bit "isParam" on NodeInst variables remains set even there
     is no more corresponing parameter on the parent Cell.
FIX: Don't store "isParam" bit on instance variables. Variable.isParam is
     claculated.

BUG: (06/16/05, DN) Factory preferences for text attributes are incorrect.
FIX: In TextDescriptor.DescriptorPref constructor cast "initialSize" to long.

BUG: (06/15/05, SMR) Busses and wires cause Schematic DRC when they cross (Bug
     #376).
FIX: In tool.drc.Schematic.checkPoly(), allow this combination to cross.

BUG: (06/15/05, DN) Show network problems (Bug #371)
FIX: In "NetworkTool.getNetworksOnPort" use "pi.getConnections".

IMP: (06/15/05, SMR) CIF output has no check for user resolution check, and
     always checks for minimum CIF format resolution (Bug #365).

IMP: (06/15/05, SMR) "Select Object" now allows multiple selections (Bug #370)

IMP: (06/15/05, SMR) Conversion of a technology to a library twice now disallowed
     (Bug #373)

IMP: (06/15/05, SMR) Technology editor handles stretching rules properly (Bug
     #374)

BUG: (06/14/05, GVG) Select surround not working properly in hierarchy (Bug
     #353).
FIX: Precision problem while checking if point is at the corner of a rectangle.

IMP: (06/14/05, GVG) New tileNot layers (1 for each metal, OD and poly) in TSMC90
     technology (Bug #354) Stipple patterns in such way they won't completely
     cover other tileNot nodes. The rest of the graphics is inherited from
     corresponding metal/active/poly layer.

BUG: (06/13/05, GVG) Layers dialog should come up in current technology (Bug
     #367).
FIX: Extended PaletteFrame.autoTechnologySwitch for LayerTab and moved to
     WindowFrame class

BUG: (06/13/05, DN) Some changes are not undoable yet. They don't cause saving
     library.
FIX: Undo.otherChange() method to mark library for save.

IMP: (06/13/05, DN) When writing ELIB/ReadableDump, round arc angle to nearest.

IMP: (06/12/05, DN) lowLevelAllocate/lowLevelPopulate methods removed from
     "ArcInst" and "Export".

BUG: (06/12/05, DN) Sometimes "LibDirs.LibDirFileSystemView.getFiles" causes
     "ClassNotFoundException".
FIX: Create factory method "LibDirs.newLibDirsFileSystemView".

IMP: (06/12/05, SMR) Displaying transparent layers for a technology other than
     the current one displays a warning that the layers may not have been drawn.

************************* Version 8.02o: *********************************

BUG: (06/15/05, SMR) Technology editor fails to determine rules (Bug #374)
FIX: Round values so that numeric instability doesn't happen.

IMP: (06/15/05, SMR) "Select Object" now allows multiple selections (Bug #370).

IMP: (06/15/05, SMR) CIF output always checks for minimum resolution of CIF
     format (Bug #365).  CIF Preferences now use resolution value to decide
     whether to check (nonzero to check).

BUG: (06/15/05, SMR) Converting a technology to a library twice crashes (Bug
     #373).
FIX: Disallow second conversion.

IMP: (06/10/05, SMR) Can now import "GDS map" files to set layer associations
     (Bug #355).

IMP: (06/10/05, SMR) GDS now uses a "type" with each layer number (Bug #356).

BUG: (06/10/05, SMR) Spice output writes lower-level cells when upper-level ones
     have model file overrides (Bug #358).
FIX: Added model file overrides to the things checked by "skipCellAndSubcells()".

BUG: (06/10/05, GVG) Expection in NodeInst.findPortInstFromProto if index is
     invalid (Bug #359)
FIX: Make sure index is in the valid range and returns null otherwise.
     Side effect: extra code in Export.java to prevent exception if pi == null.

BUG: (06/09/05, GVG) Exception while generating eps from waveform (Bug #361)
FIX: After refactoring of Technology.getShapeOfNode, wnd can be null and then
     direct access of wnd.getVarContext() will generate the exception.

IMP: (06/09/05, GVG) Move area coverage tool under DRC menu

IMP: (06/09/05, JKG) Added command Tools->Cadence->Import Assura DRC Errors.

BUG: (06/9/05, GVG) Overlap not checked correctly when node was in a subcell (Bug
     #352)
FIX: TSMCRules.getRule() was not getting the correct min size for default case.
     This was probably introduced while introducing length to wide condition for
     TSMC90.

BUG: (06/9/05, GVG) Checking geometries against themselves under certain
     condition (discovered while fixing Bug #352)
FIX: In Quick.badBoxInArea(), skip case when they are in the same cell.

IMP: (06/9/05, GVG) Improving error message when you try to reopen a library (Bug
     #347)

IMP: (06/9/05, GVG) New values for DRC Rules 30.1, 30.2 and 30.4 in MoCMOS.
     Old values: 4,4,8. New Values: 5,5,10  (Bug #357)

BUG: (06/09/05, DN) Network.getExports() returns no Exports for a Network (Bug
     #351)
FIX: Add loop for busses.

IMP: (06/07/05, SMR) Added controls to "Color preferences" to control the
     waveform window colors.

BUG: (06/06/05, SMR) PSpice output cannot handle "gnd" signal or "@" in names.
FIX: Use "0" for ground, convert "@" characters.

IMP: (06/07/05, DN) Refactoring: joined together ArcProto and PrimitiveArc
     classes.

BUG: (06/06/05, SMR) Selecting a variable in the "Attribute Properties" dialog
     may change it.
FIX: In Attributes.showSelectedAttribute(), set "loading" before changing the
     "value" field.

IMP: (06/05/05, DN) Persistent data of NodeInst is moved to ImmutableNodeInst
     class.

BUG: (06/05/05, DN) Sometimes EPoint has coordiante -0 (HotSpot optimezer).
FIX: Compare coordiante with "-0.0" instead of "0" in EPoint.

IMP: (06/05/05, DN) FlagSet class is no longer used and it is removed.

BUG: (06/05/05, DN) Grid alignement option "0" should disable alignemnt.
FIX: In EditWindow fix "gridAlign" methods.

IMP: (06/05/05, DN) JELIB output writes now "P" bit ("isParam")from database

IMP: (06/03/05, SMR) Added generic versions of the purple/red/orange libraries.

IMP: (06/01/05, SMR) First implementation of ALS simulator.

BUG: (05/30/05, SMR) Rigid arcs don't propagate hierarchically.
FIX: In Layout.java, use two change values on nodes: size-changed and
     position-changed.

BUG: (05/30/05, DN) TextDescriptor sometimes get wrong "isDisplay" bit in JELIB
     reader.
FIX: Make separate "parsedDescriptor" caches for onVar and non-onVar descriptors.

IMP: (05/27/05, SMR) The "Artwork Appearance" dialog now affects all selected
     artwork objects.

IMP: (05/27/05, SMR) PSpice output can now be read.

IMP: (05/27/05, SMR) Added ArcSim simulation deck generation.

BUG: (05/26/05, DN) Can't change attribute text size (Bug #346)
FIX: In TextAttributesPanel.java use td.seyDisplay instead of var.setDisplay.

IMP: (05/26/05, SMR) Fixed multi-cut code.

IMP: (05/25/05, RK) NCC: add regression tests for native thick oxide NMOS

IMP: (05/25/05, SMR) Added multi-cut code.

IMP: (05/25/05, SMR) Schematic DRC now allows arcs to cross over icons.

BUG: (05/25/05, DN) Text options are incompatible after changes.
FIX: Method "TextDescriptor.DescriptorPref.swap" as a temporary fix.

BUG: (05/25/05, DN) Font is not properly read after last changes.
FIX: In "Library.DiskVariable.makeVariable" use "getName" instead of "toString".

IMP: (05/24/05, SMR) Improved component menu colors when nonstandard colors are
     used.

IMP: (05/24/05, SMR) Library names in the explorer tree are shown in bold when
     the library has changed (Bug #326).

BUG: (05/24/05, SMR) Verilog deck generation writes names that start with digits
     (Bug #338).
FIX: Prepend a "_" to symbols that start with a digit.

IMP: (05/25/05, DN) "regression/tools/gateLayGen/scripts/mocmosDrc.bsh" and
     "regression/tools/IO/scripts/*.bsh" are refreshed.

IMP: (05/25/05, DN) TextDescriptor now keeps "isDisplay" and "Code" fields also.
     "Variable.flags" field removed.ImmutableTextDescriptor is used in database.
     Additional versions of "ElectricObject.newVar" added:
     "newVar(key,value,td)" creates variable with specified descriptor.
     "newVar(key,value,boolean)" creates either displayable or non- variable.
     "newDisplayVar(key,value)" creates displayable variable.
     "newVar(key,value)" creates non-displayable variable (as earlier)
     Warning: "Variable.setTextDescriptor(td)" now changes "isDisplay" and
     "getCode".

IMP: (05/24/05, GVG) Extra M5M8 contact in TSMC90 for CMP foundry

IMP: (05/24/05, RK) NCC, Bug# 339: Add I/O 25, 33 transistors. Modify regressions
     to test. Wait to add Native 18, 25, 33 NMOS to regressions until Lexau adds
     these to Orange library.

BUG: (05/19/05, SMR) New windows appear with their contents too small.
FIX: In WindowFrame.createEditWindow(), get proper window size.

BUG: (05/23/05, GVG) Fix for #311 "m3 spacing DRC error not detected".

BUG: (05/23/05, GVG) Fix for DRC bug #312 (didn't detect small feature)
FIX: Check small feature even if polygons are connected.

IMP: (05/23/05, GVG) New size for native transistors

BUG: (05/23/05, GVG) Motion indicator in tool bar set wrongly on startup (Bug
     #337)
FIX: There was no setup in ToolBar, changes in EditMenu didn't change ToolBar
     values and changes in GridAndAligment didn't change ToolBar/EditMenu
     buttons.

BUG: (05/23/05, GVG) TSMC90 layers not in the correct order (Bug #336)
FIX: Error in TSMC90.getContactFunction().

BUG: (05/20/05, GVG) DRC doesn't detect overlap between PWell/NWell when nodes
     are connected (Bug #333)
FIX: Transform UCONSPA into SPACING rule (TSMC90: NW.S.0, MoCMOS: 1.4

IMP: (05/19/05, SMR) Mirroring (in the commands and in the Node Properties
     dialog) is now described in terms of "left <-> right" and "up <-> down"
     (Bug #327).

IMP: (05/19/05, SMR) Intelligent placement of duplicate copies when "move after
     duplicate" is not checked.

BUG: (05/19/05, SMR) Highlighting an export on the example icon doesn't show all
     of the equivalent nodes.
FIX: In Highlight.showHighlight(), include the node with the real export.

BUG: (05/19/05, SMR) HSpice waveform plotting doesn't handle amperage right
     (signals that start with "I(") (Bug #303).
FIX: In HSpiceOut.readTR0File(), expand numbers when they start after the "(";
     move the "(" to the last symbol.

IMP: (05/19/05, SMR) Automatic icon generation now makes thick black icons, not
     thin red ones.

IMP: (05/19/05, SMR) Technology editor can now create octagonal shapes.

IMP: (05/18/05, SMR) Changing one node to another will adjust arcs in simple
     situations instead of adding jogs (Bug #321).

IMP: (05/18/05, SMR) Can now switch the side bar to the right side (in General
     Preferences, too).

BUG: (05/18/05, JKG) LEPARALLGRP problem with keepers (Bug #320)

BUG: (05/18/05, SMR) Deleting a node that has internal arcs (arcs connected from
     one port of the node to another of the same node) causes errors (Bug #315).
FIX: In CircuitChanges.eraseNodeInst(), use a HashSet to ensure no duplication of
     arcs to delete.

BUG: (05/17/05, SMR) Undoing a change that affects cell bounds leaves instances
     of the cell wrong.
FIX: In Undo.Change.reverse(), reevaluate instances of cells whenever undoing
     changes to contents. A detailled explanation is given in the NODEINSTMOD
     case.

BUG: (05/13/05, SMR) MOSIS CMOS pins drawn incorrectly (Bug #322).
FIX: In MoCMOS.getShapeOfNode(), change the method on the last line from
     "computeShapeOfNode" to "super.getShapeOfNode"

BUG: (05/18/05, DN) NetworkTool doesn't work with NOTHREADING=true (Bug #310)
FIX: Add check on NOTHREADING in NetworkTool.getNetlist.

BUG: (05/17/05, GVG) Explorer not updated when open new library (Bug #319)
FIX: Add WindowFrame.wantToRedoLibraryTree() in FileMenu.openALibrary.

IMP: (05/15/05, SMR) CIF and GDS output merging now works.

IMP: (05/16/05, SMR) Removed multithreaded DRC and Dracula interface from DRC
     preferences.

BUG: (05/16/05, SMR) Cross-library copy may get cell sizes wrong (Bug #314).
FIX: In ArcInst.lowLevelSetUserbits(), must update arc extent if end extension
     changes.

BUG: (05/16/05, SMR) Changing an arc (with its nodes) from one layer to another
     doesn't work if there are exports on the pin nodes (Bug #317).
FIX: In Change.replaceAllArcs(), allow exported pins, and move the exports to the
     new pins.

IMP: (05/16/05, SMR) Further changes for Project Management.

IMP: (05/13/05, JKG) Display LIBDIRS file in Open library dialog as if they
     were part of the current directory.

BUG: (05/13/05, JKG) LIBDIRS did not look for LIBDIRS file in directory
     user was opening libraries from.  Fixed. (Bug #313)

************************* Version 8.02n: *********************************

BUG: (05/13/05, SMR) Invisible Pins are drawn too large.
FIX: In Artwork.getShapeOfNode(), and in Generic.getShapeOfNode(), change the
     method on the last line from "computeShapeOfNode" to "super.getShapeOfNode"

IMP: (05/12/05, GVG) GetInfo (menu item) for ErrorLogger: printing number of
     errors and warnings.

IMP: (05/12/05, SMR) Tool cleanup for project management: made all Tools be
     Listeners; made access to singletons use accessor methods; invoke
     "readLibrary()" listener method properly.

BUG: (05/11/05, GVG) Electric loads non-local library when local library is
     present (Bug #309)
FIX: Adding WorkingDirectory as valid path and try it first before the external
     path stored.

BUG: (05/11/05, SMR) Cells with bus pins are the wrong size.
FIX: Restore the "wipeon1or2" flag to Schematics bus pins, then rework the
     sequence of calling "Technology.getShapeOfNode()" so that Schematics
     overrides are not affected by that flag.

IMP: (05/09/05, JKG) LE sizes now stored on top level cell instead of leaf
     instances.

IMP: (05/09/05, JKG) Improved readability of hierarchical path in status bar.
     Also, path shown for schematics. Also, second row remains visible because
     redraw of window is annoying when second row disappears and reappears.

IMP: (05/09/05, JKG) Added "recently visited cells" list when right-clicking on
     back/forward cell history buttons.

BUG: (05/10/05. GVG) Exception in CIF generation due to latest changes in
     Technology.getShapeOfNode/getShapeOfArc.  In io.output.Geometry, EditWindow
     is always null.
FIX: Using simple passing only Geometric to getShapeOfNode/getShapeOfArc
     function.

IMP: (05/09/05, GVG) Clicking on library on Mac OS set working directory
     extracted from that library (Bug #308)

BUG: (05/09/05, GVG) Cell attributes wrongly copied by Clipboard if a previous
     clipboard copied a cell attribute (Bug #306).
FIX: Include cell attributes in Clipboard cleanup process.

BUG: (05/09/05, GVG) Cut/Paste or Copy/Paste of cell attributes not working (Bug
     #304)
FIX: Extra code in Clipboard to handle cell attributes

BUG: (05/09/05, SMR) Screen redraws too much (Bug #307).
FIX: VarContext information must be passed down the hierarchy by the redisplay
     code, and not stored in the EditWindow.  In addition, the Technology method
     "getShapeOfNode()" must take a VarContext as a parameter, and not obtain it
     from the EditWindow.

BUG: (05/09/05, SMR) Screen is shifted after PostScript output (Bug #301).
FIX: In EditWindow.getBoundsInWindow(), restore scale and offset information
     properly.

IMP: (05/05/05, SMR) Added special "properties" dialogs for schematic components:
     resistor, capacitor, inductor, diode, transistor, and global.

BUG: (05/05/05, DN) Busses with complex names don't associate with exports
     properly (Bug #262).
FIX: Fixed getBusWidth(Nodable,PortProto) in the netlister.

BUG: (05/05/05, SMR) Mimic stitching doesn't preview proper locations (Bug #300).
FIX: In MimicStitch.presentNextSituation(), compute endpoints properly.

IMP: (05/05/05, SMR) Selecting attributes on node and arcs now shows the original
     object (Bug #295).

IMP: (05/05/05, SMR) Selecting a port on the "sample icon" in a schematic now
     shows the entire network connected to that export.

BUG: (05/05/05, SMR) PostScript text is still too large, EPS bounding boxes are
     wrong (Bug #292).
FIX: In PostScript.psText(), reduce the text size by another 10%.

BUG: (05/05/05, SMR) Auto-stitcher crashes on schematic pins (Bug #299).
FIX: In AutoStitch.shapeOfNode(), check for null poly lists.

BUG: (05/05/05, SMR) GDS import fails if pseudo-layers have different GDS numbers
     than regular layers (Bug #297).
FIX: In input.GDS.setLayer(), convert pseudo-layers to regular layers.

BUG: (05/05/05, SMR) Multiple exports with different case may cause a crash
     (Bug #298).
FIX: In Cell.getUniqueNameIndex(), do case-insensitive compares.

IMP: (05/04/05, SMR) Added FPGA technology.

BUG: (05/05/05, GVG) Infinite loop after executing "Repeat Last Action"
     (Bug #246)
FIX: In RepeatLastCommandListener, we ignore actions coming from "Repeat Last
     Action".

IMP: (05/05/05, DN) JELIB 'R' line can accept either 5 or 7 pieces.

BUG: (05/05/05, DN) Highlighting an off-page connector does not highlight an
     attached bus (Bug #262)
FIX: In Netlist use getBusWidth(Nodable, PortProto) instead of
     PortProto.getNameKey().busWidth().

BUG: (05/04/05, SMR) Schematic busses don't have clean ends;
     wires connecting to busses don't show blobs.
FIX: Better determination of bus pin drawing.

BUG: (05/04/05, SMR) Verilog allows reserved words in its files (Bug #296).
FIX: Check for reserved words and prepend a "_".

************************* Version 8.02m: *********************************

IMP: (05/03/05, GVG) Verbose Redo/Undo: extra message in message window
     (for Tarik).

BUG: (05/03/05, SMR) Spice primitives generate incorrect Verilog output
     (Bug #293).
FIX: In Verilog.writeCellTopology(), ignore cell instances whose prototypes are
     icons.

BUG: (05/03/05, SMR) Reading ELIB files may consume all of memory (Bug #294).
FIX: In input.ELIB.readString(), if a string's length is greater than the
     remaining bytes in the file, flag it as an error.

IMP: (05/03/05, GVG) Adding class to query hardware accelaration for J3D.

BUG: (05/02/05. GVG) Double-click on jelib/elib file doesn't open the library in
     Electric.app (Bug #290)
FIX: Missing code in MacOSXInterface.handleOpenFile.

BUG: (05/02/05, SMR) Explorer tree doesn't remember what is expanded when SIGNALS
     are shown (Bug #283).
FIX: Must remember entire path through tree, not just leaf nodes.

BUG: (05/02/05, SMR) PostScript text is too large, EPS bounding boxes are wrong
     (Bug #292).
FIX: In PostScript.psText(), reduce the text size.

BUG: (05/02/05, SMR) Layer opacity is not remembered (Bug #288).
FIX: In EGraphics.setOpacity(), use preferences.

BUG: (05/02/05, SMR) When a referenced library cannot be found, prompting the
     user gives limited file type choices (Bug #260).
FIX: In LibraryFiles.readExternalLibraryFromFilename(), allow any library file
     extension.  Created new FileType called "LIBFILE" which has all 3 extensions
     (jelib, elib, txt).

BUG: (05/02/05, SMR) PostScript doesn't use stipple pattern setting properly
     (Bug #287).
FIX: In PostScript.psPolygon(), use the layer's printed stipple pattern setting.

BUG: (05/02/05, GVG) Electric not longer remember library context in Cell
     Instance place (Bug #291)
FIX: this case was introduced while fixing Bug #250. Only when selectedLibrary is
     null, then the current library will be taken into account.

IMP: (05/01/05, SMR) Added MOSIS CMOS PLA generator.

BUG: (05/01/05, RK) NCC: improve size mismatch error messages for the case when
     NCC tolerances are configured to zero. Don't round the mismatch amounts if
     rounding would result in the value zero. (Bug# 282)

BUG: (05/01/05, SMR) Readable dump input does not handle old port name
     conversion.
FIX: Added the method input.ReadableDump.findProperPortInst().

IMP: (05/02/05. GVG) Extra work to allow libraries expanded in Explorer view if
     you open them with View->Edit view (Bug# 223).

BUG: (05/01/05, RK) clarify NCC error message. For hierarchical comparison
     specify path relative to current Cell

BUG: (05/01/05, RK) NCC shouldn't blow up if Cell has no wires.

BUG: (04/29/05, GVG) Missing refresh in explorer tree if current library is
     changed (Bug #251, #270)
FIX: Added WindowFrame.wantToRedoLibraryTree() in setCurLibAction().

BUG: (04/28/05, SMR) Expanding or unexpanding cell instances doesn't redraw
     right.
FIX: In CircuitChanges.ExpandUnExpand.doIt(), call
     PixelDrawing.clearSubCellCache().

IMP: (04/27/05, GVG) Modification in mac-app (ant) and Info.plist to get it
     working on Mac OS X.  "command" is deprecated and it was replaced by
     "executable"

BUG: (04/26/05, GVG) Exception in postscript generation if directory is
     write-protected (Bug #289)
FIX: Detect the condition and abort job

BUG: (04/26/05, GVG) Ability to abort PostScript generation (Bug #286)
FIX: Any output call passes Job class in case particular tool wants to monitor
     abort operation.

BUG: (04/26/05, GVG) 3D View: distance and thickness modifications in 3D
     Preferences not reflected in 3D View windows
FIX: Code now handles geometries by reference.

BUG: (04/25/05, SMR) Explorer tree expansion is incorrect (Bugs #269 and #285).
FIX: Only expand to the current library after reading it.

IMP (04/25/05, SMR) When replacing a library, error messages are more clear
     (Bug #255).

IMP: (04/25/05, SMR) HSpice input can now accept files with the extension .tr1,
     .tr2, ... (Bug #258).

IMP: (04/25/05, SMR) Waveform window now allows dragging of the vertical axis on
     the left (Bug #252).  Waveform window now shows intermediate tick marks
     (Bug #241).

************************* Version 8.02l: *********************************

IMP: (04/22/05, GVG) Alpha control in 3D preferences. Ability to load more than
     one file per capacitance demo.

BUG: (04/22/05, GVG) Bug found in 3D highlight for primitives (original
     appearance not restored).
FIX: Extra class holds the information.

BUG: (04/22/05. GVG) Exception in Spice netlist if icon instance has a parameter
     not defined in Schematic (Bug #279)
FIX: Prevent setParam(true) in Examine job (Variable.java:1000)

BUG: (04/21/05, SMR) GDS output writes the year incorrectly.
FIX: In "output.GDS.outputDate()", subtract 1900 from the year.

BUG: (04/21/05, SMR) Adding a signal to the waveform window doesn't show it at
     the same scale as the other signals (Bug #277).
FIX: In WaveformWindow.java, set the scale when creating a new panel.

IMP: (04/21/05, GVG) 3DView creation embedded in Job to abort big examples.
     Ability to stop creation if number of nodes reached predefined limit (dialog
     with 3 options). Max number of nodes allowed in preferences.  3D Display
     option moved to 3D menu. Fix on axis location.

IMP: (04/20/05, SMR) Improved PostScript output by removing tiny polygons
     (Bug #273).

IMP: (04/20/05, SMR) Exported preferences files have the ".xml" extension.

BUG: (04/20/05, SMR) Arc Properties dialog crashes if not in the Swing thread
     (Bug #272).
FIX: In GetInfoArc.loadInfo(), delay activity if not in the Swing thread.

IMP: (04/19/05, GVG) GetInfo on job running will printing accumulated running
     time.

************************* Version 8.02k: *********************************

IMP: (04/19/05, GVG) Invariant for capacitance extraction for layouts in Spice.

IMP: (04/19/05, JKG) Changed minimum resolution of IRSIM simulations from 10ps
     to 1ps

BUG: (04/19/05, GVG) Crash in 3D View if transistor has more than 2 active
     physical layers.
FIX: Ignore layer if there are already 2 defined.

IMP: (04/19/05, SMR) Added mnemonic characters to the entire menu.

IMP: (04/19/05, SMR) Added technology editor (commands under Edit / Technology
     Specific).

BUG: (04/18/05, GVG) Bug introduced in DRC while extending foundries (Bug #265)
FIX: Detect old style in format (Byte) and then makes the transition.

BUG: (04/15/05, SMR) JELIB output does not always get the type of variable arrays
     if the first entry is null.
FIX: In output.JELIB.makeString(), determine the type of the array, not the first
     entry.

IMP: (04/18/05, DN) Global-Partition schematic primitive is handled by
     HierarchicalEnumerator.  Spice netlister tries to handle it too when
     Spice.USE_GLOBALS = false

BUG: (04/18/05, DN) List Export on Network command causes StackOverflowError
     (Bug #263).
FIX: In "ToolMenu.findPortsUp" don't add "listedExports" HashSet to itself.

IMP: (04/15/05, GVG) GDS ouput still writing text associated to exports even if
     WriteExportPins is off.

BUG: (04/15/05, GVG) Autoadvance flag in IRSIM tab wronlgy set based on
     "resimulate each" flag, no setting of skillGDSNameLimit in Skill tab and
     wrong comparison of globalTextScale in TextTab.

IMP: (04/14/05, GVG) Ability to choose technology while creating a new cell
     (Bug #245)

IMP: (04/14/05, GVG) Changes in TSM90 and DRC to handle multiple foundries
     (ST, TSMC). DRC rules are chosen depending on foundry selected: ST, TSMC,
     Combined(ST, TSMC). Names/Values for some DRC rules varies according to
     foundry (eg. VT{H/L}_{P/N}.S.2/VT{H/L}_{P/N}.D.2). Added corresponding ST
     rules.  New native thick transistors, RPO, OD33, OD25 nodes. New "forbidden"
     and "combination" rules to handle presence of forbidden nodes for particular
     foundry or combinations of nodes in the same die.

IMP: (04/14/05, SMR) JELIB output now includes full path to references libraries
     only if they are not in the same directory as the main output file (for CVS
     merging).

IMP: (04/14/05, GVG) New 3D axis strategy provided by Java3D team.

IMP: (04/12/05, SMR) IRSIM doesn't crash when reloaded (Bug #247).

IMP: (04/12/05, SMR) "Rename Cell" now defaults to current cell (Bug #250).

BUG: (04/12/05, SMR) IRSIM results are different than other IRSIM implementations
     (Bug #248).
FIX: In Sim.java, include transistors only once.

IMP: (04/11/05, SMR) GDS input and output now handles pin layers correctly.

IMP: (04/11/05, SMR) Added checking in NodeInst.newInstance().

BUG: (04/11/05, SMR) JELIB I/O doesn't handle null pointers.
FIX: New attribute type "X" for null objects.

BUG: (04/11/05, GVG) Wrong scale for schematic capacitors in IRSIM (Bug #249)
FIX: Dividing value by 1e-15 to convert it into Femto units.

IMP: (04/11/05, DN) Global-Partition schematic primitive is handled by
     NetworkTool.  Added method "Netlist.getNetwork(Nodable, Global) to check
     globals of subcells.

IMP: (04/08/05, GVG) Title in default technology frame title in TechnologyTab was
     changed. This required a change in manual.

BUG: (04/07/05, SMR) Technology editing layer bit selection works now (Bug #243).
FIX: In Highligher.findAllInArea(), do not add 0.4 units of slop to selection.

BUG: (04/07/05, SMR) Editing text "in-place" now draws a large enough editing
     area (Bug #236).
FIX: In GetInfoText.EditInPlaceListener.figureSize(), use the logical bounds of
     the glyph.

IMP: (04/07/05, SMR) Explorer window no longer opens to current library when jobs
     change (Bug #244).

BUG: (04/07/05, GVG) GDS export was crashing if non-layout layers were found in
     cell such as art nodes
FIX: Skipping those layers

BUG: (04/07/05, GVG) No writing resistance if value is smaller than minimum in
     parasitics extraction
FIX: Writes 0 instead

BUG: (04/06/05, GVG) Parasitic tool was wrongly ignoring active layers in
     HierarchyEnumator call
FIX: Use correct netlist

BUG: (04/06/05, SMR) IRSIM crashes (Bug #242).
FIX: In Sim.connectTransistors(), use "baseType()" when extracting node type.

IMP: (04/06/05, JKG) Added IRSIM option to use delayed X propogation.
     Implemented delayed X propogation in code.

BUG: (04/05/05, GVG) Coordinates cut off in status bar on Mac (Bug #229)
FIX: Add insets according to platform.

IMP: (04/04/05, DN) Method "TextDescriptor.setParam" removed because
    TextDescriptor is intended to become immutable.

BUG: (04/04/05, DN) When a circular library dependency forbids a new
     instance to be created, it corrupts the database (Bug #237)
FIX: On failure Cell.addNode returns -1 now, which prevents
     NodeInst.lowLevelLink from linking.

************************* Version 8.02j: *********************************

IMP: (04/02/05, SMR) Added "outlined patterned" drawing to PixelDrawing.java.

BUG: (04/01/05, RK) regressions: I removed Compaction regression from run.sh
     because that regression always fails

IMP: (04/01/05, RK) NCC: added regression test for multiple hierarchy scan

BUG: (04/01/05, RK) NCC: CompareList must always have something from both designs

BUG: (03/31/05, GVG) Class exception while dragging cells from ExplorerTree into
     EditWindow on Mac (Bug #235)
FIX: DataFlavor constructor changed. Now using DataFlavor(MyClass.class, String)

BUG: (03/31/05, GVG) Exception in Explorer while dragging on whitespace on Mac OS
     X (Bug #232)
FIX: add image to DragSource.startDrag (only for Mac)

IMP: (03/31/05, GVG) Improvements in lights, transparency/Z buffer handling after
     discussion with Java3D team.

BUG: (03/31/05, GVG) Cell expansion with several sublevels was not working.
FIX: Using rotateOutAboutTrueCenter instead of rotateOut

BUG: (03/31/05, GVG) Exception in output.JELIB if var == null and we are testing
     var.isParam();
FIX: var != null added

IMP: (03/30/05, SMR) Duplicating or copying arcs that share names keeps the
     sharing (Bug #190).

IMP: (03/30/05, GVG) Ability to change color in 3D background.

FIX: (03/30/05, JKG) fix situation where attribute on instance with same name of
     parameter on contents view would incorrectly not be marked as a parameter.

FIX: (03/30/05, JKG) TextUtils.formatDouble() made thread safe

IMP: (03/30/05, JKG) Added checking for conflicting logical effort parameters in
     designs

IMP: (03/30/05, SMR) Placing a large cell instance in an empty window zooms the
     window to fit (Bug #214).

BUG: (03/30/05, SMR) Shift-Right-click to zoom will zoom out if the area is too
     small (Bug #27).
FIX: In ClickZoomWireListener.mouseReleased(), use smarter determination of a
     point-click.

BUG: (03/30/05, SMR) "Duplicate Cell" does not default to the current cell
     (Bug #228).
FIX: In "CellBrowser.performAction()", call updateCellList() in the duplicate
     case.

BUG: (03/30/05, GVG) if tech is set to 4 or less metal layers, TechPalette still
     draws them.
FIX: getNodesGrouped() check notUsed nodes and arc and remove them from original
     matrix.

BUG: (03/29/05, SMR) GDS input doesn't handle orientation of instance arrays
     (AREF)
FIX: Use same method as single instances (SREF).

BUG (03/29/05, RK) NCC: Obtain VarContext from Current Window.

IMP: (03/29/05, RK) NCC: Superficial changes to names, etc.

IMP: (03/29/05, GVG) Icons in technology palette are arranged per layer Z
     position from bottom of the wafer.  "Pure/Misc/Cell" menus are on the top
     and transistors on the bottom. Metal contacts are sorted by lower metal.

IMP: (03/29/05, GVG) Tabs on Mac are aligned on the left (Bug# 226)

BUG: (03/29/05, SMR) Saving new JELIB files doesn't mark the library as "from
     disk", causing subsequent saves to prompt for a file name (Bug #227).
FIX: In output.JELIB.writeTheLibrary(), set "from disk" after saving library.

IMP: (03/29/05, SMR) Explorer tree starts expanded to current library (Bug #223).

IMP: (03/29/05, SMR) User Manual dialog has search built-in (Bug #225).

IMP: (03/29/05, SMR) Added "length" to Arc Properties dialog (Bug #224).

IMP: (03/29/05, GVG) Tabs on Mac are aligned on the left (Bug# 226)

IMP: (03/29/05, GVG) Improvements in resistance/capacitance calculation in
     Parasitic Tool.  Two extra check boxes added: (a) include gate in resistance
     calculation, (b) include gnd network parasitic netlist.

IMP: (03/25/05, SMR) Added HPGL output.

IMP: (03/24/05, SMR) Unconnected nodes that are on the same network as a selected
     node now highlight (Bug #222).

IMP: (03/27/05, GVG) Improvements in 3D directional lights. New defaults:
     (1 1 -1) (-1 1 -1)

IMP: (03/23/05, SMR) More improvements to IRSIM; refactored "Stimuli" and broke
     out subclasses.

BUG: (03/23/04, GVG) ExportCommand crashed if cell is null (no Bugzilla #)
FIX: return was added to the code

IMP: (03/22/05, SMR) Improvements to IRSIM command files (wildcards, vectors,
     individual stimuli removal)

IMP: (03/21/05, GVG) First version of resistance calculation

IMP: (03/21/05, GVG) Parasitic values moved to ParasiticTab (out of SpiceTab)

IMP: (03/21/05, RK) NCC: Improve the error message that's printed when one Wire
     matches several wires by Export names.

IMP: (03/18/05, GVG) Changes in ParasiticsTool to handle IRSIM deck generation.
     It generates so far information for transistors and capacitances.

BUG: (03/17/05, GVG) In DRC introduced while adding new min area strategy.
FIX: merge strategy stored in another place

IMP: (03/18/05, RK) NCC: hierarchical with size checking compares pairs of Cells
     only if each is instantiated exactly once.  Regressions updated to test this
     new functionality.

IMP: (03/16/05, RK) NCC: disambiguate based on MOS lengths in addition to widths

IMP: (03/16/05, RK) NCC qLite regression: remove spurious sizes from
     /data/qLite/modified.

IMP: (03/16/05, GVG) IRSIM will ignore non-fet transistors in schematic (not
     supported by IRSIM sim)

BUG: (03/16/05, GVG) Exception in GetInfo for non FET transistors in schematic.
     Function getTransistorSize() can't be called.
FIX: get the area value by querying the corresponding attribute in the node

IMP: (03/16/05, GVG) PolyBase.getArea() returns positive value. TransistorSize
     also calculates active length for parasitic calculation.

IMP: (03/15/05, SMR) Added "Global Partition" primitive to the Schematics
     technology.

IMP: (03/14/05, RK) Publish regression/docs/regressions.sxw into archivist

IMP: (03/14/05, SMR) IRSIM and waveform improvements:
     Added "debug", "report", and working "t" commands
     Emitting resistors and capacitors
     Takes circuit information directly from memory without temp files
     Buttons next to "main" and "extension" cursors to center them

IMP: (03/14/05, GVG) First version of movie feature.

IMP: (03/14/05, RK) Modify qLite regression to test NCC black box support.

IMP: (03/14/05, RK) NCC: Add support for black boxes.

IMP: (03/14/05, RK) NCC: Add schematic bipolar transistors.

IMP: (03/11/05, GVG) Ability to turn on/off axes

IMP: (03/11/05, GVG) Cleaning up 3D tab in preferences if j3d is not available.
     Some 3D options won't be available since they don't have sense if plugin is
     not available. This simplifies code maintenance.

IMP: (03/11/05, RK) Reorganized qLite regression data

IMP: (03/10/05, GVG) Adding ability to turn off/on bounding box associated to
     cells in 3D (Robert)

BUG: (03/10/05, SMR) Deleting circuitry doesn't remove all highlighting
     (Bug #219).
FIX: In CircuitChanges.DeleteSelected.doIt(), clear highlighting when done.

IMP: (03/10/05, SMR) Added PostScript line thickness control to "Print"
     preferences.

************************* Version 8.02i: *********************************

IMP: (03/09/05, GVG) Sweep algorithm in DRC min area checking

IMP: (03/09/05, GVG) New strategy for collision during key navigation (3D)

BUG: (03/08/05, GVG) Wrong transistor names in TechPalette (Bug #218)
FIX: Switch i by j during palette information is collected in MoCMOS.java

BUG: (03/08/05, SMR) "Change" does not preserve arc names (Bug #210).
FIX: In "Change.replaceAllArcs()", use old arc name when creating new one.

IMP: (03/08/05, SMR) "Cross-Library Copy" now remembers the last libraries
     selected (Bug #212).

IMP: (03/05/05, GVG) Axes in 3D View including rotation according to keybehavior
     and color.

IMP: (03/04/05, RK) Added qLite and sport to NCC regression suite

IMP: (03/04/05, SMR) Initial implementation of IRSIM simulator.

IMP: (03/04/05, GVG) First version of fly-through demo for 3D view. Ability to
     save/read demos using serialization. "J3D" as new file type for demo files.

BUG: (03/04/05, DN) Library write crashes (Bug #216)
FIX: In "output.ELIB" "output.JELIB" "output.ReadableDump" write name
     of external library in case it has not file name yet.

BUG: (03/04/05, DN) Network tool didn't renumber after change of name in global
     primitive.
FIX: In "NetworkTool.newVariable" "NetworkTool.killVariable" put
     "setNetworksDirty".

IMP: (03/02/05, GVG) Adding observable-observer pattern to notify changes in
     light color and direction

BUG: (03/02/05, SMR) Transparent color changes are not restored from saved
     preferences (Bug #213)
FIX: In "Prefs.java", must recache technology colors after importing.

IMP: (03/02/05, GVG) Colors used for cells and highlighted nodes in 3D view are
     available as special colors in ColorsTab Transparency is available in
     highlighted nodes (0.5f is the factor).

BUG: (03/01/05, GVG) Arcs in TechPalette got zero area bounding box after
     tail/head changes (Bug 211)
FIX: In ArcInst.makeDummyInstance, calculate bounding box with angle=0

IMP: (02/24/05, GVG) New 3D Menu in menubar if 3D plugin is found. It will
     contain list of 3D demos.

BUG: (02/23/05, SMR) GDS output does not handle polygons with duplicate points.
FIX: In GDS.outputBoundary(), remove duplicate points before writing.

BUG (02/21/05, GVG) ArrayStoreException in NodeInst.replace due to wrong
     allocation of array memory (Bug #206)

IMP (02/21/05, GVG) New version of 3D tab in preferences. It would be a 3D view
     where transparency and colors can be seen if 3D plugin is available. Access
     to 3D transparency factors in preference now.

IMP (02/17/05, GVG) First version of 3D Demo Tool. Few extra classes in j3d
     plugin.  Features: setup of original view angle, two spline interpolators,
     dialog box to control motion, using node variables to control camera
     viewpoint.

BUG: (02/17/05, SMR) "Properties" windows grab focus inappropriately (Bug #208).
FIX: In EDialog.focusOnTextField()" do not reques focus.

BUG: (02/17/05, DN) Version related methods of Cell causes
     ConcurrentModificationException (Bug #209)
FIX: Synchronize these methods by "lib.cells"

************************* Version 8.02h: *********************************

IMP: (02/14/05, SMR) Added "Windows / Saved Views".

BUG: (02/14/05, SMR) R-tree not correct for arcinsts.
FIX: In ArcInst.lowLevelLink() add the arc to the R-Tree after geometry is
     correct.

BUG: (02/11/05, SMR) Libraries do not read in properly (Bug #203).
FIX: In input.ELIB.realizeArcs(), must compute bounds after bits are set, so
     bounds computation moved from ArcInst.lowLevelPopulate() to
     ArcInst.lowLevelLink().

BUG: (02/11/05, SMR) Zero-length arcs lose their angle information when read from
     ELIB.
FIX: In input.ELIB.realizeArcs(), take angle from the "userbits".

BUG: (02/11/05, SMR) "Properties" dialogs now stay on top in Windows SDI
     environment (Bug #202).
FIX: In EditWindow.paint(), call "requestFocusInWindow()" instead of
     "requestFocus()".

BUG: (02/11/05, SMR) Cross-library copy may not copy all subcells (Bug #200).
FIX: In CircuitChanges.copyRecursively(), when recursing to a related view,
     supress more related views for the current cell only.

BUG: (02/11/05, SMR) Copying cells doesn't get arcs right.
FIX: In Cell.copyNodeProto(), make sure the end coordinates match the PortInsts.

BUG: (02/11/05, SMR) Verilog templates ignore parameters that have default
     values.
FIX: In Verilog.writeTemplate(), look to prototype if variable is not in
     instance.

BUG: (02/11/05, SMR) Verilog templates include square brackets in output
     (Bug #201).
FIX: In Verilog.writeTemplate(), request that instance names be "bus converted".

IMP: (02/11/05, SMR) "Measure" mode in waveform window now crosses panels.

IMP: (02/10/05, SMR) Can now import/export preferences (Bug #196).

BUG: (02/10/05, SMR) Ascending from a "down hierarchy in place" may display wrong
     (Bug #199).
FIX: In EditWindow.upHierarchy() and downHierarchy() must call
     PixelDrawing.clearSubCellCache().

BUG: (02/10/05, SMR) Descending into a rotated cell displays global coordinates
     wrong (Bug #198).
FIX: In EditWindow.showCoordinates() compute transformations properly.

IMP: (02/10/05, GVG) New coverage tab under Tool section in preferences. Second
     version of new layer coverage tool

IMP: (02/10/05, GVG) Rollback of "Made all pure-layer nodes have ports that run
     to their edges" changes in MoCMOS.

IMP: (02/10/05, RK) I changed the layout generator for inv so it uses a different
     floorplan with a 10 lambda wide output bus for strengths x>25.

IMP: (02/10/05, RK) The layout generators for inv2iKp and inv2iKn now use a
     different floorplan with a 10 lambda wide output bus.

IMP: (02/09/05, SMR) Signal names in the explorer tree are now sorted, but with
     subcells listed first. Also allowed "Window / Toggle Grid" to work in
     waveform window.  Also waveform window "Measure" mode displays better.

BUG: (02/09/05, SMR) Waveform signals that are saved with a cell are not
     displayed properly.
FIX: Fixed WaveformWindow.SaveSignalOrder class and
     Simulation.showSimulationData().

BUG: (02/09/05, SMR) Highlighting of splines does not always work right.
FIX: Changes to Highlight.showHighlight().

BUG: (02/08/05, SMR) Crossprobing doesn't work when examining lower levels of
     hierarchy (Bug #173).
FIX: In WaveformWindow.showSelectedNetworksInSchematic(), allow conversion
     between "@" and "_".

BUG: (02/08/05, SMR) Mimic stitch doesn't handle layer changing stitches
     (Bug #194).
FIX: In MimicStitch.mimicOneArc(), allow a null arc prototype (if no single arc
     can be used).

IMP: (02/09/05, GVG) First version of new layer coverage tool

IMP: (02/08/05, RK) Make gate layout generator use VarContext from current window

BUG: (02/08/05, SMR) Moving nodes may cause arcs to become disconnected
     (Bug #195).
FIX: In Layout.java, make consistent use of head/tail arc ends.

IMP: (02/08/05, SMR) Made all pure-layer nodes have ports that run to their edges
     Technologies affected: MoCMOS, BiCMOS, Bipolar, CMOS, MoCMOSOld, MoCMOSSub,
     nMOS.

IMP: (02/07/05, SMR) Added "Show Pure Layer Nodes" command to "Edit / Cleanup"
     menu.

************************* Version 8.02g: *********************************

IMP: Sweep algorithm by default in ERC, geometry on network and coverage implants
     and list layer coverage.

BUG: (02/07/05, SMR) GDS output crashes (Bug #193).
FIX: In GDS.java, fixed new outputDouble() implementation.

IMP: (02/07/05, DN) Changed implementation of ArcInst and Connection:
     Connection's fields moved to Connection, immutable class EPoint is used for
     Locations.

BUG: (02/06/05, SMR) Zooming in too far crashes.
FIX: In GenMath.clipSegment(), do integer scaling using longs.

IMP: (02/04/05, SMR) Directional arcs can now have arrow heads on either end.
     (Bug #150)  Modified Arc Properties dialog to control directional, negated,
     and end extension.  Modified commands in Edit / Arc menu.  Modified internal
     way of storing these properties.

IMP: (02/03/05, SMR) Improvements in node extraction.  Added
     PolyMerge.subtractLayers().

IMP: (02/04/05, GVG) Reorganizing tech palette including Bug#31
     Added "n"/"p" to well, active and transistors. Added "Mos" to transistors.
     Added "Act" to actives. On Y axis, 3-node row (arc, pin, contact) sorted per
     Layer.  Done for all layout technologies.

BUG: (02/04/05, DN) Duplicate or rename cells spoils "getInstancesOf" (Bug #192).
FIX: In NodeInst.check add checking of NodeUsage to catch corruption in time.
     In NodeInst.rename use Cell.removeNodeName instead of Cell.removeNode to
     avoid corruption.

BUG: (02/04/05, DN) User writes corrupted library when invariants are broken
     (Bug #191).
FIX: In ToolMenu suggest user "ForceQuit" with save in "panic" directory.
     In "Cell.checkInvariants" report only first assert violation message to be
     less annoying.

IMP: (02/03/05, GVG) Removing extra call in ERC for subMerge trees.

IMP: (02/03/05, GVG) Optimizing usage of memory in sweep algorithm (using ERC as
     test case).

IMP: (02/03/05, GVG) Change dialog: node names in dialog sorted.

IMP: (02/02/05, GVG) Changes in LayerCoverageJob to allow calls from regression
     test suite.  Got rid of LayerCoverageJob.listGeometryOnNetworksNoJob and
     extended LayerCoverageJob.listGeometryOnNetworks.  Added Extraction package
     in regression test suite (1 script for now).

************************* Version 8.02f: *********************************

BUG: (02/02/05, SMR) Verilog output writes indexed signal names wrong (Bug #189).
FIX: In Verilog.getSafeNetName() distinguish busses from plain signals and handle
     them properly.

BUG: (02/02/05, SMR) Verilog output writes indexed signal names wrong (Bug #188).
FIX: In Verilog.getSafeNetName() allow square brackets if they enclose a singly
     indexed number.

IMP: (02/02/05, SMR) Spice output now sorts signal names in subcircuit headers
     (Bug #186).

IMP: (02/02/05, SMR) Waveform window now sorts signal names in the explorer part
     on the left (Bug #187).

IMP: (02/02/05, SMR) Status bar now shows both local coordinates and
     "hierarchical" coordinates (relative to an upper-level when the "Down
     Hierarchy" command has been used) (Bug #162).

IMP: (02/02/05, GVG) Second version of sweep algorithm for merging areas.
     GeometryHandler transformed into a abstract class.

BUG: (02/01/05, GVG) Covering implants not working with PolyQTree structure after
     code re-organization. Job was not started and it was not detecting correctly
     original geometries.

BUG: (02/01/05, SMR) Artwork solid arcs are drawn in outline form when made
     thick.
FIX: In "Artwork.java", change the solid arc to have type FILLED.

BUG: (02/01/05, SMR) Very tiny schematics may crash PostScript output.
FIX: In PostScript.psText(), quit if text descriptor is null.

BUG: (02/01/05, SMR) Numbers are displayed with too many digits (Bug #183)
FIX: In "TextUtils.makeUnits()", call "formatDouble" with 1 parameter to force 3
     digits precision.

IMP: (02/01/05, SMR) Highlighting a port on an "example icon" shows the
     equivalent export in the cell (Bug #142).

IMP: (01/31/05, GVG) First version of sweep algorithm connected to ERC Well

IMP: (01/31/05, SMR) Waveform window draws grid dimmer and in the background.
     Horizontal grid lines are adjusted to 10%, 30%, 50%, 70%, and 90% of actual
     values.  Panning commands (Ctrl-2-4-6-8) now work in waveform window.

IMP: (01/31/05, DN) Simplifications of Undo API.

BUG: (01/31/05, DN) Incorrect calculation of size of Outline primitives in
     "NodeInst.redoGeometric()"
FIX: Calculate MBB both in parent and in instance coordinates.

IMP: (01/31/05, RK) Removed the compile time limit on the number of transistors
     that may be combined into a single series stack.

IMP: (01/30/05, DN) DatabaseChangeListener API changed to prepare for
     transactional database.

IMP: (01/29/05, DN) JELIB is the default library format.

BUG: (01/29/05, DN) Deleting exports invalidates database invariants (Bug #181).
FIX: In "Export.kill()" disconnect all PortInsts of this Export before deletion.

IMP: (01/29/05, SMR) Shift-right in waveform now zooms (Bug #177).

************************* Version 8.02e: *********************************

IMP: (01/28/05, GVG) Adding exhaustive checking option in DRC (mostly for
     regression purposes)

IMP: (01/27/05, GVG) Side effects of ordered database in DRC. Speed improvements
     to avoid checking two node instances multiple time. Some statistics:
     qFourP2:qFourP1top:qFourP1top: v8.01=22 min, v8.02d=37min, v8.02e=8min.

IMP: (01/27/05, JKG) Added option under GDS preferences to have brackets in
     export names converted to underscores.

IMP: (01/26/05, GVG) TSMC90nm: thick active contacts including thick active
     arcs

IMP: (01/26/05, SMR) Removed the command "Windows / Special Zoom / Zoom Box"
     because it duplicates the shift-right drag function and, more importantly,
     doesn't work.

BUG: (01/26/05, SMR) Deleting nodes leaves their highlighting on the screen.
FIX: In Highlight.isValid() must convert PortInst objects to their NodeInsts.

IMP: (01/26/05, SMR) Serpentine transistors have their sizes recomputed with
     their bounds.

BUG: (01/26/05, DN) Arcs may be created with ends on unlinked PortInsts.
FIX: Check PortInst.isLinked when creating arcs.

BUG: (01/26/05, DN) Corrupted ELIBs may be written (Bug #176).
FIX: Check database invariants before writing libraries.
     Validate PortProtos when reading ELIBs.

BUG: (01/26/05, DN) ELIB reader unnecessarily scales layout cells (Bug #176).
FIX: Limit scaling to icon subcells in schematic cells.

BUG: (01/26/05, DN) Group delete causes exception (Bug #175).
FIX: "kill" methods will return with message if object is already killed.

BUG: (01/26/05, DN) The Font Association String[] var is incorrectly prepared.
FIX: In Output.createFontAssociation, <= instead of < .

BUG: (01/25/05, GVG) PolyBase.isInside not working properly for non-convex
     mahnattan polygons.  Angle-based algorithm tends to cancel out angles for
     concave corners.
FIX: (for now) for wiring check if point is along polygon edges. More stable
     solution is to change algorithm for an intersection-based one.

BUG: (01/25/05, SMR) Spice output allows names that start with a digit (but Spice
     doesn't) (Bug #169).
FIX: In Spice.getSafeNetName(), insert an "_" before names that start with a
     digit.

BUG: (01/25/05, SMR) Auto-routing does not connect to pure-layer nodes with
     nonmanhattan shape.
FIX: In Technology.getShapeOfNode(), set a port when outline is present and
     electrical layers requested.

BUG: (01/24/05, JKG) HierarchyEnumerator.getNetworkInParent() did not handle
     globals correctly, because they are not explicitly exported.
FIX: check for globals

BUG: (01/24/05, JKG) Additional windows (with menu bars) was causing duplicate
     key bindings.
FIX: boolean check for initialization to occur only once.

BUG: (01/24/05, SMR) Importing libraries doesn't mark them to be saved.
FIX: In "Input.importLibrary()", set the library to have major changes.

************************* Version 8.02d: *********************************

BUG: (01/24/05, JKG) The Font Association String[] var was being incorrectly
     written out in the ELIB writer, as the "additionalVar" in
     ELIB.writeVariables().
FIX: A fix has been implemented that checks for version 8.02c of the libraries
     and ignores the variable. Additionally, the ELIB writer has been fixed.

BUG: (01/24/05, SMR) CIF input places cell instances incorrectly.
FIX: In CIF.nodesCall(), must compute instance position to account for
     cell-centers. In CIF.makeCall(), must make a copy of the matrix.

IMP: (01/22/05, SMR) Finished coding PolyBase.contains().

************************* Version 8.02c: *********************************

BUG: (01/21/05, SMR) Spice crossprobing doesn't work right (Bug #170).
FIX: In WaveformWindow.java, do not convert "@" to "_" unless name match fails.

IMP: (01/21/05, SMR) Combined the Component menu into the Explorer panel,
     Also added the "Layer Visibility" dialog there (Bug #35, #67)

BUG: (01/21/05, SMR) Exports don't display when editing "down hierarchy in place"
     (Bug #164)
FIX: In PixelDrawing.java, must keep track of top-level window and draw exports
     properly.

BUG: (01/21/05, SMR) Scroll bars don't work right when editing "down hierarchy in
     place" (Bug #164)
FIX: In EditWindow.setScrollPositionUnsafe(), bottomScrollChanged(), and
     rightScrollChanged() must account for the in-place editing when dealing with
     the offset values.

BUG: (01/21/05, SMR) Auto-stitching doesn't connect pins.
FIX: In Technology.getShapeOfNode(), only exclude pin geometry if not doing
     electrical layers.

IMP: (01/20/05, GVG) Extra flag in DRC tab to stop checking after first error
     per node is found.

IMP: (01/20/05, GVG) Setting default colors for Artwork Arcs and Text Properties
     (in TextDescriptor.DescriptorPref)(Bug #152)

BUG: (01/20/05, DN) Can't rename cell groups (Bug #167).
FIX: CircuitChanges.RenameCellGroup.doIt stores cells from group in
     array before renaming.

IMP: (01/19/05, SMR) Cleaned up use of "getUserNetlist".

IMP: (01/18/05, SMR) Improved GDS floating point output.  Code from Tom Valine
     <tomv@transmeta.com>.

IMP: (01/18/05, SMR) Removed "Update" button from "Attributes" dialog, have
     only "Done". All actions happen instantantly (Bug #78).

IMP: (01/18/05, SMR) "Props." button in "Arc Preferences" dialog by name
     field lets name info be edited (Bug #149).

BUG: (01/18/05, DN) "ElectricObject.isLinked()" can return true for objects of
     deleted cell.
FIX: Reimplement "isLinked()" so that it became the same as former
     "isActuallyLinked()".

IMP: (01/17/05, DN) Deterministic output of ELIB and ReadableDump:
     Only referenced objects and variable keys are written;
     Userbits of objects contain only bits used in Java Electric;
     Only variable flags used in Java Electric are written;
     VTDISPLAYNAMEVALINH and VTDISPLAYNAMEVALINHALL bits in TextDescriptor are
     replaced by VTDISPLAYNAMEVALUE;

IMP: (01/14/05, RK) NCC: I eliminated the annoying "false sharing" behavior
     during hierarchical NCC. This allows NCC regressions to pass once again.

IMP: (01/14/05, SMR) Added special properties dialog for nodes with outline
     information (shown when doing a "Properties" command on such a node).

BUG: (01/14/04, DN) Thunder and lightning when highlighted networks are not ready
     (Bug #155).
FIX: In "Highlighter.getHighlightedNetworks" use "acquireUserNetlist" instead of
     "getUserNetlist".  Text message is printed when getUserNetlist is called in
     GUI thread.

************************* Version 8.02b: *********************************

BUG: (01/14/04, GVG) Removing extra quotes in Launcher.java otherwise double
     click or java -jar electric.jar doesn't work. (Bug #160).

BUG: (01/13/05, DN) Giving same name for two nodes in a cells spoils invariants
     (#Bug 159).
FIX: NodeInst.getDuplicate() returns duplicate (returned always 0).

BUG: (01/13/05, GVG) DRC and ordered database changes. After the changes, it was
     noticed that checkDist was not invariant because it reported only the first
     error found. This affects regression result.
FIX: checkDist will check all cases. Disadv: DRC gets slower but accurate.

IMP: (01/13/05, JKG) Spice generated node names are now determinant.

IMP: (01/13/05, JKG) CDL: "convert brackets" option now works properly;
     empty subcircuits are not netlisted.

IMP: (01/13/05, JKG) CIF generated names are now NAME instead of NAME_lay_.

IMP: (01/13/05, JKG) Added Export command to export 'exports only' in Skill.

IMP: (01/13/05, JKG) Added option on Skill preferences tab to truncate cell
     names to match names in GDS files.

IMP: (01/13/05, JKG) Topology: "getSafeNetName" now properly applied to
     non-aggregating netlisters

IMP: (01/12/05, SMR) First implementation of node extractor.  Added to
     "network tab" in "Preferences" dialog

BUG: (01/13/05, DN) Rename arc/nodes and undo can spoil database invariants
     (Bug #157).
FIX: In "NodeInst.lowLevelSetNameKey" and ArcInst.lowLevelSetNameKey remove
     "isUsernamed()".

BUG: (01/13/05, DN) Remove export crashes.
FIX: In "Cell.removeExport()".

BUG: (01/13/05, DN) Ordering Tools by name changed order of Listeners calls.
FIX: Order tools by definition order.

BUG: (01/12/05, DN) JELIB contains only used exports of external cells.
FIX: Output all exports of external cells.

IMP: (01/12/05, DN) TextDescriptor saves in preferences colors of
     default Node/Arc/Export/Annotation/Instance/Cell descriptors.

************************* Version 8.02a: *********************************

IMP: (01/11/05, SMR) "Arc Properties" dialog now has "More/Less" button and, in
     expanded mode, shows a list of attributes on the arc (Bug #149).

IMP: (01/11/05, DN) All database objects are comparable and the are ordered in
     database.

IMP: (01/10/05, SMR) Better detection of the selected export when going up
     hierarchy (Bug #138).

BUG: (01/10/05, GVG) DRC and min area, still problems with well areas which are
     not part of any network
FIX: Forcing substrate to ignore network information in Quick.java

BUG: (01/10/05, SMR) Some old Electric versions crash ("5.3b22").
FIX: Version.java no longer throws a NumberFormatException...just prints an error
     message.

BUG: (01/10/05, SMR) New windows don't appear with the cell filling it (Bug
     #140).
FIX: In WindowFrame.createEditWindow(), set the EditWindow size before filling
     the screen.

IMP: (01/10/05, SMR) Added a global text scale that applies to all text.
     Settable as a parameter (in the Text tab) and with the "Edit / Text"
     commands "Increase All Text Size" and "Decrease All Text Size".

BUG: (01/10/05, SMR) Viewing the explorer tree "hierarchically" does not work
     right.
FIX: Re-implemented WindowFrame.wantToRedoLibraryTree() and use it when changing
     the explorer view style.

BUG: (01/10/05, SMR) Editing text in-place doesn't properly calculate the number
     of lines of text (Bug #141).
FIX: In GetInfoText.figureSize(), have "split()" use a second parameter of -1 to
     include all trailing fields.

IMP: (01/09/05,GVG) YES_NO dialog for deleting cells in Explorer instead of
     YES_NO_CANCEL type

IMP: (01/09/05, DN) Settors are removed from TextDescriptor class. Database
     TextDescriptors are almost readonly (except low-level methods).
     MutableTextDescriptor class is used for TextDescriptors out of database, it
     has both gettors and settors.  Variable API is extended by TextDescriptor
     API (both gettors and settors).  ElectricObject.getTextDescriptor(varName)
     and ElectricObject.setTextDescriptor(varName, td) can be used for uniform
     access to text descriptors in database. varName can be also one of:
       NodeInst.NODE_PROTO_TD, NodeInst.NODE_NAME_TD, ArcInst.ARC_NAME_TD,
       Export.EXPORT_NAME_TD

IMP: (01/08/05, GVG) Catching expection due to bad filename while generating
     ImageIO during export.

IMP: (01/08/05, GVG) Avoid exception if new name is null due to errors in
     Cell.rename.

IMP: (01/05/05, DN) View, Libraries, Cells, Exports, Tools, Technologies,
     PrimitveNodes, PrimitiveArcs, Variables are comparable by name and ordered
     in database.

IMP: (1/3/5, SMR) Added silicon compiler and VHDL compiler.
     Initial translation without any improvements.
     Added commands "Tool / Silicon Compiler / Convert Current Cell to Layout",
     "View / Make VHDL View"
     "View / Compile VHDL to Netlist View"
     "View / Generate VHDL View"

BUG: Must quote system properties when relaunching.
FIX: In Launcher.invokeElectric()", quote results of System.getProperty().

BUG: (12/23/04, GVG): Exception creating a bufferImage if width or heigth was
     zero (text) (Bug #139)
FIX: return null in these cases

IMP: (12/23/04, GVG): Fixing side effects in TechPalette after Bug#103

IMP: (12/23/04, GVG): TSMC90: Adding rules "A page 54", "B page 54" and "J page 54" even
     though they are met by construction (triggered by Bug #137)

IMP: (12/23/04, GVG): 3D View: warning if scene graph will be big (Bug #28)

************************* END OF Version 8.01, GNU RELEASE *********************************
************************* Version 8.01: Released 12/22/04 *********************************

IMP: (12/22/04, GVG): Change should leave object(s) selected (Bug #129)

IMP: (12/22/04, GVG): New scale for 3D panning.

IMP: (12/22/04, GVG): New names for VTH/VTL/OD18 pure nodes to be consisten with rest of names.

IMP: (12/22/04, GVG): DRC Schematic, improving error messages if objects touch (triggered by Bug #126)

BUG: (12/22/04, SMR) Busses connecting at a Wire Con are flagged as DRC errors (Bug #126).
FIX: In drc.Schematic.checkPolygonVicinity(), consider WireCon to connect arcs.

IMP: (12/21/04, SMR) When going down hierarchy, only ask for entry in arrayed node if waveform is present.

IMP: (12/21/04, SMR) Added Help/Load Built-in Libraries/MOSIS CMOS Pads to get the pads library.

BUG: (12/20/04, SMR) Offset text on rotated nodes is not drawn right.
FIX: In Geometric.addDisplayableVariables(), handle style rotation and style offset.
     In ElectricObject.getPolyList(), handle style offset.
     In ElectricObject.addDisplayableVariables(), handle style rotation.
     In PolyBase.rotateType(), handle transposed rotation better.
     In Technology.getShapeOfNode(), use untransformed bounds of node for text location.

BUG: (12/20/04, GVG) Extra polyehedra to describe gate channel were wrong if transistors were rotated (Bug #124)
FIX: Extra geometries are created after polygons are rotated.

IMP: (12/20/04, GVG) Ability to open libraries without providing extension. Extension will be added based on
     DEFAULTELIB variable. (Bug #95)

IMP: (12/20/04, GVG) Adding error logger to ELIB/ELIB1 if readNodeInst/readArcInst returns true
     otherwise users might skip the error.

BUG: (12/20/04, SMR) "Dragging must enclose objects" doesn't work right (Bug #131).
FIX: In Highlighter.checkOutObject()" must consider only essential part of node or arc.

BUG: (12/20/04, SMR) Multi-object Properties dialog cannot edit selection if
     only Exports are listed (Bug #130).
FIX: In GetInfoMulti.loadMultiInfo() enable removal buttons if there are exports, too.

BUG: (12/20/04, SMR) Automatically generated icons fail "cell cleanup" (Bug #128).
FIX: In CircuitChanges.cleanupCell(), ignore Universal Pins as well as Invisible Pins
     when considering whether zero-size is an error.

IMP: (12/19/04, SMR) Cleaned up code to be consistent with documentation
     (added "Add Ports from Library" in Export menu).

IMP: (12/20/04, GVG) List of primitive nodes in Change dialog and tech palette are sorted alphabetically (Bug #132)
In case of sorted list of nodes, use Technology.Technology.getCurrent()

IMP: (12/17/04, RK) NCC: remove useless options. update documentation

************************* Version 8.01aw: *********************************

IMP: (12/17/04, GVG) 3D View: panning implemented (Bug #24). ZoomAndPanListener.panX and panY replaced by one function
and new one was added to WindowContent to deal with different window types.

IMP: (12/17/04, SMR) Cleaned up code (removed irrelevant commented-out sections),
     converted wildcard imports.

BUG: (12/17/04, SMR) Edit in-place does not grow as new text is typed (Bug #125).
FIX: In GetInfoText.EditInPlaceListener, fill in keyReleased() and have it resize the text area.

IMP: (12/17/04, DN) Fixed compilation warnings on Java-1.5.

BUG: (12/17/04, GVG) 3D view: problems with zoom in/zoom out (Bug #23)
FIX: Change factor calculation and now we are just setting a new transformation scale.

IMP: (12/17/04, DN) Fixed compilation warnings on Java-1.5.

IMP: (12/16/04, GVG) Minor changes due to manul preparation.

BUG: (12/16/04, SMR) Going "Down Hierarchy" after a "Down Hierarchy In Place" remains
     in "in place" mode (Bug #107).
FIX: In EditWindow.downHierarchy(), turn off "in place" mode if not going down in place.

IMP: (12/16/04, GVG) New transistor sizes of OD18 and Native to comply with missing DRC rules

BUG: (12/16/04, SMR) PostScript export of waveform windows crashes (Bug #119).
FIX: In PostScript.java, check for null EditWindow pointer.

IMP: (12/15/04, SMR) Minor changes to GUI to help with documentation: About dialog, New Arc Preferences,
     outline edit, verilog of and/or gates, multipage schematics, command-line help, Export menu,
     pulldown reporting.

BUG: (12/15/04, SMR) "Antenna" preferences crash if current technology has no metal.
FIX: Check for empty list.

IMP: (12/15/04, RK) NCC: Add Net Equivalence mapping regression. The regression uncovered many bugs.

BUG: (12/15/04, GVG) DRC and new thick active layers: wrong bit detection for thick active layers that make DRC to fail
FIX: negate condition in Quick.checkDist() (Bug #117)

IMP: (12/15/04, GVG) MoCMOS: wrong min size of thick active pure nodes (2.0 instead of 4.0, rule 24.1)

IMP: (12/15/04, GVG) TSMC90: new stipple patterns for OD18 (Bug #118)

BUG: (12/15/04, GVG) DRC Select checking: still problems with transformation (Bug #114)
FIX: "No enough surround" code refactored and placed outside of initial recursive iteration.

IMP: (12/14/04, GVG) New colors/patterns for VTH/VTL/Native transistors in TSMC90 (Bug #113)

IMP: (12/14/04, GVG) DRC: first modifications for VTH/VTL/Native transistors.

BUG: (12/14/04, SMR) Duplicating a PMOS schematic transistor creates one named "nmos@xx" (Bug #115)
FIX: In Clipboard.copyListToCell(), create nodes with the proper "tech specific" value.

BUG: (12/14/04, SMR) Spice netlister does not use "vdd" or "gnd" when power and ground nodes are present (Bug #112).
FIX: In Spice.getPowerName and getGroundName(), favor "vdd" and "gnd" if the names exist.

BUG: (12/14/04, SMR) When the background color is white, dragging a rectangle is not visible (Bug #110).
FIX: In EditWindow.showDragBox(), use the proper highlight color.

BUG: (12/14/04, DN) Non-string variables with language code bits can corrupt disk library (Bug #100).
FIX: Clear language code bits from non-string variables in ELIB and JELIB writers.

************************* Version 8.01av: *********************************

IMP: (12/14/04, DN) Renamed transistor port names in TSMC90. JELIB reader handles renamed ports. (Bug #83)

BUG: (12/13/04, SMR) Spice cards do not get emitted to the deck (Bug #93).
FIX: In Spice.replacePortsAndVars(), allow unconnected nodes.

BUG: (12/13/04, SMR) Selection of header files in the Spice Preferences dialog excludes all files (Bug #91).
FIX: In FileType.java, change the extension string of ANY from {""} to {}.

BUG: (12/13/04, SMR) Small values get turned into zeros (Bug #90).
FIX: In TextUtils.makeUnits(), call "formatDouble()" with a second argument of 0.

IMP: (12/13/04, DN) Revision of JELIB format. JELIB writer will change
     format when the Electric version becomes "8.01aw". JELIB reader will
     read files after "8.01aw" in a new format.

BUG: (12/10/04, GVG) No reporting min errors for negative notches (Bug #85)
FIX: Put code back (decomissioned long time ago) and amended.

IMP: (12/10/04, GVG) ERC profiling results: (1) getShapeArc() touched, (2) getShapeNode touched

IMP: (12/9/04, GVG) New thick transistors in MoCMOS technology.

IMP: (12/9/04, GVG) Transistor names in TSMC90 consistent (Bug #83)

BUG: (12/10/04, SMR) Not all parent cells are listed when "Up Hierarchy" is done (Bug #88).
FIX: In EditWindow.upHierarchy() use HashSet, not TreeSet.

IMP: (12/10/04, SMR) Added drag-and-drop from both the Explorer Tree (for cell instances)
     and from the palette (for technology primitives).

BUG: (12/10/04, SMR) Selecting a bus pin does not grab all nets on that pin (Bug #77).
FIX: In Highlighter.getHighlightedNetworks(), look at all arcs connected to a pin.

BUG: (12/10/04, SMR) Locking cells may crash when changes are made (Bug #84).
FIX: Moved all calls to CircuitChanges.cantEdit to be inside of jobs.

BUG: (12/9/04, SMR) Waveform window does not always show the full hierarchy of signal names (Bug #82).
FIX: In WaveformWindow.getSignalsForExplorer(), ensure that all levels of the signal name hierarchy are created.

BUG: (12/9/04, SMR) Spice netlister may mix-up ground signal names (Bug #81).
FIX: Change Spice.getGroundName to return null.

IMP: (12/9/04, SMR) "Layer Visibility" dialog also lets you "highlight" layers.

BUG: (12/9/04, SMR) Resizing a window doesn't always redraw its contents.
FIX: In EditWindow.java, queue resizing, just like panning and zooming.

************************* Version 8.01au: *********************************

BUG: (12/9/04, SMR) Going "Up Hierarchy" may display the cell twice (Bug #74).
FIX: In EditWindow.upHierarchy(), do not request full display if adjusting view.

BUG: (12/9/04, GVG) DRC bug related to active contacts touching transistors (function activeOnTransistorRecurse):
     wrong detection of poly ports (Bug #72).
FIX: search based on names instead of networks otherwise active ports connected to poly via other contacts get ignored

IMP: (12/9/04, GVG) ERC profiling results: (1) less getWellLayerType calls (2) no checkForAbort in visitNodeInst

BUG: (12/9/04, DN) Thousands of ArrayIndexOutOfBoundsException drawing Highlights (Bug #79).
FIX: Addition check isActuallyLinked() in Netlist class.y

BUG: (12/9/04, DN) Network tool crashes if cell contains cell from it's own cellgroup (Bug #75).
FIX: NodeInst.isIconOfParent() uses NodeUsage.isIconOfParent() to.

IMP: (12/8/04, GVG) DRC good dates work with min area and coverage bits (Bug #17)

IMP: (12/8/04, GVG) Save Library in ExplorerTree to avoid the setup as current library previous to the saving action.

IMP: (12/8/04, GVG) Layer visibilty stored in technology preferences (Bug #76)

BUG: (12/8/04, RK) NCC: When guessing which layout or schematic cell to compare against, always select the most recent version.

BUG: (12/8/04, GVG) DRC: polysilicon-select checking not working properly hierarchically (Bug# 66 and #15).
FIX: work on transformations.

IMP: (12/7/04, RK) NCC regression: added small test case to exercise transistor thresholds, oxide thickness, etc

IMP: (12/7/04, RK) NCC: Handle transistor thresholds, oxide thickness, etc

IMP: (12/7/04, SMR) Descending into an arrayed node now prompts for the specific node to enter (Bug #53).

************************* Version 8.01at: *********************************

IMP: (12/7/04, SMR) Spice files don't get read back properly.

IMP: (12/7/04, GVG) DRC: more caching functionality (tested in debug mode and now making it public)

IMP: (12/7/04, SMR) Assertion in Library.removeReferencedLib() is now just a warning (Bug #58).

IMP: (12/7/04, GVG) DRC: another place where generic arcs are found in layout.
     Same modification as the one inserted on 12/3/04

IMP: (12/7/04, SMR) Screen sizes are computed better on multi-display systems (Bug #48)

BUG: (12/7/04, SMR) Auto-stitcher may remove useful pins (Bug #59).
FIX: In AutoStitch.comparePoly(), only delete pins if they have no connections or exports.

IMP: (12/6/04, GVG) ERC: optimizing code (1)DRC check only available by request (not fully decomissioned yet
     until 100% sure about consequences) (2) caching information for arcs in HierarchyEnumerator Visitor.

IMP: (12/6/04, SMR) Screen sizes are computed better on multi-display systems (Bug #48).

BUG: (12/6/04, SMR) Conversion from layout to schematic is broken (Bug #56).
FIX: Fixed "ViewChanges.java" to work right.

BUG: (12/6/04, SMR) PostScript output is empty.
FIX: Make scaling factors "i" and "j" double in PostScript.start().

BUG: (12/6/04, SMR) Unexpanded cell outlines may get cut off on the right and bottom.
FIX: In PixelDrawing.expandedCellCached()" make caches wider and taller by 1.

IMP: (12/6/04, GVG) Export PNG files. Valid for EditWindow, Waveform and 3D View.

IMP: (12/6/04, DN) "TextUtils.getFileNameWithoutExtension()" returns legal
     library name with chars '\n|: {};' replaced by '-'.
     "LibraryFiles.readExternalLibraryFromFileName()" uses this name
     for library creation.

IMP: (12/5/04, SMR) Sped up drawing of highlights by doing proper clipping in Highlight.java. (Bug #51)

IMP: (12/3/04, SMR) Made Artwork Circles work properly, including problems with constraints (Layout.modFlex()),
     selection, better highlighting.

IMP: (12/3/04, SMR) Redid Layer Visibility once more; can select range of layers.

IMP: (12/3/04, GVG) TSMC90: New default size in pure p/n select nodes (Bug #54)

BUG: (12/3/04, RK) NCC: more intuitive Cell selection for cell groups having multiple layout cells (Bug #45)

IMP: (12/3/04, GVG) DRC: generating warnings if generic arcs are found in layout cells

BUG: (12/3/04, GVG) TSMC90: Active ports got wrong active arcs attached (Bug #52)
FIX: Switched to N type

BUG: (12/3/04, DN) In ELIB input technology and scale calculation is undeterministic (Bug #20).
FIX: LibraryFiles.computeTech() ensures that subcells have computed technology.

IMP: (12/3/04, DN) Technology.whatTechnology returns Artwork for text files.

IMP: (12/3/04, DN) Launcher enables assertions.

BUG: (12/2/04, SMR) Layer Visibility dialog doesn't work right on Macintosh.
FIX: Change event handling to work on Mac.

IMP: (12/2/04, SMR) Waveform window "measure" mode now snaps to waveform points.

BUG: (12/2/04, GVG) Multi cuts conditions not proporly checked for TSM90 tech and viaXs
IMP: isMultiCutCase() depends on technologies. By default, if more than 1 cut then is multiCut node.
For TSM90, only when 3 neighbors (Bug #21). Bug #49 as well.

IMP: (12/2/04, SMR) Converting from schematics to layout ("Make Alternate Layout View")
     does not re-create existing cells. (Bug #38).

IMP: (12/2/04, SMR) Going up hierarchy follows exports.

************************* Version 8.01as: *********************************

BUG: (12/2/04, SMR) JELIB input may crash. (Bug #46)
FIX: In "JELIB.instantiateCellContent()" handle null "lineReader".

IMP: (12/1/04, SMR) Status bar coordinates are wider and right-aligned (Bug #33)

IMP: (12/2/04, SMR) PostScript output improved (fills paper better, writes all ports). (Bug #25)

BUG: (12/2/04, SMR) Extracting instances doesn't preserve export characteristics. (Bug #44)
FIX: In CircuitChanges.extractOneNode(), copy all export information.

IMP: (12/2/04, SMR) HSpice output reader can now handle wide signal format (9601). (Bug #39)

FIX: (12/1/04, JKG) MoCMOS Gate Layout Generator regression fails in 8.01ar (Bug#40)

BUG: (12/1/04, SMR) Multi-object Properties does not adjust sizes right when mirroring is involved. (Bug #32)
FIX: In GetInfoMulti.MultiChange.doIt(), account for mirroring when computing new size.

IMP: (12/1/04, SMR) "Pure" menu entry no longer offers contact or via layers.

IMP: (12/1/04, SMR) "Layer Visibility" dialog now shows layers sorted by height (Bug #26, 33)
     and lets you set all layers above or below a point to be visible/invisible.

************************* Version 8.01ar: *********************************

IMP: (11/30/04, GVG) New stipple patterns for m7/m8 in TSMC90 (Bug #22)

BUG: (11/30/04, GVG) Wrong sizeoff in X m7m8 and m8m9 contacts. Values amended (Bug #19)

IMP: (11/30/04, GVG) 3D View: printing capability from FileMenu->Print (new API in WindowContext to be more generic).

BUG: (11/30/04, SMR) Encapsulated PostScript is wrong.
FIX: Halve the number of "%" characters (they were duplicated for C formatting).

IMP: (11/30/04, SMR) "Confirm delete" in "Delete Cell" dialo, and "Make new window" in "New Cell" dialog
     are remembered between dialogs.

IMP: (11/29/04, SMR) Double-clicking on vertical axis of waveform window gives dialog for setting extents.

BUG: (11/29/04, RK) NCC wasn't stopping upon finding first error for Cell Groups with more than one comparison.

IMP: (11/29/04, GVG) 3D View: (a)Fill Window functionality available in 3D View. (b) First attempt to program
     ZoomOut/ZoomIn. (c) If cells are expanded, its nodes will be shown. (d) Bug fix in extra polyhedra connecting poly gates.

BUG: (11/29/04, RK) Fix NCC crash when designs have no Parts or no Wires and a Hash Code partitioning mismatch is reported. Re: Bugzilla bug #16

IMP: (11/29/04, SMR) Improved name incrementing so that lists are all incremented
     (for example, "A,B" used to become "A,B_1" but now becomes "A_1,B_1").

IMP: (11/28/04, SMR) Added primitive node/arc invisibility when all of their layers
     are invisible, so that they are not selectable.

IMP: (11/25/04, SMR) Added DXF input.

IMP: (11/25/04, SMR) Added "grid" button to analog waveform window.

IMP: (11/25/04, SMR) Renaming a group shows up in the explorer tree.

IMP: (11/25/04, SMR) New Arc Preference: Duplicate/Array/Paste auto-increments arc names.

IMP: (11/25/04, GVG) 3D View: automatic resizing in Z axis in any open 3D view if scale changes.
     New location of scale factor in 3D dialog.

BUG: (11/25/04, GVG) DRC badBoxArea not returning when error found and then wrong good date was stored (Bug #13)
FIX: return inserted

IMP: (11/24/04, SMR) Widened coordinate area in status bar to account for Macintosh font size.

IMP: (11/24/04, SMR) Added hook to clear the cache of expanded cell contents, used by layer visibility.

IMP: (11/24/04, SMR) Spice netlister no longer forces power and ground to be named "vdd" and "gnd".

BUG: (11/24/04, SMR) When an arc connects from a port to itself, deleting the port crashes.
FIX: In "NodeInst.removePortInst()" make sure the number of connections is valid.

BUG: (11/23/04, SMR) Node Instance names are not drawn right if the instance is rotated/mirrored and its
     contents are not centered.
FIX: In ElectricObject.computeTextPoly() transform name text about the true node center.

IMP: (11/23/04, SMR) Implemented "multi-page schematics".  Commands in the Cell menu control it.
     All pages are actually in a single cell, spaced far apart.

IMP: (11/23/04, SMR) Duplicating a cell that is on the screen multiple times only changes one display.

IMP: (11/23/04, SMR) Duplicating a cell and giving it a name that already exists prompts for confirmation.

************************* Version 8.01aq: *********************************

BUG: (11/23/04, SMR) Panning an expanded cell makes its exports go away.
FIX: In PixelDrawing.drawNode()" always write exports.

BUG: (11/22/04, SMR) "Make Alternate Layout View" produces Schematic cells.
FIX: In "ViewChanges.makeLayoutCells()", use layout when creating new cells.

BUG: (11/22/04, SMR) GDS output crashes when given a schematic.
FIX: Disallow non-layout views from being written in GDS.

BUG: (11/22/04, GVG) ERC shouldn't complain for not finding N/P well contacts if there are no P/N well
     regions in cell
FIX: While checking well areas, remember if P/N regions exist.

IMP: (11/22/04, GVG) Ports for pure primitive nodes will grown in size as the nodes.

BUG: (11/22/04, GVG) Extending search area in DRC for notch checking otherwise it doesn't find points along edges.
FIX: In Quick.lookForCrossPolygons(), bounding box has been extended.

IMP: (11/22/04, SMR) Display improved: "Peek" is faster; Panning the display is faster
     Display no longer inaccurate during/after panning; Down-hierarchy in-place faster.

BUG: (11/22/04, SMR) R-Trees may fail if too many objects are on top of each other.
FIX: In Geometric.RTNode.addToRTNode(), make sure the two seed nodes (oldN and newN) are different.

IMP: (11/21/04, GVG) 3D modifications: (a) Extra polygons connecting poly and poly gates in transistors
     so gate oxide looks more real. (b) Adding active region beneath poly gate (electrical layers from
     getShapeOfNode don't provide such polygons).

IMP: (11/21/04, GVG) Orbit behavior replaced by 3 separate ones in 3D view. Better zoom and translation

************************* Version 8.01ap: *********************************

IMP: (11/18/04, SMR) Added security to TopLevel.finished().

IMP: (11/18/04, GVG) Technology name in new Arc/Node tabs in preferences

IMP: (11/18/04, GVG) Allow to keep min sizes stored in preferences (not applying Technoloogy.setLayerMinWidth().
Send a warning with debugging option.

IMP: (11/18/04, GVG) DRC will ignore goodDRCDates if library was created with old JElectric version.

BUG: (11/18/04, GVG) Not removing goodDRCDate from cells that didn't pass DRC.
FIX: Collect the information and do it in SaveJob

BUG: (11/18/04, GVG) ChangeCell.contains() not detecting repeated elements.
FIX: Put back original code

BUG: (11/18/04, SMR) Cross-library copy doesn't sort cell names properly.
FIX: In "CrossLibCopy.showCells()", use "nameSameNumeric".

BUG: (11/18/04, DN) Port moved always reported for ports of transistors rotated to 45 degree.
FIX: ArcInst.stillInPort() tolerates distance to nearest grid point "0.01*sqrt(0.5)".

IMP: (11/18/04, DN) Menu entry "File|CheckAndRepairLibraries" is splitted to two:
    "File|CheckLibraries|Check" and "File|CheckLibraries|Repair".

BUG: (11/18/04, DN) CheckAndRepair may change database, but it isn't executed in the change thread.
FIX: Class CircuitChanges.CheckAndRepairJob.

BUG: (11/18/04, DN) Input.readLibrary calls "preventLoss" dialog from change thread.
FIX: Move it FileMenu to execute in GUI thread.

IMP: (11/18/04, DN) CheckAndRepair put messages to ErrorLogger.

IMP: (11/17/04, SMR) Mimic stitch is faster, and interactive mode lets you zoom/pan window.

BUG: (11/16/04, SMR) Cross-library copy does not update cell references properly.
FIX: In Cell.copyNodeProto() ignore existing cross-library references.

BUG: (11/16/04, RK) NCC: NCC crashes if A and B are in the same Cell group and A instantiates B.

IMP: (11/16/04, GVG) DRC: dates stored disabled (OUT)

BUG: (11/16/04, GVG) Rounding issue in Quick.lookForCrossPolygons()
FIX: round bounding box before looking for points. This fixes JonG's DRC notch error reported on 11/09/05 (90nm tech)

BUG: (11/16/04, GVG) MOSRules.getMaxSurround()didn't consider information about wide rules
FIX: condition added. Plus 100 is the new wide value for TSMC180nm

BUG: (11/16/04, DN) XSize and YSize of serpentine transistors are not properly calcualted.
FIX: getShapeOfNode and getShapeOfPort use getAnchorCenter instead of getTrueCenter
     In NodeInst use getShapeOfNode to calculate sizes of primitive with TRACE.

BUG: (11/16/04, SMR) Hierarchical display of wires is sometimes off by 1 pixel.
FIX: In EditWindow.databaseToScreen() use rounding for better accuracy.

IMP: (11/15/04, GVG) Network tool connected to 3D View

IMP: (11/15/04, GVG) Ability to save ErrorLogger for debugging purposes.

************************* Version 8.01ao: *********************************

IMP: (11/15/04, GVG) Prevent NullException in clearSetBit

BUG: (11/15/04, GVG) Rolling back changes to fix "BUG: (11/9/04, GVG) DRC and notch errors".

BUG: (11/15/04, GVG) Transistor poly layer was assigned to silicide block node (errors in TSMC180 and 90 techs).
FIX: Switched to silicide layer

BUG: (11/15/04, DN) GetInfoArc may cause error if ArcInst has not network on it.
FIX: In GetInfoArc check getNetworkName == null.

BUG: (11/15/04, DN) Arcs in ELIB from Electric C may not fit into port insts.
FIX: In ELIB and JELIB readers use poly.polyDistance(pnt) < 0.02 instead of poly.isInside(pnt).

BUG: (11/15/04, DN) Size of rotated primitives with polygon trace are not
    calculated, when ELIB is loaded.
FIX: Move scaleOutlineInformation(ni) before ni.lowLevelPopulate().

BUG: Deleting an export may delete the node.
FIX: Do not consider exports to be attached to nodes when deleting.

BUG: (11/14/04, RK) MoCMOS Gate generators were producing CIF resolution errors

IMP: (11/14/04, RK) Improve NCC size mismatch error messages

IMP: (11/14/04, SMR) Added LEF and DEF input.

BUG: (11/14/04, SMR) Verilog netlister breaks wide names.
FIX: In "Output.writeWidthLimited()", be more forgiving about splitting wide lines.

BUG: (11/13/04, RK) Reduce storage utilization of net equivalence feature

************************* Version 8.01an: *********************************

IMP: (11/12/04, GVG) LayerCoverageJob class moved to new misc directory to decouple code
otherwise its not easy to generate regressions.

IMP: (11/12/04, GVG) List Geometry on Network: fast algorithm in PolyQTree working now

FIX (11/12/04, JKG) Parasitic extraction of capacitance in the Spice netlister
    now works properly.

IMP (11/12/04, JKG) Added units to parasitic section of Spice Options Tab,
    added new option "Gate Length Subtraction".

IMP: (11/12/04, SMR) Resizing a node lets you make it smaller without jumping corners.

IMP (11/12/04, JKG) Added command Tool->Network->List Total Wire Lengths on All Networks

IMP (11/12/04, JKG) Added command Tool->Logical Effort->Back Annotate Wire Lengths

IMP: (11/12/04, SMR) Solid opaque layers no longer obscure text.

BUG: (11/12/04, SMR) Deleting an export may delete the node.
FIX: Do not consider exports to be attached to nodes when deleting.

IMP: (11/12/04, SMR) Long network names are truncated in the "Arc Properties" dialog.

BUG: (11/11/04, GVG) List Geometry on Network: fast algorithm in PolyQTree not working correctly while splitting the tree.
Fix: put back the slow code

IMP: (11/11/04, RK) Undebugged implementation of NCC net equivalence reporting

BUG: (11/11/04, SMR) Exports on expanded cell instances are not always drawn.
FIX: In PixelDrawing.drawNode(), draw exports when instances are cached.

************************* Version 8.01am: *********************************

BUG: (11/11/04, SMR) Arraying crashes.
FIX: Array.setNewName() ignores temporary names; Name constructor uses TextUtils.atoi instead of Integer.parseInt.

BUG: (11/11/04, SMR) Mirroring is broken.
FIX: In "Layout.java", fixed computation of new mirroring values.

IMP: (11/10/04, SMR) Added compaction.

IMP: (11/10/04, SMR) Added initial regression tests for I/O.

IMP: (11/10/04, SMR) Added Job.flushBatch() to reset constraints in the middle of a job.

BUG: (11/11/04, GVG) MinArea DRC didn't detect errors in subcells if nodes were not part of exports
FIX: Collect those nodes and check at the end.

BUG: (11/11/04, RK) NCC crashes when a Cell has an Export and global with the same name.

BUG: (11/11/04, DN) Exception in JELIB reader when referenced library not found.
FIX: Check of null pointer in input.JELIB.realizeCellsRecursively .

BUG: (11/11/04, DN) TextUtils.nameSameNumeric may loop infinitely after my previous change.
FIX: Reimplement TextUtils.nameSameNumeric. It is case-sensitive. "nameSameNumeric(s1,s2) == 0" IFF "s1.equals(s2)".

IMP: (11/10/04, GVG) Scaling factor in 3D view.

IMP: (11/10/04, GVG) Removing one toggle in DRC tab

IMP: (11/10/04, DN) Sorting of objects in JELIB output for regression purposes.
     1) Order of Views : In "nameSameNumeric" order.
     2) Order of CellNames:
	Compare protoName in "nameSameNumeric" order;
	if equal compare views;
	if equal compare versions - implicit (without number) version first,
	   explicit (with number) versions in reverse order then;
     3) Order of libraries, tools., technologies, primitiveNodes/Ports/Arcs - usual "String.compareTo"
     4) Order of Exports - "nameSameNumeric"
     5) Order of NodeInsts, ArcInsts
        Compare "nameSameNumeric"
	if equal compare indexes in Cell lists;
     6) Order of CellGroups
        "nameSameNumeric" on group names.

IMP: (11/10/04, DN) View is comparable. TextUtils.nameSameNumeric and TextUtils.atoi work with Unicode digits.

IMP: (11/10/04, DN) Better diagnostic in JELIB reader when point doesn't fit a port.

BUG: (11/10/04, RK) Make gate generator generate gates for every instance of a Cell (For Justin)

IMP: (11/9/04, GVG) Two new toggles in DRC tab to ignore hierarchical/poly-select conditions.

IMP: (11/9/04, GVG) LayoutLib.openLibForRead works with JELIB format. Terminate program if -batch option in EvalJavaBsh

BUG: (11/9/04, GVG) DRC Min Area and select, disconnected nodes not considered.
FIX: Special treatment in visitNodeInst by using PrimitiveNode.containsSubstrateLayer()

BUG: (11/9/04, GVG) DRC and notch errors for arcs in same network. Modifications done under
maytouch/sameLayer inside checkDist were not correct (done back in Aug'04)
FIX: if (net1==net2) -> return false regardless notch distance

IMP: (11/9/04, SMR) Redid cross-library copy so that it is safe from looping.

IMP: (11/9/04, SMR) Closing a library ensures that it is saved to disk.

BUG: (11/9/04, SMR) Mimic stitching crashes.
FIX: Replaced array of cached Polygons with a more robust HashMap.

IMP: (11/9/04, GVG) Metal1 back from 1.4 -> 1.2

BUG: (11/9/04, DN) Can't read mixture of JELIB and ELIB files.
FIX: In JELIB reader use "realizeCellsRecursively" instead of "instantiateCellContents".

IMP: (11/9/04, DN) When library is read in batch mode it sets its meaning preferences.

IMP: (11/9/04, DN) Forbidden characters ':' and '|' in cell names.

BUG: (11/8/04, SMR) Upper-level text is not shown when editing "down in-place".
FIX: In "PixelDrawing.drawText()" compute clipping bounds properly.

IMP: (11/8/04, GVG) Default sizes for new arcs/nodes in TSMC90 now correctly stored and retrieved from preferences
(moved MoCMOS.init() to Technology.init())

IMP: (11/8/04, GVG) Avoid to run DRC on Artwork or in case technology doesn't have rules associated

************************* Version 8.01al: *********************************

BUG: (11/8/04, RK) Fill Generator script must now select technology

BUG: (11/8/04, GVG) Metal 1 pin didn't get correct offset after resizing (1.2 -> 1.4 done on 11/06/04)
FIX: Metal 1 min width rule: 1.2 -> 1.4 to keep code consistent

IMP: (11/8/04, GVG) Correct aligment of m2/m3, m4/m5, m6/m7, and m8/m9 for TSMC90

BUG: (11/8/04, SMR) Reloading waveform window fails if there are a different number of sweeps.
FIX: Reload sweeps list correctly.

IMP: (11/8/04, SMR) When interactively resizing a node, holding Control limits
     resize to a single axis.  Holding Shift switches to center-based sizing.

IMP: (11/8/04, SMR) Disallow moving the cell-center when other objects are moving.

BUG: (11/8/04, SMR) Cell names are not sorted properly (the views are not considered).
     Names do not line-up properly in cross-library copy dialog.
FIX: In TextUtils.CellsByName, use "noLibDescribe()" instead of "getName()".
     No longer need TextUtils.CellsByFullName.

IMP: (11/7/04, SMR) Added copy/paste topology (for routers).

IMP: (11/7/04, SMR) Cleaned-up outline-edit mode.

IMP: (11/5/04, SMR) Added EDIF input.

IMP: (11/6/04, GVG) New width for metal1 arcs. New well rectangular contact to avoid min area/width problems.
     New primitive nodes are available from Tech Palette via menu.

IMP: (11/5/04, GVG) Min area only for top cell because its hierarchically done.
BUG: (11/5/04, GVG) Fixing error introduced in 8.01ai and PolyBase.halfCropBox/PolyBase.cropBox.

BUG: (11/5/04, GVG) 3D bug for generic polyhedra (wrong indices for normal)

BUG: (11/5/04, RK) NCC crashed if all the Cells being compared had no Exports

************************* Version 8.01ak: *********************************

IMP: (11/5/04, DN) Version and CellName classes are mada Comparable.

BUG: (11/5/04, DN) If Undo occurs after first Copy command, the Clibboard cell becomes unlinked.
FIX: In User.init() call Clipboard.clear() to create the Clipboard cell.

BUG: (11/5/04, DN) When Undoing at start of Electric, a crash happens.
FIX: In Undo.undoABatch test batch.startHighlightsOffset on null.

IMP: (11/3/04, RK) Improve usability of Gate Layout Generator

IMP: (11/3/04, RK) Changes for NCC and Gate Layout Generator regressions

************************* Version 8.01aj: *********************************

IMP: (11/4/04, GVG) PolyBase: not applying transformation if matrix is identity

BUG: (11/4/04, GVG) Rouding points before merging in DRC min area calculation otherwise merged area
     won't be a simple polygon.
FIX: poly.roundPoints();

BUG: (11/4/04, GVG) DRC and PolySelect rule, ignoring case when remaining area after second substract was empty.
FIX: call Area.isEmpty()

IMP: (11/4/04, SMR) GDS output produces better cell names.

IMP: (11/4/04, SMR) "Click" sounds are only played if there is a sound card.

IMP: (11/3/04, SMR) CIF resolution errors now select the object.

IMP: (11/3/04, SMR) Removed unused listeners: ClickAndDragListener and WiringListener.

IMP: (11/3/04, GVG) Fix in network evaluation during hierarchical min area checking

IMP: (11/3/04, SMR) Printing resolution is now higher and can be set in the Preferences panel.

IMP: (11/3/04, GVG) Another algorithm for DRC TSMC90 PP/NP.R.1 rule

IMP: (11/3/04, GVG) Default technology in preferences. It will be used for setting palette. Manual updated.

BUG: (11/2/04, RK) Repair bugs from partial conversion of gate layout generators to tsmc90

IMP; (11/2/04, GVG) "B page 74", "rule B page 78" and "B page 86" rules for vias (meta1 and actives cuts)

************************* Version 8.01ai: *********************************

BUG: (11/2/04, DN) Library.findNodeProto should find the newest
     version of the cell, when no version number is specified.
FIX: Add test to "Library.findNodeProto.

BUG: (11/2/04, DN) When view of a cell is changed from layout to
     schematic, its technology (and TechPallette) remains layout.
FIX: Clear technology in ViewChanges.ChangeCellView

BUG: (11/2/04, DN) When parsing routines will meet with non-Latin
     unicode digits, they may return strange numbers.
FIX: Use TextUtils.isDigit and TextUtils.isLetterOrDigit.

IMP: (11/2/04, DN) TextUtils.nameSameNumeric is made case-insensitive.

BUG: (11/2/04, GVG) Rounding errors in PolyBase.halfCropBox
FIX: Same wrapper operations as in PolyBase.cropBox.

IMP: (11/1/04, SMR) Added "click" sounds when wiring.

BUG: (11/1/04, SMR) Mirroring in Y does not work.
FIX: In NodeInst.lowLevelModify()", fixed "sX" that should have been "sY".

BUG: (11/1/04, SMR) Export text offset is wrong.
FIX: In Export.getNamePoly(), apply text offset before transformation of node;
     In ElectricObject.computeTextPoly(), use Export.getNamePoly();
     In TextInfoPanel, show true offsets.

IMP: (11/1/04, DN) Coordinates and sizes of ArcInst and NodeInst are
    rounded to DBMath.GRID when loaded from libraries. Comparison
    functions from DBMath consider neighbour grid points as equal.

IMP: (11/1/04, DN) Cells in JELIB are sorted by (name,view,version)
      for easier text comparison of JELIB files.

BUG: (11/1/04, DN) Arc ends are swapped when loading from ReadableDump.
FIX: (11/1/04, DN) In input.ReadableDump.realizeArcs.

BUG: (11/1/04, DN) Export characteristic is not loaded from ReadableDump.
FIX: Restore "userBits" after "lowLevelPopulate" in input.ReadableDump.realizeExports.

BUG: (11/1/04, DN) Variables names with ":" and "[" are corrupted in RedableDump.
FIX: Add "^" before ":" in output.ReadableDump.printName. Change
     "indexOf" to "lastIndexOf" in input.ReadableDump.keyboardGetVar

BUG: (11/1/04, DN) Name of NodeInsts and ArcInsts are not stored to ReadableDump
FIX: Add printName(...) to output.ReadableDumpwriteVars.

BUG: (11/1/04, DN) ProtoTextDescriptor of NodeInsts is not properly
     stored to ReadableDump.
FIX: In output.ReadableDump.writeTheLibrary.

BUG: (11/1/04, DN) Library variables are not loaded from JELIB.
FIX: In input.JELIB load variables.

BUG: (11/1/04, DN) Offset information in TextDescriptors are not
     always properly restored from JELIB files.
FIX: In TextDescriptor do rounding more carefully. In input.JELIB set
     both coordinates simultaneously.

BUG: (11/1/04, DN) Mirror state of NodeInsts with zero size may be lost.
FIX: Distinguish between -0 and +0 in NodeInst.isMirrored methods.

************************* Version 8.01ah: *********************************

IMP: (10/29/04, RK) Add hook for running Layout generator for MOCMOS or tsmc90

BUG: (10/29/04, RK) NCC Flat top cell must be prepared for null VarContext

IMP (10/29/04, GVG) Batch option. Ability to run JElectric on batch mode (-batch).

IMP (10/29/04, JKG) Open file dialog opens ELIB and JELIBS, removed ELIBS
    from import/export, Added command under File to save all libraries as a
    different format (ELIB or JELIB).

BUG: (10/29/04, DN) Network tool when there layout instances in schematic cell.
FIX: In NetSchem.internalConnection netCell added to reference subcell.

************************* Version 8.01ag: *********************************

BUG: (10/29/04, DN) Network tool and user tool doesn't feel rename of Exports and Cells.
FIX: Add parameter "oldVersion" to "renameObject" methods of these tools.

BUG: (10/29/04, DN) Ncc regression fails, because Network tool doesn't ignore
  resistors properly.
FIX: Netlist.getNetlist(Nodable) returns sublist with "shortResistors" from parent
     netlist instead of user preferences. Removed "getUserNetlist" calls from Hierarchy
     enumerator.

IMP: (10/28/04, SMR) Double-clicking on a sweep signal toggles its inclusion/exclusion.

IMP: (10/28/04, GVG) Bug fix in hierarchical checking for minArea

IMP: (10/28/04, SMR) Renaming a cell such that it is the same as an existing one makes it a new version.

************************* Version 8.01af: *********************************

IMP: (10/28/04, SMR) Added SUE input.

BUG: (10/28/04, SMR) Rotated text is not read back from JELIB files.
FIX: Rotation amounts are now set properly.

IMP: (10/28/04, SMR) When a cell is renamed and it appears to fall into an existing cell group,
     the user is asked if it should also be re-grouped.

IMP: (10/28/04, SMR) In-place text editing can now handle multi-line parameters.

BUG: (10/27/04, SMR) Variables on cell instances are not offset properly.
FIX: Use untransformed node bounds when computing text location.

BUG: (10/28/04, DN) IgnoreResitors option connects incorrectly.
FIX: In NetSchem.internalConnections replace "drawn" by "drawnOffsets[drawn]"

IMP: (10/27/04, GVG) New scheme in TechPalette, Schematic. Extra text in well contacts.

BUG: (10/27/04, SMR) Pasting primitives does not adjust sizes right (shifts their positions instead).
FIX: In "Clipboard.pasteNodeToNode()" fixed this.

BUG: (10/27/04, SMR) Sweeps in Spice are time-aligned with each other, which is wrong.
FIX: Each sweep can now have its own time values.

************************* Version 8.01ae: *********************************

FIX: (10/27/04, JKG) Added code in LibraryFiles.readExternalLibraryFromFilename to handle
     references to other library formats.

IMP: (10/27/04, JKG) Added File->Export->ELIB (version 7) All libraries command.

BUG: (10/27/04, GVG) Miscellaneous: another attempt to remove out of bound exception and fix the group naming
     (it was removing last character due to <= condition) Removing TSMC90 PP/NP.S.7 rule in DRC.

BUG: (10/26/04, SMR) Moving a cell to a different cell group fails if there are multiple versions.
FIX: In "Cell.setCellGroup()", move all versions at once.

IMP: (10/26/04, GVG) TSMC90nm and detecting overlap between select regions. Better detection of min area for select
     regions. In case of Area errors, ErrorHighlight is valid if pp != null || geom != null otherwise area errors are not
     removed by databaseEndChangeBatch.

BUG: (10/26/04, GVG) Again patching Cell.getName() to avoid StringIndexOutOfBoundsException.

BUG: (10/26/04, GVG) Coverage implant: wrong detection of substrate primitive nodes
FIX: NodeInst.isPrimtiveSubstrateNode added

************************* Version 8.01ad: *********************************

BUG: (10/25/04, GVG) JELIB$GroupsByName.compare, Cell$CellGroup.getName crashed if cell names don't have same length
FIX: Fix put on Oct 22 was not good enough

IMP: (10/25/04, GVG) Adding PP.A.A in TSMC90 (Area rule for P+ regions).

BUG: (10/25/04, DN) Network tool didn't recompute icon after removal of export.
FIX: "NetCell.exportsChanged" corrected.

BUG: (10/25/04, DN) Memory leakage in JELIB reader.
FIX: Assign null tp "input.JELIB.allCells" at the end of reading.

BUG: (10/25/04, DN) "CrossLibCopy" dialog may crash when no cell celected.
FIX: "Library.findNodeProto" tests if argument is null.

BUG: (10/25/04, DN) Network errors after moving a cell into another group.
FIX: Add method "modifyCellGroup" to interface "database.changes.Change".

IMP: (10/25/04, DN) Explorer context menu allows only newest versions of schematic cells to be
     main schematics.

IMP: (10/25/04, SMR) Added "BiCMOS" technology.

BUG: (10/24/04, SMR) JELIB files fail if there is a library with the same name as a technology.
FIX: In JELIB, node instances now distinguish between primitive and cell instance by using "N" and "I".

IMP: (10/24/04, SMR) Added "EFIDO" (digital filter) technology.

IMP: (10/24/04, SMR) Added "GDS" input.

BUG: (10/24/04, SMR) Changing an icon size does not affect the "example" instance in the schematic.
FIX: In "database.constraint.Layout.lookDown()", do not ignore example icons.

IMP: (10/23/04, GVG) Cleaning TechPalette and putting in default position last PrimitiveNode selected

************************* Version 8.01ac: *********************************

BUG: (10/22/04, GVG) Out of bound in Cell.getName() as cell names don't have same length
FIX: Skip cases where names don't have same length

IMP: (10/22/04, GVG) Proper set of ErrorLog for Schematic DRC.

IMP: (10/22/04, GVG) Cross-shaped contacts are default in TechPalette. For PrimitiveNode, default node
     (e.g. cross-shaped contact or standard transistor) would be created unless you click on arrow.
     Sizing of cross-shaped contacts based on cross section.

IMP: (10/22/04, DN) Network calculation is always performed in change thread.
     GUI thread can either "getUserNetlist" and wait until it is ready, or
     "acquireUserNetlist" and obtain "null" if it is not ready.

IMP: (10/22/04, SMR) Improved speed of arraying and re-exporting by improving speed of
     finding a unique name in a cell.

IMP: (10/21/04, SMR) Array no longer sets names when they are only temporary.

************************* Version 8.01ab: *********************************

BUG: (10/21/04, GVG) DRC and cropping. After removing rounding in calcBound, cropping function
     was not working properly in DRC.
FIX: DBMath.isGreaterThan instead of "<=".

IMP: (10/21/04, SMR) JELIB reader checks that cells with the same name are in the same group.

IMP: (10/21/04, SMR) Made cell groups have sensible names so that it is easier to rearrange them.

IMP: (10/21/04, SMR) Closed bugs in JELIB format: handles "(" in variable names;
     handles newline in strings.

IMP: (10/21/04, SMR) Deleting a library (or re-reading it) checks to make sure that
     none of the former library has cells that are in use elsewhere.

IMP: (10/21/04, SMR) Selecting a signal in the schematic shows all equivalents in the waveform window.

IMP: (10/21/04, GVG) Cross-shaped contacts in TSMC90 including multiple cuts.

IMP: (10/21/04, SMR) Added "CIF" input.

IMP: (10/20/04, DN) Deprectated those variables on Technology, Tool,
     View, PrimitiveNode/Arc/Part objects which are not meaningful preferences.

IMP: (10/20/04, SMR) Now preserving the "main schematic" for a cell group.
     Also saving and restoring it through "jelib" files.
     Explorer tree has command for setting "main schematic".

************************* Version 8.01aa: *********************************

IMP: (10/20/04, GVG) Moving rounding operation from PolyBase.calcBound to ELIB.getArcEnd.
     Modifications in build.xml (new options: -Dplugin3D -DGNU -Dsource)

BUG: (10/19/04, GVG) Library Read errors give null exception.
FIX: Test if highlighter != null in ErrorLogger

IMP: (10/19/04, GVG) StringBuffer instead of String for loops (findBugs source).

************************* Version 8.01z: *********************************

BUG: (10/19/04, SMR) JELIB input creates extra exports in icons.
FIX: When JELIB input creates an export, disallow creation of associated icon export.

BUG: (10/19/04, SMR) Cannot place cell instances.
FIX: In "PaletteFrame.java", allow all NodeProto placements, not just PrimitiveNode.

************************* Version 8.01y: *********************************

BUG: (10/18/04, GVG) Rounding error in DRC min width checking
FIX: DBMath.isGreater() function added to consolidate comparison and rounding operations

IMP: (10/18/04, GVG) Parasitic tab skeleton in Preferences. Corresponding html/png files were added for manual.
     All tools-related figures were redone.

IMP: (10/18/04, GVG) New look&feel of WellCheck dialog (documentation changed).
     3DView: Ability to turn on/off antialiasing without closing 3D window.
     Changes in diffuse, specular and ambient colors. Parasitic: arc cropping added.
     Code optimization in DBMath.round and DBMath.pointInRect. Code cleaning in Constraint.Layout.
     Job.checkExamine() disabled.

IMP: (10/18/04, SMR) Specifying libraries on the command line handles both ELIB and JELIB format.

BUG: (10/18/04, SMR) JELIB input damages quoted strings.
FIX: Fixed input module (so JELIB files are fine, reader was bad).

************************* Version 8.01x: *********************************

IMP: (10/15/04, SMR) Spice plotting allows partial files.

IMP: (10/15/04, SMR) Waveform window handles "Fill Window" properly.

IMP: (10/15/04, SMR) Waveform window can highlight individual sweeps.

BUG: (10/14/04, SMR) Spice output gets confuses when a single-wire export connects to one member of a bus export.
FIX: In "Topology.doGetNetworks()" sort networks by bus width as they are accumulated, not later.
     Changed Spice output to favor export names (isNetworksUseExportedNames).

IMP: (10/13/04, SMR) Added maze routing.

IMP: (10/12/04, SMR) A holdover from "C Electric" is the "temporary object".  It is unsafe and wastes memory.
     Its use has been replaced with HashMaps, and it has been removed from Geometric, ArcProto, and Cell.

IMP: (10/12/04, SMR) Added unrouting.

IMP: (10/11/04, SMR) Added river routing.

BUG: (10/11/04, DN) Networks of isolated ports have no names.
FIX: Add names "node.port".

IMP: (10/10/04, SMR) Added Messages Window font selection.

IMP: (10/9/04, SMR) Added technology conversion ("View / Make Alternate Layout View").

IMP: (10/7/04, SMR) Added Explorer-pane context menu item on cell groups to rename the entire group.

BUG: (10/6/04, SMR) Arc negation is lost during many operations (copy/paste, cross-library copy, insert jog in arc).
FIX: Must reset this information.

IMP: (10/6/04, SMR) Added "EDIF" output.

IMP: (10/5/04, GVG) 3DView: Ability to turn on/off antialiasing without closing 3D window. Changes in diffuse, specular
     and ambient colors. Parasitic: arc cropping added.

IMP: (10/4/04, GVG) First basic coding for parasitic extraction (Package tool/parasitic added).

IMP: (10/2/04, SMR) Added "LEF" and "DXF" output.

IMP: (10/2/04, SMR) Added "MOSSIM" netlisting.

IMP: (10/2/04, SMR) Added "L" output.

IMP: (10/1/04, GVG) badSubBox: Cell parameter out. PolyBase.calcBound: out rounding.

IMP: (10/1/04, SMR) Added "ESIM/RSIM/RNL/COSMOS" netlisting.

IMP: (10/1/04, SMR) Added "FastHenry" netlisting, Preferences panel, and arc properties.

IMP: (9/30/04, GVG) ArcProto preferences moved to ERC package so no circular dependencies (de-coupling action).
Profiling DRC: Arrays.fill instead of iterator.

IMP: (9/29/04, SMR) Added "Skill" netlisting and a "Skill" panel in Preferences.

IMP: (9/28/04, GVG) 3D view: object highlight and connection with 2D view in both directions.
Click.wav to resources folder.

IMP: (9/28/04, SMR) Added "Tegas" netlisting.

IMP: (9/27/04, GVG) ERC profiling: removal of 3 fields in WellArea/WellCon (15% reduction in WellArea, 20% in WellCon).
Poly classs splitted: new PolyBase classs should be used if only geometrical information is required. Poly class contains
text attributes that are not required in some cases (ERC, DRC, LayerCoverage, etc). Developers should know when to switch
from heavy class Poly to light class PolyBase.

IMP: (9/25/04, GVG) Adding ambiental light to 3D view. Antialiasing option added and
manual was updated.

BUG: (9/24/04, GVG) Geometries on Network: arcs were not transformed up to the top cell and adding export detection.

IMP: (9/24/04, SMR) Added Silos netlisting.

BUG: (9/24/04, SMR) Cell names are sorted incorrectly.
FIX: In TextUtils.nameSameNumeric(), make sure numbers are evaluated in base 10.

BUG: (9/24/04, DN) Reading libraries from script and from menu is different.
FIX: Change control of circular library dependences in Cell.addNode

FIX: (9/23/04, GVG) Minor fixes for 3D view: Avoid exception if highlighter is null (3D view), new depth value for
active cut, drawing physical layers

IMP: (9/23/04, GVG) Improvements in scheduled aborts in ERC.

IMP: (9/23/04, SMR) PostScript output includes cell frames.

FIX: (9/23/04, GVG) ERC fix to properly detect polygons with multiple loops inside.
     This error could be seen in qfour2:pads180nm_100um:pad_part_flwout{lay}.

IMP: (9/23/04, GVG) Tuning of ERC sequence of steps. Results: ERC on pad2core:fillpads_all{lay} runs in 5 mins
compared to more than 1hr (42793 areas and 38350 contact regions checked)

************************* Version 8.01w: *********************************

IMP: (9/23/04, SMR) PostScript output improved.

IMP: (9/22/04, SMR) Waveform window has button to show vertex points.

IMP: (9/22/04, SMR) Added "bipolar" and "pcb" technologies.

IMP: (9/22/04, SMR) Added ability to show sweeps and intervals to waveform window.

IMP: (9/21/04, SMR) Added "Make Schematic" to convert layout to schematics.

IMP: (9/22/04, GVG) Refactoring NodeInst/ArcInst makeInstance/newInstance methods.
     From now on, short/long definitions are available

IMP: (9/22/04, GVG) CrossLib dialog and scrollbars. Added syncronizer to keep 3 scrollbars aligned.

IMP (9/21/04, RK) Performance tuning flat NCC algorithm. I replaced StratFrontier with LeafEquivRecord which is much more efficient.
     Flat NCC of top cell of qFourP2 without size checking has dropped from 16 minutes to 2.8 minutes.
     With size checking has dropped from 22 minutes to 8 minutes.

************************* Version 8.01v: *********************************

FIX (9/21/04, JKG+GVG) Fix for checking export type on ERC well network.
     Don't check if well networks are not connected together; NCC will check that

IMP: (9/21/04, SMR) Added "Down Hierarchy In Place".

BUG: (9/21/04, SMR) Verilog netlister doesn't handle doubly-indexed busses where the first index is non-numeric.
FIX: In Topology.doGetNetworks() must find any numeric index to determine ascending/descending order.

IMP: (9/20/04, SMR) HSpice output reader now handles noise signals properly.

IMP: (9/20/04, SMR) Made messages window use fixed-width font.

************************* Version 8.01u: *********************************

BUG: (9/20/04, GVG) DRC and minimum area checking: no merging correctly poly and transistor-poly areas
     while checking areas. FIX: Consider this case as exception and the first polysilicon layer found will be used.

IMP: (9/20/04, GVG) Ability to abort ERC and DRC jobs

BUG: (9/20/04, GVG) ERC not properly detecting well contacts not connected to ground/power.
FIX: Iterate over Export in JNetwork and check if isGround() or isPower(). Even if contacts are not
     explicitly connected, it won't complain if network has export gnd/power

IMP: (9/19/04, SMR) Serpentine transistors now know port information.

BUG: (9/19/04, SMR) Verilog output still gets busses wrong.
FIX: In Verilog.writeCellTopology(), must find proper signal in aggregate list.

************************* Version 8.01t: *********************************

IMP: (9/19/04, RK) Implement Variable Value caching and simple expression evaluation in VarContext.
     These two bypass 80% of the bean shell calls

IMP: (9/19/04, RK) Allow the user to enable more detailed progress reports.

BUG: (9/19/04, RK) For AnnC. Hierarchical NCC from two windows didn't compare the two root cells.

IMP: (9/18/04, SMR) HSpice waveform reader checks binary data for EOF.

BUG: (9/18/04, SMR) Verilog output still gets descending busses wrong.
FIX: In Verilog.writeCellTopology(), must take original bus size into account.

************************* Version 8.01s: *********************************

FIX: (9/18/04, JKG) Fixed waveform window cross-probing and cross-highlighting
     of exported networks

FIX: (9/18/04, SMR) Fix for verilog netlisting of busses

IMP: (9/17/04, GVG) New active size for new technology. All transistors affected.

************************* Version 8.01r: *********************************

FIX: (9/17/04, GVG) DRC fix related to Well regions not connected and serpentine transistors.

IMP: (9/17/04, GVG) Improvements to speed up incremental DRC.

IMP: (9/17/04, JKG) new command "Tool -> Logical Effort -> Clear LE Sizes in all Libraries"

************************* Version 8.01q: *********************************

IMP: (9/17/04, SMR) Dialogs remember their last size; "change" dialog grows sensibly.

FIX: (9/16/04, JKG) Can now set Serpentine transistor length from GetInfoNode dialog

BUG: (9/16/04, SMR) Arcs that run from a node to itself are not constrained right.
FIX: Disallow such arcs from moving more than once.

BUG: (9/16/04, SMR) Verilog output gets descending busses wrong.
FIX: In Verilog.writeCellTopology(), must load descending busses backwards.

IMP: (9/16/04, SMR) Serpentine transistor width is better supported.

BUG: (9/16/04, SMR) "Change" dialog cannot switch libraries.
FIX: Allow automatic library switching only when new objects are selected.

************************* Version 8.01p: *********************************

BUG: (9/16/04, JKG) Fix to change dialog: library pull-down menu was useless.

BUG: (9/16/04, JKG) Hack to get transistor width/length of serpentine transistors.
     Length is always 2.

BUG: (9/16/04, JKG) Fixed LE algorithm with caching

BUG: (9/16/04, GVG) Wrong transformation sequence introduced when cells are mirrored.

BUG: (9/16/04, GVG) Fix in geometry on network: wrong network selected

IMP: (9/15/04, GVG) Check box in DRC Tab to disable area checking.

IMP: (9/15/04, GVG) Improvement in List Geometry on Network

IMP: (9/15/04, GVG) Adding option to disconnect DRC area checking. Manual
     updated on 9/16/04

************************* Version 8.01o: *********************************

BUG: (9/15/04, JKG) Fixed changing transistor sizes/mirror etc from GetInfo dialog

IMP: (9/15/04, JKG) Add Tool -> Logical Effort -> Clear LE Sizes on node
     to delete LE sizes on a node.

IMP: (9/15/04, SMR) "Change" dialog always goes to currently selected cell, even
     if it is in a different library.

IMP: (9/15/04, SMR) Reading HSpice output now handles "x" in names better.

IMP: (9/15/04, SMR) When changes are disallowed, "Cancel" option is offered.

BUG: (9/15/04, SMR) Export names STILL don't array in the right order.
FIX: ExportChanges.reExportPorts must take a map to the original Exports, not a List.

BUG: (9/15/04, SMR) Copying and pasting cell text doesn't work.
FIX: Clipboard updated to handle Highlights instead of Geometrics.

IMP: (9/15/04, SMR) "Text Properties" dialog on cell instance names doesn't allow changes.

IMP: (9/15/04, JKG) Added "File->Force Quit (and Save) " to kill Electric

IMP: (9/14/04, SMR) Can now print waveform windows.

IMP: (9/14/04, SMR) Added "Eagle", "Pads", and "ECAD" netlist output.

************************* Version 8.01n: *********************************

BUG (9/14/04, RK) NCC assertion fails when designs being compared share a cell.

BUG: (9/14/04, RK) NCC doesn't print Cell version number.

BUG: (9/13/04, SMR) Spice output gets indexed names wrong.
FIX: In tool.io.output.Spice, do not use aggregated names (an interface option in tool.io.output.Topology).

IMP: (9/13/04, GVG) DRC will highligh Geometric instead of Poly whenenver is possible

BUG: (9/13/04, SMR) Extracting cells doesn't handle mirroring right.
FIX: In CircuitChanges.extractOneNode(), adjust for mirroring.

IMP: (9/13/04, SMR) Made default explorer panel wider.

IMP: (9/13/04, SMR) Improved the color mixing model to use vector addition and normalization.

IMP: (9/13/04, SMR) Improved placement of icon ports when new schematic exports are created.

BUG: (9/10/04, GVG) CrossLibCopy: not comparing attributes and wrong comparison for Exports
FIX: Extra code in Cell, NodeInst, PortInst, PortProto and Variable.

IMP: (9/10/04, GVG) New look@feel in CrossLibCopy dialog. Center column will display date comparison.
     Two extra toggles were created to handle quiet mode and "date and content" comparison. Buttons "List Diff" and "Examine
     Quietly" were removed

BUG: (9/10/04, GVG) Technology bits not being copied in TechPalette for transistors in Schematics.
     Side effect: wrong name assigned. FIX: NodeInst.newInstance passes also techBits.

BUG: (9/10/04, GVG) Zero-width arcs didn't get correct angle while copying them.
FIX: ArcInst.newInstance passes def value for angles in case port points coincide

IMP: ErrorLog handles warning messages. Red dot icon when it is an error and yellow one when its just a warning

IMP: (9/10/04, SMR) In-line text editing starts the text selected.

IMP: (9/10/04, SMR) Creation of multiple cell-center nodes is disallowed.

BUG: (9/10/04, SMR) When instances in a cell are locked, moving more than one object
     erroneously invokes the locked-warning dialog.
FIX: In CircuitChanges.ManyMove.doIt() only check nodes that moved, not all in the cell.

IMP (9/10/04, RK) Allow user to control number of items printed in the error diagnostics.

IMP (9/10/04, RK) Reworked the NCC commands. The operation is now selected by the NCC preferences pane while the number of windows is selected by the menu.

BUG: (9/10/04, SMR) Arraying arcs doesn't copy their constraining properties.
FIX: Array code calls "copyPropertiesFrom()".

IMP: (9/10/04, SMR) Added David Harris's ROM generator.

IMP: (9/9/04, GVG) DRC Adding warning messages when zero width arcs are detected (covered or non-covered by other layers).

BUG: (9/9/04, RK) NCC Memory usage optimization. On small test case: LoCo fourMemories NCC uses 1/3 of the memory. Hierarchical comparison of LoCo is now 3x faster with these optimizations.

BUG: (9/9/04, SMR) Area-erase doesn't work in schematics.
FIX: Better choice of nodes to delete.

IMP: (9/9/04, SMR) HSpice output reader now handles binary files with bytes swapped.

BUG: (9/9/04, JKG) CIF output of "Boxes" could have center coords off minimum CIF grid, causing
     Boxes to shift when CIF was read back in.
FIX: If "Boxes" have center off-grid, they are written out as Polygons.

IMP: (9/9/04, GVG) Main: not attempt to read set of libraries if set is empty. Side effect: avoid unnecessary endBatch call

IMP: (9/9/04, GVG) ErrorLogger: For a given sortKey, sort messages lexicographically

IMP: (9/9/04, GVG) Clipboard: No DRC on hidden libraries.

BUG: (9/9/04, RK) NCC: bug fix for Tarik, Fix Hierarchical NCC from 2 windows

************************* Version 8.01m: *********************************

BUG: (9/9/04), GVG) ERC: Wrong detection of polygons with holes and therefore it complained about "areas too close"
FIX: Extra loop in GeometryHandler.getObjects() to retrieve polygons with holes and then later process them.

BUG: (9/9/04), GVG) ERC: Wrong transformation applied to subMerge areas and therefore ERC wrongly calculated areas with no contacts
FIX: ni.TranslateOut(trans) instead of ni.translateOut() + concatenate

IMP: (9/9/04, GVG) DRC: Better message for cases where exclusion areas don't apply

IMP: (9/9/04, GVG) ERC: Better used of Hierarchical enumerator (functionality moved to visitNodeInst

IMP: (9/3/04, RK) Allow Hierarchical NCC from 2 windows

IMP: (9/8/04, SMR) Waveform window lets you cross-probe at lower levels of hierarchy.

IMP: (9/8/04, SMR) Can now add signals multiple times to the waveform window.

IMP: (9/8/04, JKG) Added cancel button to Change CellGroup dialog

BUG: (9/8/04, JKG) Window focus problems in MDI mode
FIX: moved show() calls out of Job threads and into AWT Event thread.

FIX: (9/8/04, JKG) Fixes to logical effort algorithms: mfactors on uncached
     alg, cap values on both algs, made compatible with diffn/diffp of old style gates

FIX: (9/8/04, JKG) CellGroup changes now in Undo system; explorer tree
     redraws on change; cell group dialog sorts groups list

IMP: (9/7/04, SMR) Now save the current cell in the Preferences.

BUG: (9/7/04, SMR) Cell extraction may create duplicate temporary names.
FIX: In CircuitChanges.extractOneNode(), do not use existing name: use either null
     or a unique name.

************************* Version 8.01l: *********************************

IMP: (9/3/04, SMR) Added ".jelib" reader and writer.

BUG: (9/3/04, SMR) Rotating or mirroring may distort layout.
FIX: The constraint system in Layout.java records two types of changes to
     a node: a size or a position change.  Size changes were somehow considered
     less important.  There was inconsistent use of this information, causing trouble.
     By removing the distinction, the code works correctly.

IMP: (9/2/04, SMR) Small text is now drawn "greek" and is selectable.

BUG: (9/2/04, SMR) Port text is not the right size.
FIX: In PixelDrawing.showCellPorts(), use size from the actual Export.

IMP: (9/2/04, GVG) Better handling of collections of simple polygons and rings for
enclosure area checking.

BUG: (9/2/04, GVG) Clipboard crashes if list in copyListToCell contains Exports
FIX: Temporary fix to avoid the exception, non-Geometric objects are ignored.

IMP: (9/2/04, SMR) Removed printer choice from "Printing" tab of "Preferences".

BUG: (9/1/04, GVG) Artwork arcs don't have network associated then modification in StatusBar crashes
FIX: Get Network information only when network is not null.

BUG: (9/1/04, SMR) Changes to the number-of-degrees of a circle don't update the node bounds.
FIX: Added ElectricObject.checkPossibleVariableEffects()" and an override in NodeInst.

BUG: (9/1/04, SMR) Thick lines may cause crashes.
FIX: In PixelDrawing.drawThickPoint(), test X and Y indices properly.

BUG: (9/1/04, SMR) Printing crashes if no printers are defined.
FIX: Check for valid default printer in "IOTool.getCachePrinterName()".

BUG: (8/31/04, SMR) Changing the case of an export (in Export/Rename) doesn't work.
FIX: In Export.rename(), allow case-changes without thinking that it is an existing export.

BUG: (8/31/04, SMR) Waveform window crashes when "Down Hierarchy" or "Up Hierachy" commands are used.
FIX: Ignore these commands: they don't apply to the waveform window.

IMP: (8/31/04, JKG) "Optimize Gates for Equal Delay With Caching" new menu item,
    eventually old command will be removed.  In Tool->Logical Effort

IMP: (8/31/04, JKG) "Repeat Last Command" in Edit menu.

IMP: (8/30/04, GVG) New transistors in TSMC90. Changes in TechPalette to select them.

IMP: (8/30/04, RK) Transistor size checking.

BUG: (8/30/04, SMR) Crashes when the last waveform panel is deleted.
FIX: Only select a panel if there are any.

BUG: (8/30/04, SMR) "Cross-library copy" doesn't copy subcells if they are not in the original library.
FIX: In "CircuitChanges.copyRecursively()" do not skip cells that are in the wrong library.

BUG: (8/30/04, SMR) "Array" places exports out of order if nodes are named out of order.
FIX: In "Array.java" sort the export names.

IMP: (08/30/04, GVG) Refactoring DRC code. Decoupling Technology from DRC

IMP: (08/26/04, GVG) Hierarchical minimum area and enclosed area available in DRC.

BUG: (8/26/04, DN) Network tool keeps global nets after deleting global and power symbols.
FIX: Don't traverse self icon when gathering globals.

************************* Version 8.01k: *********************************

IMP: (8/29/04, SMR) Added "rcmos" technology (round rules).

BUG: (8/27/04, SMR) Newly placed cell-centers are made "easy to select".
FIX: "cell center" and "essential bounds" made hard-to-select in PaletteFrame.PlaceNewNode.doIt().

IMP: (8/25/04, SMR) In-line text editing works for multi-line text.

BUG: (8/25/04, JKG) Automatic reinheritance of default parameters inside getVar() was a
    bad idea. Call ElectricObject.getParameter() or ElectricObject.getParameters() if you
    want the returned variables to include default parameter variables.

IMP: (8/25/04, JKG) Added File Menu -> Page Setup... command

BUG: (8/25//04, GVG) MoCMOS wrong min spacing for active in different implants (Same problem in C-Electric)
FIX: 4 instead of 3

IMP: for a given pair, DRC only reports errors once.

IMP: (8/25/04, SMR) "Array" dialog allows negative array amounts to create
     arrays in the other direction.

BUG: (8/24/04, SMR) Verilog output sometimes writes 2 connections for a transistor instead of 3.
FIX: Do not remove ports that are electrically connected.

BUG: (8/24/04, SMR) Verilog output scrambles bus signals, failing to aggregate them properly.
FIX: In "tool.io.output.Topology.doGetNetworks()" assigned export names properly.

IMP: (8/24/04, SMR) Verilog output now prepends library name to all module names.

************************* Version 8.01j: *********************************

BUG: (8/24/04, GVG) MoCMOS via4 spacing rule was found as wide rule. NOTE: Also found in C-Electric
FIX: Transformed into standard spacing rule

BUG: (8/23/04, GVG) DRC and wide rules in MoCMOS not properly translated to new data structure
     (Metal2-Metal3 wide distance setup calling wrong constructor)
FIX: Adding missing argument (WIDELIMIT)

IMP: (8/22/04, JKG) Added mouse-over highlighter. To disable if necessary, set
     ClickZoomWireListener.useMouseOverHighlighter to false.
     Controlled with "Selection" and "Color" tabs of Preferences.

BUG: (8/22/04, JKG) From Justin: double clicking in library explorer
     changes cell in another window
FIX: Current window frame was not strictly deterministic
     with respect to window focus. Instead of setting the current window
     frame, request focus, which will in turn set the current window frame.

IMP: (8/22/04, JKG) Created ActivityLogger to log user's activities. Also
     added EventProcesser to catch Swing exceptions. Hopefully all user
     actions and exceptions can be logged and analyzed later.

FIX: (8/22/04, JKG) fixes to some GUI classes to try to make them Swing-thread safer

BUG: (8/22/04, GVG) ERC reporting wrong floating well contacts (Justin reported).
FIX: Non-connected contacts get netNum = -1 in Java

BUG: (8/22/04, SMR) "Cleanup Pins" doesn't get two inline pins in a row.
FIX: Made inline pin cleanup iterative to keep finding more.

IMP: (8/22/04, SMR) Added context menu in Messages Window to cut/copy/paste its contents.

IMP: (8/22/04, SMR) Added "View / Make Skeleton View".

IMP: (8/21/04, SMR) "Array" now places objects in proper name order.

IMP: (8/21/04, SMR) "Change" dialog centers the selected item better.
     (implemented EDialog.centerSelection).

IMP: (8/21/04, SMR) Text can now be colored.

BUG: (8/21/04, SMR) Re-exporting creates duplicate exports.
FIX: In "tool.user.menus.ExportChanges.reExportNodes()" check for existing exports.

IMP: (8/21/04, SMR) "Change" dialog is now modeless.

BUG: (8/20/04, SMR) Text anchor does not rotate properly when nodes are mirrored.
FIX: Fixed database.geometry.Poly.rotateType().

BUG: (8/20/04, SMR) Node "Properties" dialog doesn't update size properly when mirrored.
FIX: Fixed to remember proper original size.

************************* Version 8.01i: *********************************

IMP: (8/19/04, JKG) new command line options: -mdi (force MDI mode) and
    -sdi (force SDI mode). -m no longer works.

BUG: (8/19/04, GVG)In DRC, wrong condition for wide wire rule (<= instead of <)
FIX: Change <= by <

IMP: -version and -help as command options

FIX: (8/19/04, GVG): Rounding error while creating a new Poly (width/height were not rounded). It was observed in new tech only.
IMP: (8/19/04, GVG): More area rules (DO.A.1)
MAN: (8/19/04, GVG): -m out? if yes, check documentation.

************************* Version 8.01h: *********************************

FIX/IMP: (8/19/04, RK) NCC check's assertions: exportsConnectedByParent. It turns out that assertion checking is needed to avoid a bug in netlist construction.

BUG: (8/18/04, SMR) DRC crashes when run on icons.
FIX: Use Schematic DRC for Icons, not layout DRC.

BUG: (8/18/04, SMR) Artwork arcs are fixed-angle by default.
FIX: In "technology.technologies.Artwork", made all arcs not-fixed-angle.

BUG: (8/18/04, SMR) Reading ELIB files with cell-centers that are not at the origin places geometry badly.
FIX: In "tool.io.input.ELIB.realizeNode()" must offset the anchor values by (xoff,yoff).

BUG: (8/18/04, SMR) "Show Ports On Node" and "Show Exports" display incorrectly when zoomed in.
FIX: Determines visible ports before arranging them on the display.

BUG: (8/18/04, SMR) "Size" on nodes doesn't work right for mirrored nodes; should not be center-based.
FIX: Size now works from farthest corner (unless Control is held).

FIX/IMP: (8/18/04, JKG) copy/paste fixes: default paste by center point,
    can move anchor point, shows delta from copy to paste. Right click menu added when pasting.

IMP (8/18/04, GVG): Extra sizing rules for metals (another level) and area

************************* Version 8.01g: *********************************

FIX: (8/17/04, RK) exportsConnectedByParent works on "implicit" expots created for global signals

IMP: (8/17/04, GVG) More rules for new technology. Important changes in DRC code so previous version was tagged as version-8-01g just in case

FIX (8/15/04, JKG) Closing a library now actually closes all Cells in library as well.

IMP (8/15/04, JKG) Added library palette to Components palette.

************************* Version 8.01f: *********************************

FIX: (8/13/04, JKG) Round doubles before truncating to int in ELIB writer, fixes
    instances moving because of doubles precision errors.

FIX: (8/13/04, JKG) Various fixes to Highlighter introduced in last version

IMP (8/13/04, JKG) Show networks now works hierarchically for layout (keep hitting ctrl-k)

IMP: (8/13/04, RK) "Better" NCC error reporting for Hash Code parition failures

IMP: (8/13/04, RK) NCC reports Part and Wire counts

IMP: (8/13/04, RK) NCC summarizes Export, topology, and size mismatches separately for each Cell and then for all Cells

IMP: (8/13/04, RK) NCC prints execution time per Cell and for the entire command

FIX: (8/13/04, RK) When NCCing hierarchically and continuing after errors, flatten subcircuits with Export name mismatches.

************************* Version 8.01e: *********************************

IMP: (8/12/04, JKG) Added preference in General Tab as to how Electric chooses the working dir.

IMP: (8/11/04, JKG) Highlighter now selects from a stack of objects based on last object selected.

FIX: (8/9/04, GVG): DRC: Missing transformation in hierarchical DRC so neighbor cells were not checked.

IMP: (8/9/04, GVG): GDS values in TSMC90 tech.

IMP: (8/9/04, JKG) Added color chooser to GetInfoArc

FIX: (8/9/04, JKG) Fixed X/Y size mirroring bug in GetInfoNode dialog

IMP: (8/6/04, JKG) De-staticized Highlight. Split into Highlighter, and Highlight object.
    Each WindowContent has it's own Highlighter.

FIX: (8/6/04, GVG) Flexible arcs were not streched when contact ports were resized. Fix: adjustMatrix considers now X and Y scales.

IMP: (8/4/04, GVG) Subset of DRC rules for TSMC90 tech. Some functions used in MoCMOS were promoted to Technology class for reusage.

FIX: (8/4/04, GVG) In FileMenu:CloseLibrary: Doesn't close library if there are still some references in other cells.
FIX: (8/4/04, GVG) In DRC, polygon is not checked against itself while analyzing minimun distances

************************* Version 8.01b: *********************************

IMP: (8/03/04, JKG) GetInfoNode now shows transistor width/length instead of x/y size
        for transistor nodes

FIX: (8/2/04, RK) NCC wasn't checking that same named Exports are on the equivalent nets.

IMP (8/2/04, RK) Added NCC annotation: "notSubcircuit".

IMP: (7/29/04, JKG) Added "Re-export Selected, include wired ports", and
        "Re-export Highlighted Area, inc. wired ports" menu commands.

IMP: (7/25/04, JKG) Added "Re-export Selected" menu item.

IMP (7/23/04, RK) If Export names don't match then suggest a possible mapping

************************* Version 8.01a: ************************

IMP: (7/22/04, JKG) Numerical display now always formats to show postfix. Units Preferences
     disabled, as they no longer make sense. Use TextUtils.parseUserInput to read in numbers.

FIX: (7/22/04, JKG) Many many small fixes in copy/moving/arraying/editing/displaying.

IMP: (7/21/04, JKG) Wiring Tool revamped, all cases checked

IMP: (7/22/04, GVG) New interface for geometrical operation. Error thrown if Java3D is not found. Some improvements in ERC.

IMP: (7/20/04, RK) Add Regular Expressions to FindText Dialog. Allow user selection of objects to be searched. Report finds and changes in Messages Window. Persist dialog settings.  Allow temporary arc and node inst names to be searched.

BUG: (7/20/04, RK) Fix button (it did nothing). Exports weren't being searched.

BUG: (7/19/04, GVG) XSize and YSize in Mult-Object Properties window not correctly calculated. Offset was missing.
FIX: Offset added if objects are instance of NodeInst.

IMP: (7/18/04, JKG) Implement clipping for arcs and text in PixelDrawing. Speeds up redraw when zoomed in.

BUG: (7/16/04, GVG) PolyQTree doesn't properly merge polygons that are touching each other.
FIX: Extra code for those cases.

BUG: (7/18/04, JKG) New cell version command: old version had bad cell group

IMP: (7/16/04, GVG) Better thickness and distances for layers in 3D: technology MoCMOS

************************* END OF Version 8.00, GNU RELEASE *********************************
************************* Version 8.00: Released 7/16/04 *************************

BUG: (7/16/04, RK) Series merging needs to count both Pins and Parts

IMP: (7/15/04, RK) Added Size Checking. It doesn't work yet so disable it in the options dialog.
     Embellished the NCC Options Dialog. Added some documentation to the NCC page.
     Removed Hierarchical from NCC menu because it hasn't been adequately tested.

BUG: (7/15/04, SMR) Cross-library moving may loop infinitely.
FIX: In "database.constraint.Layout.oldPortPosition()", must use local copy of "pp" which is "bottomPP".

IMP: (7/15/04, SMR) Can now delete any type of cell (text, 3D, etc.) and it works.

IMP: (7/14/04, SMR) Added command to show samples library.

IMP: (7/14/04, SMR) Fixed "Describe This Cell" results to line up properly, get state bits right.

BUG: (7/14/05, SMR) Multi-technology libraries get confused about cell technologies.
FIX: In "tool.io.input.ELIB.computeLambda()" and "tool.io.input.ReadableDump.computeLambda()",
     call "cell.setTechnology(cellTech)" to save result.

BUG: (7/13/04, RK) Don't let a user start NCC on an Icon Cell

IMP: (7/13/04, RK) Install NCC into main menus.

IMP: (7/12/04, RK) Roll in all changes to NCC from July break. NCC of all Cells in LoCo. Reorganize file hierarchy.

IMP: (7/12/04, GVG) List Geometry on Network functionality.

IMP: (7/12/04, SMR) Made window adjustment handle multiscreen configurations.

IMP: (7/12/04, SMR) Made requests for the highlighted object ignore text, lines, areas,
     and other non-object highlights.

BUG: (7/12/04, SMR) HSpice output not read properly.
FIX: When reading the .pa0 file, must really read it, and not the .tr0 file.

BUG: (7/12/04, SMR) Multi-object "Properties" dialog lists arc widths incorrectly.
FIX: Include arc width offset.

IMP: (7/12/04, SMR) Node "Properties" dialog now switches X and Y size when the node is rotated.

BUG: (7/12,04, SMR) Schematic Off-page connectors are too small.
FIX: In Schematics.java, made the initial size right.

IMP: (7/12/04, GVG) 3D View available now from Window -> 3D Display menu.

IMP: (7/8/04, SMR) Implemented auto-growth of schematic gates that take any number of inputs.

IMP: (7/7/04, SMR) Implemented reading of SmartSpice output.

IMP: (7/6/04, SMR) Implemented drag-and-drop to rearrange signals/panels in the waveform window.

IMP: (7/6/04, SMR) Implemented Edit / Selection commands for placing signals in the waveform window.

IMP: (7/5/04, SMR) Implemented opening and closing of bus contents in waveform window.

IMP: (7/5/04, SMR) Implemented saving of waveforms with cells.

IMP: (7/5/04, SMR) Digital waveforms now reflect level values in edit window.

BUG: (7/4/04, DN) Network wasn't highlighted when click on icon's port.
FIX: Use 0-th nodable of the icon in "Highlight.showHighlight".

BUG: (7/4/04, DN) "TestUtils.URLExists" sometimes returns true on unexisting URL on Java1.5".
FIX: Explicitly call "connect" in "TestUtils.URLExists".

IMP: (7/2/04. GVG) Reorganizing gif files under resources folders.
3D view working with reflection now.

BUG: (7/1/04, SMR) "Insert Jog In Arc" works wrong for arcs that are not on grid.
FIX: Now keeps inserted jog inside of the arc.

IMP: (7/1/04, SMR) Created "com.sun.electric.plugins" package for extras.

IMP: (7/1/04, SMR) Maxwell now includes net names.

IMP: (6/30/04, SMR) Added "refresh" button to waveform window to re-read simulation data.

IMP: (6/30/04, SMR) Maxwell output writes contact cuts, scales to microns.

IMP: (6/30/04, SMR) AND, OR, and XOR gates now scale properly.

IMP: (6/29/04, SMR) New waveform windows start with the panel selected.

IMP: (6/29/04, SMR) Added "Panning Distance" to "General" preferences tab; removed from Windows menu.

IMP: (6/29/04, SMR) Moved "Make Click Sounds" from "General" preferences tab to "New Arcs" tab.

IMP: (6/29/04, SMR) Fixed ERC Antenna Check crash.

IMP: (6/29/04, SMR) Fixed ERC Well Check to handle new polygon merge results without crashing.

IMP: (6/29/04, SMR) Fixed CDL writing so that the .cdltemplate file is written correctly.

IMP: (6/29/04, SMR) Fixed bug in Schematic DRC that gave errors for icons with no body.

IMP: (6/29/04, SMR) Moved IRSIM output from tool/simulation to tool/io/output; fixed it to save to disk.

IMP: (6/27/04, SMR) Impelemented incremental DRC.

IMP: (6/25/04, SMR) Waveform window improvements:
     Each panel is numbered, have a pulldown of panels, can hide/show panels;
     Fixed bogus time values, such as 1.999ns;
     Time cursors are dashed-lines;
     Right-click on signal in signal-names panel changes its color

IMP: (6/24/04, SMR) Waveform window improvements:
     Double-click on signal in explorer tree to add it to current panel;
     Adding the same signal to a panel doesn't add it twice: changes its color;
     Tooltips on all buttons.

IMP: (6/25/04, SMR) Implemented "Help / User's Manual" and began to convert C manual.

IMP: (6/25/04, GVG) First version working of 3D View.

IMP: (6/25/04, RK) Added NCC Local processing step to find user-understandable differences

IMP: (6/23/04, SMR) Preferences panel opens the tree to the proper place (and uses single-click to open them).

IMP: (6/23/04, SMR) Implemented drag-and-drop for signal names into the waveform viewer.

IMP: (6/22/04, RK) Added NCC attribute: exportsConnectedByParent

IMP: (6/21/04, SMR) Implemented Spice2 / GNUCap output reader.

IMP: (6/21/04, GVG) Adapting code for 3D View. New commands in Build.xml and some layers got non-zero thickness.

IMP: (6/21/04, SMR) Implemented "Edit / Selection / Push Selection", "Pop Selection".

IMP: (6/20/04, SMR) Implemented simple waveform window cross-probing.

IMP: (6/20/04, SMR) Added command to export "version 6" ELIB files.

BUG: (6/20/04, SMR) Cell centers are seen higher up the hierarchy.
FIX: In "PixelDrawing.expandedCellCached()" call "drawCell()" with "false" as the last argument.

IMP: (6/18/04, SMR) Implemented "Plot Spice for this Cell" and "Plot Verilog for this Cell".

BUG: (6/18/04, RK) Fixed various problems with NCC export checking

IMP: (6/18/04, SMR) Changed binary file format to include cell anchor points.

BUG: (6/18/04, SMR) Spice output uses wrong .global names.
FIX: In "io.output.Spice.start()" convert power and ground to proper names.

IMP: (6/17/04, SMR) Merged 3 options dialogs into 1 "Preferences" dialog.  Created tool.user.dialogs.options package.

IMP: (6/17/04, SMR) Moved per-cell frame selection into "Cell Properties" instead of "Frame" tab of "Edit Options".

IMP: (6/17/04, RK) Remove "Universal Arcs" from layout generators because Java-Electric NCC doesn't need them.

IMP: (6/17/04, RK) Add Export checking to NCC.

IMP: (6/17/04, RK) Remove various Transistor types. Change Transistor to allow stacking of arbitrary number of series transistors.

IMP: (6/17/04, GVG) Change LayerManager in StatusBar to GridLayout to avoid "flickering" in messages.
     Add TextUtils.formatDouble(<double>, 2) to coordinates. Refresh of window titles when current cell changes.

IMP: (6/17/04, GVG) Window title string composed in WindowFrame.
     MDI mode read from command arguments (valid only for window). Preparing code for 3DView

IMP: (6/16/04, SMR) Made DRC be non-static.

BUG: (6/16/04, SMR) DRC fails on active-to-transistor rules.
FIX: Better cropping in Quick.cropActiveArc().

IMP: (6/15/04, SMR) Changed all "dialog.show()" calls to "dialog.setVisible(true)" because of deprecation in 1.5.

IMP: (6/15/04, SMR) Implemented "Window / Center / Selection" and "Window / Center / Cursor".

IMP: (6/15/04, SMR) Implemented cell locking.

IMP: (6/15/04, SMR) Implemented graphing of cell structure.

IMP: (6/15/04, SMR) "Change current library" and "Change" dialogs accept double-click to terminate.

IMP: (6/14/04, SMR) Implemented SPICE writing in lambda units.

IMP: (6/14/04, GVG) More stable version of crosslibcopy with compare functions. Refactoring for getProtoName, getLibName, setLibName, getProtoNamekey

IMP: (6/13/04, SMR) Implemented ability to preserve design rules in preferences.

IMP: (6/12/04, SMR) Readable dump input can handle cross-library references.

IMP: (6/12/04, SMR) Implemented smart text placement (Edit Options, "Text" tab).

IMP: (6/12/04, SMR) Implemented automatic "blobs" where multiple arcs connect to a schematic port.

IMP: (6/12/04, SMR) Implemented "Look Inside Highlighted".

BUG: (6/12/04, SMR) When arcs jog, the R-Tree is damaged.
FIX: In "database.constraint.Layout.java", do not apply constraints to arcs that have been jogged.

BUG: (6/12/04, GVG) SelectedItem in right library pulldown list not correctly set.
FIX: In CrossLibCopy.java: same index as in left assigned (both should correspond to current)

IMP: (6/11/04, SMR) Implemented "Artwork Appearance" dialog for editing Artwork primitives.

IMP: (6/11/04, GVG) Message in WriteLib if no write access. Unified version of coverage implant, merge polygons and
layer coverage calculation. New idea for icon of current library selected in ExplorerTree.

IMP: (6/11/04, RK) Move fill generation to a script. Add Essential-Bounds to tiled fill cells.

IMP: (6/10/04, SMR) Changed the Job.doIt() method to return a success indicator.

BUG: (6/10/04, DN) Unnamed bus connected to array node may detect wrong width.
FIX: In "NetSchem.java".

IMP: (6/10/04, DN) Checking of generic pins and arcs in layout cells moved from Network tool to Geometry output.

BUG: (6/9/04, SMR) "Array" does not array node and arc names.
FIX: In "tool/user/dialogs/Array.java" have node and arc names copied.

IMP: (6/8/04, SMR) Improved "PixelDrawing.java" to align stipple patterns correctly.

IMP: (6/8/04, SMR) Implemented Windows / Messages Window menu with "Save Messages" and "Clear".

IMP: (6/8/04, SMR) Implemented Tools / Routing command "Mimic-Selected".

IMP: (6/8/04, SMR) Implemented Tools / Routing commands "Enable Mimic Stitching" and "Enable Auto Stitching".

IMP: (6/8/04, SMR) Implemented Tools / Spice submenu "Set Spice Model".

IMP: (6/8/04, SMR) Implemented Tools / Verilog submenu "Set Verilog Wire" with commands "Wire", "Trireg" and "Default".

IMP: (6/7/04, SMR) Implemented "View" commands "Edit Multi-Page Schematic View" and "Make Multi-Page Schematic View".

IMP: (6/7/04, SMR) Implemented "Make Grid Just Visible"

IMP: (6/7/04, SMR) Implemented "Match Other Window".

IMP: (6/7/04, SMR) Implemented "Color" tab of "Edit Options" as well as the color commands
     "Black Background Colors", "White Background Colors", and "Restore Default Colors".

IMP: (6/7/04, SMR) Implemented Spice command "Add Multiplier".

IMP: (6/7/04, GVG) Ctrl P for printing. Corrections to M factor code in Spice.java

IMP: (6/6/04, SMR) Implemented "Layer" tab of "Edit Options" dialog.

IMP: (6/6/04, SMR) Implemented "Arrows Filled" option in "Technology" tab of "Edit Options" dialog.

IMP: (6/6/04, SMR) Implemented "Panning Distance" settings.

IMP: (6/6/04, SMR) Implemented "Transistor Strength" setting.

IMP: (6/6/04, SMR) Implemented "List Tools".

IMP: (6/6/04, SMR) Implemented "Get Unrouted Wire".

IMP: (6/6/04, SMR) Reorganized EditWindow so that it is the object used externally,
     not EditWindow.CircuitPart.

IMP: (6/5/04, SMR) Implemented 3D tab of "Edit Options" dialog.

IMP: (6/5/04, SMR) Implemented "Insert jog in arc".

IMP: (6/4/04, GVG) First version of M factor in Spice output.

IMP: (6/4/04, RK) Change fill cell generator so that all reserved
     space may be allocated between ground only or between power only.

IMP: (6/4/04, RK) Change fill cell generator to place bottom left fill
     cell at (0,0) when building tiled fill cells.

BUG: (6/4/04, RK) Change LayoutLib.newArcInst to create only fixed-angle arcs

BUG: (6/4/04, RK) Fix compile errors reported by Eclipse in WaveformWindow.java

BUG: (6/4/04, RK) Fix obsolete comments in JNetwork

IMP: (6/4/04, SMR) Outline listener uses right button to create points, not "a".

IMP: (6/4/04, SMR) Implemented Measure-Distance mode.

IMP: (6/4/04, SMR) Implemented Edit / Selection / "Enclosed Objects"

IMP: (6/4/04, SMR) Implemented Edit / Info / "See All Parameters on Node", "Hide All Parameters on Node", "Default Parameter Visibility"

IMP: (6/4/04, SMR) Implemented readable dump output.

BUG: (6/04/04, GVG) If empty lines are inserted as vars, null and outbound exceptions are thrown om Poly.java and
     GetInfoText.java respectively.
FIX: Skip access if object array[i] is null.

IMP: (6/3/04, SMR) Searching objects in a cell is now an Iterator.

IMP: (6/3/04, SMR) Implemented "Show Power and Ground"

IMP: (6/3/04, SMR) Implemented "Validate Power and Ground"

IMP: (6/3/04, SMR) Can use "++" and "--" to tell where to increment or decrement array indices.

IMP: (6/2/04, GVG) First version of layer coverage.

IMP: (6/1/04, GVG) Open and Save functions in tool bar. Extra functions to verify if Save icon is enabled or disable.

IMP: (6/2/04, SMR) Implemented Annular ring.

IMP: (6/2/04, SMR) "Array" dialog gives a choice of going by row or by column

IMP: (6/2/04, SMR) Implemented ERC antenna check

IMP: (6/2/04, SMR) Implemented Edit / Move / "Align to Grid"

IMP: (6/1/04, SMR) Implemented Edit / Text / "Change Text Size..."

IMP: (6/1/04, SMR) Implemented Edit / Selection / "Deselect All Arcs".

IMP: (6/1/04, SMR) Implemented Edit / Selection / "Select Object..." which can select nodes, arcs, exports, or networks.

IMP: (5/31/04, SMR) Implemented cell instance extraction and packaging.

IMP: (5/31/04, SMR) Implemented MOSIS CMOS scalable transistors.

IMP: (5/30/04, SMR) Implemented Tool / Network / "Show Network", "List Networks", "List Connections on Network",
     "List Exports on Network", and "List Exports below Network".

IMP: (5/28/04, SMR) Implemented View / "Change Cell's View".

IMP: (5/28/04, SMR) Implemented Edit / "Erase Geometry".

IMP: (5/28/04, SMR) Implemented Help / "Describe Current Technology".

IMP: (5/28/04, SMR) Implemented Edit / Size commands: "All Selected Nodes" and "All Selected Arcs".

IMP: (5/28/04, SMR) Implemented Export commands: "Delete Export", "Rename Export", "Move Export".

IMP: (5/28/04, SMR) Implemented Arc commands "Toggle Ends Extension", "Reverse", "Toggle Head-Skip", "Toggle Tail-Skip"

IMP: (5/28/04, GVG) Testing qTree in ERC Check Well (new function doesn't overwrite current one).

IMP: (5/28/04, GVG) Added execution flag to Job class. Second version of qTree for polygon merging

IMP: (5/28/04, RK) Added fill cells: fill456_pwr and fill456w_pwr. Merge Jonathan's gate generator code into mine. Add user interface checks.

IMP: (5/27/04, RK) Added _pwr gates to layout generators. Added fill56_pwr and fill56w_pwr to fill cell generator.

IMP: (5/27/04, SMR) Implemented "Change Current Library", "List Libraries", "Mark All Libraries for Saving", "Rename Library"

IMP: (5/27/04, SMR) Implemented bus ripping.

IMP: (5/26/04, SMR) Implemented schematic frames.

IMP: (5/26/04, SMR) Implemented Spice cell model overrides in the Spice tab of the Tool Options dialog.

IMP: (5/25/04, RK) Add fill123, fill123w, and fill34.

IMP: (5/25/04, GVG) First draft for qTree to replace PolyMerge.

IMP: (5/25/04, RK) Modify "Justin" command so it scans LoCo schematics and generates layout for all
     gates it knows how to.

IMP: (5/25/04, GVG) Disable doAction button in CellBrowser when no cells are available.
     getSelectedCell returns null if index is -1. Rename functionaly enabled in CellBrowser.

IMP: (5/25/04, GVG) Coverage implants: more robust functions. Option added under Tool->Generation->Coverage Implants Generator

IMP: (5/24/04, SMR) Renamed "grab" to "anchor" everywhere.

IMP: (5/24/04, JKG) Improved Pad Generator

IMP: (5/24/04, SMR) Added node alignment commands "Edit / Move / Align..."

BUG: (5/24/04, SMR) During long library input, concurrency exception is thrown.
FIX: Synchronized maintenance of cell lists in Library.java.

IMP: (5/24/04, SMR) Added "Edit / Move / Spread..."

IMP: (5/24/04, SMR) Added "Edit / Move / Move Objects By..."

IMP: (5/23/04, SMR) Implemented "Text" panel of "Edit Options".

IMP: (5/23/04, SMR) Implemented ability to disable file-selection dialogs for netlist output.

IMP: (5/23/04, SMR) Implemented saving of primitive node sizes.

IMP: (5/21/04, SMR) Added EDialog class as super to all dialogs to remember position.

IMP: (5/21/04, SMR) Added Layer.getPureLayerNode() to obtain the pure-layer node associated with a Layer.

IMP: (5/21/04, GVG) Coverage Implants functionality in MenuCommands added.

FIX: (5/20/04, JKG) LE.subdrive() fixed. Various EvalJavaBsh code clean-up. Now uses reflection only.

IMP: (5/20/04, JKG) New dialogs.

IMP: (5/19/04, SMR) Text-edit windows now work.

BUG: (5/18/04, SMR) Should show ports on expanded cells that aren't wired or further exported.
FIX: Fixed in "PixelDrawing.java"

BUG: (5/18/04, SMR) Redisplay sometimes misses parts of the image.
FIX: In "EditWindow.CircuitPart.paint()" must always draw something.

IMP: (5/17/04, SMR) Added Flip-flop creation and support.

BUG: (5/17/04, SMR) When a cell is displayed, its bounds are set to include text.
FIX: In "EditWindow.fillScreen()" do not adjust the cell bounds stored in the cell.

BUG: (5/17/04, SMR) When a library is read back in, existing windows remain to its former contents.
FIX: In "Input.java" clear windows that reference replaced libraries.

BUG: (5/17/04, SMR) When an arc changes its "end extension", its bounds are not recomputed.
FIX: Recompute bounds in "ArcInst.java".

IMP: (5/17/04, JKG) Various dialog improvements.

IMP: (5/15/04, SMR) Added reflection interface to Bean Shell.

IMP: (5/14/04, SMR) Added the concept of "negated connections" instead of arcs.

IMP: (5/14/04, SMR) Added Schematics.getShapeOfPort() which is used for
     intelligent selection of locations on the left side of gates (AND, OR).

BUG: (5/14/04, SMR) Option reconciliation (when libraries with different options are read) broken.
FIX: Organized display into columns; used more meaningful names;
     Also fixed bug that did not display all relevant options.

IMP: (5/14/04, JKG) Tool Tips added. HTML based tips can be browsed by user.

IMP: (5/14/04, JKG) Commented out code to access other Interface modes except
     ClickZoomWire and OutlineEdit.

IMP: (5/14/04, JKG) Copy/Paste now uses mouse offset.  Paste arc to arc broken, fixed.
     Added "Duplicate" command.

BUG: (5/14/04, JKG) Key Bindings stored by menu name caused conflict.
FIX: Now stored by menu path.

BUG: (5/14/04, JKG) Menu shortcut key not updated in menu.  Fixed.

IMP: (5/13/04, SMR) Waveform display is available.

BUG: (5/11/04, SMR) Node "Get Info" dialog does not handle SizeOffset right, displays sizes too large.
FIX: Use SizeOffset.

BUG: (5/11/04, SMR) DRC displays too many digits.
FIX: Created "TextUtils.formatDouble()" and use it in DRC error reporting.

BUG: (5/10/04, JKG) DraggingMustEncloseEntire object did not allow object selection
FIX: in Highlight, areaMustEnclose is ignored if bounds size is (0,0) (single click)

IMP: (5/10/04, JKG) Fixed and improved Edit->Change.

IMP: (5/10/04, SMR) Put "IO Options" under "File" and "Tool Options" under "Tool".

BUG: (5/10/04, SMR) "IO Options" crashes if there are libraries read in.
FIX: In "Layer.getLayerPref()" make sure "factory" is not null.

IMP: (5/7/04, SMR) Generalized the contents of a WindowFrame.  Created the
     interface WindowContent and made both EditWindow and WaveformWindow
     an implementation of that.

FIX: (5/6/04, JKG) Delete Key Bindings and Reset Key Bindings didn't do anything; fixed.

IMP: (5/6/04, JKG) Added ability to ignore some or all key bindings, via MenuBar.

BUG: (5/6/04, JKG) Wiring using ClickZoomWire tool to middle of a wire deleted name on wire
FIX: Name now transferred to one of new arc segments

IMP: (5/6/04, JKG) Command button on MACs now converts clicks to "right" clicks

IMP: (5/6/04, SMR) Added the "File/Save All Libraries" command.

IMP: (5/5/04, SMR) The "Misc" palette entry now has Spice code and Verilog code/declarations.

IMP: (5/5/04, SMR) Converted file paths to URLs.

IMP: (5/5/04, SMR) Can now select default font in the "Text" tab of the
     "Edit Options" dialog.

IMP: (5/4/04, SMR) More improvements to waveform display.

IMP: (5/4/04, SMR) Added "Scale" tab in IO Options to set scale factors.

BUG: (5/4/04, SMR) Can create two exports with the same name.
FIX: Disabled this both in Export.newInstance() and in the dialog.
