Release Notes
------------------

Version 3.4.0
*Trial version expiration date until Dec 2016
*PET-DeepEdit CONNECTOR:
 -Implement new constraint categories for PET compatibility: Transmission flow constraints and irrigation constraints
 -Implement PET constraint coefficients validation at 2 different stages: In the constraintbuilder and before executing PET input file creation
 -Implementation of Summary as part of the PET available reports. Summary is visualized by DeepEdit's zFileViewer
 -Improvements to PET manager updates to Excel. Fix problems deleting previous entered values for Parameters. Clear Excel function has been fixed. Fix a problem when determining the column set in Parameter tables
 -Enable PET Manager with Obj Menu from main Frame. Temporary available for expirable DE version
 -Implementation of PET reports to visualize in DeepEdit's VSI. Report is for testing purposes. Final report will be commited with final PET outputs
 -PET manager implementation for creating and editing PET software version 2.0 input cases (especification v3.41). This version is not EDIL compliance but functionalities are fully included. Extensive testing is required
 -Improved and fixes to implementation of GAMS sets and parameters for DeepEdit and to support PET changes in version v3.41. It includes a visualizer specially designed for multi-dim SETs
 -Labels for PET Manager submenus
 -Utility functions in preparation for the PET bridge
 *New DeepEdit-Solver Interface implementation:
 -Implement navegation to Excel from the Solver's visual frame (usually in 'Data' tab in DeepEdit GUI)
 -Fix an error when assigning values from frame to SETs: If old value exists in some other position (row), it will be assigned to that row (instead of the editing row)
 -Initialize numerical SETs starting from 1 (instead of 0)
 -Implement OK button to SET and PARAMETER edition window. User will have to confirm to exit when a cell is editing
 -Fix a sorting problem if values are entered in the SET window in an order different from top to bottom
 -Implements "display name" attribute (from mapping file) to show Sets and Parameters in solver's windows and validation errors
 -Updates to DeepEdit's generic SET and Parameter definitions and implementation of GUI for visualizing and editing values
 -Minor javadocs fixes for location interface
 -Implementation of Gams solver interface
 -Definition of the DeepEdit Solver interface
 -Implementation of Location interface for Edil sources. Preparing for the edil package interface and implementations
 *New Visual Solution Import VSI chart and report display:
 -Implement PLP result viewer using recently created VSI report interface
 -Fix some error with VSI handler. It wasn't creating binary files for large files
 -New Visual Solution Import (VSI) GUI and report definition. This commit includes datasets, handler for larga dataset, forms and related utilities. Some DeepEdit refactor is included in this commit
 -New DeepEdit's Chart API implementation: Uses JFreeChart galleries to show and display charts
 *General DeepEdit GUI and core improvements and fixes:
 -Some performance improvement: Avoid refreshing connections with every click.
 -Support some (even) older schematic files with unknown schematic properties. Now it shows a warning message instead of stopping with error. Included a small fix with the progress window to avoid display simultaneously with the warning from old schematic versions
 -Change the default value of reserve violation to 0 (instead of -1) in order to make it compatible with PET
 -Display new Schematic options as 'Advanced' button from the old option window
 -Avoid a null pointer exception when when top-left action is executed and there are Simulation or Constraint objects
 -Remove unused call to Test Chart in main DeepEdit Frame
 -Refactor and remove some unnecessary API for the zFileViewer and zFileEditor
 -Progress bar API in DeepEdit's status bar. No implementations yet
 -Missing javadocs for Excel Location implementation
 -Delete some unused classes. Move the Quick Sort algorith to Utils (although it seems a bit useless)
 -Wizard exception makes a call to WizardCancelled method so after exception actions can be customized. Exception dialog now shows getLocalizedMessage
 -Toolbar menu now revalidates components. This should fix the problem of some toolbar dissapearing when switching between editors. Also included some minor method renaming to follow typical Java naming convension
 -Fix an update from Excel problem. Only last component in list was updating from Excel
 -Fixed a problem updating hydro connections
 -Disable model's row sorting in Set and Parameter's GUIs to avoid re-sorting. All lists in Sets/Parameters were changed to LinkedList (instead of ArrayList) for the same purpose
 -New configuration entries and fix of duplicated entry in parameter definition file
 -Moves a dangerous call to system property from DeepEdit's main constructor to it's (unique called) class method
 -Fix: Update constraint's coeffients with comp's removals
 -Improved implementation and functions to recently committed generic DeepEdit's abstract wizard
 -Fix to recently committed Excel reader function
 -More Excel functions to read non-empty cells
 -Improved Excel functions to handle data using Apache POI and javadocs
 -Various catch-ups before committing the DeepEdit-PET specification v3.41: Better temp files handling, updates to solver package
 -Fix to previous commit: Avoid parameter tab content to disappear after closing the parameter popup window
 -Better API to access to schematic own parameters
 -Better implementation of Parameter window in main GUI. Option to popup and allow the use for displaying Schematic properties
 -Avoid duplicated components in the same PIN
 -Validate integer ranges from generic numeric values in validation rules
 -Busbar connection information for Lines wasn't set to blank when there were no Busbar connected to the end
 -DeepEdit's Validation Exception class: Initial implementation
 -Excel-type data structures to facilitate interaction with MS Excel
 -Additional Excel utilities using Apache POI
 -Change the way schematic file dialog is displayed. It now displays loading time
 -Fix some Schematic editor calls. It now implements a lot safer enums
 -Missing files from Excel schematic opening commit
 -ComponentPin class should have been abstract long time ago
 -Some minor javadocs fixes
 -Opening from Excel now registers opened spreadsheet instead of temp file
 -Support opening and saving DeepDB databases in old schematic format
 -Make View Database option menu work for both mdb and db connections. Missed in 3.3 after introducing database configuration. Deprecate useless DESkin class
 -Make columns in database view appear in the same order as defined in the parameter xml file
 -Validate schematic against trafo's valid reactance
 -Minor adjustment to select all call from main menu
 -First implementation of an error handler interface for all DeepEdit Wizards
 -Implement some file functions for moving and creating temp files. Missing from previous commit!
 -Implement some Excel functions, including loading and saving schematic directly from Excel
 -Include Apache POI 3.11 library in the distribution for Excel interaction
 -Implement right-click popup menu to delete, rename and edit components from NavTree GUI
 -Constraint fixes: Fix the bug of storing names instead of object in Constraint's coefficients and support for other PET constraints
 -MessageTab text area will automatically scroll down (to bottom) after new line is appended
 -Make AnalysisTool validateSchematic method static so it can be easily accessed by any class object
 -Improved API to access connecting busbars of branches
 -License header for Variable Enums class file
 -Fix a problem with unreleased MessageTab API
 -Validation rules API (only functions). Update validation rule values in DeepEditParameter.xml is included
 -Improved unique name function. Avoid problems renaming components
 -Move the fwd, back and finish button wizard's actions to release mouse event
 -Implementation of generic Abstract DeepEdit wizard
 -New functions to access DeepEdit comps in Schematic and better javadocs
 -Fix a small typo in the license header file
 -Implement a new function to now if parameter's name is valid (supported) or not. Some improved javadocs
 -Unreleased new Simulation parameter setter was not working
 -New generic file chooser utility in Utils
 -Avoid null pointer exception in unreleased Constraint builder
 -API for message closable tabs in the output area
 -Some minor update to unrelease 3.4 parameters version
 -Fix a Pin registration problem in reservoir components
 -Safer methods to retrieve connected components to Line, rivers and others
 -Another utility function to create unique string names
 -Fix Simulation name getter. It wasn't recording changes to this field
 -Avoid a nullpointer exception when Overview pane is displayed. Some other minor refactor and format fix
 -Fix various constraint and constraint builder issues. New FCF category. Include the new (missing) enums class definition file for DeepEdit variables
 -Minor modification to string utils. Includes a function to detect white spaces in string
 -Deprecate some old functions and some minor refactoring of DeepEditFrame
 -More color styles and refactor of color functions
 -New Simulation class for DeepEdit simulation control
 -Update Schematic reader to the latest version of parameter's definition. Slack busbar function was (finally) moved from AnalysisTool to Schematic
 -Fix an error in Line's constructor. It was causing a nullpointer exception when trying to copy the Line. Some better javadocs
 -Fix an error when changing the number of fields of Busbars. Introduce some new access functions and javadocs
 -Remove some temporary debug printing when Visual Import is reading PLP csv files
 -Avoid an IO exception if the result folder doesn't exist in multinodal Power Exchange. Results for both Uninodal and Multinodal PEx store files in the result folder. Some safer refactor for file handling in Uninodal PEx.
 -Update to latest config files. These files may experience further changes
 -Fix some small problem when displaying contraints and constraint builder
 -Refactor component access methods in schematic
 -Remove deprecated informallcomponents method
 -First implementation of voltage color styles
 -Refactor old Dimension frame to DeepEdit option window
 -Fix an old time drag-and-drop bug: At times, when a selection of multiple objects was moved to a different location in schematic, some lines did not resize (instead they moved)
 -Implementation of new parser for reading Schematic files
 -Better implementation of functions to access default parameters
 -New Constraint Builder. GUI for introducing and editing Constraint objects. TODO: Introduce category
 -Unused cover (obsolete) gif file
 -Generators PQ diagram now close properly. Dialog's labels are now displayed consistently in english
 -Fix wrong parameter value for agreements: Can cause Parameter window to not display parameters
 -Implementation of new Constraint class
 -Fix various bugs related to unrealeased upgrader and unified constructors to supplier and customer mdb objects
 -Refactor main packages to DeepEdit structure 3.4
 -Updated About file (Testing subversion branching)
 -Updated version first draft of version 3.4.0
 -Upgrade to Netbeans IDE 8.0. Includes a nice implementation of license headers and upgrade of copy library
 -Some major refactor preparing for version 3.4. Changes include: Creating of parameter version xml file (instead of DeepDB), autogenerated enum class, refactor of data  and utils classes, a new schematic file parser, remove some unnecessary public classes, fix more pingrid, generalization of parameter functions, centralized schematic restorecolor function for visual frames
 -Fix an old time drag-and-drop bug: At times, when a selection of multiple objects was moved to a different location in schematic, some lines did not resize (instead they moved)
 -Generators PQ diagram now close properly. Dialog's labels are now displayed consistently in english
 -Move (and deprecate) page dimension old frame to Deep-Editor options

