.. py:currentmodule:: mhi.pscad ======= Changes ======= ------------------- What's New in 2.8.4 ------------------- * added :meth:`.PSCAD.wait_for_idle` after launch, to allow loading of a prior workspace to complete if "Reload the last session" is present in the user profile. * added `load` option to :meth:`mhi.pscad.launch` to automatically load a workspace, or individual projects & libraries at startup. ------------------- What's New in 2.8.3 ------------------- * Fixed bug preventing :meth:`.UserCmp.blackbox` working in PSCAD 5.0.1 ------------------- What's New in 2.8.2 ------------------- * Removed `f"{strings"}` to restore Python 3.5 compatibility. * Fixed incorrectly escaped characters. ------------------- What's New in 2.8.1 ------------------- * New :meth:`.PSCAD.save_settings` method. * New :attr:`.PSCAD.parameter_grid` attribute for viewing, loading and saving the parameter grid. * New :attr:`Project.global_substitution` attribute for loading and saving substitutions sets. * New :attr:`Component.enabled` attribute. * Allow :meth:`.Project.save_as` to a path in PSCAD 5.0.2 * Fixed bug preventing reading of ProductList.xml. ------------------- What's New in 2.8.0 ------------------- * New :meth:`.Project.compile_library` method. * :attr:`.UserCmp.definition` is now read/write. Setting a new definition is equivalent to specifying a new definition using "Edit Reference ..." in the PSCAD GUI. * New :meth:`.Definition.parameters` method. * New :attr:`.Definition.instances` attribute. * New :meth:`.OutFile.values_at` method. * Fixed bug causing ``RealCodec`` to sometimes return the Python ``str`` class. * :meth:`.Project.create_definition` now also accepts an `ElementTree.Element`. * Fixed bug preventing project bitfield parameters from being set. ------------------- What's New in 2.7.2 ------------------- * In PSCAD 5.1, :meth:`.Project.save_as` can save the project to a directory other than the project's current directory. In PSCAD 5.0, a filename with a path may be given instead of just a new project name, but it must resolve to the current project directory. * Minor documentation improvements ------------------- What's New in 2.7.1 ------------------- * `cl_use_advanced` may once again be set to `True` or `False` and be queried via :meth:`.PSCAD.settings`. * :meth:`.PSCAD.get_certificate` properly switches to from lock-based to certificate licensing. ------------------- What's New in 2.7.0 ------------------- * :meth:`.UserCmp.blackbox` accepts `x`, `y`, `sub_prefix` & `instance_data` parameters. * New :meth:`.UserCmp.blackbox_defn` method. ------------------- What's New in 2.6.0 ------------------- * New :meth:`.PSCAD.cases` and :meth:`.PSCAD.libraries` methods. * :meth:`.Project.parameters` accept and return boolean flags for project settings, in place of `Advanced`, `Build`, `Check`, `Debug`, `Options` and `Warn` bit-encoded integers. ------------------- What's New in 2.5.1 ------------------- * :class:`~.mhi.pscad.utilities.mail.Mail` methods * take lists for `recipients` and `attachments`, * automatically resolve attachment filenames to absolute pathnames, * use the log facility instead of printing to the console, * no longer suppress exceptions ------------------- What's New in 2.5.0 ------------------- * Added :attr:`~.UserDefnWizard.module` property to :class:`.UserDefnWizard` ------------------- What's New in 2.4.1 ------------------- * `PlotType` parameter in :meth:`Project.parameters()` now accepts `"NONE"`, `"OUT"`, `"PSOUT"` and the aliases `"NO"`, `"LEGACY"` and `"ADVANCED"` instead of yes/no options (`0`, `1`, `False`, `True`, `"NO"`, and `"YES"`). ------------------- What's New in 2.4.0 ------------------- * `extra_args` option added to :meth:`mhi.pscad.launch()` ------------------- What's New in 2.3.4 ------------------- * `mhi.common` dependency updated. ------------------- What's New in 2.3.3 ------------------- * Documentation updates. * `mhi.common` dependency updated. ------------------- What's New in 2.3.2 ------------------- * Minimum number of rows/columns when writing table parameters reduced from 2 to 1. * Added :meth:`.Canvas.selection` to retrieve selected components. * Added :meth:`.Project.current_canvas` to retrieve currently focused canvas. * Support setting Integer/Real parameters with context_type of 'Variable' or 'Constant' to variable names. ------------------- What's New in 2.3.1 ------------------- * License attribute has been added for `pip show` commands. * Added support for reading and writing table parameters, such as the ``datatable`` of the ``master:xy_table`` component. ------------------- What's New in 2.3.0 ------------------- * `mhi.pscad.common` has been moved to an external dependency: `mhi.common`. * `mhi.pscad.application.*` has been flatten to `mhi.pscad.*`. ------------------- What's New in 2.2.2 ------------------- * Fixed :meth:`.Project.settings` to accept full range of values for bitmask parameters (``Advanced``, ``Build``, ``Check``, ``Debug``, and ``Options``) and not return or accept removed parameters. * Fixed :meth:`.Canvas.settings` to no longer accept or return removed parameters. Added missing documentation. ------------------- What's New in 2.2.1 ------------------- * New Classes & Methods :meth:`.PSCAD.substitute` :attr:`.PSCAD.workspace_dir` :attr:`.PSCAD.workspace_name` :attr:`.PSCAD.workspace_path` ------------------- What's New in 2.2 ------------------- * New Classes & Methods :class:`.UserDefnWizard` :class:`.GfxCanvas` :meth:`.Definition.graphics` :attr:`.Definition.script` ------------------- What's New in 2.1.1 ------------------- * New Classes & Methods :meth:`.PSCAD.release_all_certificates` :meth:`.PlotFrame.create_curve` :meth:`.PlotFrame.create_curves` :class:`.Oscilloscope` :class:`.PhasorMeter` :class:`.PolyMeter` ----------------- What's New in 2.1 ----------------- Summary ======= * New namespace :mod:`mhi.pscad` replaces `mhrc.automation` * Embedding of Python inside PSCAD * An external Python environment is no longer required. Python scripts may be executed from within the PSCAD application itself. External execution of scripts remains supported, and remains essential for debugging. * Communication with PSCAD is no longer using XML fragments * Commands returning XML fragments as results have been removed Deprecated Methods ================== * The `Workspace`, `KeyStroke` and `Mouse` proxies have been removed; and their methods moved into the :class:`PSCAD ` class. * All commands which returned XML fragments from the communication protocol between PSCAD and the Automation Library have been removed, since that communication protocol has been replaced.