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

"Depreciado" é uma tradução INCORRETA de "deprecated" #313

Open
marcoandrei opened this issue Sep 11, 2023 · 22 comments
Open

"Depreciado" é uma tradução INCORRETA de "deprecated" #313

marcoandrei opened this issue Sep 11, 2023 · 22 comments

Comments

@marcoandrei
Copy link

From manual page: https://php.net/install.macosx.packages


Não raro, tenho lido em diversas documentações a palavra "deprecated" traduzida como "depreciado". Ora, "depreciado" em Português é "algo que perdeu o valor" e usamos em especial para bens, como por exemplo: "um carro tem uma depreciação durante seu tempo de uso".

Minha sugestão é que se use a palavra "obsoleto", que representa exatamente o que o termo significa na Computação. Há ainda outros termos mais adequados: "defasado", "fora de uso", "desusado", "desatualizado" ou até mesmo "antigo", "antiquado".

@alfsb
Copy link
Member

alfsb commented Sep 11, 2023

"Obsoleto" já é utilizado no manual em algumas partes, embora sim, "depreciado" aparece em várias páginas ainda.

Caso tenha, precisamos de sugestões para o equivalente para a mesma expressão como verbo e como adjetivo, de preferência como uma palavra só, nem que sejam os mesmos radicais.

Esses são os locais onde onde obsole* aparece (para sugerir palavras alterativas em cada caso):

./language-snippets.ent:<emphasis>obsolete</emphasis>, and should only be used for development and testing
./appendices/migration56/extensions.xml:   A number of constants marked obsolete in the cURL library have now been
./appendices/aliases.xml:  these kind of aliases, as they may be bound to obsolescence or
./install/ini.xml:   the CGI/FastCGI SAPI. This functionality obsoletes the PECL htscanner
./reference/pgsql/functions/pg-tty.xml:    <function>pg_tty</function> is obsolete, since the server no longer pays
./reference/cubrid/aliases.xml:  <title>CUBRID Obsolete Aliases and Functions</title>
./reference/session/security.xml:     When access to an obsolete session occurs, developers should save all
./reference/session/security.xml:     Access to an obsolete session does not necessarily suggest an attack.
./reference/session/security.xml:     will result in legitimate users using obsolete sessions.
./reference/session/security.xml:    generate an obsolete session access error.
./reference/session/security.xml:     Simultaneously, developers must assure themselves obsolete session data
./reference/session/security.xml:    Obsolete authenticated sessions may be present for use.
./reference/session/security.xml:    They must prohibit access to obsolete session data by themselves using timestamps.
./reference/session/security.xml:     If a user accesses an obsolete session (expired session), access to it should be denied.
./reference/session/security.xml:    Obsolete session data must be inaccessible and deleted.
./reference/session/security.xml:    Obsolete session data should be removed as soon as possible.
./reference/session/security.xml:    When access to obsolete session data is detected, it is advised to remove all 
./reference/session/security.xml:    Access to obsolete session data can represent an attack.
./reference/session/security.xml:     Access to an obsolete session can also happen because of an unstable network
./reference/session/security.xml:     Therefore, developers must prohibit access to obsolete session at a later stage.
./reference/session/security.xml:    Let <function>session_gc</function> remove obsolete data from the session data storage.
./reference/session/security.xml:    Timestamp based session management is mandatory to detect access to obsolete sessions.
./reference/session/security.xml:    When access to an obsolete session is detected, authentication flags should
./reference/session/security.xml:      is a setting for deleting obsolete session ID.
./reference/session/security.xml:      that obsolete sessions are deleted at an appropriate frequency.
./reference/session/functions/session-destroy.xml:   is enabled. You do not have to remove obsolete session ID cookie because
./reference/rpminfo/constants.xml:   <varlistentry xml:id="constant.rpmtag-obsoleteflags">
./reference/rpminfo/constants.xml:     <constant>RPMTAG_OBSOLETEFLAGS</constant>
./reference/rpminfo/constants.xml:   <varlistentry xml:id="constant.rpmtag-obsoletename">
./reference/rpminfo/constants.xml:     <constant>RPMTAG_OBSOLETENAME</constant>
./reference/rpminfo/constants.xml:      Obsoleted packages, with database index.
./reference/rpminfo/constants.xml:   <varlistentry xml:id="constant.rpmtag-obsoletenevrs">
./reference/rpminfo/constants.xml:     <constant>RPMTAG_OBSOLETENEVRS</constant>
./reference/rpminfo/constants.xml:   <varlistentry xml:id="constant.rpmtag-obsoletes">
./reference/rpminfo/constants.xml:     <constant>RPMTAG_OBSOLETES</constant>
./reference/rpminfo/constants.xml:   <varlistentry xml:id="constant.rpmtag-obsoleteversion">
./reference/rpminfo/constants.xml:     <constant>RPMTAG_OBSOLETEVERSION</constant>
./reference/oci8/aliases.xml:  <title>OCI8 Obsolete Aliases and Functions</title>
./reference/oci8/oldaliases/ocifetchinto.xml:  <refpurpose>Obsolete variant of <function>oci_fetch_array</function>, <function>oci_fetch_object</function>,
./reference/oci8/oldaliases/ocifetchinto.xml:  <para>Obsolete variant of <function>oci_fetch_array</function>, <function>oci_fetch_object</function>,
./reference/oci8/constants.xml:           Obsolete. Statement fetch mode. Used when the application
./reference/oci8/constants.xml:           Obsolete.
./reference/ffi/book.xml:    The FFI extension does not render the classic PHP extension API obsolete; it is merely
./reference/curl/constants.xml:  <varlistentry xml:id="constant.curle-obsolete">
./reference/curl/constants.xml:    <constant>CURLE_OBSOLETE</constant>
./reference/event/event/set.xml:   Re-configures event. Note, this function doesn't invoke obsolete libevent's
./reference/event/event/settimer.xml:   Re-configures timer event. Note, this function doesn't invoke obsolete
./reference/mhash/book.xml:    This extension is obsoleted by <link linkend="book.hash">Hash</link>.
./reference/mongodb/mongodb/driver/query/construct.xml:         obsolete. For queries using the legacy wire protocol OP_QUERY, the
./reference/posix/functions/posix-getpwuid.xml:        GECOS is an obsolete term that refers to the finger
./reference/posix/functions/posix-getpwnam.xml:        GECOS is an obsolete term that refers to the finger
./language/oop5/properties.xml:    An obsolete way of declaring class properties, is by using the

