Something went wrong on our end
-
Terry D. Norbraten authoredTerry D. Norbraten authored
RELEASE_NOTES_HISTORY 18.06 KiB
These are release notes for Viskit from 0.1 forward. Each release will
detail its functionality in meeting the applicable specifications and document
any known issues.
Release: 1.0.0(March 10, 2015)
-------------------------
Major changes since 0.7.0:
Major refactor of the MVC components to implement undo / redo on both the EG
and Assy editors
Fixed potential NPE when attempting to capture a frame image with no file
loaded in either the EG or Assy. editors
Further improvements to the state transitions panel in that when we wish to
invoke methods on state variables, a combo box of choices is presented. If a
method requires a parameter, the parameter is typed into the action field
Fixed issue where canceling a local variable method call in the state
transition dialog did not initiate an auto row delete
Improvements to the state transitions panel in that we can now invoke void
return type, zero parameter method calls as part of a state transition. This
is accomplished by declaring a local variable within an EventNode, or by using
an event argument supplied by an Edge. The type will be used to reflect on
which method types will be available for use on either the local variable, or
the argument
Implemented capability to provide an unqualified Java class name and have the
fully qualified class found on the classpath. Implemented in viskit.VStatics
Fixed bug to prevent edge parameter values from being wiped out during a node
modification
Preventing a case where we have simkit.jar in both the working classpath and
in a project's /lib directory. We don't need to expose multiple libs of the
same name in the LEGOs tree because they happen to be in two different places
Added a feature to the state transition panel whereby we can now assign local
variables to return type invoke on "." methods, i.e. boolean b = queue.add(E);
Before, we could only accomplish this type call and fire the state transition
manually via code block entries. This is a step in reducing code block usage.
Fixed and issue where super type more than one level up were not being
resolved in the EG to Java translator
Corrected issue with EG image capture being stuck on the last showing EG and
not cycling through open EG tabs
Improved EG Node tooltips by including code blocks
The translator for generation of Event Graph XML to Java now handles generic
array types as well as primitive array types, generic containers, and of
course, primitive types.
JGraph extended and overridden components now behave like actual DES EG nodes
in that EG node edges take on the classic parabolic shape when two edges
connect between nodes. Self-referential edges now begin hear the top of the
node instead of at the bottom and form around the node in a clockwise fashion.
Fixed issue with the StateVariableDialog where if an array type was entered in
the type field, the array length field was still disabled
Fixed issue of the metadata description field not updating after an edit
Fixed potential NPE in the PclEdgeInspectorDialog when the Introspector can't
determine a property type
Fixed an issue where EG and Assy file open history was not being preserved
Fixed an issue where a PropertyChangeListener edge with no selected property
was forcing a "" (empty string) property which is non-existent.
Implemented a self-referential drag and drop, or menu selected canceling edge
option for the EG editor.
Implemented an extension feature for EGs. Instead of extending the default
SimEntityBase, type in your SimEntityBase subclass name instead when creating
a new event graph, i.e. extends ArrivalProcess.
Fixed an issue where and IllegalStateException would occur when added a
simkit.random.RandomVariate to the parameter list
Fixed an issue with not being able to use normal java package naming
conventions when crafting EG package names
Fixed an issue with cut & paste where the selected cache was not being cleared
after a confirmed delete by the user.
Fixed a bug where canceling the edit on any of the Assembly edge dialogs
caused that edge to delete.
Fixed an issue where a good intention to have nodes snap to grid on either
editor pallette caused the node cluster to keep positioning down and to the
right upon every file save.
If an EG XML file save goes bad, or its corresponding source code
compilation reveals an error, the tab that represents the EG will change from
a green color (signifying good XML, good source compilation) to red which
signifies either an XML save, or its source compilation went bad. The user will
be unable to advance to the Assembly Editor tab until the problem is corrected.
If an EG compilation went bad, any previously compiled byte code *.class files
of the same name will be deleted preventing inclusion on the classpath. A bad
compile will also cause removal of the EG MD5 hash entry from the project's
viskitProject.xml file. If upon start up, a previously opened XML file passes
validation, but fails compilation, the user will again be unable to advance to
the Assy Editor tab.
Fixed an issue where if a EG did not compile correctly, the whole EG LEGO tree
for would dissappear
Bugfix 1425
More gracefully handle and inform the user of a missing third party library
Fixed issue where if we had already compiled an Assembly, then the ClassLoader
has changed, and we need to go back and fix something in the Assembly. Switch
back to the Viskit ClassLoader and disable the Assembly Run tab until the
Assy is recompiled.
Fixed timing issue when an Assembly file is given as an argument at startup
which firsts loads associated Event Graphs, but the Assembly was being
compiled before the Event Graphs finished loading causing ClassLoader issues
due to the Assembly being compiled in a separate ClassLoader.
Shortened the path names for the LEGOs tree to be more readable. If the user
does not select the Analyst Report tab to be visible, then the Enable Analyst
Report checkbox on the Assembly Runner panel will not be enabled.
Better Mac OS X installer support by upgrading the javaApplicationStub to work
better with Oracle's JDK 8+. Better Windows installer support by actually
getting it to work with the executable jar's Class-Path header. Still need to
fully test on Unix though.
Implemented better message pop-up reporting during EG and Assy loading for the
user to better determine what errors have occurred
Bugfix 1377
Allow deselection of both the Design of Experiments (DOE) and Cluster Run
panels via the Files -> Settings dialog -> Tabs Visible
Ensure that when switching Event Graph tabs, or to the Assembly Editor, any
unsaved EGs will be saved, revalidated and re-compiled
Remember user set sizes for the main app frame so that it will restart at
those dimensions
Fix a long standing bug where modifications to EGs did not get re-validate
XML, generate java source, or re-compile. Fix bug where a duplicate icon
could reappear in the EG node pallette
Fix UI issue where a node name could be changed for either an EG or Assy and
would not reflect until a mouse was re-clicked on the editor canvas
Refactor source code packaging to more closely resemble MVC organization
Release: 0.7.0(November 14, 2014)
-------------------------
Major changes since 0.6.2:
Platform specific startup items are discerned at app startup, i.e. MAX OS X
"About Viskit"
Fix a long standing bug where local variables declared in an EG doRun method
where not being utilized as indicies for arrays in state transition changes
Enable a single click selection of a Viskit project icon w/o having to select
"OK"
Upgrade to JAXB v2.2.11
Fix issue where a single opened EG did not close when selecting another Viskit
project
If a user selects JVM exit and an EG, or Assy were modified, allow a cancel
closing Viskit when the save dialog appears
Always show what Viskit project is open in the app title bar
Implemented a nuke.dot.viskit Ant target. This is an attempt to draconically
fix an issue where Viskit startup in an unknown state via its .viskit kept
config files and can't recover to usability
Fix bug to allow generically type arrays to be properly translated to java
source
Fix a NPE in the AssemblyControllerImpl
Had to break the "dirty Assembly" issue in the DOE's LocalBootLoader so as to
load generated and modified EGs and Assys from build/classes of each loaded
Viskit project. The documentation for viskit.doe.LocalBootLoader explains the
requirement for multi-threaded Grid Design Point Experiments to run with fresh
ClassLoader contexts. At this time, Grid (cluster) runs are disabled until
such time as we can re-implement using the Viskit Project paradigm
Annotated a note in the InternalAssemblyRunner where the RandomVariate seed
was is being reset via reflection. This is critical in creating standalone
projects where they are run independently outside of the Viskit environment
Upgrade to JGrpah 5.14.0. Improved threading on the drawing canvas, but need
to refine how the control points could make better scheduling edge arcs.
Upgrade JAXB to 2.2+
Fix EG node cancel cursor bug issue
Upgrade to Simkit v1.4.2
Fix issue with generating a lot of temp files and jars and not cleaning up
after the main app shuts down
Implemented a completely enclosed runtime compilation scheme using the JDK's
runtime compiler for EG and Assy generated source code, thus removing the
requirement to ship the current JDK's tools.jar with the installers. A JDK is
still required to run Viskit though.
Improve the whole Viskit app build process; must faster compile time
Ensure that a Viskit project /lib populated with jars is read upon startup in
order to resolve external classpaths selected in the Setting Dialog
Ensure the lib/ext can be ignored for pure Viskit operation, i.e. no
requirement for Diskit, or other advanced DES libs
Upgrade to JDom v2.0.5
Upgrade to Xerces v2.11.0
Upgrade Apache Commons libs to v3.2.1
Fix NPE on model property editor
Improve iZpack installer creation
Release: 0.6.1(May 10, 2011)
---------------------------------
Major changes since 0.6.0:
Implemented a dedicated Viskit Project space "MyViskitProjects" in order to
properly designate a project space for specific user projects
Fix NPE when canceling out of creating a project
Fix bug where the Viskit Project file chooser was causing unnecessary
recursive calls
Implemented a draconian runtime fix to nuke the ${user.home}/.viskit directory
incase of a startup failure that has historically rendered Viskit unusable
until .viskit was manually deleted anyway. The goal will be to never have to
do this if configuration metadata was stable enough to continue usability.
Improved iZPack installer support for creating 64 bit installers. Shoe-horned
is a USA flag to denote "English" as an install language vice the UK flag.
Release: 0.6.0(October 8, 2010)
---------------------------------
Major changes since 0.5.4:
Upgrade to Simkit v1.3.8
Provide for launching Viskit either standalone, or as a process within another
runtime application observing proper EDT protocol
Disable TRANG building of the EG and Assy Schema's from DTD. These Schemas
are now solid on their own.
Fix bug where .svn folders would display on the LegosTree for SimEntities and
PropertyChangeListeners
Bugfix 1248
Improved parsing for BasicSimEntity subclasses in order to populate the
LegosTree
Display current Viskit Project name in the main app title bar
Improved EG caching scheme so that we don't recompile unnecessarily
Improved recently opened files and projects history caching
Fix NPE bug when opening an existing Project from a newly installed Viskit
Bugfix 706
Upgrade to JAXB v2.1.8
Improved output stream flushing when writing out to text at runtime
Fix bug where EG description fields were not rendering for a newly added EG
tab
Improved JDK shutdown if Viskit is a third-party lib within another app
Bugfix 1364
Viskit was becoming too tightly integrated with a specific project (Savage
Studio). Broke up such dependencies and refactored to be a standalone app
that can be integrated into other applications.
Fix issue where Assembly Adapter and PropertyChangeListener edges behave
properly if the user cancels an edit function
The Assembly description field in not yet implemented and noted in source
Assembly properties (metadata) are now immediately reflected in the Assembly
Runner
The proper mode for a PropertyChangeListener is singular. However, for back-
wards compatibility for older EG, allow plural as well
Fixed bug where improper GraphMetaData was being supplied to a new Assembly
Fix issue where EG and Assy Editor toolbars were not being made visible when
creating new EGs and Assys
Better resizing accomplished for the Assembly Editor to allow more weight to
the JGraph side of the splitpane
Implemented full XML validation for EGs and Assy XML files
Minor EG and Assy Schema modification to allow for SMAL metadata to be used
as CDATA entries
Implemented multi-file opening choice for EGs and Assys
Bugfixes 1396, 1398 & 1412
Fix issue to allow building of the ParameterMap and Constructor where no
concrete doRun or doReset methods were defined
Implemented package creation when naming newly created EG and Assy files
Implemented configuration awareness of current Viskit project
Added a "Verbose" checkbox on each Assembly Node editor which operates as a
"detailed output."
Clamp simulation output to 8M and truncate from the front if required
Implemented dumping of Event List only if not in verbose, or reallyVerbose modes
Internal class checking to populate EG editors unable to discern unqualified
class names except java.lang.*
Viskit Project can now be stored and opened from any location on the local
machine
Bugfixes 1400 & 1407
Release: 0.5.4(August 12, 2008)
----------------------------------------
Major changes since 0.5.3:
Implement a clear recent files option to the File menus
Implement a "detailed output" checkbox option for EG node inspector dialog
Implement an incrementing trailing digit in node names when dragging new node
onto the Assembly editor canvas. Add check for existing node name prompting
use of the incrementing trailing digit.
Release: 0.5.3(August 5, 2008)
---------------------------------
Major changes since 0.5.2:
Implemented specific platform L&F options upon app startup
Fix issue in SimkitXML2Java translator when an interrupt would cause an unclosed
if block statement causing startup compile errors
Fix for issue where varargs can throw a mostly harmless compiler warning if
there is only one arg supplied to the SimkitXML2Java translator
Fix issue where the EG inspector dialog "Apply" button had no effect
Bugfix 1399
Release: 0.5.2(June 11, 2008)
-------------------------------
Major changes since 0.4.8:
Bugfixes 1402 & 1405
Implemented creating new projects from either the EG or Assy editor panel menus
Bugfix 1373
Announce any compile errors to output screens
Release: 0.4.8(June 3, 2008)
-------------------------------
Major changes since 0.4.7:
Implemented Log4J for debugging, output info status
Switch from Sun's Base64 encoder to Apache version
Fix NPE when user didn't check "Enabled Analyst Report" and attempted to view
anyway
Fix bug where a SimplePropertyDumper could not co-exist with a
SimpleStatsTimeVarying PCL defined on the same Assembly
Stricter BeanShell interpreter checking for EG and Assy authoring, esp. for
typed containers <SomeType>
Enable regression line fitting to scatter plot graphs generated for the
Analyst Report
Implemented enabling of the Assembly Run panel only after a successful Assy
compilation and validation.
Implemented firing property changes using state variable "getters". Container
getters return a clone for the FPC in the doRun event.
Modify the Assembly DTD to offer a raw count or mean of raw count statistic
for all PCL dialogs
Implemented a "Number x of n Replications" output on the Assembly Runner
Update JFreeChart to v1.2.0. Improve chart output by counting raw counts vice
the mean of raw counts for histogram charts
Fix issue where Assys were being compiled while the EG tree was still being
parsed for compilation causing conflicts
Upgrade Simkit to v1.3.4
Bugfix 1183
Improvements to Analyst Report building, editing, reopening and rendering in
HTML
Implemented Ant targets to translate EGs and Assy XML files to Java source
Further decoupling of Diskit being too tightly integrated w/ Viskit for
convenience of another application
Refinements to external javac exec process for EGs and Assys
Implemented generics utilzing JAXB v2.1. This is a whole Viskit upgrade
prompting tagging a pre-generics JAXB branch.
Authored a script to delete temp files and history, a hack to clean up cruft
left behind from Viskit multiple operation of quarantining separate
classpaths, keeping scratch EG and Assy files, and multiple compilations of
source code.
Implemented notification of when an Analyst Report is ready to view at the end
of a local Assembly Run of 1 or more replications
Bugfixes 936, 1195, 1246, 1249 & 1260
Implemented figure caption auto increment in the Analyst Report. Xalan required
as 3rd party lib for this functionality
Implemented a cleaner exit strategy vice a blunt System.exit(0) scheme
Implemented image capturing of all opened EG and Assy files for PNG insertion
in the Analyst Report
Improved Analyst Report generation by consolidating all material required for
report in a project specific location. Fix various bug discovered in AR
generation improvements.
******************************************************************************
End of this report on Viskit history 26 SEP 2007. Please see
doc/viskitSVNLogs.txt for previous developer commit log entries dating back to
18 NOV 2002 when Viskit migrated from CVS to SVN.
******************************************************************************