Author Topic: PixInsight Core 1.0.45.337 / PCL 1.0.24.141 *** First 1.0 Release Version ***  (Read 18995 times)

Offline Juan Conejero

  • PTeam Member
  • PixInsight Jedi Grand Master
  • ********
  • Posts: 7111
    • http://pixinsight.com/
Hi all,

I am excited to announce that today we have uploaded the first release version of the PixInsight Platform: it is PixInsight Core 1.0.45.337 (note the absence of a release candidate suffix ;) ) and PCL 1.0.24.141:

http://pixinsight.com/download/STD/

It has been (even) harder than expected: numerous bugs have been fixed, some of them particularly difficult, and many improvements have been made to the platform, especially to the core application. I hope this version is really stable and works well on all platforms.

Main Bug Fixes

Below is a partial list with just the most important bug fixes.

* Processing history (all platforms): Fixed a severe bug that was causing memory leaks and general corruption when a processing history contained some process instances that don't modify  the image and the user jumped repeatedly throughout the processing sequence. A consequence of this bug was that some temporary swap files were not deleted, even after closing the corresponding image.

* PSM Management (all platforms): Fixed a bug that prevented PSM files from being correctly saved when the Backup PSM Files option was enabled in Preferences (discovered by Thomas W. Earle).

* PSM Management (all platforms): Fixed a bug that was causing bogus "out of memory" errors when saving PSM files that contain large user-defined information texts.

* Screen renditions (Windows only): Fixed a bug that was causing incorrectly refreshed image windows when the topmost window was iconized.

* PCL (all platforms): Fixed a bug in the NumericEdit and NumericControl classes that was causing incorrect behavior of edit controls associated to integer process parameters. An example is the DynamicCrop interface, where the user wasn't able to change crop dimensions by less than two pixels by typing new values in the width and height edit controls.

* PCL (all platforms):  Fixed a bug that was causing incorrect transformations to the grayscale color space on multiprocessor machines.

* Edit controls (all platforms): Fixed a regression that prevented edit controls from capturing the keyboard focus when the user clicked them and their parent windows were inactive.

* Core application, previews (all platforms): Fixed a bug that was preventing previews from being correctly restored before applying processes that don't modify pixels. This was causing incorrect behavior of Deconvolution when applied to preview deringing masks.

* Core application, maximization limit functionality (all platforms): Fixed a bug that was changing the maximization limit incorrectly when the main application window was restored and maximized.

* Core application, dialogs (all platforms, mostly Linux): Fixed numerous issues with dialogs of incorrect sizes and clipped texts, as well as resizable dialogs that must be fixed-size in one or both dimensions.

* Core application, icons (all platforms): Fixed numerous issues with improperly sized icons, especially the icons associated to Screen Transfer Functions, which were too large. Also redesigned several icons that were too old-fashioned, especially the undo/redo icons.

* JavaScript Runtime (all platforms): Fixed a bug that was causing the Image.crop and Image.rotate methods to ignore sample values to fill alpha channels of uncovered image regions.

* Standard scripts (all platforms):: Fixed a bug in the BatchFormatConversion sample script that prevented it from working at all.

Main Changes and Improvements

* Integration of Qt 4.3.2 (Linux and Windows). This version fixes numerous minor bugs and potential problems in all platforms.

* New automatic reset of settings when a new version is installed. Now the core application shows an initial dialog box when a version change is detected. On this dialog the user can select several options to install new modules, new scripts, and even to perform a complete reset of settings and preferences. This helps in adapting to new versions with minimal losses of personal preferences and customizations.

* New behavior of file dialogs. Now the core application saves the states of most file dialogs and remembers them across sessions. This includes the size and position of dialogs, their last visited directory, their viewing mode (icons or detailed info), and the contents of their side bars (selected directories, etc).

* Changes in the Window > Cascade Windows function. Now when windows are cascaded they no longer change their zoom levels to fit on the screen. However, if you press the Control key while selecting Window > Cascade Windows from the main menu, the old behavior (windows fitted) is reproduced.

