@rthurJ_@tannerlinsley Fragment masking and co-location hasn’t hit the mainstream, partly because the benefits aren’t obvious until you have a certain app or team scale. Would love for that pattern to be adopted cause I agree it alleviates a lot of pain points in composing data dependencies.
@DavidKPiano@heyImMapleLeaf That gets back to the value of algebraic effects and encoding them in type systems. The value of the indirection as a point to add additional abstraction seems like a bigger win to me. Getting bit by the lack of context provider is a bug I might get in dev not prod.
@SandroMaglione@EffectTS_ I kinda liked the `Live` and `Test` way of bundling "finished" Layers. Would you just add something like:
{
static Live = this.Default;
static Test = Layer.provide(this.DefaultWithoutDependencies, PokeApiUrl.Test);
}
To the service definition to keep similar semantics?
@ssalbdivad@tantaman Complex was the wrong word to use--unnecessarily gross to look at likely more appropriate. I would love to have syntax for switch / pattern matching at the type-level for these cases.
@ssalbdivad@tantaman You'd get massacred in a code review for having a nested ternary resembling a fraction of that complexity, yet it's the control flow primitive being used to build these type cathedrals. Hard not to see it as community-wide tech debt.
@itamarok@sachee That catch directive is neat, will have to keep my eyes on it.
To clarify, when you talk about propagation / "where the same field is used" —are you talking about the propagation of that directive into fragments at the component tree level, or the normalized cache?
@en_JS@cnakazawa@ryanflorence@dan_abramov2 Too much focus on waterfalls and "fetch what you ask for" in regards to the power of GraphQL. The power of the GQL type system and modeling your domain with ADTs/interfaces is still underexplored, especially when paired with pattern matching, which is why Rescript fits so well.
@andrewingram@gregberge_@he_zhenghao I long for react forget so I can stop thinking about this stuff. The amount of mental energy I've spent thinking about referential equality over the last few years is unreal. Internal implementation detail that ends up bleeding all over the place.
TypeScript 4.4 Beta is ready to try!
We want your feedback on our new analyses, strictness flags, symbol/pattern indexers, --help menu revamp, perf improvements, and more, so read up on what's new and give it a shot!
https://t.co/1ZXvgAvpy3
I'm super excited to announce @GraphCDN!!! ⚡️🎉🔥
@TimSuchanek and I co-founded & built the GraphQL CDN we always wanted.
- Scale: Edge caching & smart invalidation
- Inspect: GraphQL analytics & error tracking
- Protect: Query depth limiting
https://t.co/06wSdnnM0z 👈