diff --git a/Makefile b/Makefile index 9bf4e44..cc5e927 100644 --- a/Makefile +++ b/Makefile @@ -169,7 +169,7 @@ print-% : ; @echo $* = $($*) ; STANC_DL_RETRY = 5 STANC_DL_DELAY = 10 STANC3_TEST_BIN_URL ?= -STANC3_VERSION ?= v2.39.0 +STANC3_VERSION ?= v2.40.0 ifeq ($(OS),Windows_NT) OS_TAG := windows diff --git a/clients/R/R/compile.R b/clients/R/R/compile.R index 3a4461c..9f1247f 100644 --- a/clients/R/R/compile.R +++ b/clients/R/R/compile.R @@ -105,10 +105,10 @@ compile_model <- function(stan_file, stanc_args = NULL, make_args = NULL) { stancflags <- paste("--include-paths=.", paste(stanc_args, collapse = " ")) flags <- c( - paste("-C", get_tinystan_path()), + paste("-C", shQuote(get_tinystan_path())), make_args, - paste0("STANCFLAGS=\"", stancflags, "\""), - output + paste0("STANCFLAGS=", shQuote(stancflags)), + shQuote(output) ) suppressWarnings({ diff --git a/clients/typescript/package.json b/clients/typescript/package.json index ececf84..8a4bc4d 100644 --- a/clients/typescript/package.json +++ b/clients/typescript/package.json @@ -70,14 +70,14 @@ "@babel/preset-env": "^7.26.0", "@babel/preset-typescript": "^7.26.0", "@godaddy/dmd": "^1.0.4", - "@vitest/coverage-v8": "^4.1.0", + "@vitest/coverage-v8": "^5.0.1", "jsdoc-babel": "^0.5.0", "jsdoc-to-markdown": "^9.0.5", "prettier": "^3.3.1", "tsdown": "^0.22.0", "typescript": "^6.0.2", "vite": "^8.0.0", - "vitest": "^4.1.0" + "vitest": "^5.0.1" }, "publishConfig": { "access": "public" diff --git a/clients/typescript/yarn.lock b/clients/typescript/yarn.lock index 2731f8b..4fee6e2 100644 --- a/clients/typescript/yarn.lock +++ b/clients/typescript/yarn.lock @@ -305,7 +305,7 @@ dependencies: "@babel/types" "^8.0.0-rc.4" -"@babel/parser@^7.20.15", "@babel/parser@^7.29.0", "@babel/parser@^7.29.3", "@babel/parser@^7.29.7": +"@babel/parser@^7.20.15", "@babel/parser@^7.29.3", "@babel/parser@^7.29.7": version "7.29.7" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.29.7.tgz" integrity sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg== @@ -939,7 +939,7 @@ "@bcoe/v8-coverage@^1.0.2": version "1.0.2" - resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-1.0.2.tgz" + resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-1.0.2.tgz#bbe12dca5b4ef983a0d0af4b07b9bc90ea0ababa" integrity sha512-6zABk/ECA/QYSCQ1NGiVwwbQerUCZ+TQbp64Q3AgmfNvurHH0j8TtXa1qbShXA6qqkpAj4V5W8pP6mLe1mcMqA== "@colors/colors@1.5.0": @@ -995,12 +995,17 @@ resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz" integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== -"@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0", "@jridgewell/sourcemap-codec@^1.5.5": +"@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0": version "1.5.5" resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz" integrity sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og== -"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25", "@jridgewell/trace-mapping@^0.3.28", "@jridgewell/trace-mapping@^0.3.31": +"@jridgewell/sourcemap-codec@^1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.6.0.tgz#f4c663e862f06dc98ca4d453862c46902789a18d" + integrity sha512-T7jf+5zgsZHwNJ4lvQ7/aezbyk0nNX+zJVWpmHA7VYsEx7a7qr5Rg5IbtJFqkgze5Y2sruq1RUY8Q837Od7iFw== + +"@jridgewell/trace-mapping@0.3.31", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25", "@jridgewell/trace-mapping@^0.3.28", "@jridgewell/trace-mapping@^0.3.31": version "0.3.31" resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz" integrity sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw== @@ -1149,11 +1154,6 @@ resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz" integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw== -"@standard-schema/spec@^1.1.0": - version "1.1.0" - resolved "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz" - integrity sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w== - "@tybys/wasm-util@^0.10.1": version "0.10.2" resolved "https://registry.yarnpkg.com/@tybys/wasm-util/-/wasm-util-0.10.2.tgz#12b3a1b33db1f9cad4ddff1f604ab7dd00bf464e" @@ -1202,81 +1202,46 @@ resolved "https://registry.npmjs.org/@types/mdurl/-/mdurl-2.0.0.tgz" integrity sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg== -"@vitest/coverage-v8@^4.1.0": - version "4.1.2" - resolved "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-4.1.2.tgz" - integrity sha512-sPK//PHO+kAkScb8XITeB1bf7fsk85Km7+rt4eeuRR3VS1/crD47cmV5wicisJmjNdfeokTZwjMk4Mj2d58Mgg== +"@vitest/coverage-v8@^5.0.1": + version "5.0.1" + resolved "https://registry.yarnpkg.com/@vitest/coverage-v8/-/coverage-v8-5.0.1.tgz#2b2852c41a6d30dbbbac834f4b073a3fb34e790c" + integrity sha512-FRC8ACiudC3dI6MTplzRSYWHDRnIv2IPfbzs4FdoJNsMal/35sWV8hwIfV8ZcqzSPy+uXHeMVONt9CEqtOU17w== dependencies: "@bcoe/v8-coverage" "^1.0.2" - "@vitest/utils" "4.1.2" - ast-v8-to-istanbul "^1.0.0" - istanbul-lib-coverage "^3.2.2" - istanbul-lib-report "^3.0.1" - istanbul-reports "^3.2.0" - magicast "^0.5.2" - obug "^2.1.1" - std-env "^4.0.0-rc.1" - tinyrainbow "^3.1.0" + "@vitest/istanbul-lib-coverage" "^1.0.0" + "@vitest/istanbul-lib-report" "^1.0.0" + ast-v8-to-istanbul "^1.0.5" + magicast "^0.5.4" + obug "^2.1.4" + std-env "^4.2.0" + tinyrainbow "^3.1.1" + +"@vitest/istanbul-lib-coverage@1.0.1", "@vitest/istanbul-lib-coverage@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@vitest/istanbul-lib-coverage/-/istanbul-lib-coverage-1.0.1.tgz#8bcff8c5cb100037cd341def96c5c9b857acbc1f" + integrity sha512-k3DJZ8LhMBK9NS4SclF1ASD3OgXEWDorbIcPTRDK0/Zae6fRvu+fJRxtFdLfHsa9Y24beCdPnoNZ4LviTNstfA== -"@vitest/expect@4.1.2": - version "4.1.2" - resolved "https://registry.npmjs.org/@vitest/expect/-/expect-4.1.2.tgz" - integrity sha512-gbu+7B0YgUJ2nkdsRJrFFW6X7NTP44WlhiclHniUhxADQJH5Szt9mZ9hWnJPJ8YwOK5zUOSSlSvyzRf0u1DSBQ== +"@vitest/istanbul-lib-report@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@vitest/istanbul-lib-report/-/istanbul-lib-report-1.0.1.tgz#34a9e0df1b001f531d230f1bbce743067669e90b" + integrity sha512-1EOLRfsTMnyAr3+kEAsP4o9dhaDlGPpD7H5iLBBeq//YpNB1VIahkPhB+eRp9N2Dkfw8oySROjE3yf9XDeaIkQ== dependencies: - "@standard-schema/spec" "^1.1.0" - "@types/chai" "^5.2.2" - "@vitest/spy" "4.1.2" - "@vitest/utils" "4.1.2" - chai "^6.2.2" - tinyrainbow "^3.1.0" + "@vitest/istanbul-lib-coverage" "1.0.1" -"@vitest/mocker@4.1.2": - version "4.1.2" - resolved "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.1.2.tgz" - integrity sha512-Ize4iQtEALHDttPRCmN+FKqOl2vxTiNUhzobQFFt/BM1lRUTG7zRCLOykG/6Vo4E4hnUdfVLo5/eqKPukcWW7Q== +"@vitest/mocker@5.0.1": + version "5.0.1" + resolved "https://registry.yarnpkg.com/@vitest/mocker/-/mocker-5.0.1.tgz#e1ca450ac67a57638e79b08481797793700a09f2" + integrity sha512-6K1DoBNAPGvuOcSsGA4D6x+5zEEff/KmOOP3uetT2TrGpVfI+HRHRnJJfKi5ib/g1vx8IYHQD8s0pbJz8WQI7Q== dependencies: - "@vitest/spy" "4.1.2" + "@jridgewell/trace-mapping" "0.3.31" + "@vitest/spy" "5.0.1" estree-walker "^3.0.3" - magic-string "^0.30.21" - -"@vitest/pretty-format@4.1.2": - version "4.1.2" - resolved "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.1.2.tgz" - integrity sha512-dwQga8aejqeuB+TvXCMzSQemvV9hNEtDDpgUKDzOmNQayl2OG241PSWeJwKRH3CiC+sESrmoFd49rfnq7T4RnA== - dependencies: - tinyrainbow "^3.1.0" + magic-string "^1.2.3" -"@vitest/runner@4.1.2": - version "4.1.2" - resolved "https://registry.npmjs.org/@vitest/runner/-/runner-4.1.2.tgz" - integrity sha512-Gr+FQan34CdiYAwpGJmQG8PgkyFVmARK8/xSijia3eTFgVfpcpztWLuP6FttGNfPLJhaZVP/euvujeNYar36OQ== - dependencies: - "@vitest/utils" "4.1.2" - pathe "^2.0.3" - -"@vitest/snapshot@4.1.2": - version "4.1.2" - resolved "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.1.2.tgz" - integrity sha512-g7yfUmxYS4mNxk31qbOYsSt2F4m1E02LFqO53Xpzg3zKMhLAPZAjjfyl9e6z7HrW6LvUdTwAQR3HHfLjpko16A== - dependencies: - "@vitest/pretty-format" "4.1.2" - "@vitest/utils" "4.1.2" - magic-string "^0.30.21" - pathe "^2.0.3" - -"@vitest/spy@4.1.2": - version "4.1.2" - resolved "https://registry.npmjs.org/@vitest/spy/-/spy-4.1.2.tgz" - integrity sha512-DU4fBnbVCJGNBwVA6xSToNXrkZNSiw59H8tcuUspVMsBDBST4nfvsPsEHDHGtWRRnqBERBQu7TrTKskmjqTXKA== - -"@vitest/utils@4.1.2": - version "4.1.2" - resolved "https://registry.npmjs.org/@vitest/utils/-/utils-4.1.2.tgz" - integrity sha512-xw2/TiX82lQHA06cgbqRKFb5lCAy3axQ4H4SoUFhUsg+wztiet+co86IAMDtF6Vm1hc7J6j09oh/rgDn+JdKIQ== - dependencies: - "@vitest/pretty-format" "4.1.2" - convert-source-map "^2.0.0" - tinyrainbow "^3.1.0" +"@vitest/spy@5.0.1": + version "5.0.1" + resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-5.0.1.tgz#6dac40afd5620613c8d344542d3c30e8e20e32dd" + integrity sha512-rbto/mF/SGERxEgYOek7Xm6B9b+y+mVoo+f4b2LymYO8zM1b7uB5nHuhVMTP2hxdzgxvGiZYGxGIaMvL5y180Q== ansi-escapes@^6.2.0: version "6.2.1" @@ -1337,10 +1302,10 @@ ast-kit@^3.0.0-beta.1: estree-walker "^3.0.3" pathe "^2.0.3" -ast-v8-to-istanbul@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/ast-v8-to-istanbul/-/ast-v8-to-istanbul-1.0.0.tgz" - integrity sha512-1fSfIwuDICFA4LKkCzRPO7F0hzFf0B7+Xqrl27ynQaa+Rh0e1Es0v6kWHPott3lU10AyAr7oKHa65OppjLn3Rg== +ast-v8-to-istanbul@^1.0.5: + version "1.0.6" + resolved "https://registry.yarnpkg.com/ast-v8-to-istanbul/-/ast-v8-to-istanbul-1.0.6.tgz#870871c31bac6d175135398abcb152a6d6e93520" + integrity sha512-fvpl29helSO2w/z7utIbrkNXILdrLwDwAMH2I/zPKlGf5244+gf+B4cyS1sANcrPY2h+hWCGSgC8N61s/+AF9A== dependencies: "@jridgewell/trace-mapping" "^0.3.31" estree-walker "^3.0.3" @@ -1656,10 +1621,10 @@ entities@^4.4.0: resolved "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz" integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== -es-module-lexer@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-2.0.0.tgz" - integrity sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw== +es-module-lexer@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-2.3.2.tgz#311fa4f40168c1975c505477c51b23234d41ad55" + integrity sha512-poHGpORABojJJucnV9KbOavETW8lBVnphkW77ER5/BQ5Fz7oXSoCNek7IH3vR5nRjdsEz926ibFYX8KtLQmdyw== escalade@^3.1.1, escalade@^3.2.0: version "3.2.0" @@ -1683,10 +1648,10 @@ esutils@^2.0.2: resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== -expect-type@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/expect-type/-/expect-type-1.3.0.tgz" - integrity sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA== +expect-type@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/expect-type/-/expect-type-1.4.0.tgz#24edf7f0cc69a44d008567ba4594ab96f3c3a3d6" + integrity sha512-KfYbmpRm0VbLjEvVa9yGwCi9GI34xvi7A/HXYWQO65CSD2u3MczUJSuwXKFIxlGsgBQizV9q5J9NHj4VG0n+pA== fast-glob@^3.3.2: version "3.3.2" @@ -1836,11 +1801,6 @@ hookable@^6.1.1: resolved "https://registry.npmjs.org/hookable/-/hookable-6.1.1.tgz" integrity sha512-U9LYDy1CwhMCnprUfeAZWZGByVbhd54hwepegYTK7Pi5NvqEj63ifz5z+xukznehT7i6NIZRu89Ay1AZmRsLEQ== -html-escaper@^2.0.0: - version "2.0.2" - resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz" - integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== - import-without-cache@^0.4.0: version "0.4.0" resolved "https://registry.npmjs.org/import-without-cache/-/import-without-cache-0.4.0.tgz" @@ -1895,31 +1855,9 @@ is-number@^7.0.0: resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.2: - version "3.2.2" - resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz" - integrity sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg== - -istanbul-lib-report@^3.0.0, istanbul-lib-report@^3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz" - integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw== - dependencies: - istanbul-lib-coverage "^3.0.0" - make-dir "^4.0.0" - supports-color "^7.1.0" - -istanbul-reports@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz" - integrity sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA== - dependencies: - html-escaper "^2.0.0" - istanbul-lib-report "^3.0.0" - js-tokens@^10.0.0: version "10.0.0" - resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-10.0.0.tgz" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-10.0.0.tgz#dffe7599b4a8bb7fe30aff8d0235234dffb79831" integrity sha512-lM/UBzQmfJRo9ABXbPWemivdCW8V2G8FHaHdypQaIy523snUjog0W71ayWXTjiR+ixeMyVHN2XcpnTd/liPg/Q== js-tokens@^4.0.0: @@ -2130,20 +2068,20 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" -magic-string@^0.30.21: - version "0.30.21" - resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz" - integrity sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ== +magic-string@^1.2.3: + version "1.4.1" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-1.4.1.tgz#d0f91b82cd286a8a8de14f4254ccbf1d7e07f55e" + integrity sha512-8lyCu36ErXR0J9uaGKlKQoiLZKmtI63YGLE8G2o9jyRPdr4X47LusSOwgOJOzcVtp81fTAAjxR7BwKz682Jhow== dependencies: - "@jridgewell/sourcemap-codec" "^1.5.5" + "@jridgewell/sourcemap-codec" "^1.6.0" -magicast@^0.5.2: - version "0.5.2" - resolved "https://registry.npmjs.org/magicast/-/magicast-0.5.2.tgz" - integrity sha512-E3ZJh4J3S9KfwdjZhe2afj6R9lGIN5Pher1pF39UGrXRqq/VDaGVIGN13BjHd2u8B61hArAGOnso7nBOouW3TQ== +magicast@^0.5.4: + version "0.5.5" + resolved "https://registry.yarnpkg.com/magicast/-/magicast-0.5.5.tgz#66dfd87ba2a40b568d97ff0d2b888ad3580519cb" + integrity sha512-UicdXN8zQ3JHlxVq+28afMXPr1z7WNY6+7EJnzTdQWkTAlMLF5fNCCKxJHBQwGaNGR11581EiQmQzx73+MvszA== dependencies: - "@babel/parser" "^7.29.0" - "@babel/types" "^7.29.0" + "@babel/parser" "^7.29.7" + "@babel/types" "^7.29.7" source-map-js "^1.2.1" make-dir@^2.1.0: @@ -2154,13 +2092,6 @@ make-dir@^2.1.0: pify "^4.0.1" semver "^5.6.0" -make-dir@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz" - integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw== - dependencies: - semver "^7.5.3" - markdown-it-anchor@^8.6.7: version "8.6.7" resolved "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.7.tgz" @@ -2294,6 +2225,11 @@ obug@^2.1.1: resolved "https://registry.npmjs.org/obug/-/obug-2.1.1.tgz" integrity sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ== +obug@^2.1.4: + version "2.2.1" + resolved "https://registry.yarnpkg.com/obug/-/obug-2.2.1.tgz#9c453efeeda822050eb9774242e969c784d64d78" + integrity sha512-XrsrhT5sybtKI6wakr2SPOlGZWWYbUXZ7a0jT8/QOeAPau+1X/bSegNe5YR75oJmEZQbKningirmGOEJCIk61Q== + once@^1.3.0: version "1.4.0" resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" @@ -2343,11 +2279,16 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz" integrity sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA== -picomatch@^4.0.3, picomatch@^4.0.4: +picomatch@^4.0.4: version "4.0.4" resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz" integrity sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A== +picomatch@^4.0.7: + version "4.0.7" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.7.tgz#6313360034ccb36b3dc61ecbdff78121f90fe21f" + integrity sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA== + pify@^4.0.1: version "4.0.1" resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz" @@ -2518,7 +2459,7 @@ semver@^6.3.1: resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.5.3, semver@^7.5.4, semver@^7.7.4: +semver@^7.5.4, semver@^7.7.4: version "7.8.1" resolved "https://registry.npmjs.org/semver/-/semver-7.8.1.tgz" integrity sha512-rkVq3IXh+4FDGch+KwzX3aV9W3kO54GyEgpvBzSyctDA6Xtd7RJQV1xmXbeQp5v7+VzLOfVqiutSE6GICgPFvg== @@ -2563,10 +2504,10 @@ stackback@0.0.2: resolved "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz" integrity sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw== -std-env@^4.0.0-rc.1: - version "4.0.0" - resolved "https://registry.npmjs.org/std-env/-/std-env-4.0.0.tgz" - integrity sha512-zUMPtQ/HBY3/50VbpkupYHbRroTRZJPRLvreamgErJVys0ceuzMkD44J/QjqhHjOzK42GQ3QZIeFG1OYfOtKqQ== +std-env@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-4.2.0.tgz#8ebe0ec60485668ab47227b312f4254cdf80c9d3" + integrity sha512-oCUKSupKTHX53EyjDtuZQ64pjLJ6yYCtpmEw0goYxtjG9KpbRe8KAsl2tBUGU9DyMcJ0RwJ8GqJAFzMXcXW1Rw== string-width@^4.1.0, string-width@^4.2.0: version "4.2.3" @@ -2631,17 +2572,22 @@ thenify-all@^1.0.0: dependencies: any-promise "^1.0.0" -tinybench@^2.9.0: - version "2.9.0" - resolved "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz" - integrity sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg== +tinybench@6.1.4: + version "6.1.4" + resolved "https://registry.yarnpkg.com/tinybench/-/tinybench-6.1.4.tgz#f855bb3ad1f2fe85cf624490d58bb4f4f5d30da8" + integrity sha512-9APumHG7r4yOk4X4WlkmE71aZcv1gvin1czO3OQ1U9iJcFA5Ja/ygyb0vPOVHTthFozUYs8CLoLUlM8grb2lTQ== -tinyexec@^1.0.2, tinyexec@^1.1.2: +tinyexec@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/tinyexec/-/tinyexec-1.3.0.tgz#aacc1dbb1d4e93e6ad8dd64944e09f9ad147a474" + integrity sha512-QKAl9m8gWWGHV8jZcPeym6j+XULi6tOf1mT83WYJ4Lk2ytW/uwAWkrP0uFsdoYMdueVJ0qs26wZ+23xeB4ibNQ== + +tinyexec@^1.1.2: version "1.2.2" resolved "https://registry.npmjs.org/tinyexec/-/tinyexec-1.2.2.tgz" integrity sha512-M/Q0B2cp4K7kynaT/vnED1j8TlLY+Pp7C6Wl2bl/7u/F0mUVwdyOpwomQb8JpYLitHUssAJRmLZdMCGsrx7i+g== -tinyglobby@^0.2.15, tinyglobby@^0.2.16, tinyglobby@^0.2.17: +tinyglobby@^0.2.16, tinyglobby@^0.2.17: version "0.2.17" resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.17.tgz#562a9a6c9eb2b3b123d39719f9af5bb44fcd7631" integrity sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g== @@ -2649,10 +2595,10 @@ tinyglobby@^0.2.15, tinyglobby@^0.2.16, tinyglobby@^0.2.17: fdir "^6.5.0" picomatch "^4.0.4" -tinyrainbow@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-3.1.0.tgz" - integrity sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw== +tinyrainbow@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/tinyrainbow/-/tinyrainbow-3.1.1.tgz#c0168387d3d8d70b6b3c2c0936de5fee738cea20" + integrity sha512-yau8yJdTt989Mm0Bd/236QnzEiPf2xLLTqUZRUJOo/3CB078LSwzei343DgtJVmfJKJE3TMINY1u42SQsP6mXw== to-regex-range@^5.0.1: version "5.0.1" @@ -2776,7 +2722,7 @@ validate-npm-package-name@^5.0.0: resolved "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz" integrity sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ== -"vite@^6.0.0 || ^7.0.0 || ^8.0.0", vite@^8.0.0: +vite@^8.0.0: version "8.0.16" resolved "https://registry.yarnpkg.com/vite/-/vite-8.0.16.tgz#ae073866c06563d6634a90169a496e11bd84f1a6" integrity sha512-h9bXPmJichP5fLmVQo3PyaGSDE2n3aPuomeAlVRm0JLmt4rY6zmPKd59HYI4LNW8oTK7tlTsuC7l/m7awx9Jcw== @@ -2789,30 +2735,23 @@ validate-npm-package-name@^5.0.0: optionalDependencies: fsevents "~2.3.3" -vitest@^4.1.0: - version "4.1.2" - resolved "https://registry.npmjs.org/vitest/-/vitest-4.1.2.tgz" - integrity sha512-xjR1dMTVHlFLh98JE3i/f/WePqJsah4A0FK9cc8Ehp9Udk0AZk6ccpIZhh1qJ/yxVWRZ+Q54ocnD8TXmkhspGg== - dependencies: - "@vitest/expect" "4.1.2" - "@vitest/mocker" "4.1.2" - "@vitest/pretty-format" "4.1.2" - "@vitest/runner" "4.1.2" - "@vitest/snapshot" "4.1.2" - "@vitest/spy" "4.1.2" - "@vitest/utils" "4.1.2" - es-module-lexer "^2.0.0" - expect-type "^1.3.0" - magic-string "^0.30.21" - obug "^2.1.1" - pathe "^2.0.3" - picomatch "^4.0.3" - std-env "^4.0.0-rc.1" - tinybench "^2.9.0" - tinyexec "^1.0.2" - tinyglobby "^0.2.15" - tinyrainbow "^3.1.0" - vite "^6.0.0 || ^7.0.0 || ^8.0.0" +vitest@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/vitest/-/vitest-5.0.1.tgz#22505b6481ed0e692b3f6d4fed179da8487d252c" + integrity sha512-iA95lQbKEkvrtTkdAgnWbXfbipWiiWe/hDl2P5tMi6WFwD76G0NxXAGp/M9EOcYupeGJRr6wppMc7CoA41TQjg== + dependencies: + "@types/chai" "^5.2.2" + "@vitest/mocker" "5.0.1" + chai "^6.2.2" + es-module-lexer "^2.3.2" + expect-type "^1.4.0" + magic-string "^1.2.3" + obug "^2.1.4" + picomatch "^4.0.7" + std-env "^4.2.0" + tinybench "6.1.4" + tinyexec "1.3.0" + tinyglobby "^0.2.17" why-is-node-running "^2.3.0" walk-back@^2.0.1: diff --git a/src/buffer.hpp b/src/buffer.hpp index 3558d90..1f48741 100644 --- a/src/buffer.hpp +++ b/src/buffer.hpp @@ -155,6 +155,10 @@ class filtered_writer : public stan::callbacks::structured_writer { } } + // workaround for + // https://github.com/stan-dev/stan/pull/3406#issuecomment-5716227487 + void write(const std::string &, unsigned long) {} + // other write methods are currently unused by anything we need using stan::callbacks::structured_writer::write; diff --git a/src/file.hpp b/src/file.hpp index 111e1d0..bfaa2b0 100644 --- a/src/file.hpp +++ b/src/file.hpp @@ -51,10 +51,10 @@ inline std::vector load_inits(int num_chains, } return json_inits; } + std::string inits(inits_char); - std::vector init_files; - boost::algorithm::split(init_files, inits, - [](char c) { return c == SEPARATOR; }); + std::vector init_files + = stan::io::split(inits, std::string_view(&SEPARATOR, 1)); if (init_files.size() != num_chains) { throw std::invalid_argument( "Number of parameter initializations provided must be 0, 1, or match " diff --git a/src/tinystan.cpp b/src/tinystan.cpp index 481242a..cb4982f 100644 --- a/src/tinystan.cpp +++ b/src/tinystan.cpp @@ -232,7 +232,7 @@ int tinystan_pathfinder(const TinyStanModel *tmodel, size_t num_paths, error::error_logger logger(*tmodel, refresh != 0); interrupt::tinystan_interrupt_handler interrupt; - stan::callbacks::structured_writer dummy_json_writer; + io::filtered_writer dummy_json_writer; bool save_iterations = false; @@ -248,8 +248,7 @@ int tinystan_pathfinder(const TinyStanModel *tmodel, size_t num_paths, calculate_lp); } else { std::vector null_writers(num_paths); - std::vector null_structured_writers( - num_paths); + std::vector null_structured_writers(num_paths); return_code = stan::services::pathfinder::pathfinder_lbfgs_multi( model, json_inits, seed, id, init_radius, max_history_size, init_alpha, tol_obj, tol_rel_obj, tol_grad, tol_rel_grad, tol_param, diff --git a/stan b/stan index 44be14e..a6806ef 160000 --- a/stan +++ b/stan @@ -1 +1 @@ -Subproject commit 44be14e28e8a677719eb821447d37765b3295f7a +Subproject commit a6806ef8477a7b5f65b27449ec33528c162bc024