* Workspace: Improved maximization limit functionality. Now when you open an image its window fits itself to the available workspace so that it never exceeds the maximization limit. This guarantees that if you place your icons to the right of the maximization limit, their won't be covered by opened images. This is a great improvement.

* PCL: Improved CanvasColor class. Now CanvasColor accepts an extra sample value (a fourth value) to fill active alpha channels of uncovered image regions. This is relevant to the Crop and Rotation PCL classes.

* Crop, DynamicCrop and Rotation standard processes: (consequence of the previous addition) Now these processes allow you to define sample values to fill active alpha channels of uncovered image regions after canvas expansion or rotation.

* Deconvolution standard process: Now the deringing support can be generated using manual clipping and midtones balance settings. This is much more easy-to-use and accurate than the old method based on the STF of the target view. On the other hand, the old STF-based method was a violation of the platform's object oriented design. It's still available, though, mainly for compatibility reasons, but the manual method is now used by default. A tutorial on deconvolution of linear deep-sky images is in order and will be available very soon.

* New actions for easy extraction of image channels: Now you can extract channels quickly and easily with the new Image > Extract actions. This includes extracting the luminance and individual RGB channels with a simple click.

* New Edit > Restore Don't Show Again Messages menu option. This option restores all messages that include a "don't show again" or "don't ask anymore" check box, in case you have checked some of them.

* JavaScript Runtime: new methods and properties:

Code: [Select]
ProcessContainer View.processing
ProcessContainer View.initialProcessing


These read-only properties return the processing histories associated with a view. The returned ProcessContainer instances are independent instances that contain clones of the original objects and are not linked to them.

Code: [Select]
uint View.historyIndex

Represents the current index in a view's processing history (read/write). This property can be changed arbitrarily to navigate throughout the entire processing history of an image. It requires image modification privileges as per global security settings.

Code: [Select]
Boolean View.canGoBackward
Boolean View.canGoForward


These read-only utility properties are true when the current processing history index can be moved in the corresponding directions.

Code: [Select]
void ImageWindow.go( uint index )

This method can be used to navigate throughout the processing history of the main view of an image window. The same can be done by assigning new values to ImageWindow.mainView.historyIndex. Requires image modification privileges.

Code: [Select]
void ImageWindow.purge()

This method has been refactored. It deletes all swap files associated with an image window. This operation cannot of course be undone, and requires image modification privileges.

Note that calling purge() does not clear the modification counter of an image. In order to suppress all user confirmation messages when closing a modified image, the entire processing history must be undone before purge():

Code: [Select]
var w = new ImageWindow;
// ...
w.undoAll();
w.purge(); // no message boxes on modified pixel data, etc


Code: [Select]
void ImageWindow.undo( [uint n=1] )
void ImageWindow.undoAll()


These methods can be used to navigate backward through a main view's processing history. The same can be done by decreasing ImageWindow.mainView.historyIndex. Requires image modification privileges.

Code: [Select]
void ImageWindow.redo( [uint n=1] )
void ImageWindow.redoAll()


These methods can be used to navigate forward through a main view's processing history. The same can be done by increasing ImageWindow.mainView.historyIndex. Requires image modification privileges.

* New experimental support for Qt Style Sheets. *Warning* This is still experimental functionality. This option is selectable on Preferences, Style Sheet & Special GUI Effects section. For more information, please visit this link:

http://doc.trolltech.com/4.3/stylesheet.html

With Qt style sheets you can customize the entire PixInsight platform exhaustively. However, this is a complex topic that still requires a lot of work. We'll keep you informed.

*************************

There are lots of minor new features and improvements, which would make this announcement too long. All will be properly explained in the documentation.

Enjoy it!
Juan Conejero
PixInsight Development Team
http://pixinsight.com/

Offline C. Sonnenstein

  • PixInsight Addict
  • ***
  • Posts: 262
    • http://astrosurf.com/astro35mm
Magnífico trabajo Juan, te felicito.
Carlos Sonnenstein