3.0.0
I've started thinking about any breaking changes I'd like to make for the v3 release. So far they're pretty much all type related and serve to either improve inference or make something stricter, which is an evolution of v2's rewrite to TypeScript.
- eliminate (or drastically reduce the size of) the
Trilogyclass- basically all it does is duplicate methods on
Modelinstances, but with worse capability for type inference and is therefore less safe
- basically all it does is duplicate methods on
- remove dot-delimited strings in favor of explicitly passing the model & column names separately
- improve type inference, particularly for models by using the provided schemas
- make types stricter where possible
@citycide when are you planning to release v3?
@citycide when are you planning to release v3?
Right now I'm only in the brainstorm stage, so these changes haven't begun yet. I just wanted to let people know what I'm thinking about doing for the next version to get feedback and guide contributions.
okay cool!
I have a branch open for this at v3 and have made some progress but there's a fair amount of work left. I've got pretty intelligent type inference that's frustratingly close to working how I want it, but still has some issues with nullability. There's also a lot of any casting and such going on at the moment which I'd like to clean up at some point.
There are also a lot of comments asking for this TypeScript PR because I have to do things like this all over the place (lots of generics):
https://github.com/citycide/trilogy/blob/fe90ddf72942a8339c10dace20caf70615498c0e/src/model.ts#L48
I'd appreciate any help on getting this moving — I've been beating my head against it for a while!