Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gradle build version of insight #1

Merged
merged 29 commits into from
Mar 21, 2019
Merged

Gradle build version of insight #1

merged 29 commits into from
Mar 21, 2019

Conversation

rgozim
Copy link
Member

@rgozim rgozim commented Feb 28, 2019

Requires testing on multiple OS's and on a server account with plenty of data.

Prerequisites to test:

  1. install gradle on your system (via homebrew if mac, via sdkman if linux)

Build and run insight:

  1. cd omero-insight
  2. gradle run
  3. Check that insight works as before, no icons missing etc.

Build insight:

  1. cd omero-insight
  2. gradle build
  3. A build directory should be visible
  4. Go to the distributions folder
  5. Unzip omero-insight.zip
  6. cd omero-insight
  7. Run bin/omero-insight
  8. Now run bin/omero-insight containerImporter.xml. Check that the importer starts

insight-ij

  1. Unzip omero-insight-imagej.zip
  2. Copy the directory to Fiji/plugins
  3. Check that you can connect to OMERO.

@joshmoore
Copy link
Member

Re-opening for travis status.

@joshmoore joshmoore closed this Feb 28, 2019
@joshmoore joshmoore reopened this Feb 28, 2019
Copy link
Member

@jburel jburel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

first round

build.gradle Outdated Show resolved Hide resolved
build.gradle Outdated Show resolved Hide resolved
build.gradle Outdated Show resolved Hide resolved
@jburel
Copy link
Member

jburel commented Mar 1, 2019

run { args = ["container.xml", "${project.buildDir}"] }
This means that we will not be able to run the importer.
What about insight as ImageJ, we will need another distribution

@jburel
Copy link
Member

jburel commented Mar 1, 2019

we will also need to be able to create executable

@jburel
Copy link
Member

jburel commented Mar 1, 2019

I have not been able to connect to any server using the run command
It is looking for ice.config when attempting to connect org.openmicroscopy.shoola.env.data.OMEROGateway.connect(OMEROGateway.java:1448). This should not be necessary

@jburel
Copy link
Member

jburel commented Mar 13, 2019

@rgozim: gradle build and gradle test should now work

@jburel jburel force-pushed the develop branch 2 times, most recently from 74787d9 to 793c2a4 Compare March 14, 2019 21:57
@jburel jburel changed the title Gradle build version of insight WIP: Gradle build version of insight Mar 18, 2019
@pwalczysko
Copy link
Member

pwalczysko commented Mar 18, 2019

Crashed insight (after building it using the build steps, unzipping etc.) via drawing three ROIs on an idr0021 image (trainer-1 on outreach), saving them. Then, reopened the ROI drawing tool and tried to delete one of those ROIs. Full crash of insight ensued.

this Bug is

  • repeatable
  • it IS a regression (5.4.10 release insight with the same workflow, even on the same server and the very same image is performing as expected)
