Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
105f3cb
[refact]: multiple files + deletions
kromodoro Sep 2, 2025
26405c0
[refact]: removed osbolete file
kromodoro Sep 2, 2025
65880e9
[feat]: missing files
kromodoro Sep 2, 2025
e39a2e6
[refact]: translated (pt/tutorials-and-examples/cms/articles-controller)
kromodoro Sep 2, 2025
9c9d2f5
[refact]: translated (pt/appendices/5-0-migration-guide.rst)
kromodoro Sep 2, 2025
de20c6b
[refact]: translated (pt/appendices/migration-guides.rst)
kromodoro Sep 2, 2025
9494458
[refact]: translated (pt/appendices/5-0-upgrade-guide.rst)
kromodoro Sep 2, 2025
86095eb
[refact]: linked (pt/plugins.rst)
kromodoro Sep 2, 2025
df93a4d
[refact]: translated (pt/appendices/5-1-migration-guide.rst)
kromodoro Sep 3, 2025
5b4b3ce
[refact]: translated (pt/appendices/5-2-migration-guide.rst)
kromodoro Sep 3, 2025
0f058b6
[refact]: translated (pt/appendices/phpunit10.rst)
kromodoro Sep 3, 2025
ee94528
[refact]: translated (pt/release-policy.rst)
kromodoro Sep 3, 2025
535bec7
[refact]: translated (pt/contributing/code.rst)
kromodoro Sep 4, 2025
419a06f
[refact]: translated (pt/contributing/documentation.rst)
kromodoro Sep 4, 2025
754d5f7
[refact]: translated (pt/contributing/tickets.rst)
kromodoro Sep 4, 2025
893b4fd
[refact]: translated (pt/tutorials-and-examples/cms/articles-model.rst)
kromodoro Sep 4, 2025
c72fd4c
[refact]: translated (pt/tutorials-and-examples/cms/authentication.rst)
kromodoro Sep 4, 2025
8a7d0be
[refact]: translated (pt/tutorials-and-examples/cms/authorization.rst)
kromodoro Sep 4, 2025
0b56f93
[refact]: translated (pt/tutorials-and-examples/cms/database.rst)
kromodoro Sep 4, 2025
9a833b5
[refact]: translated (pt/tutorials-and-examples/cms/installation.rst)
kromodoro Sep 4, 2025
2aecbde
[refact]: translated (pt/tutorials-and-examples/cms/tags-and-users.rst)
kromodoro Sep 4, 2025
a07fb51
[refact]: translated (pt/controllers/components.rst)
kromodoro Sep 7, 2025
36c8b3a
[refact]: translated (pt/controllers/components/check-http-cache.rst)
kromodoro Sep 7, 2025
85d4717
[refact]: translated (pt/plugins.rst)
kromodoro Sep 8, 2025
e7a1bf4
[feat]: del old files
kromodoro Sep 8, 2025
2b5c250
[refact]: translated (pt/appendices/glossary.rst)
kromodoro Sep 8, 2025
2219252
[fix]: short title in (pt/controllers/components.rst)
kromodoro Sep 8, 2025
40e2659
[feat]: new image
kromodoro Sep 8, 2025
c06de83
[refact]: new link (pt/bake/usage.rst)
kromodoro Sep 8, 2025
49c1763
[refact]: new link (pt/bake/development.rst)
kromodoro Sep 8, 2025
e178a6e
[refact]: translated (pt/console-commands/cache.rst)
kromodoro Sep 8, 2025
d14802b
[refact]: translated (pt/console-commands/commands.rst)
kromodoro Sep 8, 2025
f17aa58
[refact]: translated (pt/console-commands/commands.rst)
kromodoro Sep 8, 2025
bf990db
[refact]: translated (pt/console-commands/completion.rst)
kromodoro Sep 8, 2025
1877641
[refact]: translated (pt/console-commands/counter-cache.rst)
kromodoro Sep 8, 2025
0b4f477
[fix]: identing in (pt/console-commands/commands.rst) file
kromodoro Sep 8, 2025
65a8406
[refact]: translated (pt/console-commands/cron-jobs.rst)
kromodoro Sep 8, 2025
b17e531
[refact]: translated (pt/console-commands/i18n.rst)
kromodoro Sep 8, 2025
85bd410
[refact]: translated (pt/controllers/middleware.rst)
kromodoro Sep 18, 2025
413e305
[refact]: translated (pt/security/content-security-policy.rst)
kromodoro Sep 18, 2025
e578c61
[refact]: translated (pt/security/https-enforcer.rst)
kromodoro Sep 18, 2025
c2a563f
[refact]: translated (pt/security/security-headers.rst)
kromodoro Sep 18, 2025
38ff258
[refact]: translated (pt/security/csrf.rst)
kromodoro Sep 18, 2025
e54ecb7
[refact]: translation (pt/controllers/components/form-protection.rst)
kromodoro Sep 19, 2025
7118386
[feat]: package of translated files
kromodoro Oct 6, 2025
a887e9b
Merge branch '5.x' into 5.x
kromodoro Oct 6, 2025
66430bb
Fix paging related docs #8104
kromodoro Oct 8, 2025
6cd9a61
Merge branch '5.x' of https://github.com/kromodoro/cakephp-docs-5 int…
kromodoro Oct 8, 2025
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
8 changes: 4 additions & 4 deletions pt/404.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
:orphan: True