Version 3.3.8
*Fix an error in Line's constructor. It was causing a nullpointer exception when trying to copy the Line. Some better javadocs. PENDING: Fix pos problem
*Fix an error when changing the number of fields of Busbars. Introduce some new access functions and javadocs
*Extended trial period for 2015

Version 3.3.7
*Implementation of column hide/show menu with right-click on tables's header in database view. Object tree will expand to show selected object in schematic
*More TA improvements:
 -TA implements supplier balance calculation
 -Balance calculation implements progress window
 -Speedup flow chart display
 -Dynamic tolerance in market balance calculation
 -Refactor some TA specific tools to more generic classes
 -Include load distribution factor when updating loads in schematic from TPDB
*Sort list of Generators and Loads alphabetically in suppliers and customer dialogs
*Regroup toolbar icons to avoid the possibility of drawing Transmission Lines in Market or Hydro editor
*Avoid objects to disappear from market and hydro editor when it is displayed only partially (because of zoom level)
*AnalysisTool: Implementation of notConnected routine to check if there exist any isolated busbar
*Improvement in TA: if schematic is not valid, automatic display of connection warnings.
*Fix in BusbarFrame: delete of unnecesary changes in Busbar color when not in service.
*Some Visual Import refactor: Move temporary readers to VisualImport file
*Fix parameter window bug when LineDC is selected
*Fix a wrong error message when Visual Import has problems opening plp file plpcnfli.dat

