Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Translation into Brazilian Portuguese #208

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
99 changes: 49 additions & 50 deletions 000-packages.md
Original file line number Diff line number Diff line change
@@ -1,75 +1,74 @@
# 000 - Packages
#000 – Pacotes

Yii3 team divided the framework into several packages that conform to the following agreements.
A equipe do Yii3 dividiu o framework em vários pacotes que estão em conformidade com os seguintes acordos.

For all packages, the GitHub repository name exactly matches the Packagist package name.
Para todos os pacotes, o nome do repositório GitHub corresponde exatamente ao nome do pacote Packagist.

For a full list of packages and their building status,
see [status page at yiiframework.com](https://www.yiiframework.com/status/3.0).
Para obter uma lista completa de pacotes e seus status de construção,
consulte a [página de status em yiiframework.com](https://www.yiiframework.com/status/3.0).

## Yii-specific packages (framework and extensions)
## Pacotes específicos do Yii (framework e extensões)

- named `yiisoft/yii-something` or more specific: `yii-type-something` e.g.:
- modules: `yii-module-users`, `yii-module-pages`
- themes: `yii-theme-adminlte`, `yii-theme-hyde`
- widgets: `yii-widget-datepicker`
- ...
- titled as "Yii Framework ..."
- may have any dependencies and Yii-specific code

## General purpose packages (libraries)
- chamado `yiisoft/yii-something` ou mais especificamente: `yii-type-something`, por exemplo:
- módulos: `yii-module-users`, `yii-module-pages`
- temas: `yii-theme-adminlte`, `yii-theme-hyde`
- widgets: `yii-widget-datepicker`
- ...
- intitulado como "Yii Framework ..."
- pode ter quaisquer dependências e código específico do Yii

## Pacotes de uso geral (bibliotecas)

- you can use these independently of Yii Framework
- named as `yiisoft/something` without yii-prefix
- titled as "Yii ..."
- must not have dependencies on any Yii-specific packages
- should have as fewer dependencies as possible
- você pode usá-los independentemente do Framework Yii
- nomeado como `yiisoft/something` sem prefixo yii
- intitulado como "Yii ..."
- não deve ter dependências de nenhum pacote específico do Yii
- deve ter o mínimo de dependências possível

## Configs and defaults
## Configurações e padrões

The following applies to both Yii-specific packages and general purpose packages:
O seguinte se aplica tanto a pacotes específicos do Yii quanto a pacotes de uso geral:

- Package may have `config` directory with Yii-specific defaults.
- Package may have "config-plugin" in "extra" section of `composer.json`.
- Package mustn't have dependencies in `require` section of `composer.json` that are used in `config` only.
- You should namespace parameters with `vendor/package-name`:
- O pacote pode ter um diretório `config` com padrões específicos do Yii.
- O pacote pode ter "config-plugin" na seção "extra" do `composer.json`.
- O pacote não deve ter dependências na seção `require` do `composer.json` que são usadas apenas no `config`.
- Você deve definir parâmetros de namespace com `vendor/package-name`:

```php
return [
'vendor/package-name' => [
'param1' => 1,
'param2' => 2,
],
'vendor/nome-do-pacote' => [
'param1' => 1,
'param2' => 2,
],
];
```

## Versions
## Versões

All packages follow [SemVer](https://semver.org/) versioning:
Todos os pacotes seguem versionamento [SemVer](https://semver.org/):

- `x.*.*` - incompatible API changes.
- `*.x.*` - add functionality (backwards-compatible).
- `*.*.x` - bug fixes (backwards-compatible).
- `x.*.*` - alterações de API incompatíveis.
- `*.x.*` - adiciona funcionalidade (compatível com versões anteriores).
- `*.*.x` - correções de bugs (compatível com versões anteriores).

The first stable version should be 1.0.0.
A primeira versão estável deve ser 1.0.0.

Each package version number doesn't depend on any other package version or framework name/version,
only on its own public contract.
The framework as a whole has the "Yii3" name.
Cada número de versão do pacote não depende de nenhuma outra versão do pacote ou nome/versão da estrutura, apenas no seu próprio contrato público.
O framework como um todo tem o nome "Yii3".

It's alright to use packages with different major versions together, as long as they're compatible.
Não há problema em usar pacotes com diferentes versões principais juntos, desde que sejam compatíveis.

## PHP versions support
## Suporte a versões PHP

The support of PHP versions supported for a package depends on
[PHP versions life cycle](https://www.php.net/supported-versions.php).
O suporte de versões PHP suportadas por um pacote depende de
[Ciclo de vida das versões PHP](https://www.php.net/supported-versions.php).

- Package versions with active support MUST support all PHP versions that have active support.
- Both packages and application templates MUST have supported versions that receive bug and security fixes.
These SHOULD correspond to PHP versions receiving security fixes.
- Packages and application templates MIGHT have supported versions that work with unsupported PHP versions.
- Bumping the minimal PHP version in a package or an application template is a minor change.
- Versões de pacotes com suporte ativo DEVEM suportar todas as versões do PHP que possuem suporte ativo.
- Tanto os pacotes quanto os modelos de aplicação DEVEM ter versões suportadas que recebam correções de bugs e segurança.
DEVEM corresponder às versões do PHP que recebem correções de segurança.
- Pacotes e modelos de aplicativos PODEM ter versões suportadas que funcionam com versões PHP não suportadas.
- Colocar a versão mínima do PHP em um pacote ou modelo de aplicativo é uma pequena alteração.

## composer.json
## compositor.json

A logical OR operator in version ranges MUST use double pipe (`||`). For example: `"yiisoft/arrays": "^1.0 || ^2.0"`.
Um operador lógico OR em intervalos de versão DEVE usar barra vertical dupla (`||`). Por exemplo: `"yiisoft/arrays": "^1.0 || ^2.0"`.
96 changes: 48 additions & 48 deletions 001-yii-values.md
Original file line number Diff line number Diff line change
@@ -1,73 +1,73 @@
# 001 - Yii goal and values
#001 – Objetivos e valores do Yii

## Goal
## Meta

The Yii project aims to build and support _practical_ and _helpful_ tools and community.
O projeto Yii visa construir e apoiar ferramentas e comunidades _práticas_ e _úteis_.

## Values
## Valores

The values we express in our work support the goal. We try to
Os valores que expressamos em nosso trabalho apoiam o objetivo. Nós tentamos

- Be practical
- [High performance](#high-performance)
- [Sensible defaults and flexibility](#sensible-defaults-and-flexibility)
- [Be practice-oriented](#be-practice-oriented)
- Be helpful
- [Be simple](#be-simple)
- [Be explicit](#be-explicit)
- [Be consistent](#be-consistent)
- Ser prático
- [Alto desempenho](#high-performance)
- [Padrões concisos e flexibilidade](#sensible-defaults-and-flexibility)
- [Ser orientado para a prática](#be-practice-oriented)
- Ser útil
- [Ser simples](#be-simple)
- [Ser explícito](#be-explicit)
- [Ser consistente](#be-consistent)

## Be practical
## Ser prático

### High performance
### Alta performance

Performance is a necessary condition of practicality. Software shouldn't waste machine resources or human resources.
O desempenho é uma condição necessária de praticidade. O software não deve desperdiçar recursos de máquinas ou recursos humanos.

### Sensible defaults and flexibility
### Padrões concisos e flexibilidade

We prefer sensible defaults and conventions that users can customize.
We seek a balance between flexibility, discipline and simplicity that meets common needs.
Preferimos padrões e convenções concisos que os usuários possam personalizar.
Buscamos um equilíbrio entre flexibilidade, disciplina e simplicidade que atenda às necessidades comuns.

### Be practice-oriented
### Ser orientado para a prática

We prefer practice to theory. For example:
Preferimos a prática à teoria. Por exemplo:

- Solutions for known use cases should avoid excess complexity by providing only needed flexibility.
- Standard implementations should take practical use into account.
- Experience is at least as useful as theory in guiding design.
- Context is critical in determining appropriateness.
- As soluções para casos de utilização conhecidos devem evitar o excesso de complexidade, fornecendo apenas a flexibilidade necessária.
- As implementações padrão devem levar em conta o uso prático.
- A experiência é pelo menos tão útil quanto a teoria para orientar o design.
- O contexto é fundamental para determinar a adequação.

## Be helpful
## Ser útil

This value guides technical decisions as well as community activity.
Consideration of how software features help users should guide development.
Community-wise, we value any helpful contribution, be it a pull request or an answer in the forum.
Este valor orienta as decisões técnicas, bem como as atividades da comunidade.
A consideração de como os recursos de software ajudam os usuários deve orientar o desenvolvimento.
Em termos de comunidade, valorizamos qualquer contribuição útil, seja uma solicitação pull ou uma resposta no fórum.

When the other principles could conflict, we choose a solution that's more helpful to the community.
Quando os outros princípios podem entrar em conflito, escolhemos uma solução que seja mais útil para a comunidade.

### Be simple
### Ser simples

Solutions should be simple and expressive:
As soluções devem ser simples e expressivas:

- We use as much complexity as needed and no more.
- We avoid ugly solutions unless there is no alternative.
- Fewer rules are better than more rules.
- Usamos tanta complexidade quanto necessária e nada mais.
- Evitamos soluções feias, a menos que não haja alternativa.
- Menos regras são melhores do que mais regras.

### Be Explicit
### Ser explícito

We prefer explicit, obvious solutions and code. Solutions should clearly express exactly what they do. For example:
Preferimos soluções e códigos explícitos e óbvios. As soluções devem expressar claramente o que fazem. Por exemplo:

- A straightforward solution is better than an abstract one unless the abstraction has practical purpose.
- Loud fails are better than silent fails or masking errors.
- Explicit casts are better than PHP type juggling, type hints are good.
- No magic unless necessary.
- Uma solução direta é melhor que uma abstrata, a menos que a abstração tenha um propósito prático.
- Falhas ruidosas são melhores que falhas silenciosas ou erros de mascaramento.
- As conversões explícitas são melhores que o malabarismo de tipo PHP, as dicas de tipo são boas.
- Nenhuma magia, a menos que seja necessário.

### Be consistent
### Ser consistente

We try to be consistent in:
Tentamos ser consistentes em:

- Code style
- Naming
- Design
- Structure
- Values and goals
- Estilo de código
- Nomeação
- Projeto
- Estrutura
- Valores e objetivos
31 changes: 15 additions & 16 deletions 002-issue-workflow.md
Original file line number Diff line number Diff line change
@@ -1,27 +1,26 @@
# 002 - Issue workflow
#002 – Resolução de problemas

The process of handing incoming issues is the following:
O processo de resolução de questões recebidas é o seguinte:

![Issue workflow schema](images/002-issue-workflow.svg)
![Esquema da resolução de problemas](images/002-issue-workflow.svg)

## Roles
## Funções

We've many roles:
Temos muitas funções:

- Process managers - initially triage issues and manage labels.
- Decision makers - participate in discussions moving them to resolutions.
- Bug hunters - verifying bugs.
- Contributors - create code for pull requests.
- Code reviewers - review pull requests.
- Gerentes de processos - inicialmente fazem a triagem dos problemas e gerenciam os rótulos.
- Decisores – participam em discussões levando-os a resoluções.
- Caçadores de bugs - verificam bugs.
- Colaboradores - criam código para pull requests.
- Revisores de código - revisam solicitações pull.

A single person may take one or more roles in the issue resolving process.
Uma única pessoa pode assumir uma ou mais funções no processo de resolução de problemas.

## Labels
## Etiquetas

We label issues to mark many things: current status, issue type,
component affected. Status labels speak for themselves.
Rotulamos os problemas para marcar muitas coisas: status atual, tipo de problema,
componente afetado. Os rótulos de status falam por si.

## Milestones

Issues aren't assigned to milestones unless they're critical or there is
a likely good pull request exists.
Os problemas não são atribuídos a milestones, a menos que sejam críticos ou seja uma provável solicitação pull boa.
48 changes: 24 additions & 24 deletions 016-security-workflow.md
Original file line number Diff line number Diff line change
@@ -1,42 +1,42 @@
# 016 - Security workflow
#016 - Resolução de falhas de segurança

Security issues are typically sent via [a security form](https://www.yiiframework.com/security).
Problemas de segurança normalmente são enviados por meio do [formulário de segurança](https://www.yiiframework.com/security).

If an issue is reported directly to a public page such as repository issue or a forum topic, get the message
and delete the issue. Say thanks to the reporter and point to the security form for next time.
Se um problema for relatado diretamente em uma página pública, como um problema de repositório ou um tópico de fórum, receba a mensagem
e exclua o problema. Agradeça ao usuário e indique o formulário de segurança para a próxima vez.

## Verify
## Verificar

Verify that the issue is valid. Request more information if needed.
Verifique se o problema é válido. Solicite mais informações se necessário.

## Add security advisory
## Adicionar aviso de segurança

Create draft GitHub security advisory.
Crie um rascunho de comunicado de segurança do GitHub.

### Find out severity
### Descubra a gravidade

1. Get CVSS score using [NVD calculator](https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator).
2. Choose severity based on the [rating scale](https://www.first.org/cvss/specification-document#Qualitative-Severity-Rating-Scale).
1. Obtenha a pontuação CVSS usando a [calculadora NVD](https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator).
2. Escolha a gravidade com base na [escala de classificação](https://www.first.org/cvss/specification-document#Qualitative-Severity-Rating-Scale).

### Give credit to the reporter
### Dê crédito ao usuário

Ask reporter if he wants a credit for finding the issue. If so, point to his GitHub account.
Pergunte ao usuário se ele deseja crédito por encontrar o problema. Em caso afirmativo, aponte para sua conta no GitHub.

## Request a CVE number
## Solicite um número CVE

When you're ready, request a CVE.
Quando estiver pronto, solicite um CVE.

## Prepare a patch
## Prepare um patch

Prepare a pull request fixing the issue. GitHub allows doing it in a private fork.
Prepare uma solicitação pull corrigindo o problema. O GitHub permite fazer isso em um fork privado.

## Wait till CVE number is allocated
## Espere até que o número CVE seja alocado

It usually takes several days.
Geralmente leva vários dias.

## Release
## Liberar

- Merge the patch pull request right before tagging next package release.
- Publish security advisory.
- Add CVE to [FriendsOfPHP/security-advisories](https://github.com/FriendsOfPHP/security-advisories).
See [#488](https://github.com/FriendsOfPHP/security-advisories/pull/488) as example.
- Mescle a solicitação de pull do patch antes de marcar o próximo lançamento do pacote.
- Publique avisos de segurança.
- Adicione o CVE [FriendsOfPHP/security-advisories](https://github.com/FriendsOfPHP/security-advisories).
Veja [#488](https://github.com/FriendsOfPHP/security-advisories/pull/488) como exemplo.
Loading
Loading