* Resimplify typesVersions format
Undoes #536. Needs a matching PR on Definitely Typed before it's ready
to go. (Insert PR number here)
* delete mistakenly added script
Work around the bug in Typescript semver semantics by using a more
precise specifier that works there, as well as standard semver.
The bug in typescript should be fixed soon, so we can change this back
later. In the meantime only 13 packages use typesVersions so it's easy
to change back and forth.
* Deprecate Typescript 3.1
[According to the
schedule](https://github.com/DefinitelyTyped/DefinitelyTyped#older-versions-of-typescript-30-and-earlier),
it's time to deprecate 3.1. I delayed the 3.0 deprecation to match the
4.0 release since it was a complicated one.
This should be much easier. The follow-up tasks are:
1. Update dtslint and dts-critic.
2. Remove ts3.1/ directories from web-animations-js, openpgp, jest,
es-to-primitive.
3. Remove ts3./1 directories from all versions of node. (This is big
enough that it deserves its own task; the default implementations will
have to move up to the next TS version directory since node's types build
from the oldest versions.)
* never forget yarn format
* Fallback to first shipped version
Instead of a hard-coded version. Thanks to @andrewbranch for the idea.
typesVersions subfolders are now expected to cover *older* versions
with the root having the newest version, and
the entry in package.json should be ordered oldest-first now:
For example, a package with 3.2,3.5,3.6 covers these ranges:
3.1-3.2, 3.3-3.5, 3.6, 3.7-4.1
And has the following typesVersions keys:
<=3.2, <=3.5, <=3.6
Publishing this change will block changes to the 18 DT packages that
still have typesVersions entries, so I will fix them locally using the
prerelease package once this PR is merged.
2. Switch installAll to use shipped + next
3. Clean up some TODOs/comments.
I still need to update the step-by-step instructions at the top of
typescript-versions.
1. Add 4.0
2. Remove 2.8
3. Add new `shipped` list for non-RC supported versions.
`shipped` only differs from `supported` during the RC period, when it
will have one less version than `supported`.
4. Undeprecate isPrelease, which is a predicate that returns true for
the RC version before it is available in `shipped`.
* Types-publisher will now publish 2.9--4.0.
* Types-publisher/test/test-runner.ts will invoke dtslint, which will
need to test only 2.9--3.9.
* header-parser will parse 2.9--4.0 as supported and 2.0--2.8 as
unsupported.