Ticket #12 (closed feature: fixed)

Opened 10 years ago

Last modified 7 years ago

Redesign scripting infrastructure

Reported by: curtis Owned by: dscho
Priority: critical Milestone: imagej2-b5-scripting
Component: Scripting Version:
Severity: serious Keywords:
Cc: Blocked By: #56, #1026, #1030
Blocking: #1008

Description (last modified by gharris) (diff)

In recent years a wealth of Java-based scripting languages have emerged (Clojure, Javascript, Groovy, Jython, JRuby, Jaskell, etc.). And starting with Java 6, Java includes a  scripting framework for supporting these various languages. ImageJ has traditionally provided scripting through its macro language, but Fiji has added support for other means as well.

We are interested in improving this scripting support—specifically, coupling a redesigned Java API more directly with a scripting framework and ImageJ's macro recorder. This scheme makes it easier to develop scripts by providing more flexibility in how they can be written, as well as the potential to call into existing libraries written in those same scripting languages.

For related discussion, see the " Scripting languages and API" thread on the ImageJ mailing list.
Also see background research at:  Scripting

Change History

comment:1 Changed 10 years ago by curtis

This ticket is related to both undo history and event notification.

comment:2 Changed 10 years ago by gharris

  • Status changed from new to accepted

comment:3 Changed 9 years ago by gharris

  • Description modified (diff)

comment:4 Changed 9 years ago by curtis

  • Milestone changed from imagej-2.0-alpha1 to imagej-2.0-alpha2

comment:5 Changed 8 years ago by gharris

  • Milestone changed from imagej-2.0-alpha2 to imagej-2.0-alpha3

comment:6 Changed 8 years ago by curtis

  • Milestone changed from imagej-2.0-alpha3 to imagej-2.0-beta1

comment:7 Changed 8 years ago by gharris

  • Milestone changed from imagej-2.0-beta1 to imagej-2.0-beta2

comment:8 Changed 8 years ago by gharris

Added first pass at a MacroRecorder plugin.

comment:9 Changed 8 years ago by dscho

  • Owner changed from gharris to dscho
  • Status changed from accepted to assigned

Re-assigning to myself so I have a ticket, too :-)

comment:10 Changed 8 years ago by curtis

  • Type changed from task to story

comment:11 Changed 8 years ago by curtis

  • Blocking 6 added

comment:12 Changed 8 years ago by curtis

  • Blocked By 837 added

comment:13 Changed 8 years ago by curtis

  • Blocking 1008 added

comment:11 Changed 8 years ago by curtis

  • Blocking 56 added

comment:12 Changed 8 years ago by curtis

  • Blocking 56 removed
  • Blocked By 56 added

comment:13 Changed 8 years ago by curtis

  • Blocked By 811 added

comment:14 Changed 8 years ago by curtis

  • Blocked By 858 added

comment:15 Changed 8 years ago by dscho

  • Status changed from assigned to accepted

comment:16 Changed 8 years ago by dscho

  • Blocked By 1026 added

comment:17 Changed 8 years ago by dscho

  • Blocked By 1027 added

comment:18 Changed 8 years ago by dscho

  • Blocked By 1028 added

comment:19 Changed 8 years ago by dscho

  • Blocked By 1029 added

comment:20 Changed 8 years ago by dscho

  • Blocked By 1030 added

comment:16 Changed 8 years ago by dscho

  • Severity changed from non-issue to serious
  • Milestone changed from imagej-2.0-beta2 to imagej-2.0-beta3

Bumping to beta3 since we expect the Macro interpreter and the Script Editor to finished in that time frame, realistically.

comment:17 Changed 8 years ago by curtis

  • Blocking 6 removed

comment:18 Changed 7 years ago by curtis

  • Blocked By 1126 added

comment:19 Changed 7 years ago by dscho

  • Milestone changed from imagej-2.0.0-beta4 to imagej-2.0.0-beta5

comment:20 Changed 7 years ago by curtis

  • Milestone changed from imagej-2.0.0-beta6 to imagej-2.0.0-beta5-new

comment:21 Changed 7 years ago by curtis

  • Blocked By 811 removed

comment:22 Changed 7 years ago by curtis

  • Blocked By 837 removed

comment:23 Changed 7 years ago by curtis

  • Blocked By 858 removed

comment:24 Changed 7 years ago by curtis

  • Blocked By 1030 removed

comment:25 Changed 7 years ago by curtis

  • Blocked By 1126 removed

comment:26 Changed 7 years ago by curtis

This feature has been split in half. There is now ticket #1516 for later improvements to the scripting infrastructure after it has been initially completed. Some blocker tickets have moved there (to 2.0.0-beta6), while others remain here (in 2.0.0-beta5).

comment:27 Changed 7 years ago by curtis

  • Blocked By 1030 added

comment:28 Changed 7 years ago by curtis

  • Blocked By 1027 removed

comment:29 Changed 7 years ago by curtis

  • Blocked By 1028 removed

comment:30 Changed 7 years ago by curtis

  • Blocked By 1029 removed

comment:31 Changed 7 years ago by curtis

  • Status changed from accepted to closed
  • Resolution set to fixed

Initial version done in eb11a6ad, and polished further in 7e0cea20.

More scripting languages still to be added; see ticket #1516 for that.

Note: See TracTickets for help on using tickets.