[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,
|
||||
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
|
||||
=========
|
||||
|
||||
|
@ -750,6 +820,9 @@ for the Jupyter section.
|
|||
Thank you to Carl Meyer from the Django team for explanation how their
|
||||
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
|
||||
===========================
|
||||
|
|
Loading…
Reference in New Issue