Skip to content
Jason Bertsche edited this page Jul 3, 2017 · 24 revisions

Unclaimed

Scala 2.12/Play 2.6 upgrade

  • Owner: ???
  • Type: Infrastructure
  • Size: Medium-Large
  • Priority: Medium-High
  • Work in progress:
    • Tortoise: master
    • Galapagos: wip-play-2.6
    • Play-Scraper: master
  • Unresolved issues:
    • Play-Scraper must learn how to scrape Play 2.6 applications, or something must replace it
  • Notes

General extension support

  • Owner: ???
  • Type: Feature
  • Size: Medium
  • Priority: Medium
  • Work in progress:
    • Tortoise: wip-ext-def
  • Unresolved issues:
    • Figure out how to we should extensions from URLs
    • Implement it
    • Document the API
    • Ship it
    • Obsoletes NetLogo/Tortoise#101

Error message parity

  • Owner: ???
  • Type: Feature
  • Size: Medium-Large
  • Priority: Low-Medium
  • Work in progress:
    • Tortoise: wip-middle-layer
  • Unresolved issues:
    • Full implementation of error messages
  • Notes:
    • See here for Jason's notes on this task
    • This is tedious
    • This is also likely to lead to a substantial slowdown on NetLogo Web, since it will introduce runtime error-checking
    • My strategy for doing this initially is not necessarily a winning one. I wanted to centralize error-reporting in one place, but some primitives do error-reporting while in the midst of running a lambda, which makes it trickier. There’s still hope for that approach, though; the lambda could instead lead to returning a value that indicates an error, and the middle layer could then read that value and figure out if it needs to generate an error. Does this have an unpleasant effect on stacktraces, though?
    • NetLogo/Tortoise#184

Recompiling should not clear the world

  • Owner: ???
  • Type: Bugfix
  • Size: Small-Medium
  • Priority: Low-Medium
  • Work in progress: None
  • Unresolved issues:
    • It would be nice if we didn't blow away world states on recompile.
    • NetLogo/Galapagos#327

Basic extension for HTTP POST/GET

  • Owner: ???
  • Type: Extension
  • Size: Small-Medium
  • Priority: Low-Medium
  • Work in progress: None
  • Unresolved issues:
    • It doesn’t exist. It should.
  • Notes:
    • Doesn’t have to be anything complicated

Galapagos should allow display of newly-uploaded model, even when code doesn't compile

  • Owner: ???
  • Type: Feature
  • Size: Small-Medium
  • Priority: Low-Medium
  • Work in progress: None
  • Unresolved issues:
    • It doesn’t do this, and it should.

“Disappearing bar in bar plot” bug

Model name should be passed to compiler

  • Owner: ???
  • Type: Sub-feature
  • Size: Small
  • Priority: Low
  • Work in progress: None
  • Unresolved issues
    • The compiler doesn’t currently take this information in, and Galapagos only kind of has it. It’s needed for printing out into the export-world results

Implement import-drawing

  • Owner: ???
  • Type: Feature
  • Size: Small
  • Priority: Low
  • Work in progress:
    • Tortoise: wip-import-drawing
  • Unresolved issues:
    • Galapagos needs to do the actual work of importing the drawing
  • Notes:
    • Unlike other import-* prims, I think it’s fine for us to do this asynchronously, since it doesn't affect model state. Might need to use Promises or something in order to make sure that no other drawing actions happen before the image is loaded into the Drawing Layer.

Needs Cleanup from Jason