Version 3.3.6
*Implementation of chronological flow series chart in TA
*Some TA configuration feedback requirements:
 -Plexos database field available only when selected in combobox
 -Show deleting database message
 -File chooser uses Database vendor selection
 -Update Schematic saves configuration parameters before executing
*Fix some 'Probe' bug loading values to parameter window
*Fix bug when storing large MS Access databases to TPDB3.3 using 32bits version
*More on database folder renaming: Using constants to refer to deepedit installation folders
*Minor fix to DC Load Flow error reporting
*Remove TA Congestion from trial version
*Implement config file and configuration folder for default values, error log and any other config or temporal file. REQUIRES RUNNING MAKES FILE AGAIN!
*Remove unnecessary temp Help file
*Rename database folder to something temporal in order to finally rename it from 'DataBase' to 'database'. There is a conflict with Caps.

Version 3.3.5
*Remove Security Constrained Economic Dispatch from DE trial version
*Improved check for 32 bits version. Available for version 3.3.5
*Sqlite TPDB v3.3 example database (empty) for distribution
*Implementation of Blocking Relative Price Tol checkbox depending on Dyamic price diff checkbox selection.
*Include active slack busbar requirement as a validation error
*Support for reading sqlite databases in TA and connection available for other tools. Upgrade to xerial sqlite jdbc java4 driver.
*Implementation of dynamic congestion detection.
*Implementation of market balance calculation on demand: if clicked on main TA window
*Fix a bug with LoadFactor when computing affected market participant in TA
*Generator's frames may not update to the selected object if the previous frame was closed by closing the window (instead of clicking OK or Cancel)
Read line's availability from PLP and PCP line definition file: Include unavailability of lines during the entire horizon. Requires testing!
Makes fix: Windows batch file for seting up Working folder wasn't copying maps file to its folder
Fix to Parameterdata bug introduced in 3.3.4. Towards a much more robust implement

