Thursday, November 8, 2012

NetBeans IDE 7.3 Beta 2 - Find Usages

NetBeans 7.3 Beta 2 has been released earlier today. You will find more information here: NB 7.3 beta 2 Release Information

One of the most usable improvements I found is the way how results are displayed/ordered in Find Usages Logical View.

In earlier versions it was quite hard to find what are you looking for. Attempting to get usages of a method having common name such as init(), setHandler() or run() might return hundreds of results. The only way to figure out a location of a file where usage occurred was to place a mouse over a file name and wait for a tooltip to display.



Find Usages - Logical View is way better organized in NetBeans IDE 7.3 Beta 2.



One can easily disregard usages of run() method in EZComponents or Zend Framework and focus on desired components.

Hopefully this change will find it's way to Refactoring - Logical View in final NetBeans IDE 7.3 release.

Wednesday, July 25, 2012

NetCAT

I am astonished!  Over 40 issues I reported during NetCAT 7.2 where resolved and included in the latest NetBeans 7.2 release!

In total NetCAT team reported 1019 bugs of which 37% was resolved. Awesome work done by the NetBeans developers and QE engineers.


184465Opening of npss file may block AWT
184669java.util.MissingResourceException: Can't find resource for bundle org.openide.util.NbBundle$PBundle, key org.openide.actions.PopupAction
201257InternalError: processing event: -1
203427[71cat] IndexOutOfBoundsException: Invalid line index=600 >= lineCount=1
203827Minimize TextLayout creation and processing to improve performance
2048184s - ToolbarPool$Folder.createInstance may block in waitFinished()
207247[71cat] NullPointerException at org.netbeans.modules.php.editor.nav.DeclarationFinderImpl.getReferenceSpan
207402[71cat] IllegalArgumentException: Parameter file was not normalized. Was /.. instead of /
207991Large project hangs Netbeans 7.1 indefinitely.
208322[71cat] NullPointerException at org.netbeans.modules.versioning.core.api.VCSFileProxy.createFileProxy
208623[71cat] NullPointerException at org.netbeans.modules.versioning.DelegatingVCS$DelegatingHistoryProvider.getHistory
208652Infinite loop in DirectMergeContainer
208774IllegalArgumentException: Comparison method violates its general contract!
208788IllegalStateException: startCreationOffset=694 > matchOffset=683
208931Error when changing text.
209019StringIndexOutOfBoundsException: String index out of range: 0
209327ClassCastException: javax.swing.JLabel cannot be cast to javax.swing.JMenuItem
209460NullPointerException at com.mysql.jdbc.ConnectionImpl.registerStatement
209556NullPointerException at org.netbeans.modules.subversion.ui.repository.Repository.onSelectedRepositoryChange
209594UnsupportedOperationException: Not supported yet.
209665NullPointerException at org.netbeans.modules.bugtracking.spi.BugtrackingFactory.getIssueImpl
209670NullPointerException at javax.swing.BoxLayout.preferredLayoutSize
210058NullPointerException at org.netbeans.modules.subversion.ui.commit.CommitAction$5.getCopiedFromFile
210415NullPointerException at org.netbeans.modules.editor.lib2.view.DocumentView.updateStartEndOffsets
210502AssertionError: profile
210596NullPointerException at org.tigris.subversion.svnclientadapter.javahl.AbstractJhlClientAdapter.getInfo
210628java.util.ConcurrentModificationException at java.util.AbstractList$Itr.checkForComodification
210767StringIndexOutOfBoundsException: String index out of range: 803
210976StringIndexOutOfBoundsException: String index out of range: 399
211002IllegalArgumentException: Parameter file was not normalized. Was ../../../../usr/share/php/PHPUnit instead of /usr/share/php/PHPUnit
211425java.util.ConcurrentModificationException at java.util.ArrayList$Itr.checkForComodification
211439Throwable: Using stale writer, possibly forgotten call to store, old owner Thread Thread[RepositoryUpdater.worker,1,system], new owner Thread Thread[AWT-EventQueue-0,6,IDE Main] .
211744IllegalStateException: No instance data can be specified.
211759AssertionError at org.netbeans.modules.csl.editor.hyperlink.GoToSupport.getIdentifierSpan
212120Cannot merge changes from the trunk into working copy
212237IllegalStateException: Somebody changed internal state meanwhile! Expected: Inited: false Thread: Thread[org.netbeans.modules.project.ui.ProjectTab,1,system] InProgress: true MustNotify: false Entries
212246IllegalStateException: Somebody changed internal state meanwhile! Expected: Inited: true Thread: Thread[AWT-EventQueue-0,6,IDE Main] InProgress: true MustNotify: false Entries: 0; vis. entries: 0; Inf
212278ClassCastException: [Lorg.openide.nodes.Node; cannot be cast to [Lorg.netbeans.modules.csl.navigation.ElementNode;
212431IllegalStateException: Problem in some module which uses Window System: Window System API is required to be called from AWT thread only, seehttp://core.netbeans.org/proposals/threading/
213434NullPointerException at org.netbeans.modules.html.editor.completion.HtmlCompletionProvider$DocQuery.doQuery
213441NullPointerException at org.netbeans.modules.search.ui.MatchingObjectNode.setInvalidOriginal


The NetBeans 7.2 is available for download here.

Thursday, January 19, 2012

The NetBeans IDE: PHP 5.4 Support: Array Dereferencing

PHP 5.4 support is available in the NetBeans IDE development builds.

To get PHP 5.4 features available in the existing project go to Project Properties -> Sources -> PHP Version and select PHP 5.4. When creating a new project using New Project Wizard select PHP version from the drop-down menu on the second screen Name and Location.



You can find more on array dereferencing in RFC on PHP Wiki

class MyCollection
{

    public function doSomething()
    {
        
    }

}

class ArrayDereferencing
{

    /**
     *
     * @var MyCollection[]
     */
    private $myCollection = array();

    /**
     *
     * @return MyCollection[]
     */
    public function getCollection()
    {
        return $this->myCollection;
    }

    public function getElementAndDoSomething($index)
    {
        return $this->getCollection()[$index]->doSomething();
    }

}
Code completion in the NetBeans PHP Editor:

Ondrej Brejla in the article PHP 5.4 Support: Array Dereferencing on Oracle blog called user to test new PHP 5.4 features and file (component PHP, subcomponent Editor) any issues found.