Skip to content

Latest commit

 

History

History
79 lines (67 loc) · 2.91 KB

CHANGELOG.md

File metadata and controls

79 lines (67 loc) · 2.91 KB

[0.6.7]

  • Bug fixes

[0.6.6]

  • Clean up asset installation - codemirror and kernel spec.
  • Add custom shortcuts.
  • Add custom help link.

[0.6.5]

  • Guard against echo in pexpect.
  • Added 9,0 as a kernel-restart-and-clear keyboard shortcut.
  • Added debug interpreter option.
  • Added original display mode, returning the same output as M2's interactive session, making it easy to copy output in text-only context.
  • Other small tweaks.

[0.6.0] Major changes addressing stability and performance

  • Rewrote the REPL part:
    • It no longer uses regexes (except for inferring the input #). This had a tremendous effect on stability and speed.
    • Added finer timeout control. Now if a statement timeouts, then whole cell execution is interrupted, and this is clearly reported to the client.
    • Macaulay2 exceptions and stdout are always printed to the cell's stdout. I removed stderr formatting, since it did not fit nicely with the rest.
    • Decoupled the REPL from the kernel-proper class. It can now be used directly in Python3. Will add demo later.

[0.5.2]

  • Put codemirror mode in the correct place. This fixes GET 404 error that prevented syntax highlighting when running remotely. This isn't documented at all but the fix works fine.
  • Add comment in Macaulay2 using Cmd-/ or Ctrl-/.

[0.5.1]

  • Add the nbextension to the distribution.

[0.5.0]

  • Capture TIMEOUT exceptions.
  • Send ^C control to proc when needed.
  • Redirect M2 errors to stderr always.
  • Added raw mode.

[0.4.0]

  • Client-side syntax highlighting.

[0.3.2]

  • Added pretty display mode.

[0.3.0]

  • Add robust cell magic support.
  • Minor syntax highlighting changes.

[0.2.3]

  • Bug fixes.
  • Changed mode normal to default.
  • Syntax hightlight changes.

[0.2.0] - 2019-01-18

  • Stable IO processing. Not aware of bugs or caveats.
  • In normal mode, code in cells evaluates the same way as in M2 interactive mode.
  • Output now is only presented for the last statement in a block. This is intentional and parallels IPython. M2 errors still need to be propagated though. See TODO.
  • Implements basic cell magic (as IPython does) and configuration.
  • Can provide configuration script using $M2JK_CONFIG.
  • Two output modes: normal and texmacs. Another one, pretty, is commented out. See TODO.
  • Modes can be specified in config file at start up, or during execution.
  • normal is exactly the same as M2 interactive mode.
  • texmacs prints and renders the output value the way your browser does.
  • Timeouts can be set for the allowed delay for a block calculation (plus transport). They can be set in a configure script or interactively.
  • Profiling didn't show any speed up using byte-strings over regular strings for both matching and transport, so kept current set up.

[Unreleased]

  • Basic implementation. Many bugs.
  • Code organized properly as a pip3 module.
  • Some highlighting on the client side.