Página não encontrada
#####################
Não Encontrado
##############

A página que você está procurando não foi encontrada. Tente usar o campo de
busca para localizar o que você procura.
A página que você está procurando não pode ser encontrada. Tente usar a barra de pesquisa para encontrar
o que você está procurando.
Binary file added pt/_static/img/cakefest-2022-banner.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
29 changes: 22 additions & 7 deletions pt/appendices.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,30 @@ Apêndices
#########

Os apêndices contêm informações sobre os novos recursos
introduzidos em cada versão e a forma de executar a migração entre versões.
introduzidos em cada versão e o caminho de migração entre versões.

Guia de Migração para a versão 4.x
==================================
Guias de Migração
=================

.. toctree::
:maxdepth: 1
:doc:`appendices/migration-guides`

Compatibilidade Retroativa com Shim
====================================

Se você precisa/quer adicionar o comportamento do 4.x, ou migrar parcialmente em etapas, confira
o `Plugin Shim <https://github.com/dereuromark/cakephp-shim>`__ que pode ajudar a mitigar algumas mudanças que quebram a compatibilidade retroativa.

Compatibilidade Futura com Shim
================================

A compatibilidade futura com shim pode preparar sua aplicação 4.x para a próxima versão principal
(5.x).

appendices/4-0-migration-guide
Se você já quer adicionar o comportamento do 5.x no 4.x, confira o `Plugin Shim
<https://github.com/dereuromark/cakephp-shim>`__. Este plugin tem como objetivo mitigar
algumas quebras de compatibilidade retroativa e ajudar a fazer backport de recursos do 5.x para
4.x. Quanto mais próxima sua aplicação 3.x estiver do 4.x, menor será o diff de
mudanças, e mais suave será a atualização final.

Informações Gerais
==================
Expand All @@ -23,4 +38,4 @@ Informações Gerais

.. meta::
:title lang=pt: Apêndices
:keywords lang=pt: guia de migração,como migrar,migração,nova versão,ajuda,glossário,rota de migração,novas funcionalidades
:keywords lang=pt: guia de migração,caminho de migração,novos recursos,glossário
12 changes: 0 additions & 12 deletions pt/appendices/4-0-migration-guide.rst

This file was deleted.

427 changes: 427 additions & 0 deletions pt/appendices/5-0-migration-guide.rst

Large diffs are not rendered by default.

76 changes: 76 additions & 0 deletions pt/appendices/5-0-upgrade-guide.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
5.0 Guia de atualização
#######################

Primeiro, verifique se seu aplicativo está sendo executado na versão mais recente do CakePHP 4.x.

Corrigir Avisos de Descontinuação
=================================

Depois que seu aplicativo estiver sendo executado na versão mais recente do CakePHP 4.x,
habilite os avisos de descontinuação em **config/app.php**::

