Notas de lançamento
4D 20 R10
Read What’s new in 4D 20 R10, the blog post that lists all new features and enhancements in 4D 20 R10.
Destaques
- New
connectionTimeout
option in theoptions
parameter of the4D.TCPConnection.new()
function. - UUIDs in 4D are now generated in version 7. In previous 4D releases, they were generated in version 4.
- Línguagem 4D:
- For consistency,
Create entity selection
andUSE ENTITY SELECTION
commands have been moved from the "4D Environment" to the "Selection" themes.
- For consistency,
4D 20 R9
Read What’s new in 4D 20 R9, the blog post that lists all new features and enhancements in 4D 20 R9.
Destaques
- Support of session tokens handled with
Session.createOTP()
andSession.restore()
new functions. - The Label wizard now uses the Formula editor for adding or editing formulas in the label design area.
- New
TCPListener
class to create TCP server connections; new properties in related classes:address
,listener
andport
inTCPConnection
class,ip
andport
inTCPEvent
class. - Deprecated commands and constants now generate specific warnings in the live checker and the compiler. Você pode saber se um comando está obsoleto usando o comando
Command name
. - Novos comandos WA SET CONTEXT e WA Get context para controlar o conteúdo de $4d em áreas da Web.
- New
RDP optimization
database parameter to optimize for instance shared clipboard when using Remote Desktop Protocol with 4D. - Os componentes interpretados agora podem ser editados a partir do projeto host.
- Licenses are now automatically refreshed at startup.
- New 4D AIKit component enabling interaction with third-party AI APIs.
- The following VP command callbacks now wait for all 4D custom functions to complete their calculations: VP IMPORT DOCUMENT, VP IMPORT FORM BLOB, VP IMPORT FROM OBJECT, and VP FLUSH COMMANDS.
- New 4D Netkit features to manage Google and Microsoft 365 calendars; ability to use the host web server for OAuth 2.0 authentication.
- 4D Write Pro Interface: New integrated AI to interact with chatGTP from your 4D Write Pro documents.
- Fixed bug list: list of all bugs that have been fixed in 4D 20 R9.
4D 20 R8
Leia O que há de novo no 4D 20 R8, o post do blog que lista todos os novos recursos e aprimoramentos em 4D 20 R8.
Destaques
- Implemente seus próprios HTTP request handlers usando a nova classe
4D.IncomingMessage
. - As expressões usadas em [form object properties] (../FormObjects/properties_Reference.md) agora se beneficiam da verificação de sintaxe na [Property list] (../FormEditor/formEditor.md#property-list) e no [Compiler] (../Project/compiler.md#check-syntax).
- Você pode associar uma classe a um formulário para ativar a antecipação do tipo de código e a instanciação automática dos dados do formulário ao usar o comando
Form
. - Suporte de sessões autônomas para simplificar a codificação local para aplicações cliente/servidor.
- Depurador 4D: novo design e salvamento automático, recursos do modo de exibição.
- Nova arquitetura de componentes construída para um melhor cumprimento das diretrizes da notarização da Apple.
- Agora você pode facilmente [criar aplicativos de avaliação] (../Desktop/building.md#build-an-evaluation-application) na caixa de diálogo Criar aplicativo.
- Dependências: Use o gerenciador de dependências para [verificar se há novas versões] (../Project/components.md#checking-for-new-versions) e [atualizar] (../Project/components.md#updating-dependencies) os componentes do GitHub.
- Novas classes
TCPConnection
eTCPEvent
para gerenciar conexões de clientes TCP, manipular eventos e aprimorar o controle sobre a transmissão de dados. Adicionado4DTCPLog.txt
para registro detalhado de eventos TCP. - Novas opções em [VP EXPORT DOCUMENT] (../ViewPro/commands/vp-export-document.md) e [VP IMPORT DOCUMENT] (../ViewPro/commands/vp-import-document.md) para controlar estilos, fórmulas, integridade de dados e proteção por senha.
- 4D Write Pro:
- Os seguintes comandos agora permitem parâmetros, como objetos ou coleções: WP SET ATTRIBUTES, WP Obter atributos, WP REDEFINIR ATTRIBUTES, Tabela WP anexa linha, documento de importação do WP, WP EXPORT DOCUMENT, WP Add picture, e WP Insert picture.
- WP Insert formula, WP Insert document body e WP Insert break, agora são funções que retornam intervalos.
- Novas expressões relacionadas a atributos de documentos: This.sectionIndex, This.sectionName e This.pageIndex.
- Línguagem 4D:
- Comandos modificados:
FORM EDIT
.sign()
and.verify()
functions of the 4D.CryptoKey class support Blob in the message parameter.
- Comandos modificados:
- Lista de erros corrigida: lista de todos os bugs corrigidos em 4D 20 R8.
Mudanças de comportamento
- After a log file modification using
SELECT LOG FILE
or the Backup settings, theNew log file
command now validates the change, without waiting for a backup. The error -4447 (backup required) is no longer raised. - Devido à sua nova arquitetura, os componentes criados com o 4D 20 R8 e superior não podem ser instalados em versões anteriores do 4D.
4D 20 R7
Leia O que há de novo no 4D 20 R7, o post do blog que lista todos os novos recursos e aprimoramentos em 4D 20 R7.
Destaques
- As colunas e cabeçalhos da list box de tipo tempo agora suportam a opção "blankIfNull".
- Novas propriedades em
.getBoxInfo()
e.getBoxList()
. - Agora você pode adicionar e remover componentes usando a interface do gerenciador de componentes.
- Novo modo [direct typing mode] (../Project/compiler.md#enabling-direct-typing) no qual você declara todas as variáveis e parâmetros em seu código usando as palavras-chave
var
e#DECLARE
/Function
(somente o modo suportado em novos projetos). A funcionalidade verificação de sintaxe foi aprimorado de acordo. - Suporte a [Session singletons] (../Concepts/classes.md#singleton-classes) e à nova propriedade de classe [
.isSessionSingleton
] (../API/ClassClass.md#issessionsingleton). - New
onHTTPGet
function keyword to define singleton or ORDA functions that can be called through HTTP REST GET requests. - Nova classe
4D.OutgoingMessage
para que o servidor REST retorne qualquer conteúdo Web. - Qodly Studio: agora você pode anexar o depurador Qodly a 4D Server.
- New Build Application keys para aplicativos 4D remotos para validar a autoridade de certificação do servidor signatures e/ou domain.
- Capacidade de criar aplicações independentes sem licenças incorporadas.
- Línguagem 4D:
- Novos comandos: Process info, Session info, SET WINDOW DOCUMENT ICON
- Comandos modificados: Process activity, Process number
- 4D Write Pro:
- Novo comando: WP DELETE SECTION
- Comandos modificados: WP DELETE SUBSECTION e WP RESET ATTRIBUTES
- Página Novidades em 4D Write Pro Reference.
- Lista de erros corrigida: lista de todos os bugs corrigidos em 4D 20 R7.
Mudanças de comportamento
- As documentações para [4D Language] (../commands/command-index.md) e [4D Write Pro Language] (../WritePro/commands/command-index.md) estão agora totalmente disponíveis em developer.4d.com. Saiba mais sobre todos os novos recursos e alterações referentes a essas documentações nesta nota de versão.
- The
File
command (as well as4D.File.new()
) is stricter when it comes to checking the syntax of the path supplied as a parameter. - A ação de permission describe foi removida das ações disponíveis. Acesso às urls
/rest/$catalog
não é mais controlado. Session describe privileges are now ignored.
4D 20 R6
Leia O que há de novo no 4D 20 R6, o post do blog que lista todos os novos recursos e aprimoramentos em 4D 20 R6.
Destaques
- Support of comparison operators on object references and collection references.
collection.query()
now supports object and collection references as query values. - When a component has a declared namespace, its classes are now automatically shared between all loaded components in the host project via
cs.<namespace>
. - Gerenciador de componentes: suporte de componentes armazenados no GitHub.
- New
entitySelection.clean()
function and$clean
REST API to get a new entity selection based upon the original entity selection but without its deleted entities. - New
session.getPrivileges()
function and$info/privileges
REST API to inspect session privileges for an easier debugging. - Novo arquivo 4DCEFParameters.json para personalizar áreas web embutidas no 4D.
- Nova classe HTTPAgent e nova propriedade
agent
para a classe HTTPRequest. - New
enableState()
anddisableState()
functions to monitor Qodly page states from the server. - New
$singleton
API to call exposed singleton functions from REST and new associated privileges. - Um novo botão de configurações ajuda você a atualizar seu projeto para usar o modo REST de "login forçado" (o método de banco de dados
On REST Authentication
agora está obsoleto). - Uma nova guia de parametros ajuda a definir a geração de avisos globalmente.
- Vários comandos, principalmente do tema "4D Environment", agora são thread-safe (veja a lista completa), bem como alguns seletores dos comandos
SET DATABASE PARAMETER
/Get database parameter
. - New 4D-QPDF component that provides the
PDF Get attachments
command to extract attachments from a PDF/A3 document. - Comandos da linguagem 4D: página Novidades em doc.4d.com.
- 4D Write Pro: Página Novidades em doc.4d.com.
- Lista de erros corrigida: lista de todos os bugs corrigidos em 4D 20 R6.
Mudanças de comportamento
- Suporte para perseguir a rolagem nos formulários: subformas pai agora rolam automaticamente quando objetos roláveis incorporados (verticalmente ou [horizontalmente](. /FormObjects/properties_Appearance.md#horizontal-scroll-bar)) atingiram os limites e o usuário continua rolando usando o mouse ou rastreador (overscrolling).
- A API REST
$catalog
agora retorna singletons (se houver).
4D 20 R5
Leia O que há de novo no 4D 20 R5, o post do blog que lista todos os novos recursos e aprimoramentos em 4D 20 R5.
Destaques
- New Component manager to handle components through a
dependencies.json
file. - Suporte a estruturas de tratamento de erros
Try...Catch...End try
. - QUIC network layer now supports broadcasting, SSO, and IPv6.
- Soporte de selecciones de entidades restringidas.
- Soporte de clases compartidas y de clases singleton. Novas propriedades de classe:
isShared
,isSingleton
,me
. - Suporte à inicializando uma propriedade de classe em sua linha de declaração.
- Novo modo forçar login para solicitações REST com um suporte específico no Qodly Studio para 4D.
- Nuevo parámetro REST $format.
- O objeto
Session
agora está disponível em sessões de usuários remotos e sessões de procedimentos armazenados. - Comandos da linguagem 4D: página Novidades em doc.4d.com.
- 4D Write Pro: Página de novidades em doc.4d.com.
- Lista de erros corrigida: lista de todos os bugs corrigidos em 4D 20 R5.
Mudanças de comportamento
- Os plug-ins 4D Internet Commands e 4D for OCI não estão mais incluídos nos instaladores do 4D. Para obter esses plug-ins, você precisa se conectar ao Portal de descarrega de produtos 4D.
- Changes made in the Structure editor regarding graphical appearance of tables and fields (color, position, order...) agora são salvas em um arquivo separado chamado
catalog_editor.json
armazenado na pastaSources
do projeto.
4D 20 R4
Leia O que há de novo no 4D v20 R4, o post do blog que lista todos os novos recursos e aprimoramentos em 4D v20 R4.
Destaques
- Suporte do formato de criptografia
ECDSA
para os certificados TLS. - Client/server and SQL server TLS connections are now configured dynamically (no certificate files are required).
- Direct HTML format for structure definition exports.
- New Code Live Checker that enhances code control during code typing, syntax checking, and compilation steps to prevent execution errors.
- Os parâmetros de métodos declarados nos protótipos
#DECLARE
não são mais necessários nos métodos "Compiler_". - Suporte de formatos personalizados de data e hora
- Nova palavra-chave
Try(expression)
para tratar casos de erro simples. - Novo comando
HTTP Parse message
. - Nova opção de compatibilidade Impressão sem bloqueio.
- Nuevo modo de edición en el Explorador de datos.
- Comandos da linguagem 4D: Novidades de página em doc.4d.com.
- 4D Write Pro: [Página Novidades] (https://doc.4d.com/4Dv20R4/4D/20-R4/What-s-new.901-6683440.en.html) em doc.4d.com.
- Lista de erros corrigida: lista de todos os bugs corrigidos em 4D 20 R4.
Mudanças de comportamento
- Usando uma sintaxe legada para declarar parâmetros (por exemplo,
C_TEXT($1)
ouvar $1 : Text
) está agora obsoleto e gera avisos na digitação de código, verificação de sintaxe e etapas de compilação. - La coherencia de las selecciones ahora se mantiene después de que se hayan eliminado algunos registros y se hayan creado otros (ver esta entrada de blog).
- Na atualização da biblioteca OpenSSL, o nível de segurança SSL/TLS padrão foi alterado de 1 para 2. Chaves RSA, DSA e DH de 1024 bits ou mais e menos de 2048 bits, assim como chaves ECC de 160 bits ou mais e menos de 224 bits, agora não são mais permitidas. Por padrão, a compressão TLS já estava desativada nas versões anteriores do OpenSSL. No nível de segurança 2, ele não pode ser habilitado.
- Make sure your "On REST authentication" database method can handle passwords in clear form (third parameter is then False) and that
Open datastore
encrypts your connection by passing the "tls" option to True in connectionInfo. In order to allow password verification when the 4D user directory uses the bcrypt algorithm, the "password" value in the connectionInfo parameter of theOpen datastore
command is now sent in clear form by default. Em casos específicos, uma nova opção "passwordAlgorithm" também pode ser usada para fins de compatibilidade (consulte o comandoOpen datastore
).
4D 20 R3
Leia O que há de novo no 4D v20 R3, o post do blog que lista todos os novos recursos e aprimoramentos em 4D v20 R3.
Destaques
- Nova função
collection.multiSort
. - Support of context parameter in
Formula from string
. - Support of
headers
property in connectionHandler parameter of 4D.WebSocket.new. - Marcador de modificação global para facilitar a implementação de módulos de sincronização de dados. Novas funções:
ds.getGlobalStamp
eds.setGlobalStamp
. - Atribuindo arquivo de referências a atributos de imagem/blob é suportado no ORDA.
- Support for initializing the variable's value and data type in the declaration line.
- As configurações de arquivos de log agora são salvas com o arquivo de dados atual
- Nova sintaxe para declarar parâmetros variádicos
- 4D View Pro: soporte de la importación y de la exportación de documentos 4D View Pro al formato Blob.
- Comandos da linguagem 4D: Novidades de página em doc.4d.com.
- 4D Write Pro: [Página Novidades] (https://doc.4d.com/4Dv20R3/4D/20-R3/What-s-new.901-6475174.en.html) em doc.4d.com.
- Lista de erros corrigida: lista de todos os bugs corrigidos em 4D 20 R3.
Mudanças de comportamento
- Alguns erros foram capturados pelo seu método de tratamento de erros somente no modo interpretado. A fix has been done, so that the following errors will now be caught also in compiled mode: Indice out of range, Type incompatible, and Dereferencing a Null pointer. Entretanto, para esses erros nos processadores Intel, o procedimento ainda é interrompido como antes, enquanto nos processadores Apple Silicon o procedimento só é interrompido se você chamar o comando [
ABORT
] (../commands-legacy/abort.md). - 4D não inclui mais um interpretador PHP interno. You need to set up and run your own PHP interpreter to use PHP commands.
4D 20 R2
Leia O que há de novo no 4D v20 R2, o post do blog que lista todos os novos recursos e aprimoramentos em 4D v20 R2.
Se suas aplicações 4D utilizam conexões TLS, é recomendado que você faça a atualização para a versão 4D 20 R2 HF1 build 100440 ou superior. For more information, refer to this Security bulletin.
Destaques
- New WebSocket class to create and manage client WebSocket connections from 4D.
- Nova [configuração de interface] (../settings/client-server.md#network-layer) para a camada de rede QUIC.
- 4D View Pro: soporte del formato de archivo .sjs para la importación y la exportación de documentos.
- Comandos da linguagem 4D: Novidades de página em doc.4d.com.
- 4D Write Pro: [Página Novidades] (https://doc.4d.com/4Dv20R2/4D/20-R2/What-s-new.901-6390313.en.html) em doc.4d.com.
- Interface 4D Write Pro: novo Table Wizard.
- Lista de erros corrigida: lista de todos os bugs corrigidos em 4D 20 R2.
Mudanças de comportamento
- Aviso: o valor inicial dos objetos
offset
de 4D.FileHandle era configurado incorretamente para 1 ao invés de 0. Foi feita uma correção no 4D a partir das versões 20.1 HF1 e 20 R2 e o valor agora é 0.
4D 20.x LTS
Veja Notas de lançamento para 4D 20.x LTS.
Tabela da biblioteca
Biblioteca | Versão atual | Atualizado em 4D | Comentário |
---|---|---|---|
BoringSSL | 0aa300b | 20 R6 | Usado para QUIC |
CEF | 131 | 20 R8 | Chromium 6778 |
Hunspell | 7.3.27 | 20 | Usado para verificação ortográfica em formulários 4D e 4D Write Pro |
ICU | 73.2 | 20 | Essa grande atualização força uma reconstrução automática dos índices alfanuméricos, de texto e de objetos. |
libldap | 2.6.7 | 20 R6 | |
libsasl | 2.1.28 | 20 | |
Libuv | 1.48 | 20 R6 | Usado para QUIC |
libZip | 19.5 | 20 | Utilizado pelos componentes zip class, 4D Write Pro, svg e serverNet |
LZMA | 5.4.1 | 20 | |
OpenSSL | 3.3.2 | 20 R7 | O nível de segurança TLS/SSL padrão foi atualizado. Veja mudanças de comportamento para versão 20 R4 |
PDFWriter | 4.3 | 20 | Dependência FreeType na 12.2.1 |
PHP | 8.2.4 | 20 | |
SpreadJS | 17.1.0 | 20 R7 | Veja este post de blog para uma visão geral dos novos recursos |
webKit | WKWebView | 19 | |
Zlib | 14.1.6 | 20 |