Version 3.3.4
*Implementation of new option to change default dabase settings. It prioritizes system-independent DeepDB.db as the default database to get object parameter list
*Applet for lunching DeepEdit on a web browser
*First step for implementation of Database View: View ONLY mode. Display all class components parameter data in database view.
*TA fix: Maintenance periods were considered for calculating marginal cost differences. Update TPDB and BranchLimits files
*Various changes to TA: Improve memory requirements and execution times for marginal diff and load margin. Flag for calculating market balance. Implementation of marginal income calculation and coefficient in congestion index (for custom ranking). LDC flow charts include Max and Min Flows (with areas in different colors). Better progress for affected market participants calculation. Change some default values.
*Critical Commit: Changes in parameter data. Towards a more robust parameter object interface. Improvements in javadocs. Minor progress message language fixes. New filters for TPDB queries
*Max, Min and clone utilities. Preparing changes in Yearly Tools and Charts
*Horizon dates may not initialize correctly in TA Option window
*Load P21 when updating schematic after Transmission Congestion Analysis
*Fixed a possible SQL "System resources exceeded" error for large databases
*Calculation changes for TACongestion: Improve saving performance, fix plp maintenance data, implement load factor, implement PLEXOS long term reader for period and daily summary flow limit data
*Improvement to command shell 'DoRun' method call. Includes verification for Minos if required in argument. It throws an exception if validation fails or calling exec method problems
*Economic dispatch SQPGL now stores matrices csv files to result folder (instead of dumping in root folder)
*Connect to ODBC databases using jdbc driver in a safer method. It supports connection with MS Access 2007 (.accdb) or newer databases.
*Fix an old sensitivities bug: Create well-dimensioned array for holding branch data
*Avoid null pointer exception when printing null values

Version: 3.3.3
*Various minor fixes to Transmission Analysis Tools. Detect parallel circuits for TA and refactor TPDB query functions
*Includes new TPDB dabase format. 
*Help file updated to include Transmission Analysis.