'Error' => [
'errorLevel' => E_ALL,
]

Agora que você pode ver todos os avisos, certifique-se de que eles sejam corrigidos antes de prosseguir com a atualização.

Algumas descontinuações potencialmente impactantes que você deve ter certeza de ter abordado
são:

- ``Table::query()`` foi descontinuado na versão 4.5.0. Em vez disso, use ``selectQuery()``,
``updateQuery()``, ``insertQuery()`` e ``deleteQuery()``.

Atualizar para PHP 8.1
======================

Se você não estiver usando **PHP 8.1 ou superior**, será necessário atualizar o PHP antes de atualizar o CakePHP.

.. note::
O CakePHP 5.0 requer **no mínimo PHP 8.1**.

.. _upgrade-tool-use:

Use a Ferramenta de Atualização
===============================

.. note::
A ferramenta de atualização só funciona em aplicativos que executam a versão mais recente do CakePHP 4.x.
Você não pode executar a ferramenta de atualização após atualizar para o CakePHP 5.0.

Como o CakePHP 5 utiliza tipos de união e ``mixed``, há muitas
mudanças incompatíveis com versões anteriores relacionadas a assinaturas de métodos e renomeação de arquivos.
Para ajudar a agilizar a correção dessas mudanças tediosas, existe uma ferramenta de CLI de atualização:

.. code-block:: console

# Install the upgrade tool
git clone https://github.com/cakephp/upgrade
cd upgrade
git checkout 5.x
composer install --no-dev

Com a ferramenta de atualização instalada, você pode executá-la em seu aplicativo ou
plugin::

bin/cake upgrade rector --rules cakephp50 <path/to/app/src>
bin/cake upgrade rector --rules chronos3 <path/to/app/src>

Atualizar Dependência do CakePHP
================================

Após aplicar as refatorações do rector, você precisa atualizar o CakePHP, seus plugins, o PHPUnit
e talvez outras dependências no seu ``composer.json``.
Este processo depende muito da sua aplicação, por isso recomendamos que você compare o seu
``composer.json`` com o que está presente em `cakephp/app
<https://github.com/cakephp/app/blob/5.x/composer.json>`__.

Após as strings de versão serem ajustadas em seu ``composer.json``, execute
``composer update -W`` e verifique sua saída.

Atualizar arquivos do aplicativo com base no modelo de aplicativo mais recente
==============================================================================

Em seguida, certifique-se de que o restante do seu aplicativo foi atualizado para se basear na
versão mais recente de `cakephp/app
<https://github.com/cakephp/app/blob/5.x/>`__.
197 changes: 197 additions & 0 deletions pt/appendices/5-1-migration-guide.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,197 @@
5.1 Guia de Migração
####################

A versão 5.1.0 é compatível com a versão 5.0. Ela adiciona novas funcionalidades
e introduz novas descontinuações. Qualquer funcionalidade descontinuada na versão 5.x será
removida na versão 6.0.0.

Behavior Changes
================

- A conexão agora cria drivers de leitura e gravação exclusivos se as chaves ``read`` ou
``write`` estiverem presentes na configuração, independentemente dos valores.
- O FormHelper não gera mais atributos ``aria-required`` em elementos de entrada
que também possuem o atributo ``required`` definido. O atributo ``aria-required``
é redundante nesses elementos e gera avisos de validação HTML. Se você
estiver usando o atributo ``aria-required`` em estilização ou script, precisará
atualizar seu aplicativo.
- Adicionar associações com nomes duplicados agora gerará exceções. Você pode
usar ``$table->associations()->has()`` para definir associações condicionalmente,
se necessário.
- Os métodos Text Utility e TextHelper sobre truncamento e comprimento máximo estão usando
um caractere UTF-8 para ``ellipsis`` em vez de caracteres legados ``...``.
- ``TableSchema::setColumnType()`` agora gera uma exceção se a coluna especificada
não existir.
- ``PluginCollection::addPlugin()`` agora gera uma exceção se um plugin com o mesmo
nome já tiver sido adicionado.
- ``TestCase::loadPlugins()`` agora limpará todos os plugins carregados anteriormente. Portanto,
você deve especificar todos os plugins necessários para quaisquer testes subsequentes.
- O algoritmo de hash para configurações de ``Cache`` que usam ``groups``. Quaisquer
chaves terão novos hashes de prefixo de grupo gerados, o que causará
falhas de cache. Considere uma implementação incremental para evitar operar em um cache
totalmente frio.
- ``FormHelper::getFormProtector()`` agora retorna ``null`` além de seus
tipos anteriores. Isso permite que o código de visualização dinâmica seja executado com menos erros e
não deve impactar a maioria dos aplicativos.
- O valor padrão para ``valueSeparator`` em ``Table::findList()`` agora é
um único espaço em vez de ``;``.
- ``ErrorLogger`` agora usa ``Psr\Log\LogTrait``.
- ``Database\QueryCompiler::$_orderedUnion`` foi removido.