java.lang.Exception: Abnormal termination due to an uncaught exception.
java.lang.IllegalArgumentException: node must be a TreeTableNode managed by this model
	at org.jdesktop.swingx.treetable.DefaultTreeTableModel.isLeaf(DefaultTreeTableModel.java:312)
	at javax.swing.plaf.basic.BasicTreeUI.paint(BasicTreeUI.java:1185)
	at com.apple.laf.AquaTreeUI.paint(AquaTreeUI.java:129)
	at javax.swing.plaf.ComponentUI.update(ComponentUI.java:161)
	at javax.swing.JComponent.paintComponent(JComponent.java:780)
	at javax.swing.JComponent.paint(JComponent.java:1056)
	at org.jdesktop.swingx.JXTreeTable$TreeTableCellRenderer.paint(JXTreeTable.java:3053)
	at javax.swing.CellRendererPane.paintComponent(CellRendererPane.java:151)
	at javax.swing.plaf.basic.BasicTableUI.paintCell(BasicTableUI.java:2115)
	at javax.swing.plaf.basic.BasicTableUI.paintCells(BasicTableUI.java:2016)
	at javax.swing.plaf.basic.BasicTableUI.paint(BasicTableUI.java:1812)
	at javax.swing.plaf.ComponentUI.update(ComponentUI.java:161)
	at javax.swing.JComponent.paintComponent(JComponent.java:780)
	at javax.swing.JComponent.paint(JComponent.java:1056)
	at javax.swing.JComponent.paintToOffscreen(JComponent.java:5210)
	at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1579)
	at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1502)
	at javax.swing.RepaintManager.paint(RepaintManager.java:1272)
	at javax.swing.JComponent._paintImmediately(JComponent.java:5158)
	at javax.swing.JComponent.paintImmediately(JComponent.java:4969)
	at javax.swing.RepaintManager$4.run(RepaintManager.java:831)
	at javax.swing.RepaintManager$4.run(RepaintManager.java:814)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:789)
	at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:738)
	at javax.swing.RepaintManager.access$1200(RepaintManager.java:64)
	at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1732)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
	at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:184)
	at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:229)
	at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:227)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:227)
	at java.awt.Dialog.show(Dialog.java:1084)
	at java.awt.Component.show(Component.java:1673)
	at java.awt.Component.setVisible(Component.java:1625)
	at java.awt.Window.setVisible(Window.java:1014)
	at java.awt.Dialog.setVisible(Dialog.java:1005)
	at org.openmicroscopy.shoola.util.ui.MessengerDialog.setVisible(MessengerDialog.java:824)
	at org.openmicroscopy.shoola.util.ui.UIUtilities.centerAndShow(UIUtilities.java:577)
	at org.openmicroscopy.shoola.env.ui.UserNotifierImpl.showErrorDialog(UserNotifierImpl.java:197)
	at org.openmicroscopy.shoola.env.ui.UserNotifierImpl.notifyError(UserNotifierImpl.java:289)
	at org.openmicroscopy.shoola.env.ui.UserNotifierImpl.notifyError(UserNotifierImpl.java:257)
	at org.openmicroscopy.shoola.agents.measurement.view.MeasurementViewerUI.handleROIException(MeasurementViewerUI.java:1123)
	at org.openmicroscopy.shoola.agents.measurement.view.MeasurementViewerUI.removeROI(MeasurementViewerUI.java:985)
	at org.openmicroscopy.shoola.agents.measurement.view.MeasurementViewerControl.figureRemoved(MeasurementViewerControl.java:601)
	at org.jhotdraw.draw.AbstractDrawing.fireFigureRemoved(AbstractDrawing.java:226)
	at org.jhotdraw.draw.AbstractDrawing.remove(AbstractDrawing.java:142)
	at org.jhotdraw.draw.AbstractDrawing.removeAll(AbstractDrawing.java:96)
	at org.jhotdraw.draw.DefaultDrawingView.delete(DefaultDrawingView.java:835)
	at org.jhotdraw.app.action.DeleteAction.actionPerformed(DeleteAction.java:48)
	at org.jhotdraw.draw.AbstractTool.keyPressed(AbstractTool.java:224)
	at org.jhotdraw.draw.SelectionTool.keyPressed(SelectionTool.java:67)
	at java.awt.AWTEventMulticaster.keyPressed(AWTEventMulticaster.java:250)
	at java.awt.Component.processKeyEvent(Component.java:6493)
	at javax.swing.JComponent.processKeyEvent(JComponent.java:2832)
	at java.awt.Component.processEvent(Component.java:6312)
	at java.awt.Container.processEvent(Container.java:2236)
	at java.awt.Component.dispatchEventImpl(Component.java:4891)
	at java.awt.Container.dispatchEventImpl(Container.java:2294)
	at java.awt.Component.dispatchEvent(Component.java:4713)
	at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1954)
	at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:806)
	at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1074)
	at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:945)
	at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:771)
	at java.awt.Component.dispatchEventImpl(Component.java:4762)
	at java.awt.Container.dispatchEventImpl(Container.java:2294)
	at java.awt.Window.dispatchEventImpl(Window.java:2750)
	at java.awt.Component.dispatchEvent(Component.java:4713)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.awt.EventQueue$4.run(EventQueue.java:729)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Abnormal termination due to an uncaught exception.