Version: 3.3.2
*Fix a critical bug updating parameter list from database (it was creating an sql exception if object selected in schematic didn't exist in database)
*Speed-up (up to 10 times) affected market participants calculation of unreleased Transmission Analysis
*Fix an old market bug. It was creating an indexoutofbounds error if supplier was dragged outside drawing area or the number of pins (units) were increased to make it go outside the drawing area
*Some minor TA fixes and improvement of javadocs

Version: 3.3.1
*Transmission Analysis Tools: This a new technical yearly tool to analyse transmission system from given dispatch results. This Conecta?s sponsored toolbox allows user to: 
-Displays congested branches: lines and trafos where system prices decoupling is observed
-Lines and trafos close-to-overload (lines load exceeding user-defined tolerance)
-Impact on market participants: real and theoretical (spot) market revenue.
Implements an importer from external dispatch software to own normalized database dispatch storage. Supported dispatch solutions include PLP, PCP and PLEXOS_ST solutions. It implements the following GUIs:
-JTable for tabular results and jfreechart for load duration charts
-XML editor for line limit details
*New TPDB version: This is an efficient, fully normalized database table format and memory class objects to handle dispatch results. New class TPDBInputProcessor handles input operations while TACongestion implements a series of query operations.
*Lib refactor: This version includes a major library refactor:
-Removed unused libraries: gnujaxp.jar (JAXP included in JDK 6), junit.jar (no tests yet), old JfreeChart libraries (jcommon-0.6.4.jar, jcommon-0.9.1.jar, jfreechart-0.9.2.jar), quicktable2swing11.jar (upgraded to QuickTables 3.1), quicktable2swing11design.jar (upgraded to QuickTables 3.1), Sci libraries (sciO.jar upgraded to latest jsci-core, jsciBeans.jar, JSciBeans.jar, waveletO.jar, xtraO.jar), simpletext.zip, symantec.jar.
-Refactored and deleted libraries: org.zip (old deprecated JFreeChart API and AbsoluteLayout from old netbeans API), igor.jar(string format library refactored to utils.StringUtil), Version.zip (another string format library refactored to utils.StringUtil class), lava.jar (refactored to StringUtil).
-Upgraded to latest version libraries: quicktable-3.0, jfreechart 1.0.17, Jcommon 1.0.21, jsci-core 1.2,
-Attached Javadocs for external libraries: Cplex, quicktable, jfreechart, swingx, jsci.
*New AnalysisTools progress window and API. Includes new DeepEdit banner.
*Various market object bug fixes: Market pingrid, avoid null pointer exception using Sensitivity.
*Implementation of series resistance and reactance methods for ndb_branches
*Minor improvement of Statistic report for Lines and Trafos 
*Fix some problems updating schematic with TPDB dispatch
*Include better tools for updating schematic from (unreleased) Transmission Analysis
*Corrected reordering of columns and rows in Transmission Analysis windows
*Activate Market Icons in Toolbar 
*Fix coloring problems when importing schematic from DB: Rounding problem reading line's voltage level from database 
*Move active datebox to the upper right corner of schematic panel
*Upgrade SwingX library to version 1.6.5 including all beans, sources and javadocs 

Version: 3.3.0
*New DeepEdit GUI redesign: Delete previous DeepEdit Frame with messages. Integrated GUI in resizable panels. Windows:
-Database: Tree list with object in current schematic or database
-Overview: Schematic overview screen
-Parameters: Selected Object's full list of parameters and values
-Data: Associated data related to selected object (eg. SEEDS data in SEEDS database). NOT IMPLEMENTED YET
-Schematic: Main schematic window for drawing, editing and running Power System simulations.
-Database: Tabular data display for object or list of selected objects. NOT IMPLEMENTED YET
*Implementation of Delete schematic components function. Fix some registration bugs and improvement to cut/copy/paste clipboard operations 
*Fix a typo in Trafo's SQL statement (introduced with new parameter functions)
Extend trial version until the end of 2014
*funciones getParameterInfo y setParameterInfo para los elementos:
GeneratorCHP/GeneratorDG/GeneratorEO/GeneratorPV/Line/LineDC/Load/SVC/Trafo/ThreeWindingTrafo/UPFC
pequeñas modificaciones en ndb_branch
*Branch operational voltages were not correctly displayed in frames because calculation routines didn't call the right "set" function
*Various fixes to multinodal power exchange (OPFBEMD): Frame was creating an ugly exception when 2nd participant had fewer offer tranches than 1st. Visual frame was loaded into memory and calculations performed for "all periods" but it wasn't show. So it has been disabled. Now it wont crash if the specific sub-directory "results/BEMD/" didn't exist. It was also implemented calculate() method in its own thread.
*Fix a potential SQL exception when closing MDE connection when storing solution
*Fix to Agreeement savedatabase method: Safe call to Savedatabase to avoid "empty string" SQL exception
*More fixes to the tree update function: Updates tree for a new schematic. Fix a possible exception if the user entered data to the table headers (groups)
*Fix some obscure "Paste" bug: Call the right addcomponent function
*Unification of Open Schematic-database-example code. Deprecates old simple dialog actions because it duplicated the open schematic procedure in 2 very different parts of the code.
*Important updates: Update to ParameterInfo functions: Agreement, Busbar, Caption, Injection. Fix some bugs: A new GeneratorCHP was impossible to create. GeneratorCHP frame had incorrect labels. More utils refactor
*Fix some Agreement frame bug: All components with same name were added to the agreement collection until an index out of bounds error occurred. Additionally, Text was mixed up with Name. Agreement's new ParameterInfo also included
*Refactor utils to its own package. Some fixes and refactor in preparation for 3.3 version. Some minor VSI changes
*DeepEdit 3.3 GUI. Includes new library SwingX (for table tree). Pending overriding get-set parameter functions, hide temporal windows, complete functions of new Windows, complete database viewer.