Development Log in January 2016.

  • GNAT Pro | GPS | GNATbench
    Jan 26th, 2016

    GPS: “Find all references” finds overridden
    The action "find all references" on an entity now includes by default all the entities overriding it, all entities it overrides, and all entities overriding the entities it overrides.

  • GNAT Pro | GPS | GNATbench
    Jan 26th, 2016

    GPS: “Find all references” finds overridden
    The action "find all references" on an entity now includes by default all the entities overriding it, all entities it overrides, and all entities overriding the entities it overrides.

  • GNAT Pro | GPS | GNATbench
    Jan 25th, 2016

    GPS: rename build targets from the GUI
    It is now possible to rename targets directly in the Target Configuration dialog: double-click on a target name in the tree to give it a new name.

  • GNAT Pro | GPS | GNATbench
    Jan 25th, 2016

    GPS: rename build targets from the GUI
    It is now possible to rename targets directly in the Target Configuration dialog: double-click on a target name in the tree to give it a new name.

  • GNAT Pro
    Jan 22nd, 2016

    Remove transitive dependencies from limited_withs
    Compiler does not create dependencies on units named in the context of a unit that appears in a limited_with clause, to minimize recompilation of systems involving large numbers of mutually dependent package declarations.

  • GNAT Pro | GPRbuild
    Jan 20th, 2016

    GPRbuild distributed slave error messages
    Now GPRbuild gives a clearer error messages when it cannot connect to a specific slave. The slave machine is given in the error message.

  • GNAT Pro
    Jan 20th, 2016

    Improved exception message for Host_Error
    The exception message for occurrences of GNAT.Sockets.Host_Error now mention the host name or address that caused the error.

  • GNAT Pro | GPS | GNATbench
    Jan 19th, 2016

    ECL: AJIS examples integration
    AJIS (17.0.20151202w or later) contains GNATbench examples that can be imported/built/run in GNATbench without modifications.

  • GNAT Pro | GPRbuild
    Jan 18th, 2016

    GPRslave can now be pinged
    Now GPRslave will respond to a ping command and returns some information (version, UTC time, hash) about the slave if running. This can be used by application for checking available slaves.

  • GNAT Pro | GPRbuild
    Jan 18th, 2016

    GPRbuild distributed environment consistency
    A new option (--hash) has been added in GPRbuild and GPRslave. The value specified can be used to ensure that the environment is consistent on both sides.

  • GNAT Pro
    Jan 17th, 2016

    Interfaces.C.char fully compatible with C’s char
    The Interfaces.C.char type is now fully compatible with the 'char' type of the C and C++ languages for all targets using the GCC code generator.

  • GNAT Pro | GPRbuild
    Jan 12th, 2016

    GPRbuild distributed ignore Mercurial metadata
    The Mercurial metadata directory has been added into the excluded patterns by default.

  • GNAT Pro | GPS | GNATbench
    Jan 11th, 2016

    GPS: Rewrite version control support
    The full support for version control has been rewritten from scratch. It replaces the old VCS Explorer and VCS Activities views with a new set of views. Existing python plug-ins that use the GPS.VCS python API will need to be rewritten. The new API in GPS.VCS2 is however more flexible, providing more control to the plug-in, and making it easier to add vcs-specific actions. * Multiple version control systems can be used within the loaded project tree (so you can have an imported project using svn when your main project uses git, for instance, or multiple git repositories) * The Project and Files views show the status for files (modified, staged for commit,...) * The new Commits view shows at all points in time the current status of files, and let's you stage some of them to be part of the next commit (or, of course, remove them from the next commit). You can then easily do the commit from there. If you are using git, you can instead chose to amend the previous commit. * The new History view shows the set of commits done in the repository in the past, along with a graphical diagram showing how branches were created or joined. This makes it easier to understand how the commits relate to each other. A unique collapsed view makes it possible to show only branch-related commits (so a simplified version of the history that hides, in the diagram, all the simple commits). * The new Branches view lets you view and switch all existing branches, create new branches or delete branches. If you are using git, you can also apply view stashed commits. * Support has been added to execute special VCS operations when a file needs to be made writable (needed for clearcase for instance). * All VCS operations are now performed much more efficiently, so getting the status for instance is almost instantaneous on most working directories.

  • GNAT Pro | GPS | GNATbench
    Jan 11th, 2016

    GPS: rewrite version control support
    The full support for version control has been rewritten from scratch. It replaces the old VCS Explorer and VCS Activities views with a new set of views. Existing python plug-ins that use the GPS.VCS python API will need to be rewritten. The new API in GPS.VCS2 is however more flexible, providing more control to the plug-in, and making it easier to add vcs-specific actions.

        * Multiple version control systems can be used within the loaded
          project tree (so you can have an imported project using svn when
          your main project uses git, for instance, or multiple git
          repositories)
        * The Project and Files views show the status for files (modified,
          staged for commit,...)
        * The new Commits view shows at all points in time the current status
          of files, and let's you stage some of them to be part of the next
          commit (or, of course, remove them from the next commit). You can then
          easily do the commit from there. If you are using git, you can instead
          chose to amend the previous commit.
        * The new History view shows the set of commits done in the repository
          in the past, along with a graphical diagram showing how branches were
          created or joined. This makes it easier to understand how the commits
          relate to each other. A unique collapsed view makes it possible to
          show only branch-related commits (so a simplified version of the
          history that hides, in the diagram, all the simple commits).
        * The new Branches view lets you view and switch all existing branches,
          create new branches or delete branches. If you are using git, you
          can also apply view stashed commits.
        * Support has been added to execute special VCS operations when a file
          needs to be made writable (needed for clearcase for instance).
        * All VCS operations are now performed much more efficiently, so getting
          the status for instance is almost instantaneous on most working
          directories.
    

  • GNAT Pro
    Jan 6th, 2016

    More consistent output file extensions on VxWorks
    The default output file extension for VxWorks kernel modules (.out) is now enforced using the same mechanisms as the default output file extension for RTPs (.vxe), improving consistency of the default filename computation among the two modes.

  • GNAT Pro | GPS | GNATbench
    Jan 5th, 2016

    GPS: system menus
    On OSX and Unity, GPS is now able to display the menubar outside of the main window. This is disabled by default, since these menus are not able to display tooltips or key shortcuts. They can be enabled via an advanced preference.

  • GNAT Pro | GPS | GNATbench
    Jan 5th, 2016

    GPS: system menus
    On OSX and Unity, GPS is now able to display the menubar outside of the main window. This is disabled by default, since these menus are not able to display tooltips or key shortcuts. They can be enabled via an advanced preference.

  • CodePeer
    Jan 5th, 2016

    Removal of floating point underflow detection
    CodePeer no longer generates messages related to potential floating point underflow when running at -level max. These messages generated too many false positives to be useful in practice. They are left temporarily available under the debug switch "-dbg on fpt_underflow" for compatibility.

  • GNAT Pro | GPS | GNATbench
    Jan 4th, 2016

    GPS: Incompatible changes in Python API
    This section lists changes done in the Python API that are no longer compatible with previous versions of GPS. GPS.*Context removed (2016-01-05)

      All classes related to contexts were merged into a single GPS.Context
      class, which provides the same features as all the others combined. The
      previous names have been left for backward compatibility, but users are
      encouraged to only use GPS.Context from now one. If you script was
      explicitly testing classes ("if isinstance(ctx, GPS.FileContext)"), you
      should instead test whether specific information is available
      ("if ctx.file()").
    
    
    GPS.Toolbar, GPS.Combo, GPS.ToolButton and GPS.Button removed (2016-01-04)
      This class has been removed. Only buttons associated with named actions
      can now be added (See GPS.Action.button). A benefit is that buttons can
      now be added to either the main toolbar or to the local toolbars of the
      various views. GPS can also repeat the main toolbar in every floating
      window. Since actions can also be associated with menus and key shortcuts,
      this also encouraged code reuse.
    
    
    GPS.Menu.create obsolescent (2015-12-01)
      This function is now obsolescent, and its use is discouraged (use
      GPS.Action.menu instead). A temporary version still exists, but will be
      removed in future versions.
      The benefit is that menus are now always associated with named actions,
      which can also be bound to keyshortcuts or toolbar buttons. This encourages
      code reuse, and allows disabling all GUI items related to a given action
      more easily.
    
    
    debugger_breakpoints_changed hook can receive a None debugger (2016-07-12)
      Breakpoints can be set before a debugger is started, but the hook is
      still run. In this case, the debugger parameter is set to None.
    

  • GNAT Pro | GPS | GNATbench
    Jan 4th, 2016

    GPS: Incompatible changes in Python API
    This section lists changes done in the Python API that are no longer compatible with previous versions of GPS. GPS.*Context removed (2016-01-05)

      All classes related to contexts were merged into a single GPS.Context
      class, which provides the same features as all the others combined. The
      previous names have been left for backward compatibility, but users are
      encouraged to only use GPS.Context from now one. If you script was
      explicitly testing classes ("if isinstance(ctx, GPS.FileContext)"), you
      should instead test whether specific information is available
      ("if ctx.file()").
    
    
    GPS.Toolbar, GPS.Combo, GPS.ToolButton and GPS.Button removed (2016-01-04)
      This class has been removed. Only buttons associated with named actions
      can now be added (See GPS.Action.button). A benefit is that buttons can
      now be added to either the main toolbar or to the local toolbars of the
      various views. GPS can also repeat the main toolbar in every floating
      window. Since actions can also be associated with menus and key shortcuts,
      this also encouraged code reuse.
    
    
    GPS.Menu.create obsolescent (2015-12-01)
      This function is now obsolescent, and its use is discouraged (use
      GPS.Action.menu instead). A temporary version still exists, but will be
      removed in future versions.
      The benefit is that menus are now always associated with named actions,
      which can also be bound to keyshortcuts or toolbar buttons. This encourages
      code reuse, and allows disabling all GUI items related to a given action
      more easily.