enso/project
Radosław Waśko 6f86115498
Proper implementation of Value Types in Table (#6073)
This is the first part of the #5158 umbrella task. It closes #5158, follow-up tasks are listed as a comment in the issue.

- Updates all prototype methods dealing with `Value_Type` with a proper implementation.
- Adds a more precise mapping from in-memory storage to `Value_Type`.
- Adds a dialect-dependent mapping between `SQL_Type` and `Value_Type`.
- Removes obsolete methods and constants on `SQL_Type` that were not portable.
- Ensures that in the Database backend, operation results are computed based on what the Database is meaning to return (by asking the Database about expected types of each operation).
- But also ensures that the result types are sane.
- While SQLite does not officially support a BOOLEAN affinity, we add a set of type overrides to our operations to ensure that Boolean operations will return Boolean values and will not be changed to integers as SQLite would suggest.
- Some methods in SQLite fallback to a NUMERIC affinity unnecessarily, so stuff like `max(text, text)` will keep the `text` type instead of falling back to numeric as SQLite would suggest.
- Adds ability to use custom fetch / builder logic for various types, so that we can support vendor specific types (for example, Postgres dates).

# Important Notes
- There are some TODOs left in the code. I'm still aligning follow-up tasks - once done I will try to add references to relevant tasks in them.
2023-03-31 16:16:18 +00:00
..
src/main/scala/licenses Use SimpleFormatter.formatMessage to replace {0} with actual parameters (#5870) 2023-03-11 00:15:58 +00:00
BenchTasks.scala Bump SBT and Scalafmt (#1203) 2020-10-22 16:12:28 +02:00
build.properties Update ZIO library (#6072) 2023-03-28 07:58:59 +00:00
BuildInfo.scala Another attempt at M1 compilation (#3859) 2022-11-09 15:26:25 +00:00
Cargo.scala Use SimpleFormatter.formatMessage to replace {0} with actual parameters (#5870) 2023-03-11 00:15:58 +00:00
CopyTruffleJAR.scala Bump SBT and Scalafmt (#1203) 2020-10-22 16:12:28 +02:00
CustomLogManager.scala Use SimpleFormatter.formatMessage to replace {0} with actual parameters (#5870) 2023-03-11 00:15:58 +00:00
Distribution.scala Bump SBT and Scalafmt (#1203) 2020-10-22 16:12:28 +02:00
DistributionPackage.scala Report errors when generating indexes (#6123) 2023-03-30 09:59:49 +00:00
Editions.scala Nightly proccess preparations: Setting Enso version through the environment (#3241) 2022-02-07 15:14:32 +01:00
EnvironmentCheck.scala Generate native image for engine-runner (#3638) 2022-09-22 14:45:10 +00:00
FrgaalJavaCompiler.scala Proper implementation of Value Types in Table (#6073) 2023-03-31 16:16:18 +00:00
GatherLicenses.scala Register instruments/language in their own compilation units to fix the sbt build issues (#3509) 2022-06-13 14:09:08 +00:00
GenerateFlatbuffers.scala Use SimpleFormatter.formatMessage to replace {0} with actual parameters (#5870) 2023-03-11 00:15:58 +00:00
LauncherShimsForTest.scala Use SimpleFormatter.formatMessage to replace {0} with actual parameters (#5870) 2023-03-11 00:15:58 +00:00
LibraryManifestGenerator.scala Preinstalling With Dependencies (#1981) 2021-11-23 11:51:17 +03:00
NativeImage.scala New documentation parser (#5917) 2023-03-15 15:43:51 +00:00
Platform.scala Optimize import/export resolution (#5700) 2023-03-01 08:53:29 +00:00
plugins.sbt New documentation parser (#5917) 2023-03-15 15:43:51 +00:00
RecompileParser.scala New documentation parser (#5917) 2023-03-15 15:43:51 +00:00
StdBits.scala Add a common-polyglot-core-utils project (#5855) 2023-03-11 09:27:26 +00:00
VerifyReflectionSetup.scala Fix the project manager reflection configuration (#1394) 2021-01-14 10:46:01 +00:00
WithDebugCommand.scala Tweaks to make benchmarking easier (#3961) 2022-12-08 20:30:19 +00:00