[pep8002] TypeScript
This commit is contained in:
parent
05d7ee22e5
commit
5138fd0336
73
pep-8002.rst
73
pep-8002.rst
|
@ -588,6 +588,76 @@ They retired (`Adrian's post
|
||||||
9 years into the project's history. Following the stepping down,
|
9 years into the project's history. Following the stepping down,
|
||||||
the DEP process was defined.
|
the DEP process was defined.
|
||||||
|
|
||||||
|
|
||||||
|
TypeScript
|
||||||
|
==========
|
||||||
|
|
||||||
|
The governance structure is not externally documented besides the
|
||||||
|
`CONTRIBUTING.md
|
||||||
|
<https://github.com/Microsoft/TypeScript/blob/master/CONTRIBUTING.md>`_
|
||||||
|
document in the main TypeScript repository.
|
||||||
|
|
||||||
|
Key people and their functions
|
||||||
|
------------------------------
|
||||||
|
|
||||||
|
There is a formal design team and a release management team working at
|
||||||
|
Microsoft. The main person behind the project is currently Anders
|
||||||
|
Hejlsberg as some of the original members of the team have left the
|
||||||
|
company.
|
||||||
|
|
||||||
|
Regular decision process
|
||||||
|
------------------------
|
||||||
|
|
||||||
|
Microsoft, where the project is developed, has a strong planning culture
|
||||||
|
so development roadmaps are released long in advanced, notes from
|
||||||
|
design discussions held at Microsoft get published quickly and meetings
|
||||||
|
are sometimes broadcast using Skype.
|
||||||
|
|
||||||
|
External contributions are encouraged through pull requests on GitHub.
|
||||||
|
Suggestions for new use cases or features are given by issues on GitHub.
|
||||||
|
This serves like an ad-hoc PEP-like process. There is some discussion
|
||||||
|
over social media (Twitter) as well.
|
||||||
|
|
||||||
|
Controversial decision process
|
||||||
|
------------------------------
|
||||||
|
|
||||||
|
Hejlsberg is the central figure of the project in terms of language
|
||||||
|
design, sythesizing community needs into a cohesive whole. There is
|
||||||
|
no formal process to externally contribute to the design of the
|
||||||
|
language.
|
||||||
|
|
||||||
|
The TypeScript team filters through and integrates community
|
||||||
|
suggestions. The main advantages of this setup are that there is
|
||||||
|
strong and consistent design with dependable scheduling and
|
||||||
|
execution. While there is transparency of intentions and plans, the
|
||||||
|
disadvantage of this model is that community involvement is limited
|
||||||
|
to pull requests and suggestions.
|
||||||
|
|
||||||
|
Planning a new release
|
||||||
|
----------------------
|
||||||
|
|
||||||
|
Microsoft determines the release schedule, communicates dates and
|
||||||
|
features well in advance. Nightly builds are usually stable (with
|
||||||
|
a significant portion of users on this release form).
|
||||||
|
|
||||||
|
Versioned releases are done every 1 - 3 months, with a roadmap available
|
||||||
|
on GitHub.
|
||||||
|
|
||||||
|
Changes in the process over time
|
||||||
|
--------------------------------
|
||||||
|
|
||||||
|
TypeScript is likely the first notable project by Microsoft developed
|
||||||
|
fully in the open (versus source-available).
|
||||||
|
|
||||||
|
Open-sourcing of TypeScript by Microsoft was a planned feature from the
|
||||||
|
inception of the project. Before the first open release was made, the
|
||||||
|
language was driven fully by needs identified by the original teams and
|
||||||
|
the early in-house users. The initial open-sourcing happened via
|
||||||
|
the now-defunct Microsoft CodePlex platform. It didn't have
|
||||||
|
a well-defined routine of accepting external contributions. Community
|
||||||
|
engagement rose significantly after the project got moved.
|
||||||
|
|
||||||
|
|
||||||
Microsoft
|
Microsoft
|
||||||
=========
|
=========
|
||||||
|
|
||||||
|
@ -750,6 +820,9 @@ for the Jupyter section.
|
||||||
Thank you to Carl Meyer from the Django team for explanation how their
|
Thank you to Carl Meyer from the Django team for explanation how their
|
||||||
project's governance is set up.
|
project's governance is set up.
|
||||||
|
|
||||||
|
The TypeScript and Swift sections were created after conversations with
|
||||||
|
Joe Pamer and Vlad Matveev. Thanks!
|
||||||
|
|
||||||
|
|
||||||
Annex 1: Template questions
|
Annex 1: Template questions
|
||||||
===========================
|
===========================
|
||||||
|
|
Loading…
Reference in New Issue