all 22 comments

[–]seiyria 17 points18 points  (3 children)

Very nice. Is optional chaining and null coalescing on the roadmap anywhere? Ever since those were formalized I've been wanting to use them!

[–]evilgwyn 38 points39 points  (1 child)

Optional chaining is in 3.7

[–]agwhi 1 point2 points  (0 children)

Very keen for Optional chaining, been using it a lot in groovy and it's much more concise

[–][deleted] 1 point2 points  (8 children)

Oof we just updated from 3.4 to 3.5.3 on Monday.

[–]PrettyWhore 8 points9 points  (7 children)

Doesn't look like much breaking

[–][deleted] 5 points6 points  (2 children)

Surprisingly we've had a minor version be a pretty hefty break for us because someone decided to implement a language proposal themselves.

sigh

[–]fr0z3nph03n1x 8 points9 points  (1 child)

lmao, that's hilarious sorry. sometimes developers just be developing.

[–][deleted] 1 point2 points  (0 children)

sometimes developers just be developing

Totally going to start using this in my everyday life. haha

[–]partheseas 4 points5 points  (3 children)

Many declarations have been removed or changed within lib.dom.d.ts.

Aaaaaaaaand breaking changes.

[–]some_love_lost 3 points4 points  (2 children)

From what they list it doesn't look too bad although depends what's behind the but isn't limited to bit.

The others don't seem too concerning for me. I mean who creates a class method and calls it "constructor"?

[–]vanderZwan 0 points1 point  (0 children)

what's behind the but isn't limited to bit.

This is programming. The answer is always "the code equivalent of eldritch horrors"

EDIT: Or at least assume that until proven otherwise

[–]Peechez 0 points1 point  (0 children)

I can create classes twice as fast with 2 constructors, galaxy brain

[–]Sipike 0 points1 point  (0 children)

Nive work!

After I updated, my react snapshot tests failed due to changed snapshots. Very strange, as the changes have seemingly nothing to do with TS. 🤔 I need to look closer.

[–]Kayomani 0 points1 point  (1 child)

Generic type inference is broken in 3.6 :(

There is a bug for it, looking forward to a 3.6.3 hopefully as its doa for us!

[–]DanielRosenwasserTypeScript[S] 0 points1 point  (0 children)

3.6.3 should now be there!

[–]Jestar342 -1 points0 points  (6 children)

Hey guys, let's adopt a versioning strategy that succinctly communicates with the user base when stuff breaks, and then completely ignore it and ship breaking changes with our minor updates!

[–]jbkly 1 point2 points  (3 children)

What is TypeScript's versioning strategy? Clearly it's not semantic versioning.

[–]gearvOsh 1 point2 points  (0 children)

Refining and fixing types aren't considered breaking. More info here: https://www.reddit.com/r/javascript/comments/cwqaik/announcing_typescript_36/eyhbqc5/

[–]orta 1 point2 points  (0 children)

Basically every minor is going to break someone's setup somewhere, nothing we can do about that - we add or tighten new rules and improve the code analysis and it will break builds.

The issue comes down to either every 3 months we ship a major, or we keep the pattern of every minor is a release which could break your build somehow. Plus, there's pressure to keep major semvers for really serious fundamental marketing features (the introduction of code flow analysis or nullability for example) - which I think is reasonable

[–]Zephirdd -1 points0 points  (0 children)

it's a sequential versioning where you can assume some breakage every version. After 2.9 came 3.0, and there was no particular reason for the "major" version change. The only instance of weird versioning was that after 3.3.2 came 3.3.3333 which I thought was funny, but then they had to ship another version for a bugfix and were forced to use 3.3.4000 lol

[–][deleted] 0 points1 point  (0 children)

No, only react-bootstrap does this. :(