From e9bff2c1bdb5c53ca24ceabcb51741735cb4043c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 17 Mar 2024 15:57:53 +0100 Subject: [PATCH 01/22] Bump follow-redirects from 1.15.4 to 1.15.6 in /website (#89) Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.4 to 1.15.6. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.4...v1.15.6) --- updated-dependencies: - dependency-name: follow-redirects dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- website/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/yarn.lock b/website/yarn.lock index a600871..b3112d1 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -4062,9 +4062,9 @@ flux@^4.0.1: fbjs "^3.0.1" follow-redirects@^1.0.0, follow-redirects@^1.14.7: - version "1.15.4" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.4.tgz#cdc7d308bf6493126b17ea2191ea0ccf3e535adf" - integrity sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw== + version "1.15.6" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b" + integrity sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA== fork-ts-checker-webpack-plugin@^6.5.0: version "6.5.3" From a6e1a019ee1569d6cc533d60c093eb73a34a8a24 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 24 Mar 2024 12:09:26 +0100 Subject: [PATCH 02/22] Bump webpack-dev-middleware from 5.3.3 to 5.3.4 in /website (#90) Bumps [webpack-dev-middleware](https://github.com/webpack/webpack-dev-middleware) from 5.3.3 to 5.3.4. - [Release notes](https://github.com/webpack/webpack-dev-middleware/releases) - [Changelog](https://github.com/webpack/webpack-dev-middleware/blob/v5.3.4/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-middleware/compare/v5.3.3...v5.3.4) --- updated-dependencies: - dependency-name: webpack-dev-middleware dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- website/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/yarn.lock b/website/yarn.lock index b3112d1..7986048 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -7935,9 +7935,9 @@ webpack-bundle-analyzer@^4.5.0: ws "^7.3.1" webpack-dev-middleware@^5.3.1: - version "5.3.3" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz#efae67c2793908e7311f1d9b06f2a08dcc97e51f" - integrity sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA== + version "5.3.4" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz#eb7b39281cbce10e104eb2b8bf2b63fce49a3517" + integrity sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q== dependencies: colorette "^2.0.10" memfs "^3.4.3" From 6d825278ec7bc205cbb466b2f11e4a0223a1cb58 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 29 Mar 2024 08:24:13 +0100 Subject: [PATCH 03/22] Bump express from 4.18.2 to 4.19.2 in /website (#91) Bumps [express](https://github.com/expressjs/express) from 4.18.2 to 4.19.2. - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2) --- updated-dependencies: - dependency-name: express dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- website/yarn.lock | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/website/yarn.lock b/website/yarn.lock index 7986048..f055b6a 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -2716,13 +2716,13 @@ binary-extensions@^2.0.0: resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== -body-parser@1.20.1: - version "1.20.1" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668" - integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw== +body-parser@1.20.2: + version "1.20.2" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.2.tgz#6feb0e21c4724d06de7ff38da36dad4f57a747fd" + integrity sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA== dependencies: bytes "3.1.2" - content-type "~1.0.4" + content-type "~1.0.5" debug "2.6.9" depd "2.0.0" destroy "1.2.0" @@ -2730,7 +2730,7 @@ body-parser@1.20.1: iconv-lite "0.4.24" on-finished "2.4.1" qs "6.11.0" - raw-body "2.5.1" + raw-body "2.5.2" type-is "~1.6.18" unpipe "1.0.0" @@ -3168,7 +3168,7 @@ content-disposition@0.5.4: dependencies: safe-buffer "5.2.1" -content-type@~1.0.4: +content-type@~1.0.4, content-type@~1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== @@ -3188,10 +3188,10 @@ cookie-signature@1.0.6: resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== -cookie@0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" - integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== +cookie@0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.6.0.tgz#2798b04b071b0ecbff0dbb62a505a8efa4e19051" + integrity sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw== copy-text-to-clipboard@^3.0.1: version "3.2.0" @@ -3866,16 +3866,16 @@ execa@^5.0.0: strip-final-newline "^2.0.0" express@^4.17.3: - version "4.18.2" - resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59" - integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ== + version "4.19.2" + resolved "https://registry.yarnpkg.com/express/-/express-4.19.2.tgz#e25437827a3aa7f2a827bc8171bbbb664a356465" + integrity sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q== dependencies: accepts "~1.3.8" array-flatten "1.1.1" - body-parser "1.20.1" + body-parser "1.20.2" content-disposition "0.5.4" content-type "~1.0.4" - cookie "0.5.0" + cookie "0.6.0" cookie-signature "1.0.6" debug "2.6.9" depd "2.0.0" @@ -6439,10 +6439,10 @@ range-parser@^1.2.1, range-parser@~1.2.1: resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -raw-body@2.5.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" - integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig== +raw-body@2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" + integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA== dependencies: bytes "3.1.2" http-errors "2.0.0" From e13f33a8569dd1950fbe0ed681a53306d668b5a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20B=C3=B6ttcher?= Date: Wed, 17 Apr 2024 16:44:17 +0200 Subject: [PATCH 04/22] Add float to numeric.md --- website/docs/sql/datatype/numeric.md | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/website/docs/sql/datatype/numeric.md b/website/docs/sql/datatype/numeric.md index 71016c8..db1a238 100644 --- a/website/docs/sql/datatype/numeric.md +++ b/website/docs/sql/datatype/numeric.md @@ -9,6 +9,7 @@ Name | Description `integer`|typical choice for integer: -2147483648 to +2147483647 (4 bytes) `bigint`|large-range integer: -9223372036854775808 to +9223372036854775807 (8 bytes) `numeric`|exact, fixed-length representation of numbers with decimal point: up to decimal 38 digits +`real`|variable-precision, inexact: 6 decimal digits precision `double precision`|variable-precision, inexact: 15 decimal digits precision ## Integer Types {#int} @@ -107,8 +108,8 @@ is not supported, yet. ## Floating-Point Type {#float} -The data type `double precision` is an inexact, variable-precision -numeric type. On all currently supported platforms, these types are +The data type `real` and `double precision` are inexact, variable-precision +numeric types. On all currently supported platforms, these types are implementations of IEEE Standard 754 for Binary Floating-Point Arithmetic. @@ -131,7 +132,9 @@ into account when using floating-point types: work as expected. Using difference to a small epsilon value is recommended instead. -On all currently supported platforms, the `double precision` type has a +On all currently supported platforms, the `real` type has a range of around +1E-37 and 1E+37 with a precision of at least 6 digits. +The `double precision` type has a range of around 1E-307 to 1E+308 with a precision of at least 15 digits. Values that are too large or too small will cause an error. Rounding might take place if the precision of an input number is too high. @@ -166,7 +169,7 @@ with PostgresQL and many other database systems. Hyper also supports the SQL-standard notations `float` and `float(p)` for specifying inexact numeric types. Here, `p` specifies the minimum -acceptable precision in *binary* digits. However, the `p` argument is -currently ignored and all `float(p)` types are simply mapped to -`double precision`. `float` with no precision specified is also mapped -to `double precision`. +acceptable precision in *binary* digits. Here, `p` specifies the minimum +acceptable precision in binary digits. Hyper accepts `float(1)` to `float(24)` +as selecting the `real` type, while `float(25)` to `float(53)` select `double precision`. +`float` with no precision specified is also mapped to `double precision`. From 44cb9dbfd901c956734bf5ec068563552d6b74b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20B=C3=B6ttcher?= Date: Wed, 17 Apr 2024 17:35:17 +0200 Subject: [PATCH 05/22] Describe new file format(s) --- website/docs/hyper-api/hyper_process.md | 43 +++++++++++++++++++++++-- 1 file changed, 40 insertions(+), 3 deletions(-) diff --git a/website/docs/hyper-api/hyper_process.md b/website/docs/hyper-api/hyper_process.md index 87b9d88..04e0ab9 100644 --- a/website/docs/hyper-api/hyper_process.md +++ b/website/docs/hyper-api/hyper_process.md @@ -248,6 +248,45 @@ unsupported version 2 (max supported version: 1). To open this database, please update your product. (error code 0AS01)" ::: +##### version 3 + +Database file format version `3` includes the improvements of file +format version `2`. Additionally, it supports bigger numerics with a +precision up to 38. +Previously, Hyper only supported numerics up to 18 digits. +The newly added bigger numerics are internally stored as 128-bit values, +while the smaller ones still use 64-bit values. + +To create a new Hyper database file with this version, set +`default_database_version=3`. + + +:::note +The database file format version `2` is supported by Tableau +#TODO add supported Tableau versions +::: + +#### version 4 +Database file format version `4` includes the improvements of file +format version `3`. Additionally, it supports 32-bit floating points as new SQL type. +Previously, Hyper mapped all SQL floating points to 64-bit doubles internally. +Now, Hyper uses 32-bit floats for the SQL types `real` and `float(p)` with +`p` lower than 25. +The types `double precision`, `float` without a `p`, or a p `>= 25` +still use 64-bit doubles. + +Old queries using the affected types might yield different results when switching +to the new version due to the different underlying rounding behavior and arithmetics +of 32-bit floats. +To preserve the old behavior, the used data types must be explicitly changed +to `double precision`. + +:::note +The database file format version `4` will be supported +in a not-yet-determined future version of Tableau. +::: + +