E esses são os lugares onde depreci* aparece na tradução, para alguém que queira trabalhar nisso por esses tempos:

./appendices/migration70/deprecated.xml: <title>Recursos depreciados no PHP 7.0.x</title>
./appendices/migration70/deprecated.xml:   estão definidos) estão depreciados, e será removido no futuro. O PHP 7
./appendices/migration70/deprecated.xml:   não foram declarados como <command>static</command> estão depreciados, e podem
./appendices/migration70/deprecated.xml:   A opção salt da função <function>password_hash</function> foi depreciada
./appendices/migration70/deprecated.xml:   depreciada. Metadados SSL agora estão disponíveis através da
./appendices/migration70/deprecated.xml:  <title>Depreciações no <link linkend="book.ldap">LDAP</link></title>
./appendices/migration70/deprecated.xml:    As funções a seguir foram depreciadas:
./appendices/migration70/incompatible/removed-functions.xml:   Estas funções foram depreciadas no PHP 4.1.0 em favor de
./appendices/migration70/incompatible/removed-functions.xml:   A função depreciada <function>mcrypt_generic_end</function> foi
./appendices/migration70/incompatible/removed-functions.xml:   Além disso, as funções depreciadas <function>mcrypt_ecb</function>,
./appendices/migration70/incompatible/removed-functions.xml:   Os sinônimos depreciados <function>datefmt_set_timezone_id</function> e
./appendices/migration70/incompatible/removed-functions.xml:   depreciados no PHP 5.3.0 e se tornaram efetivamente não funcionais com
./appendices/migration70/incompatible/removed-functions.xml:   O sinônimo depreciado <function>set_socket_blocking</function> foi
./appendices/migration70/incompatible/other.xml:   considerados depreciados.
./appendices/migration70/incompatible/other.xml:   <link linkend="migration56.deprecated.incompatible-context">Anteriormente depreciadas no PHP 5.6</link>,
./appendices/migration70/incompatible/other.xml:   <literal>$this</literal> indefinida e um aviso de depreciação será emitido.
./appendices/migration80/deprecated.xml: <title>Recursos depreciados</title>
./appendices/migration80/deprecated.xml:     efeito. Essa funcionalidade está depreciada a partir do PHP 8.0.0 e geralmente pode ser resolvido eliminando o
./appendices/migration80/deprecated.xml:     definido explicitamente como &false; está depreciado e não tem mais efeito.
./appendices/migration80/deprecated.xml:     estão depreciadas, porque essa funcionalidade não está disponível no libenchant &lt; 1.5 nem na
./appendices/migration80/deprecated.xml:     <function>enchant_dict_add_to_personal</function> está depreciada; use
./appendices/migration80/deprecated.xml:     <function>enchant_dict_is_in_session</function> está depreciada; use
./appendices/migration80/deprecated.xml:     depreciadas; em vez disso destrua/unset o objeto.
./appendices/migration80/deprecated.xml:     depreciadas.
./appendices/migration80/deprecated.xml:   A função <function>libxml_disable_entity_loader</function> foi depreciada. Como a libxml 2.9.0 agora é
./appendices/migration80/deprecated.xml:     <constant>PGSQL_LIBPQ_VERSION</constant>, portanto, está depreciada.
./appendices/migration80/deprecated.xml:     Os apelidos de função na extensão pgsql foram depreciados.
./appendices/migration80/deprecated.xml:     Funções sort que retornam &true; ou &false; agora lançam um aviso de depreciação, e
./appendices/migration80/deprecated.xml:     Usar um arquivo vazio como ZipArchive está depreciado. A Libzip 1.6.0 não aceita mais arquivos vazios como
./appendices/migration80/deprecated.xml:     A API procedural do Zip está depreciada. Use <classname>ZipArchive</classname> em seu lugar.
./appendices/migration80/deprecated.xml:     O método <methodname>ReflectionFunction::isDisabled</methodname> está depreciado, pois não é mais
./appendices/migration80/deprecated.xml:     <methodname>ReflectionParameter::isCallable</methodname> estão depreciados.
./appendices/migration80/incompatible.xml:     A função <function>openssl_x509_free</function> está depreciada e não tem mais efeito,
./appendices/migration80/incompatible.xml:     A função <function>openssl_pkey_free</function> está depreciada e não tem mais efeito,
./appendices/migration80/other-changes.xml:      A <parameter>version</parameter> depreciada do parâmetro de <function>curl_version</function>
./appendices/migration72/deprecated.xml: <title>Recursos depreciados na versão PHP 7.2.x</title>
./appendices/migration72/deprecated.xml:   da extensão GD foram depreciadas e serão removidas
./appendices/migration72/deprecated.xml:   A extensão Intl depreciou a variante
./appendices/migration72/deprecated.xml:   O método <function>__autoload</function> foi depreciado porque é
./appendices/migration72/deprecated.xml:   recurso foi depreciado.
./appendices/migration72/deprecated.xml:   <function>eval</function>), esta função datada foi depreciada.
./appendices/migration72/deprecated.xml:   esta conversão de tipo supérflua foi depreciada.
./appendices/migration72/deprecated.xml:   depreciado. A função deve sempre ser usada com dois argumentos, como o
./appendices/migration72/deprecated.xml:   função foi depreciada. A maneira preferida de gerar um
./appendices/migration72/deprecated.xml:   mudanças da linguagem. Portanto, ela foi depreciada.
./appendices/migration72/deprecated.xml:   depreciada em favor de usar expressão booleanas.
./appendices/migration72/deprecated.xml:   otimizações interncas, ele foi depreciado.
./appendices/migration72/deprecated.xml:   O atalho <function>read_exif_data</function> foi depreciado.
./appendices/migration81/deprecated.xml: <title>Funcionalidades depreciadas</title>
./appendices/migration81/deprecated.xml:    Esse comportamento está depreciado para alinhar com o comportamento de funções definidas
./appendices/migration81/deprecated.xml:    leva a uma perda de precisão agora está depreciada.
./appendices/migration81/deprecated.xml:$a[15.5]; // depreciado, pois o valor da chave perde o componente de 0.5
./appendices/migration81/deprecated.xml:    propriedade <modifier>static</modifier> diretamente em um trait está depreciado.
./appendices/migration81/deprecated.xml:    era uma exceção. Isso está depreciado agora.
./appendices/migration81/deprecated.xml:$arr[] = 2;   // depreciado
./appendices/migration81/deprecated.xml:    Passar um argumento não-string está depreciado.
./appendices/migration81/deprecated.xml:   foram depreciadas em favor de <function>date_sun_info</function>.
./appendices/migration81/deprecated.xml:   <function>strptime</function> foi depreciada.
./appendices/migration81/deprecated.xml:   <function>strftime</function> e <function>gmstrftime</function> foram depreciadas.
./appendices/migration81/deprecated.xml:   <constant>FILTER_SANITIZE_STRIPPED</constant> estão depreciados.
./appendices/migration81/deprecated.xml:   está depreciada.
./appendices/migration81/deprecated.xml:   foi depreciado.
./appendices/migration81/deprecated.xml:   e <function>mhash_get_hash_name</function> foram depreciadas.
./appendices/migration81/deprecated.xml:   A constante <constant>NIL</constant> foi depreciada.
./appendices/migration81/deprecated.xml:   argumento &boolean; está depreciado.
./appendices/migration81/deprecated.xml:   está depreciado.
./appendices/migration81/deprecated.xml:   foi depreciada.
./appendices/migration81/deprecated.xml:   argumento <parameter>mysqli</parameter> foi depreciado.
./appendices/migration81/deprecated.xml:   O método <methodname>mysqli::init</methodname> foi depreciado.
./appendices/migration81/deprecated.xml:   está depreciada.
./appendices/migration81/deprecated.xml:   <function>odbc_result_all</function> foi depreciada.
./appendices/migration81/deprecated.xml:   O modo de busca <constant>PDO::FETCH_SERIALIZE</constant> foi depreciado.
./appendices/migration81/deprecated.xml:   foi depreciado.
./appendices/migration81/deprecated.xml:   <methodname>SoapClient::__construct</methodname> foi depreciada
./appendices/migration81/deprecated.xml:   em &object;s está depreciado.
./appendices/migration81/deprecated.xml:   está depreciada.
./appendices/migration81/deprecated.xml:   <constant>FILE_TEXT</constant> foram depreciadas.
./appendices/migration81/incompatible.xml:    A partir do PHP 8.0.0, mas antes do PHP 8.1.0, a função abaixo emite uma notícia de depreciação
./appendices/migration81/incompatible.xml:    um tipo de retorno compatível, do contrário um aviso de depreciação é emitido durante
./appendices/migration81/incompatible.xml:    o aviso de depreciação.
./appendices/migration81/constants.xml:     com versões anteriores, mas pode ser depreciada/removida no futuro.
./appendices/migration74/deprecated.xml: <title>Recursos depreciados</title>
./appendices/migration74/deprecated.xml:1 ? 2 : 3 ? 4 : 5;   // depreciado
./appendices/migration74/deprecated.xml:    depreciado. Use <literal>$var[$idx]</literal> ao invés de
./appendices/migration74/deprecated.xml:    A conversão <literal>(real)</literal> está depreciada,
./appendices/migration74/deprecated.xml:    A função <function>is_real</function> também está depreciada,
./appendices/migration74/deprecated.xml:    que usa <literal>$this</literal> está depreciado.
./appendices/migration74/deprecated.xml:    está depreciado, e lançará um erro em tempo de compilação no futuro.
./appendices/migration74/deprecated.xml:    está depreciada. Ativá-la gerará
./appendices/migration74/deprecated.xml:    um aviso de depreciação na inicialização.
./appendices/migration74/deprecated.xml:    <function>hexdec</function>agora gerará um aviso de depreciação.
./appendices/migration74/deprecated.xml:    O uso de <function>array_key_exists</function> em objetos está depreciado.
./appendices/migration74/deprecated.xml:    estão depreciadas. Elas sempre retornam &false;.
./appendices/migration74/deprecated.xml:    A função <function>hebrevc</function> está depreciada.
./appendices/migration74/deprecated.xml:    A função <function>convert_cyr_string</function> está depreciada.
./appendices/migration74/deprecated.xml:    A função <function>money_format</function> está depreciada.
./appendices/migration74/deprecated.xml:    A função <function>ezmlm_hash</function> está depreciada.
./appendices/migration74/deprecated.xml:    A função <function>restore_include_path</function> está depreciada.
./appendices/migration74/deprecated.xml:    está depreciada, use <literal>implode($glue, $parts)</literal>
./appendices/migration74/deprecated.xml:   que não diferencia maiúsculas de minúsculas foi depreciado.
./appendices/migration74/deprecated.xml:   <constant>FILTER_SANITIZE_MAGIC_QUOTES</constant> está depreciado,
./appendices/migration74/deprecated.xml:   está depreciado. Atualmente, os padrões não-string são interpretados como
./appendices/migration74/deprecated.xml:   está depreciado. Em vez disso, passe um offset 0 e a codificação como quarto parâmetro.
./appendices/migration74/deprecated.xml:   <function>ldap_control_paged_result</function> estão depreciados.
./appendices/migration74/deprecated.xml:   um aviso de depreciação. Este método foi depreciado em favor de
./appendices/migration74/deprecated.xml:   a partir do PHP 7.1, mas não emitiu um aviso de depreciação por motivos técnicos.
./appendices/migration74/deprecated.xml:   foram depreciados. Construa um objeto <classname>Reflection</classname> e
./appendices/migration74/deprecated.xml:   <function>socket_addrinfo_lookup</function> foram depreciadas,
./appendices/migration74/deprecated.xml:   devido a uma depreciação upstream na glibc.
./appendices/migration74/incompatible.xml:   O uso de <constant>CURLPIPE_HTTP1</constant> está depreciado, e não é mais
./appendices/migration74/incompatible.xml:   está depreciado. Se qualquer valor diferente do padrão <constant>CURLVERSION_NOW</constant>
./appendices/migration74/incompatible.xml:   em vez de <constant>INTL_IDNA_VARIANT_2003</constant> depreciado.
./appendices/migration74/other-changes.xml:   agora está depreciado.
./appendices/migration74/other-changes.xml:   Esta opção está depreciada e pode ser removida no futuro.
./appendices/migration82/other-changes.xml:     <member>A constante <constant>MYSQLI_IS_MARIADB</constant> foi depreciada</member>
./appendices/migration70.xml:   foca principalmente na remoção de funcionalidades depreciadas em versões 
./appendices/migration73/deprecated.xml: <title>Recursos depreciados</title>
./appendices/migration73/deprecated.xml:    depreciados. Isso também afeta o método
./appendices/migration73/deprecated.xml:   <constant>FILTER_FLAG_HOST_REQUIRED</constant> agora está depreciado; ambos estão
./appendices/migration73/deprecated.xml:   <function>image2wbmp</function> foi depreciado.
./appendices/migration73/deprecated.xml:   foram depreciados. Em vez disso, use as variantes <literal>mb_ereg_*()</literal>
./appendices/migration73/deprecated.xml:   foi formalmente depreciada. Está obsoleto na documentação a
./appendices/migration73/other-changes.xml:   <constant>Normalizer::NONE</constant> está depreciado, quando o PHP está vinculado com
./install/macos/packages.xml:      (PHP 5.3 - PHP 7.3; depreciado)
./reference/array/functions/array-key-exists.xml:     <parameter>array</parameter>. Esse comportamento está depreciado a partir do PHP 7.4.0,
./reference/filter/constants.xml:     (<emphasis>Depreciado</emphasis> a partir do PHP 8.1.0,
./reference/filter/constants.xml:     (<emphasis>Depreciado</emphasis> a partir do PHP 8.1.0,
./reference/filter/constants.xml:     (<emphasis>DEPRECIADO</emphasis> a partir do PHP 7.3.0 e
./reference/filter/constants.xml:     (Depreciado a partir do PHP 7.3.0 e removido a partir do PHP 8.0.0, já que está implementado no filtro.)
./reference/mysqli/mysqli_driver.xml:      foi <emphasis>depreciada</emphasis> a partir do PHP 8.1.0. Confiar nesta
./reference/mysqli/mysqli_driver.xml:        <property>mysqli_driver::$driver_version</property> foi depreciado.
./reference/var/functions/settype.xml:        variação depreciada "double")
./reference/datetime/functions/gmmktime.xml:        depreciado. Como resultado, a nova funcionalidade de manipulação de fusos horário deve ser
./language/predefined/variables/phperrormsg.xml:        depreciado.
./language/oop5/autoload.xml:    <function>__autoload</function> está depreciada a partir do PHP 7.2.0, e removida
./language/oop5/inheritance.xml:    do contrário, uma notícia de depreciação é emitida.
./language/oop5/inheritance.xml:    e, portanto, resulta no aviso de depreciação.
./language/oop5/inheritance.xml:    um atributo <classname>ReturnTypeWillChange</classname> pode ser adicionado para silenciar a notícia de depreciação.
./language/oop5/inheritance.xml:    <title>O método que sobrepõe declara um tipo de retorno errado sem uma notícia de depreciação</title>
./language/functions.xml:     está <emphasis>depreciado</emphasis>. Isso geralmente pode ser resolvido descartando
./language/functions.xml: function foo($a = [], $b) {} // Padrão não utilizado; depreciado a partir do PHP 8.0.0
./language/functions.xml: function foo($a, $b) {}      // Funcionalmente equivalente, sem notícia de depreciação
./language/functions.xml:     é desencorajado e emite uma notícia de depreciação no modo coercitivo para alinhar com o comportamento de funções definidas pelo usuário,

Vou deixar esse issue aberto, que se trata de algo correto, porém só depois da grande remoção massificada que eu pegaria para mexer nisso, dado que pode ter muitos itens listados da tradução de podem ser desses arquivos que estão para ser removidos.


Notar, também, que a listagem da tradução é substancialmente diferente da listagem dos originais, o que denota que provavelmente não é só fazer uma substituição automática para resolver o issue.


A palavra a substituir obsolete e deprecated, tanto como adjetivo e como verbo, teria de ser uma palavra comum para um meio termo entre "desuso" ou "abandonado". Acredito que "legado" é o jargão mais específico, embora não tenha a forma verbo.

Como deprecated e obsolete são usados de maneiras diferentes, talvez seja preciso na verdade duas palavras distintas:

  • Deprecated, menos ênfase: desuso/legado/antiquado/preterido
  • Obsolete, mais ênfase: abandonado/em remoção/precário

@alfsb
Copy link
Member

alfsb commented Sep 11, 2023

Aliás, minhas sugestões:

  • Deprecated: desencorajado
  • Obsolete: obsoleto

"Obsolete" traduzindo como obsoleto eu acho que é tranquilo manter, só mesmo "deprecated" que precisa de um sinônimo menos enfático, e daí, "desencorajado", tanto como adjetivo direto ou em expressões compostas: "foi desencorajado", "está desencorajado desde", e assim por diante.

@MauricioFauth
Copy link
Member

MauricioFauth commented Sep 11, 2023

A tradução direta de deprecated é deprecado e não depreciado.

https://dicionario.priberam.org/deprecado

  1. [Informática] Cuja utilização já não se recomenda (ex.: esta função não está obsoleta, mas está deprecada).

Eu sugiro usar deprecado, já que é uma palavra de origem latina, assim como deprecated. Diferente de leiaute e layout.

@alfsb
Copy link
Member

alfsb commented Sep 12, 2023

A tradução direta de deprecated é deprecado e não depreciado.
https://dicionario.priberam.org/deprecado

Bom, acredito que dá para fazer uma substituição massa de depreciado para deprecado. Parte da questão de deprecado que a própria palavra deprecada está deprecada... Mas sim, é melhor de depreciado.

Deixar o issue aberto mais um tempo para ver possíveis mais discussões. Depois é começar um dicionário de termos de tradução e pensar como fazer substituição massificada, depois da remoção massificada.

@adielcristo
Copy link
Member

Particularmente, eu estava substituindo ambas (obsolete and deprecated) por obsoleto. Não tinha considerado nuances de peso entre as palavras como @alfsb sugeriu.

Sobre o dicionário de termos, tô usando esse rascunho por enquanto:
GLOSSARY

@MauricioFauth
Copy link
Member

Acredito que muitas pessoas acabam não usando deprecar como tradução de deprecate, pois, nos dicionários em português, deprecar tem um sentido de desaprovar ou rejeitar algo apenas no sentido religioso, sendo que no inglês esse sentido é de uso geral, não apenas religioso.

No entanto, acredito que seja a melhor tradução, pois, como têm a mesma origem, soam muito parecidas.

@alfsb
Copy link
Member

alfsb commented Sep 17, 2023

No entanto, acredito que seja a melhor tradução, pois, como têm a mesma origem, soam muito parecidas.

Tem a mesma origem e soam parecidas, mas tem baixo existência em dicionários online com o sentido tecnológico. No sentido jurídico/judiciário, tem outra conotação ainda (remoto, de outro lugar), o que afasta ainda mais do sentido original.

Está mais para falso cognato nesse caso que uma tradução boa.

@MauricioFauth
Copy link
Member

Está mais para falso cognato nesse caso que uma tradução boa.

Faz sentido.

Nesse caso, acho que a melhor tradução para deprecated então seria descontinuado.

@alfsb
Copy link
Member

alfsb commented Sep 20, 2023

O ciclo re suporte/remoção dos recursos do PHP segue essa linha daqui:

supported deprecated obsolete removed
suportado ainda suportado, mas sem promessa de suporte futuro ainda existente, mas com remoção futura decidida/encaminhada removido

Recursos deprecated podem continuar funcionando por muitas versões seguidas, sem previsão exata de remoção, mas sem promessa de suporte indefinido. Algo obsolete já é removido praticamente na versão seguinte, ou ao menos indica uma plano de remoção em andamento.

Algo descontinuado é algo que não existe mais, e daí seu sentido é mais para removido, que está bem longe de deprecated.

Traduzir ambos como obsoleto ou descontinuado funciona, mas perde essa progressão.

@alfsb
Copy link
Member

alfsb commented Sep 29, 2023

Encaminhei hoje a remoção massificada, que provavelmente modifica um tanto dos levantamentos acima.

Deixo aberto para alguém que queira se candidatar a pegar esse issue, que é "fácil", não envolve alterações estruturais, mas é trabalhoso, porque envolve dezena de arquivos.

@CViniciusSDias
Copy link
Contributor

https://wikidiff.com/obsolete/deprecated

As adjectives the difference between obsolete and deprecatedis that obsolete is no longer in use; gone into disuse; disused or neglected (often by preference for something newer, which replaces the subject) while deprecated is strongly disapproved of.

Segundo essa diferenciação, acredito que "desencorajado" seria a tradução mais próxima, mantendo essa progressão.

@MauricioFauth
Copy link
Member

Recursos deprecated podem continuar funcionando por muitas versões seguidas, sem previsão exata de remoção, mas sem promessa de suporte indefinido. Algo obsolete já é removido praticamente na versão seguinte, ou ao menos indica uma plano de remoção em andamento.

Você está confundindo deprecated e obsolete. É justamente o contrário.

Na documentação em inglês, obsolete é usado no sentido de obsoleto mesmo, ou seja, algo que existe, mas não é usado, e que não necessariamente há planos para remoção. Geralmente é mantido por compatibilidade com alguma biblioteca externa.

deprecated é algo que pode ou não ter uso, porém foi marcado para remoção em uma versão futura, o que indica pouco ou nenhum suporte será dado a esse recurso.

Exemplo disso são as RFCs para marcar recursos para remoção, por exemplo: PHP RFC: Deprecations for PHP 8.3.

Algo descontinuado é algo que não existe mais, e daí seu sentido é mais para removido, que está bem longe de deprecated.

Mais ou menos. Descontinuado é algo que parou de ser produzido ou desenvolvido. Não significa necessariamente que não existe mais.

Segundo essa diferenciação, acredito que "desencorajado" seria a tradução mais próxima, mantendo essa progressão.

Essa é uma boa palavra também. Porém ela não passa o sentido correto quando usada sozinha na minha opinião. Por exemplo, "essa função foi desencorajada". Ela precisa de mais contexto, por exemplo, "o uso dessa função foi desencorajado".

Há outro problema com "desencorajado", na documentação em inglês, deprecated é frequentemente utilizada próxima de discouraged que é basicamente desencorajado.

  • This function has been DEPRECATED as of PHP 8.1.0. Relying on this function is highly discouraged.

@leonardolara
Copy link
Contributor

leonardolara commented Nov 14, 2023

Minha sugestão:

obsolete -> obsoleto
deprecated -> defasado ou ultrapassado

@alfsb
Copy link
Member

alfsb commented Nov 14, 2023

Bom, esse issue não convergiu em qual terminologia adotar. Mesmo assim, aberto a envio de PRs, mesmo na falta de terminologia convergente.

@marcoandrei
Copy link
Author

Voltando aqui para colaborar, me parece que as sugestões de @MauricioFauth e @leonardolara são boas e próximas do sentido original: "descontinuado" (ou seja, existe, ainda pode ser usado, mas irá "desaparecer" em breve) ou "defasado" (no sentido figurado, que "ficou para trás", "ultrapassado").

Quem sabe escolhemos entre estas duas?

@alfsb, gostaria de colaborar e resolver esse issue, mas sinceramente não sei por onde começar. Podes me dar uma orientação? Obrigado!

@alfsb
Copy link
Member

alfsb commented Nov 15, 2023

@alfsb, gostaria de colaborar e resolver esse issue, mas sinceramente não sei por onde começar. Podes me dar uma orientação? Obrigado!

O ideal seria, claro, um consenso de tradução, e assim chegar num glossário único. Mas não foi o caso até agora, e nem isso impede a progressão.

Como dito acima, estou aceitando, e até mesmo encorajando, alterações que encaminhem a substituição de depreciado para um dos equivalentes discutidos aqui.

Para encontrar os casos a alterar, um simples grep -ri --exclude-dir={doc-base,.svn,.git} --color "deprecia" . é suficiente, ou o buscar global do VS Code. E daí é sair alterando os arquivos com essas ocorrência, commitnado direto ou enviando PRs.

Apenas avise(m) se/quando for pegar para fazer isso, para evitar alguma duplicação de esforço.

@alfsb
Copy link
Member

alfsb commented Nov 20, 2023

Ou para ser mais específico @marcoandrei ou outrem, tem o wiki aqui do repositório que explica como fazer ajustes na documentação usando a interface do GitHub e o processo em linha de comando (Roteiro GitHub e git, respectivamente).

@geekcom
Copy link
Member

geekcom commented Nov 23, 2023

Vou aproveitar a discussão, para revisar todos os arquivos que estão sob a minha manutenção e atualizar, se for o caso, parabéns por puxarem esse tópico.

@alfsb
Copy link
Member

alfsb commented Jan 11, 2024

Comentando o issue acima, eu aproveitei para dar uma olhada em como outras traduções lidaram com isso. Não foi muito... produtivo. Mas bora lá.

Muitas traduções automáticas mandam deprecated como obsoleto, e daí sem a diferenciação adotada no manual do PHP. Porém uma tradução de JBoss deu uma solução que eu achei boa: preterido.

Encaixa bem. preterido como o contrário de preferido. É uma palavra que eu até uso em escrita, embora não tanto no falado. Comunica bem o desencorajamento por algo, sem implicar a remoção. Acaba sendo um candidato formal como deprecado, mas sem tantas outras conotações.

https://en.wikipedia.org/wiki/Deprecation resume como "In several fields, especially computing, deprecation is the discouragement of use of some terminology, feature, design, or practice, typically because it has been superseded or is no longer considered efficient or safe, without completely removing it or prohibiting its use". Que é meio de onde eu puxei o "desencorajado", ainda que possa falhar em alguns pontos, onde discouragement aparece como ênfase de deprecated.

Nesses casos, acho que uma solução boa seria trocar a ênfase para "evitar" / "evitado" / "deve ser evitado", e assim evitar (piada planejada) a cacofonia de desencorajado aparecer duplicado.

@MauricioFauth
Copy link
Member

Gostei bastante de preterido, possui um significado muito semelhante ao de deprecated em inglês.

Ainda acho que desencorajado não funciona tão bem quanto preterido ou descontinuado.

Se fosse para votar, minha primeira opção seria preterido e a segunda opção seria descontinuado.

@alfsb
Copy link
Member

alfsb commented Jan 12, 2024

Bora fazer uma votação lá para Junho disso. Por hora podem continuar com os patchs e merges. Até para se ver como fica no manual compilado.

Triste como possa ser um retrabalho, coisas de qualidade de tradução assim as vezes ocorre de demorar um pouco para convergir, e não convergindo com os meses, daí votação, para por fim unificar, ou não. Pode acontecer disso não incomodar tanto, mesmo com terminologia variando.

@alfsb
Copy link
Member

alfsb commented Jan 23, 2024

Essas considerações nasceram durante a revisão do PR 503, e achei melhor trazer para discussão ampla.


Eu ainda acredito que descontinuado não transmite a tradução correta. Exemplos do um PR recente:

https://github.com/php/doc-pt_br/pull/503/files#diff-fb66e887ef1ce085bc775396abf5ba12123593c1b2f8ba5ddf408f2c39549bc

Nesse caso concreto, passar um valor não string não foi descontinuado. Continua lá, e ainda funciona. Mas não é recomendado manter, que já tem aviso que vai mudar.

Isso aparece novamente no exemplo a seguir, onde aparece "foi descontinuado, e pode ser removido no futuro".

https://github.com/php/doc-pt_br/pull/503/files#diff-a438df641281cef81b9ca8ba0f8fd4b578def42bb4964a59170d8cedd8cfe129L143

Tem uns outros pontos que, ao contrário, deprecated foi para removido sem passar por obsolete, o que mostra que não é questão de escolha de uma mesma palavra para todos os contextos.

Outro exemplo, onde "aviso de descontinuação" é bastante apropriado:

https://github.com/php/doc-pt_br/pull/503/files#diff-2c83d09ba961b8e465bf3f75b552635e043859d70de784f35372a88d754e8102L147

E aqui um exemplo onde preterido funciona, tanto como adjetivo isolado, como em locução:

https://github.com/php/doc-pt_br/pull/503/files#diff-ef2d5b8a1199f5430c996938e7074f8983f705bee2b638d28044cbe1b058d27dL79

Em alguns outros prontos, "antequado" soa melhor, principalmente em questões de sintaxe:

https://github.com/php/doc-pt_br/pull/503/files#diff-2e7b7ffc32da174de7361f827cbd301ed1523222a370c212cc92855b3cdaaa72L108

Várias partes do manual usam deprecated e obsoleto como sinônimos, como bem demonstrou o PR. Por exemplo:

https://github.com/php/doc-pt_br/pull/503/files#diff-62cdd12e6f0c6f91e5ccaf918a81a07e7c01ffc4837da1fa9b5fa68d32752601L20


Isso mostra que nem sempre obsolete sucede deprecated, ao contrário do que eu imaginava inicialmente. Nesse contexto, novamente, pode ser o caso de essa sinonímia ter de transparecer na tradução.

Ou seja, meio que estou argumentando que deprecated e obsolete possam sim ter traduções diferentes (e as vezes, iguais) em páginas diferentes, dado que isso ocorre também no manual em original. Nesse caso, fixaria-se no máximo um conjunto de palavras/locuções para indicar a despreferência indicativa (ainda existe, sem data de remoção) do conjunto de palavras/locuções da despreferência enfática (algo que não deve ser usado e/ou já tem previsão e/ou esforços de remoção).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants