From 09d92aece7eaa92a6f1d1d57a1f05cae5f3dd910 Mon Sep 17 00:00:00 2001 From: felipebit Date: Tue, 11 Aug 2020 22:02:19 -0300 Subject: [PATCH 1/4] first contribution for tsconfig section --- .../copy/pt/options/noImplicitAny.md | 26 ++++++++++++++++++ .../copy/pt/options/noImplicitReturns.md | 17 ++++++++++++ .../copy/pt/options/noImplicitThis.md | 27 +++++++++++++++++++ .../copy/pt/options/noImplicitUseStrict.md | 23 ++++++++++++++++ .../src/lib/release-info.json | 16 +++++------ 5 files changed, 101 insertions(+), 8 deletions(-) create mode 100644 packages/tsconfig-reference/copy/pt/options/noImplicitAny.md create mode 100644 packages/tsconfig-reference/copy/pt/options/noImplicitReturns.md create mode 100644 packages/tsconfig-reference/copy/pt/options/noImplicitThis.md create mode 100644 packages/tsconfig-reference/copy/pt/options/noImplicitUseStrict.md diff --git a/packages/tsconfig-reference/copy/pt/options/noImplicitAny.md b/packages/tsconfig-reference/copy/pt/options/noImplicitAny.md new file mode 100644 index 000000000000..e3fd719b0716 --- /dev/null +++ b/packages/tsconfig-reference/copy/pt/options/noImplicitAny.md @@ -0,0 +1,26 @@ +--- +display: "Sem 'Any' Implícito" +oneline: "Evita introduzir 'anys' dentro de sua base de código quando um tipo puder ser especificado" +--- + +Em alguns casos, onde nenhuma anotação de tipo está presente, o TypeScript retornará o tipo `any` para uma variável, quando não puder inferir o tipo. + +Isto pode fazer com que alguns erros sejam omitidos, por exemplo: + +```ts twoslash +// @noImplicitAny: false +function fn(s) { + // Nenhum erro? + console.log(s.subtr(3)); +} +fn(42); +``` + +Ativando `noImplicitAny` no entanto, o TypeScript irá emitir um erro sempre que inferir `any`: + +```ts twoslash +// @errors: 7006 +function fn(s) { + console.log(s.subtr(3)); +} +``` diff --git a/packages/tsconfig-reference/copy/pt/options/noImplicitReturns.md b/packages/tsconfig-reference/copy/pt/options/noImplicitReturns.md new file mode 100644 index 000000000000..9a008a0aa4ee --- /dev/null +++ b/packages/tsconfig-reference/copy/pt/options/noImplicitReturns.md @@ -0,0 +1,17 @@ +--- +display: "Sem Retornos Implícitos" +oneline: "Garante que todos os caminhos de código de uma função tenham retorno" +--- + +Quando habilitado, o TypeScript verificará todos os caminhos de código em uma função para garantir que eles retornem um valor. + +```ts twoslash +// @errors: 2366 2322 +function ProcurarFabricanteDeFonesDeOuvido(color: "azul" | "preto"): string { + if (cor === "azul") { + return "beats"; + } else { + "bose"; + } +} +``` diff --git a/packages/tsconfig-reference/copy/pt/options/noImplicitThis.md b/packages/tsconfig-reference/copy/pt/options/noImplicitThis.md new file mode 100644 index 000000000000..6fdb65214a9e --- /dev/null +++ b/packages/tsconfig-reference/copy/pt/options/noImplicitThis.md @@ -0,0 +1,27 @@ +--- +display: "Sem 'This' Implícito" +oneline: "Emite erros quando 'this' poderia ser qualquer um" +--- + +Emite erro nas expressões 'this' com tipo 'any' implícito. + +Por exemplo, a classe abaixo retorna uma função que tenta acessar `this.largura` e `this.area` – mas o contexto para `this` dentro da função dentro de `funcaoObterArea` não é a instância do Retângulo. + +```ts twoslash +// @errors: 2683 +class Retangulo { + largura: number; + altura: number; + + constructor(largura: number, altura: number) { + this.largura = largura; + this.altura = altura; + } + + funcaoObterArea() { + return function () { + return this.largura * this.altura; + }; + } +} +``` diff --git a/packages/tsconfig-reference/copy/pt/options/noImplicitUseStrict.md b/packages/tsconfig-reference/copy/pt/options/noImplicitUseStrict.md new file mode 100644 index 000000000000..af90e1d56976 --- /dev/null +++ b/packages/tsconfig-reference/copy/pt/options/noImplicitUseStrict.md @@ -0,0 +1,23 @@ +--- +display: "Sem 'Use Strict' Implícito" +oneline: "Desabilita 'use strict' na emissão JS" +--- + +Você não deveria precisar disso. Por padrão, ao emitir um arquivo de módulo para um destino não ES6, o TypeScript emite um prólogo `"use strict";` no topo do arquivo. +Esta configuração desabilita o prólogo. + +```ts twoslash +// @showEmit +// @target: ES3 +// @module: AMD +// @noImplicitUseStrict +// @alwaysStrict: false +export function fn() {} +``` + +```ts twoslash +// @showEmit +// @target: ES3 +// @module: AMD +export function fn() {} +``` diff --git a/packages/typescriptlang-org/src/lib/release-info.json b/packages/typescriptlang-org/src/lib/release-info.json index 3e6f557752fb..a117b494e08a 100644 --- a/packages/typescriptlang-org/src/lib/release-info.json +++ b/packages/typescriptlang-org/src/lib/release-info.json @@ -5,26 +5,26 @@ "stable": "3.9.7", "betaMajMin": "4.0", "beta": "4.0.0-beta", - "rc": "3.9.1-rc", - "rcMajMin": "3.9" + "rc": "4.0.1-rc", + "rcMajMin": "4.0" }, - "isRC": false, + "isRC": true, "isBeta": true, "releaseNotesURL": "/docs/handbook/release-notes/typescript-3-9.html", "betaPostURL": "https://devblogs.microsoft.com/typescript/announcing-typescript-4-0-beta/", - "rcPostURL": "https://devblogs.microsoft.com/typescript/announcing-typescript-3-9-rc/", + "rcPostURL": "https://devblogs.microsoft.com/typescript/announcing-typescript-4-0-rc/", "vs": { "stable": { - "vs2017_download": "https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.typescript-397", - "vs2019_download": "https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.typescript-397" + "vs2017_download": "https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.typescript-40rc", + "vs2019_download": "https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.typescript-40rc" }, "beta": { "vs2017_download": "https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.typescript-40beta", "vs2019_download": "https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.typescript-40beta" }, "rc": { - "vs2017_download": "https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.typescript-397", - "vs2019_download": "https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.typescript-397" + "vs2017_download": "https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.typescript-40rc", + "vs2019_download": "https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.typescript-40rc" } } } From 8c2de53d391bedf73d0aa1ba42473f838f161d6e Mon Sep 17 00:00:00 2001 From: felipebit Date: Tue, 11 Aug 2020 22:26:11 -0300 Subject: [PATCH 2/4] first contribution --- .../tsconfig-reference/copy/pt/options/noImplicitReturns.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/tsconfig-reference/copy/pt/options/noImplicitReturns.md b/packages/tsconfig-reference/copy/pt/options/noImplicitReturns.md index 9a008a0aa4ee..ff1dc1e7598b 100644 --- a/packages/tsconfig-reference/copy/pt/options/noImplicitReturns.md +++ b/packages/tsconfig-reference/copy/pt/options/noImplicitReturns.md @@ -7,7 +7,7 @@ Quando habilitado, o TypeScript verificará todos os caminhos de código em uma ```ts twoslash // @errors: 2366 2322 -function ProcurarFabricanteDeFonesDeOuvido(color: "azul" | "preto"): string { +function ProcurarFabricanteDeFonesDeOuvido(cor: "azul" | "preto"): string { if (cor === "azul") { return "beats"; } else { From c0d592489ce9871ef0981daefdbea0dea6fc65c9 Mon Sep 17 00:00:00 2001 From: felipebit Date: Tue, 11 Aug 2020 22:28:52 -0300 Subject: [PATCH 3/4] fix on noImpicitThis.md --- packages/tsconfig-reference/copy/pt/options/noImplicitThis.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/tsconfig-reference/copy/pt/options/noImplicitThis.md b/packages/tsconfig-reference/copy/pt/options/noImplicitThis.md index 6fdb65214a9e..8783faad0aa7 100644 --- a/packages/tsconfig-reference/copy/pt/options/noImplicitThis.md +++ b/packages/tsconfig-reference/copy/pt/options/noImplicitThis.md @@ -1,6 +1,6 @@ --- display: "Sem 'This' Implícito" -oneline: "Emite erros quando 'this' poderia ser qualquer um" +oneline: "Emite erro nas expressões 'this' com tipo 'any' implícito" --- Emite erro nas expressões 'this' com tipo 'any' implícito. From 4ffcc32f1ad7a4c20ce4cede6f71d5b1497bdaed Mon Sep 17 00:00:00 2001 From: felipebit Date: Wed, 12 Aug 2020 12:30:15 -0300 Subject: [PATCH 4/4] =?UTF-8?q?ProcurarFabricanteDeFonesDeOuvido=20to=20pr?= =?UTF-8?q?ocurarFabricanteDeFonesDeOuvido=20and=20do=20Ret=C3=A2ngulo=20t?= =?UTF-8?q?o=20de=20Retangulo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tsconfig-reference/copy/pt/options/noImplicitReturns.md | 2 +- packages/tsconfig-reference/copy/pt/options/noImplicitThis.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/tsconfig-reference/copy/pt/options/noImplicitReturns.md b/packages/tsconfig-reference/copy/pt/options/noImplicitReturns.md index ff1dc1e7598b..92d570a496ec 100644 --- a/packages/tsconfig-reference/copy/pt/options/noImplicitReturns.md +++ b/packages/tsconfig-reference/copy/pt/options/noImplicitReturns.md @@ -7,7 +7,7 @@ Quando habilitado, o TypeScript verificará todos os caminhos de código em uma ```ts twoslash // @errors: 2366 2322 -function ProcurarFabricanteDeFonesDeOuvido(cor: "azul" | "preto"): string { +function procurarFabricanteDeFonesDeOuvido(cor: "azul" | "preto"): string { if (cor === "azul") { return "beats"; } else { diff --git a/packages/tsconfig-reference/copy/pt/options/noImplicitThis.md b/packages/tsconfig-reference/copy/pt/options/noImplicitThis.md index 8783faad0aa7..8ae0a858d8b0 100644 --- a/packages/tsconfig-reference/copy/pt/options/noImplicitThis.md +++ b/packages/tsconfig-reference/copy/pt/options/noImplicitThis.md @@ -5,7 +5,7 @@ oneline: "Emite erro nas expressões 'this' com tipo 'any' implícito" Emite erro nas expressões 'this' com tipo 'any' implícito. -Por exemplo, a classe abaixo retorna uma função que tenta acessar `this.largura` e `this.area` – mas o contexto para `this` dentro da função dentro de `funcaoObterArea` não é a instância do Retângulo. +Por exemplo, a classe abaixo retorna uma função que tenta acessar `this.largura` e `this.area` – mas o contexto para `this` dentro da função dentro de `funcaoObterArea` não é a instância de `Retangulo`. ```ts twoslash // @errors: 2683