Interface editor

  • Owner: ???
  • Type: Feature
  • Size: Medium-Large
  • Priority: Medium
  • Work in progress:
    • Galapagos: wip-interface-editor, wip-interface-editor-chooser
  • Unresolved issues:
    • It got broken by somewhat recent (i.e. between summer of 2016 and summer of 2017) changes to the UI code
    • Status check
    • Plots (which I was going to punt on)
  • Notes:
    • wip-interface-editor-chooser depends on getting an implementation of read-from-string, which depends on The Great Yak Shave of 2016 branch
      • Needs “move”
      • Needs “resize”
      • Needs “add widget”
      • Needs auto-resize/reflow on editing
      • Deleting widgets that add globals (i.e. Slider, Switch, Input, Chooser) needs to cause a recompile
      • Deleting a plot should affect what plotting commands the engine is running
      • Widget “edit” windows should be resizable
      • I think "edit" windows will need to be truly modal, or else we can have people clicking buttons/running Command Center code that will be causing problems like doing resize-world while I have the View’s “edit” form open
      • Add support for editing Choosers
        • Get read-from-string working, so it can be used on the values here
        • Stop streating newline as the line separator
        • Make sure that strings are quoted as necessary
        • Validate the “choices”
        • ContainerBase should have a name parameter and an extraAttrs that it sets onto the CodeMirror editor
      • Fix freshenUpWidgets
        • widgets.coffee: freshenUpWidgets
          • Should be setting some flags for the sorts of recompiles happening. Only recompiles that change widgets need to reload the interface.
          • I feel like blowing away the whole widget controller everytime a change is made there is kind of silly. It would make more sense just to be able to recompile only one widget, and to then replace that widget.
        • session-lite: Call to freshenUpWidgets
          • This is probably abhorrent.
          • This works, but I think it's essentially a house of cards, just waiting for a slight breeze to knock it over
        • I think the smart thing here is to get the editing of all widgets finished, and then come back to rethinking this
      • Bug: Merely open the “edit” window a Slider or Button (but not all widgets will cause this) and, without making any changes, click “OK”. Then, export the model and try to open it in desktop. Failure! Somehow, the widget editor is messing up the file format.

run/run-result on string, and read-from-string

  • Owner: ???
  • Type: Feature
  • Size: Medium-Large
  • Priority: Low-Medium
  • Work in progress:
    • Tortoise: wip-eval, wip-rfs, wip-rfs-extended, wip-great-yak-shave-of-2016
    • Galapagos: wip-eval
  • Unresolved issues:
    • Commits need cleanup
    • Status check
    • Solve the actual problem
      • Split the JS and JVM builds in separate modules and cleanup CommonSettings in build.sbt
        • New module layout
          • Compiler
            • JVM compiler is used to generate the ScalaJS compiler
          • Engine
            • Combination of the ScalaJS fragments of engine code, plus the primary engine code (which is written in CoffeeScript)
          • NetLogo Web
            • Combination of the Compiler and the Engine
      • After that, a pass of cleaning up needs to be done to improve how we’re getting things from the JS compiler. StandardLiteralParser should probably get shimmed into NLW.
    • Once this is done, we can use CompilerUtilities.isReporter (or whatever its new NLW equivalent is) and call that from run in console.coffee in Galapagos. Before we even get to the part where we're checking for the agent-type, we need to do the prepend of "show " for reporters.
    • NetLogo/Tortoise#122

Inspection window

  • Owner: ???
  • Type: Feature
  • Size: Medium
  • Priority: Low-Medium
  • Work in progress:
    • Tortoise: wip-inspect
    • Galapagos: wip-inspection-window
  • Unresolved issues:
    • Commits need major cleanup
    • Status check
    • Make it track the agent as it moves
    • Solve the actual problem

Claimed

Matrix extension

  • Owner: Jason
  • Type: Extension
  • Size: Medium
  • Priority: Low
  • Work in progress:
    • Tortoise: wip-matrix
  • Unresolved issues:
    • Address TODO items
    • Don’t drop the library into version control
    • The prims needs to be tested and then bugfixed
    • Any missing prims must be implemented

import-world/export-world

  • Owner: Camden (implementer)/Jason (advisor)
  • Type: Feature
  • Size: Medium-Large
  • Priority: Low-Medium
  • Work in progress:
    • Tortoise: wip-importworld
    • CamdenClark/Tortoise: wip-importworld
  • Unresolved issues:
    • export-world needs to be completed
    • Pretty sure that importPen isn't going to be doing the right thing for importing multi-mode/multi-color pens. When it iterates over the points, it only gives ops the X and Y. We need a better way of batch-importing points to ops. It's also probably not blowing away old points (@_ops.reset())
    • We should be testing plotting importing
    • We should be testing more models in general
    • Extensions aren’t being imported or exported, but we can punt on that for v1.0

Baby BehaviorSpace

  • Owner: Jason
  • Type: Feature
  • Size: Small-Medium
  • Priority: Medium
  • Work in progress:
  • Galapagos: wip-bbs
  • Unresolved issues:
    • Clean up commits
    • Test it?
    • Document it

Clone this wiki locally