Deprecations
============

I18n
----

- A chave de configuração de cache ``_cake_core_`` foi renomeada para ``_cake_translations_``.

Mailer
------

- ``Mailer::setMessage()`` está obsoleto. Seu comportamento é pouco intuitivo e seu uso é
muito baixo.


New Features
============

Cache
-----

- ``RedisEngine`` agora suporta a opção ``tls`` que permite a conexão ao Redis
por meio de uma conexão TLS. Você pode usar as opções ``ssl_ca``, ``ssl_cert`` e
``ssl_key`` para definir o contexto TLS para o Redis.

Command
-------

- ``bin/cake plugin list`` foi adicionado para listar todos os plugins disponíveis,
sua configuração de carregamento e versão.
- Argumentos opcionais ``Command`` agora podem ter um valor ``default``.
- ``BannerHelper`` foi adicionado. Este auxiliar de comando pode formatar texto como um banner
com fundo colorido e preenchimento.
- Estilos padrão adicionais para ``info.bg``, ``warning.bg``, ``error.bg`` e
``success.bg`` foram adicionados a ``ConsoleOutput``.

Console
-------

- ``Arguments::getBooleanOption()`` e ``Arguments::getMultipleOption()`` foram adicionados.
- ``Arguments::getArgument()`` agora gerará uma exceção se um nome de argumento
desconhecido for fornecido. Isso ajuda a evitar a confusão de nomes de opções/argumentos.

Controller
----------

- Os componentes agora podem usar o contêiner DI para ter dependências resolvidas e
fornecidas como parâmetros do construtor, assim como Controllers e Comandos.

Core
----

- ``PluginConfig`` foi adicionado. Use esta classe para obter todos os plugins disponíveis, suas configurações de carga e versões.
- As funções ``toString``, ``toInt`` e ``toBool`` foram adicionadas. Elas oferecem
uma maneira segura de converter dados de requisição ou outras entradas e retornar ``null`` quando a conversão falha.
- ``pathCombine()`` foi adicionado para ajudar a construir caminhos sem se preocupar com barras duplicadas e finais.
- Um novo hook ``events`` foi adicionado à classe ``BaseApplication``, bem como à classe ``BasePlugin``. Este hook
é a maneira recomendada de registrar ouvintes de eventos globais para sua aplicação.
Consulte :ref:`Registrando Ouvintes <registering-event-listeners>`

Database
--------

- Suporte para os tipos ``point``, ``linestring``, ``polygon`` e ``geometry`` foi
adicionado. Esses tipos são úteis ao trabalhar com coordenadas geoespaciais ou cartesianas.
O suporte ao SQLite usa colunas de texto por baixo dos panos e não possui
funções para manipular dados como valores geoespaciais.
- ``SelectQuery::__debugInfo()`` agora inclui a função de conexão para a qual a consulta
se destina.
- ``SelectQuery::intersect()`` e ``SelectQuery::intersectAll()`` foram adicionados.
Esses métodos permitem que consultas usando as conjunções ``INTERSECT`` e ``INTERSECT ALL``
sejam expressas.
- Novos recursos de suporte foram adicionados para os recursos ``intersect``, ``intersect-all`` e
``set-operations-order-by``.
- A capacidade de buscar registros sem buffer, que existia na versão 4.x, foi restaurada.
Os métodos ``SelectQuery::enableBufferedResults()``, ``SelectQuery::disableBufferedResults()``
e ``SelectQuery::isBufferedResultsEnabled()`` foram adicionados novamente.