java.lang.IllegalArgumentException: node must be a TreeTableNode managed by this model
	at org.jdesktop.swingx.treetable.DefaultTreeTableModel.isLeaf(DefaultTreeTableModel.java:312)

@joshmoore joshmoore self-assigned this Mar 18, 2019
@jburel
Copy link
Member

jburel commented Mar 18, 2019

@pwalczysko the problem should now be fixed. Could you try it again?

@pwalczysko
Copy link
Member

pwalczysko commented Mar 18, 2019

@jburel Re #1 (comment) - I can confirm the fix of the problem - all works as expected as re-tested 10 minutes ago

@pwalczysko
Copy link
Member

Screen Shot 2019-03-18 at 16 26 30

When trying to connect to eel. Expected ?

@jburel
Copy link
Member

jburel commented Mar 18, 2019

@pwalczysko thanks i need to check the version

@pwalczysko
Copy link
Member

Cannot find any more bugs today. We did not do any testing on Linux yet.

@jburel
Copy link
Member

jburel commented Mar 18, 2019

@pwalczysko The version checked is done at the Java gateway level when insight tries to connect
ExperimenterData exp = omeroGateway.connect(cred);
see https://github.com/ome/omero-blitz/blob/master/src/main/java/omero/gateway/Gateway.java#L1138
cc @dominikl

@mtbc
Copy link
Member

mtbc commented Mar 19, 2019

I've guessed it's the same issue as why we have to disable omero.web.check_version. In the Java Gateway as @jburel points to I've been hacking clientVersion to be null to be able to run integration tests.

@dominikl
Copy link
Member

I don't get it, why is the build 5.4.10 and not 5.5.0-m_something ?

@joshmoore
Copy link
Member

/opt/omero-insight $gradle properties | grep version
version: unspecified

@pwalczysko
Copy link
Member

HEAD is now at df8908b... remove version check. Move to Java gateway
[pwalczysko@ls31619 ~/Work/omero-insight]$ gradle run

Screen Shot 2019-03-20 at 12 36 32

@jburel
Copy link
Member

jburel commented Mar 20, 2019

@pwalczysko the version check that was in insight is no longer needed since the check is happening at the gateway level. It does not solve the problem. Sorry I should have been clearer in the commit message

@pwalczysko
Copy link
Member

pwalczysko commented Mar 20, 2019

I have some discrepancy in the script menu. When connected to nightshade.

Insight

Screen Shot 2019-03-20 at 13 22 38

but web knows nothing about "mero" script
Screen Shot 2019-03-20 at 13 22 48

Either this script is really there, but then, what is that script doing there ? (do not dare to execute) and Why does web not show it ?
Or, the script is not there, and insight shows bogus ?

Edit: This is nothing to do with the PR, the release insight shows the same script menu.

@pwalczysko
Copy link
Member

@pwalczysko
Copy link
Member

Went today through all the icons and insight workflows including

  • search
  • filtering
  • RHP annotations
  • screens
  • full viewer
  • admin panel
  • metadata
  • downloads

Did the ROI tool previously.

All on Mac. How pressing is the Linux test ?

@joshmoore
Copy link
Member

@pwalczysko : if you are otherwise happy, I'd propose that that suffices for m1. I'm concerned about the version issue (how are you connecting to the server?) but if we can get that fixed, I'd propose we go ahead and get this PR merged and released and iterate from there.

@joshmoore
Copy link
Member

A heads up that I'm force pushing the current branch in order to resurrect the ant build in case it's needed for M2.

@joshmoore
Copy link
Member

Travis is green again.

@jburel jburel changed the title WIP: Gradle build version of insight Gradle build version of insight Mar 20, 2019
@jburel
Copy link
Member

jburel commented Mar 21, 2019

Travis is green
Merging and tagging m1

@jburel jburel merged commit 47e40da into ome:master Mar 21, 2019
jburel referenced this pull request in jburel/omero-insight Sep 17, 2019
snoopycrimecop pushed a commit to snoopycrimecop/omero-insight that referenced this pull request Jan 20, 2022
snoopycrimecop pushed a commit to snoopycrimecop/omero-insight that referenced this pull request Feb 3, 2023
check the visibility of the component
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants