The GraphQL payload has redundant copies of the objects within. Relay has an experimental (dead) exploration of normalising data on the server[1] in order to avoid that transport cost.
For @defer, the transport is a stream[2] where subsequent payloads are tracked ("pending") and as those payloads arrive they are "patched" into the existing data at the appropriate path.
Both of these are effectively implementations of this Progressive JSON concept.
I can picture a future where both the JSX and object payloads are delivered progressively over the wire in the same stream, and hydrate React and Relay stores alike. That could potentially simplify and eliminate the need for Relay to synchronise it's own updates with React. It would also potentially be a suitable compile target for decoupling, React taking ownership of a normalised reactive object store (with state garbage collection which is a hard problem for external stores to solve) with external tools like Relay and TanStack Query providing the type-generation & fetching implementation details.
Using `new Promise()` in the client-side store would also mean you could potentially shrink the component API to this. `useFragment(fragment IssueAssignee on Issue { assignee { name }}, issue)` could instead be `const assignee = use(issue.assignee)` and would suspend (or not) appropriately.
I haven't carried cash or wallet for about a year now. All I use is my phone (CommBank app, which uses PayPass network). Whether it's a coffee, snack for my kid, weekly shopping or a night out, I can barely even remember the times I've been caught out. Maybe twice in a year. Only times I take my wallet out the door is if I'm driving (I live in Melbourne and mostly walk or take trams) or going to the Doctors or something that requires ID/Medicare.
Food trucks, weekend markets, everyone has an EFTPOS/MPOS or CommBank tablet in their business now.
Out of curiosity, where do you keep your myki? It's the one thing that ties me to carrying around a thing that can hold my cards.
I don't carry cash, and quite often don't even carry my wallet, but I need somewhere to stash my myki if I'm taking the train & tram to work. Given that it may have anywhere between $100 and $1500 worth of value on it at a time, I don't really just want to throw it in a pocket.
I think your parent poster was stposting. I doubt Ola will allow cash payments in Aus. In India lot of people carry cash hence they allow cash payments from what I've heard.
As someone who has spent a long time in New Zealand it was striking to me how many places you needed cash for in Australia. EFTPOS is not ubiquitous there like it is here.
I would hazard a guess you could make 99.5% of transactions with EFTPOS in NZ - the exceptions might be a few vendors at farmers markets (most take EFTPOS), sausage sizzles/ad-hoc fundraisers, fruit honesty boxes on the side of the road, etc. Maybe only 85% would take credit/debit, though.
From my experience in sydney/melbourne more places take credit/debit than NZ but also more places are cash only. Not as much penetration for EFTPOS.
I was in Canberra for a week late last year and I never used cash, everywhere took debit cards. Some had a surcharge for using debit over eftpos but I didn't see any shops or restaurants that were cash only. Market stalls were, unlike in NZ where mobile EFTPOS is almost everywhere.
It depends on when you were in Australia. EFTPOS fees for small amounts were essentially outlawed a year or so ago. That has made a big difference to pushing the final hold-out businesses into cashless in the last few months.
New Zealand for whatever reason I used cash a lot too. Australia you can pay stuff for small sums like $1 on card almost everywhere so no point to carry cash most of the time
NZ's government thinks (or thought, it's changed recently) that the market would sort it out so the current rates are up to 3% for credit and 1.5% for debit, again Mastercard's list is here: https://www.mastercard.co.nz/en-nz/about-mastercard/what-we-...
EFTPOS transaction are generally fee-free for all parties.
I absolutely love exploring all the food and coffee around Melbourne and I can't even remember the last one that didn't take PayPass. Even the market stalls and coffee carts have an MPOS or CBA tablet. Maybe a couple of super hipster places take cash only for the image, but I haven't actually found one yet.
In my experience it's rather the anti-hipster places: cheap Chinese dumplings, Vietnamese noodles etc, typically family run with minimal decor, overhead, wages, cleanliness and tax payments (much easier to underreport cash-only earnings). But often great food if you pick a busy place!
I'd say those businesses will have to evolve or die out. There is a great Japanese place in our town that I stopped frequenting purely because they didn't have an EFTPOS machine, and I often have to cash on me when returning from a customer visit etc. and I wanted a snack to bring home. Since they (finally) installed one after new owners took over, I go back there frequently now.
With PayWave becoming so popular for even $1 transactions at the counter by literally waving your debit card at a machine, I haven't carried significant cash in my wallet for years now.
When they say “cash only” everyone seems to understand it means “we dodge our taxes”. But the food is usually pretty cheap. I’d say they probably won’t evolve unless they start getting prosecuted for tax avoidance...
I totally understand the undercurrent of the 'cash only' operators - but I think that there will always be a portion of your customers who will use cash (travelling tourists etc.) as well as a large chunk who will want to use some form of electronic payment.
Far better for a business IMO to offer both - then they can still pocket most of the cash transactions without declaring, yet still show legitimacy to the ATO by having electronic payment records, which should keep the auditors at bay.
Our town is popular for market and pop up stalls all over the place, and while these used to be cash only for nearly as long as I have lived here, I have been noticing that a lot of them now have portable EFTPOS machines, or smartphones connected to Square or other payment swipers. Especially those that sell clothing or items >$20 because locals just don't seem to carry large notes around any more on a casual basis.
With all due respect, I'd say this is definitely a product of your specific location/life circumstances. I live in one of the biggest cities in North America and "cash only" is not a hurdle for restaurants here.
> with GraphQL there are relations that get used through each other which is less straightforward to determine when pruning or updating your API
That can be easier since you can add metrics to each individual field rather than url, allowing you to deprecate rarely used fields knowing what you'll break and alert only those who are using it of the change
That could be true, but field would not be enough, at least in my limited understanding. I can imagine that I'd also want to know which information is retrieved through other pieces of information. So lets say `Post -> Comments -> Author -> Avatar`, rather than just `Avatar`. This is important because it shows that whatever I do I should at least support the relation to `Avatar` through `Post -> Comments -> Author`.
Is this "adding of metrics" to fields part of graphql api, or something the data store would provide? Apologies but I've only just started exploring graphql.
No, not part of graphql. Apollo Optics (no relation) is an option, or you can instrument the fields yourself just like you would implement any other instrumentation.
Do you have any links to how the errors are passed through to the client? Do you mean that they imitate the incoming certificate exactly or send the information by some other method?
You want to do that both on your intercepted LAN and with a direct connection and compare the results. If they both give the same results you can be happy your MitM proxy is at least treating insecure sites equivalently. You still lose the advantage that you browser will tell you why the site is insecure
Safe FME[0] is an enterprise licensed version of this. It's can read and write almost any format and has some quite unique paradigms for transforming data structures. I wish there was an open source clone of it.
For @defer, the transport is a stream[2] where subsequent payloads are tracked ("pending") and as those payloads arrive they are "patched" into the existing data at the appropriate path.
Both of these are effectively implementations of this Progressive JSON concept.
I can picture a future where both the JSX and object payloads are delivered progressively over the wire in the same stream, and hydrate React and Relay stores alike. That could potentially simplify and eliminate the need for Relay to synchronise it's own updates with React. It would also potentially be a suitable compile target for decoupling, React taking ownership of a normalised reactive object store (with state garbage collection which is a hard problem for external stores to solve) with external tools like Relay and TanStack Query providing the type-generation & fetching implementation details.
Using `new Promise()` in the client-side store would also mean you could potentially shrink the component API to this. `useFragment(fragment IssueAssignee on Issue { assignee { name }}, issue)` could instead be `const assignee = use(issue.assignee)` and would suspend (or not) appropriately.
[1]: https://github.com/facebook/relay/blob/main/packages/relay-r...
[2]: https://github.com/graphql/graphql-wg/blob/main/rfcs/DeferSt...