Recent Releases of SDEverywhere

SDEverywhere - plugin-vite: v0.1.0

0.1.0 (2022-06-28)

Features

  • add build and plugin-{check,vite,wasm,worker} packages (#206) (dd34cbf), closes #203

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by climateinteractive-bot almost 3 years ago

SDEverywhere - plugin-check: v0.1.0

0.1.0 (2022-06-28)

Features

  • add build and plugin-{check,vite,wasm,worker} packages (#206) (dd34cbf), closes #203

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by climateinteractive-bot almost 3 years ago

SDEverywhere - check-ui-shell: v0.1.0

0.1.0 (2022-06-28)

Features

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by climateinteractive-bot almost 3 years ago

SDEverywhere - check-core: v0.1.0

0.1.0 (2022-06-28)

Features

  • add build and plugin-{check,vite,wasm,worker} packages (#206) (dd34cbf), closes #203
  • add check-core and check-ui-shell packages (#202) (8d4fdce), closes #201

Bug Fixes

  • make runSuite proceed to completion when no checks are defined (#205) (32b2edb), closes #204

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by climateinteractive-bot almost 3 years ago

SDEverywhere - runtime-async: v0.1.0

0.1.0 (2022-06-28)

Features

  • add build and plugin-{check,vite,wasm,worker} packages (#206) (dd34cbf), closes #203
  • add runtime and runtime-async packages (#200) (fd52822), closes #198

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by climateinteractive-bot almost 3 years ago

SDEverywhere - runtime: v0.1.0

0.1.0 (2022-06-28)

Features

  • add build and plugin-{check,vite,wasm,worker} packages (#206) (dd34cbf), closes #203
  • add runtime and runtime-async packages (#200) (fd52822), closes #198

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by climateinteractive-bot almost 3 years ago

SDEverywhere - cli: v0.7.0

0.7.0 (2022-06-28)

⚠ BREAKING CHANGES

  • The sdeverywhere package is deprecated and effectively replaced by @sdeverywhere/cli. Additionally, the sde generate --genhtml command and supporting code has been removed and will be replaced with a different solution in the near future.

Features

  • add build and plugin-{check,vite,wasm,worker} packages (#206) (dd34cbf), closes #203
  • refactor into monorepo with compile and cli packages (#192) (8946f18), closes #191

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by climateinteractive-bot almost 3 years ago

SDEverywhere - build: v0.1.0

0.1.0 (2022-06-28)

Features

  • add build and plugin-{check,vite,wasm,worker} packages (#206) (dd34cbf), closes #203

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by climateinteractive-bot almost 3 years ago

SDEverywhere - compile: v0.7.0

0.7.0 (2022-06-28)

⚠ BREAKING CHANGES

  • The sdeverywhere package is deprecated and effectively replaced by @sdeverywhere/cli. Additionally, the sde generate --genhtml command and supporting code has been removed and will be replaced with a different solution in the near future.

Features

  • refactor into monorepo with compile and cli packages (#192) (8946f18), closes #191

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by climateinteractive-bot almost 3 years ago

SDEverywhere - sdeverywhere: v0.6.0

0.6.0 (2022-06-04)

Features

  • add runModelWithBuffers entry point that takes pre-allocated input/output buffers (#50) (083109a), closes #49
  • add basic support for GET DATA BETWEEN TIMES function (#42) (8a294aa), closes #33
  • add sde command for flattening parent+submodels (#59) (50e11ec), closes #58
  • add support for external data variables that use subscript or dimension (#41) (035ab5c), closes #32
  • add support for external data variables with > 2 dimensions (#47) (6683e63), closes #45
  • allow for specifying I/O variables using Vensim names in spec file (#61) (a6bc98d), closes #60
  • implement ALLOCATE AVAILABLE function (#106) (ebd0311)
  • implement DELAY FIXED function (#108) (bd3b3e8), closes #29
  • implement GET DIRECT CONSTANTS for CSV (#86) (beedd4f)
  • implement GET DIRECT DATA for CSV (#82) (b40e738), closes #81
  • implement GET DIRECT LOOKUPS including a test model (#99) (47f6fe5), closes #98
  • implement GET DIRECT SUBSCRIPT for CSV (#79) (51691e7)
  • implement NPV function (#95) (9fa17eb), closes #94
  • implement QUANTUM function (#89) (42225f9), closes #87
  • implement the <-> subscript alias operator (#80) (a43917f), closes #78
  • increase the number of dimension and array loop index vars (#138) (4c66470), closes #137
  • remove inline comments in the preprocessor (#74) (d23b1c3)
  • sort equations alphabetically when preprocessing mdl file (#56) (bb968f7), closes #55

Bug Fixes

  • abort code generation on finding a lookup of size zero (#162) (44c1202), closes #161
  • add async and await to some chained cli functions (#37) (afdbb77), closes #35
  • allow > 2 dimensions when generating Vensim array names (#155) (6575ea9), closes #154
  • allow extra index subscripts in 2D const lists (#110) (f5494af), closes #109
  • allow GET DIRECT CONSTANTS to use 2 subscripts in the same family (#144) (e53d876), closes #143
  • correct declarations when subscripted variable is initialized from data and constants (#116) (7c51641), closes #115
  • correct GET DIRECT DATA with mapped dim by directly comparing indices (#146) (fa2097b), closes #145
  • correct initialization of 2D arrays to allow dimensions with matching subscript names (#101) (2ed7e42), closes #84
  • emit any expression for the offset arg of VECTOR ELM MAP (#129) (bd0a724), closes #128
  • exclude data vars from initLevels (#127) (93a49cf), closes #126
  • expand references to vars with any number of separated dimensions (#112) (0d0d40e), closes #111
  • expand variables allowing for any number of indices in EXCEPT clause (#118) (d92343e), closes #117
  • fix LOOKUP FORWARD to correctly handle fractional inputs (#38) (c1f9580), closes #36
  • generate correct references for the ALLOCATE AVAILABLE priority profile (#136) (b1d8ae2), closes #135
  • get direct data offset from the separated dimension (#114) (ebbaa01), closes #113
  • handle subdimensions correctly for GET DIRECT CONSTANTS and fix EXCEPT handling (#125) (2fdfb34), closes #124 #134
  • handle subscripts correctly when nested in expr within array function call (#48) (b2458ab), closes #46
  • make sde log wait for DAT file to be fully written and improve error handling (#123) (34f25f8), closes #122
  • make browserify an optional dependency (#53) (e9bbbc6), closes #52
  • make flatten command work when equations don't include continuation backslash (#173) (ac7c027)
  • prevent memory leaks in fixed delay initialization (#160) (e158b2f), closes #159
  • record variants of a subscripted variable in removeUnusedVariables (#65) (f6d7035), closes #64
  • refine the ALLOCATE AVAILABLE search algorithm (#141) (bca43a0), closes #139
  • remove fcmp library and rewrite expressions without using its macros (#131) (df76872), closes #107
  • remove unnecessary memcpy loop in lookup data initialization (#166) (b94d9c4), closes #165
  • set model directory in the sde causes command (#142) (44d326e), closes #140
  • take DELAY FIXED value from input when delay time = 0 (#148) (328d050), closes #147
  • terminate generated equations with ~~| (#120) (44d1c2a), closes #119
  • use a global replace to join multiple line Vensim equations in comments (#175) (678f2bb)
  • use case-insensitive sort and remove trailing whitespace in preprocessor (#57) (d58390a), closes #55
  • use chunkedFunction to break up initLookups into smaller functions (#133) (bad4580), closes #132
  • use correct subdimension index for delay aux vars (#92) (7158b0f), closes #91
  • use subdim indices for GET DIRECT DATA (#164) (d7b46c6), closes #163
  • wrap conditional branch expression in parentheses when optimizing IF THEN ELSE (#153) (bd42d54), closes #152

Performance Improvements

  • cache last input and last accessed index for faster lookups (#43) (0933a89), closes #34
  • cache parsed CSV file data and replace Array with Set to improve code gen performance (#168) (58a45ba), closes #167
  • improve code gen performance by avoiding linear searches (#63) (d4bf555), closes #62
  • optimize IF THEN ELSE for cases where condition expression resolves to a constant (#103) (f9ef675), closes #102
  • remove variables that are not referenced by input or output variables (#44) (6c80c59), closes #1

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by climateinteractive-bot almost 3 years ago

SDEverywhere - 0.5.3

This release contains a number of fixes that improve performance of the generated C code, especially when compiled down to WebAssembly.

Changes include:

  • Changed lookup initialization to use static arrays for improved Wasm performance (#18)
  • Split large functions reduce stack frame size (improves Wasm memory use and performance) (#19)
  • Replaced wrapper functions with C macros to reduce function call overhead (#22)
  • Optimized dimension name references to avoid array accesses (#23)
  • Improved performance of LOOKUP (#24)

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by chrispcampbell almost 5 years ago

SDEverywhere - 0.5.2

This release includes lots of good fixes that more fully automate conversion of complicated MDL model files.

Changes include:

  • Moved tools to Python 3
  • Use the updated ANTLR-Version package
  • Improved support for two-dimensional arrays
  • Added handling of 2D constant arrays with subscripts in any order
  • Added support for dimension name references
  • Added support for ELMCOUNT
  • Added support for PULSE TRAIN
  • Updated documentation
  • Updated npm package dependencies

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by travisfranck almost 5 years ago

SDEverywhere - SDEverywhere 0.5.1

  • support multiple chartDatfiles delimited by semicolons in app.csv
  • override generated app styles in an optional custom.css file in the config folder
  • add optional varname prefix to readDat

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by ToddFincannon over 5 years ago

SDEverywhere - SDEverywhere 0.5.0

  • web app generation uses simpler CSV configuration instead of YAML
  • three-dimensional arrays
  • :EXCEPT: subscripts
  • two-dimensional const arrays
  • GET DIRECT DATA for Excel at code generation time
  • read output variables from DAT files to WITH LOOKUP variables
  • generate variable documentation in text and YAML formats
  • allow all special characters in variable names
  • improved coverage of subrange and mapping edge cases

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by ToddFincannon almost 6 years ago

SDEverywhere - SDEverywhere 0.4.1

  • enable a blank cell in the HTML input panel with an empty value in sliders
  • add sde causes command to print model variable dependencies
  • fixed HTML generation on Linux
  • corrected instructions for building from the repo

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by ToddFincannon about 7 years ago

SDEverywhere - SDEverywhere 0.4.0

  • updated web app generation to use an improved template
  • added new app.yaml web app specification file
  • generate complete web app with the sde generate --genthml command
  • removed the Vensim grammar to an independent package
  • removed the lotka sample model
  • added the sir sample model
  • optimized performance by making high-precision floating point comparisons optional
  • added support for generating code to run the model interactively
  • removed unnecessary glib2 dependency
  • added a warning message when an input or output variable does not exist in the model
  • fill in all ref ids for a generated variable that is expanded over a non-apply-to-all array
  • implement Vensim data variables in DAT files with lookups

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by ToddFincannon about 7 years ago

SDEverywhere - SDEverywhere 0.3.4

  • specify strings in removalKeys in the spec file that cause equations to be removed by the preprocessor
  • specify specialSeparationDims that make arrays non-apply-to-all to avoid cyclic dependencies
  • switch to the digraph-sort package for dependency sorting
  • switch to C format names for inputVars and outputVars in the spec file
  • add sde-names command to generate C names from Vensim variable names
  • update makefile to build on Linux (thx Ivan Perl)
  • fix a memory leak by doing lookup initialization once at startup
  • override C files in the build process by placing them in the model directory
  • change sde-compare to use canonical variable names to better match Vensim and SDEverywhere logs
  • use global or local SDEverywhere in the modeltests script

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by ToddFincannon over 7 years ago

SDEverywhere - SDEverywhere 0.3.3

bug fixes for web app generation

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by ToddFincannon almost 8 years ago

SDEverywhere - SDEverywhere 0.3.2

  • add multiview capabiilty to generated web apps
  • clean command deletes all generated directories
  • update documentation to cover web app generation

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by ToddFincannon almost 8 years ago

SDEverywhere - SDEverywhere 0.3.1

  • generate WebAssembly code
  • generate HTML page from a JSON spec file
  • fixes log text → dat conversion bug

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by ToddFincannon almost 8 years ago

SDEverywhere - SDEverywhere 0.3.0

  • SDEverywhere parses subscript ranges including subranges and mapped subscripts. The subscript JSON files are no longer necessary.
  • You no longer have to build the src files. Using Node 6.11.1 LTS or later (Node 8 recommended) you can run directly from src.
  • Shell scripts in the tools directory have been replaced by an expanded set of sde commands.
  • The SDE_HOME environment variable is no longer necessary.
  • The only things you now have to remove from a model file and handle manually are macros and tabbed arrays.
  • There is a preprocessor option that removes macros and tabbed arrays into a removals.txt file.

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by ToddFincannon almost 8 years ago

SDEverywhere - 0.2.1

  • separate initialization for constants and levels
  • allow negative constants in the grammar
  • allow expressions in constant lists
  • show code generator exceptions for debugging purposes
  • add the "subs" tool to generate the JSON for subscript ranges
  • make the RHS optional to support the syntax for loading data files
  • expand preprocessor to extract manually handled constructs to a removals.txt file
  • format code with prettier (no more semicolons!)

Climate Change - Integrated Assessment and Climate Policy - TypeScript
Published by ToddFincannon almost 8 years ago