Skip to content
Snippets Groups Projects
  1. Apr 01, 2020
  2. Mar 31, 2020
  3. Mar 30, 2020
  4. Mar 29, 2020
    • rswindell's avatar
      Use the JS-standard method of passing a variable number of arguments to a · c20ee227
      rswindell authored
      function (using function.apply()) rather than depending on the js.exec()
      array-args-expansion feature I recently added and then just removed.
      c20ee227
    • rswindell's avatar
      Revert the last commit (mostly): don't treat array arguments to js.exec() · ac1a0004
      rswindell authored
      specially, just pass them on to the script as-is. Included a JSDOC note about
      the use of js.exec.apply() to pass a variable number of arguments (ala execv).
      
      Thanks Tracker1 for the pointer to 'spread' which led me to function.apply()
      and the JS-standard method of achieving the result I needed with this
      enhancement.
      
      I still think that a script that calls exit() is unlikely to expect non-string
      arguments in the first place, but if we don't need special case behavior, it's
      better not to add it and keep the behavior consistent with load() and
      require(). That was the decision of the executive board anyway. :-|
      ac1a0004
    • nightfox's avatar
      The HOME and END keys now go to the first and last item in the whole list,... · ebc73c17
      nightfox authored
      The HOME and END keys now go to the first and last item in the whole list, rather than just the current page.  This behavior is more consistent with things like sbbslist.js.
      ebc73c17
    • rswindell's avatar
      Fix typo: Zones are colon-separated, not dot-separated. · cea82922
      rswindell authored
      patch/bug-report by Mark Lewis.
      cea82922
    • rswindell's avatar
    • rswindell's avatar
      I/O optimization of the nodelist() method by using the (new to v3.17c) · 588e2def
      rswindell authored
      system.get_node() method of reading a node's data record (from node.dab).
      588e2def
    • rswindell's avatar
      Add system.get_node() method to read a single node record in one shot: · 46844bb7
      rswindell authored
      use this in place of system.node_list[] if you're going to be using a lot of
      the properties and passing them around to methods which are going to each
      possibly dereference the values, as *each* deference results in a read of the
      node record in the node.dab. On my system, a simple node list (e.g. /L
      command) would result in between 60 and 100 reads of the node.dab (for a 13
      node system), which was nuts.
      
      The system.get_node() method currently leaves the node record unlocked and
      there is currently no equivalent put_node() method, so you still need to use
      the system.node_list[] for modification of node records. But, I now see there
      are race conditions with the current methods of read-modify-writes of the
      node_list[] properties. We should be locking a node.dab record, reading it,
      modifying it, writing it, and then unlocking it - as is done in the C/C++
      code. So... that's a todo item.
      
      Also created system.stats.node_gets to track the number of node.dab reads
      from a single instance of the system object. May remove this any time.
      46844bb7
    • rswindell's avatar
      Fix some typos. · 681bcbb2
      rswindell authored
      681bcbb2
    • rswindell's avatar
      An installation data file used by exec/install-xtrn.js to install LORD, · 64187d39
      rswindell authored
      a couple operator menu items, and even the IGMs currently in CVS
      (each/all optional).
      This does require the latest and greatest jsexec, libsbbs.so/sbbs.dll, et al.
      64187d39
    • rswindell's avatar
      Now supports a -overwrite cmdline option which can be used to allow the · 0e2b62f0
      rswindell authored
      overwrite of existing items (i.e. programs with the same internal code).
      Add support for [exec:<file>.js] sections: for executing another JavaScript
      files as part of the install.
      Add support for [eval:string] sections: for evaluating a JavaScript expression
      as part of an install.
      Add support for an optional "prompt" key for each item. If set to a string,
      overrides the default confirmation prompt text. If set to false, disables
      the confirmation prompt for that item.
      0e2b62f0
Loading