Datasource
----------

- Os métodos ``RulesChecker::remove()``, ``removeCreate()``, ``removeUpdate()`` e
``removeDelete()`` foram adicionados. Esses métodos permitem remover regras
por nome.

Http
----

- ``SecurityHeadersMiddleware::setPermissionsPolicy()`` foi adicionado. Este método
adiciona a capacidade de definir valores de cabeçalho ``permissions-policy``.
- ``Client`` agora emite os eventos ``HttpClient.beforeSend`` e ``HttpClient.afterSend``
quando as solicitações são enviadas. Você pode usar esses eventos para executar logs,
armazenamento em cache ou coletar telemetria.
- ``Http\Server::terminate()`` foi adicionado. Este método aciona o
evento ``Server.terminate``, que pode ser usado para executar lógica após a resposta
ter sido enviada em ambientes fastcgi. Em outros ambientes, o
evento ``Server.terminate`` é executado *antes* do envio da resposta.

I18n
----

- ``Number::formatter()`` e ``currency()`` agora aceitam a opção ``roundingMode``
para substituir a forma como o arredondamento é feito.
- As funções ``toDate`` e ``toDateTime`` foram adicionadas. Elas oferecem
uma maneira segura de converter dados de solicitação ou outra entrada e retornar ``null`` quando
a conversão falhar.

ORM
---

- Definindo a opção ``preserveKeys`` em consultas do localizador de associações. Isso pode ser
usado com ``formatResults()`` para substituir os resultados do localizador de associações por um
array associativo.
- Colunas SQLite com nomes contendo ``json`` agora podem ser mapeadas para ``JsonType``.
Este é atualmente um recurso opcional que é habilitado definindo o valor de configuração ``ORM.mapJsonTypeForSqlite``
como ``true`` em seu aplicativo.

TestSuite
---------

- O CakePHP e o template do aplicativo foram atualizados para usar o PHPUnit ``^10.5.5 || ^11.1.3"``.
- Os métodos ``ConnectionHelper`` agora são todos estáticos. Esta classe não possui estado e
seus métodos foram atualizados para serem estáticos.
- ``LogTestTrait`` foi adicionado. Este novo trait facilita a captura de logs
em seus testes e a realização de asserções sobre a presença ou ausência de mensagens de log.
- ``IntegrationTestTrait::replaceRequest()`` foi adicionado.

Utility
-------

- ``Hash::insert()`` e ``Hash::remove()`` agora aceitam objetos ``ArrayAccess`` junto com dados ``array``.

Validation
----------

- ``Validation::enum()`` e ``Validator::enum()`` foram adicionados. Esses métodos de
validação simplificam a validação de valores de enumeração com suporte.
- ``Validation::enumOnly()`` e ``Validation::enumExcept()`` foram adicionados para verificar casos específicos
e simplificar ainda mais a validação de valores de enumeração com suporte.

View
----

- As células de visualização agora emitem eventos em torno de suas ações ``Cell.beforeAction`` e
``Cell.afterAction``.
- ``NumberHelper::format()`` agora aceita a opção ``roundingMode`` para substituir como
o arredondamento é feito.

Helpers
-------

- ``TextHelper::autoLinkUrls()`` possui opções adicionadas para melhorar a impressão do rótulo do link:
* ``stripProtocol``: Remove ``http://`` e ``https://`` do início do link. Padrão desativado.
* ``maxLength``: O comprimento máximo do rótulo do link. Padrão desativado.
* ``ellipsis``: A string a ser anexada ao final do rótulo do link. Padrão para a versão UTF8.
- ``HtmlHelper::meta()`` agora pode criar uma meta tag contendo o token CSRF
atual usando ``meta('csrfToken')``.
Loading