Comments (4)
Initial break down of Work Packages
- general
- map out all custom types of the supported databases. Map them to Prisma Core primitive types.
- Datamodel Parser
- extend
Field
data structure indml
module to store informations on custom types - implement new
DirectiveValidator
for custom types that must be part of the Datasource interface - test cases:
- basic happy path
- use invalid type for a database type
- extend
- Migration Engine
- core: implement new algorithm to diff custom directives. This will require us to rewrite the complete diffing logic. This will diff the
ast
than thedml
data structures. This will lead to a breaking change of the structure of thesteps.json
. - sql connector:
- calculation of sql schema
- diffing of sql schemas
- add SQL rendering to database step applier
- core: implement new algorithm to diff custom directives. This will require us to rewrite the complete diffing logic. This will diff the
- Query Engine
- We probably need to implement some kind of value coercion here. This is needed to e.g. coerce the value of a field like
field String @pg.json
from the underyling json type to String. - This will require significant work for the
InternalDatamodel
and theDatamodelConverter
. We will have to work on bringing theInternalDatamodel
and thedml::Datamodel
closer together.
- We probably need to implement some kind of value coercion here. This is needed to e.g. coerce the value of a field like
- Introspection Engine:
- core: no work required
- connector:
- verify that the
sql-schema-describer
can handle compound custom types - adapt Datamodel calculation so that custom types are put into the model
- verify that the
- Language Tools:
- the connector must expose the available
FieldTypeConstructor
s - create an interface that can be consumed by the vs code plugin (consider adding it to MCF)
- implement auto completion
- the connector must expose the available
from prisma-engines.
I have asked for clarification of the spec: prisma/specs#173
from prisma-engines.
Native types got stabilized in 2.17!
from prisma-engines.
See https://github.com/prisma/prisma/releases/tag/2.17.0
from prisma-engines.
Related Issues (20)
- [DA] Planetscale engine tests: nested_createmany_fail_dups HOT 1
- [DA] Planetscale engine tests: one2m_mix_required_writable_readable HOT 2
- [DA] Planetscale engine tests: gracefully_fails_when_uniq_violation HOT 1
- [DA] Planetscale engine tests: create_many_error_dups HOT 1
- [DA] Planetscale engine tests: apply_number_ops HOT 1
- [DA] Planetscale engine tests: upsert_fails_if_filter_dont_match HOT 1
- psl: Can not get documentation from model when these is a empty line. HOT 5
- Using `createMany` with SQLite in tests results in a panic with JSON protocol HOT 4
- `expected value at line 1 column 1` on overriden datasources with some connection strings HOT 4
- GraphQL playground equivalent for JSON protocol
- Why use exclusive locking mode in SQLite? HOT 7
- Binary engine: `--enable-playground` should imply `--engine-protocol graphql`
- Publish crates to crates.io HOT 13
- Avoid intermediary reads when doing nested updates
- How to start prisma engine
- Unify `native` and `all` features naming
- can we support batch updateManyX interface?
- How to support other databases, such as Dameng? HOT 1
- called Result::unwrap() on an Err value: Os { code: 2, kind: NotFound, message: "No such file or directory" } HOT 4
- Evaluate using Profile-Guided Optimization (PGO) for Prisma
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from prisma-engines.