Versão 31
Melhorias
Admin
- O processo
Admin > Monitoramento > Sessões de aplicativos
passa a apresentar o endereço IP
do cliente e o navegador utilizado no acesso ao sistema.
Engine
- O construtor da classe
ScriptRunner
passa a permitir que seja indicado um pool de sessões stateless por meio da opção realm
. Essa
nova opção tem o objetivo de permitir o reuso de ambientes JavaScript pelas várias instâncias de
ScriptRunner
configuradas para utilizar um mesmo pool.
- As abas da IDE do Engine passam a poder ser reordenadas arrastando-as com o mouse.
- Foi criada a propriedade
Session.prototype.clientId
com o objetivo de identificar unicamente o navegador ou dispositivo utilizado pelo cliente
no acesso ao Engine. Essa propriedade somente estará definida se o realm da sessão estiver
configurado com a propriedade
RealmConfig.prototype.clientTrackingEnabled
ativa.
- Foi criada a configuração
RealmConfig.prototype.sessionTrackingEnabled
com o objetivo de desativar o rastreamento das sessões stateful via cookie. Quando desativada,
a identificação da sessão deve ocorrer de forma manual via cabeçalho da requisição HTTP ou por
meio de um parâmetro na query string.
- A constante
Number.EPSILON
passa a ser definida via polyfill no runtime JavaScript padrão do Engine, conforme especificação
ECMAScript 2015.
- A classe
File
foi revista para se adequar ao cenário de uso em múltiplas plataformas. O parâmetro do seu construtor que indica
o modo de abertura do arquivo passa a suportar novas opções, além de algumas alterações de comportamento das opções
existentes. O modo openRead
deixa de criar um arquivo novo caso não exista algum no caminho
informado, sem que isso cause um impacto maior nos scripts, pois nenhuma exceção é lançada.
Anteriormente, a classe File
realizava bufferização das operações de leitura, mas não fazia para a escrita.
Agora as duas operações são bufferizadas por padrão, o que pode causar algum impacto em scripts que fazem
acesso simultâneo de leitura e escrita a um mesmo arquivo. Foi então criado o modo unbuffered
,
que desativa esse buffer de leitura e escrita, sendo recomendado o seu uso em casos onde for realizado
acesso simultâneo ao arquivo por múltiplas aplicações, sem a utilização de algum
mecanismo de sincronização. Os modos de compartilhamento (denyAll
, denyWrite
e denyNone
) foram descontinuados
e são agora ignorados. Os demais modos, assim como os demais métodos da classe continuam se comportando como antes.
Web Framework
- A restrição que impedia o uso do sistema em múltiplas abas de um mesmo navegador foi eliminada.
Agora o usuário pode abrir uma aba e iniciar uma nova sessão caso tenha que realizar mais
de uma operação ao mesmo tempo, não sendo mais necessário utilizar um outro navegador ou
servidor.
- A pesquisa na grade passa a ser aproximada para valores numéricos, permitindo que o usuário
encontre valores que são muito próximos do pesquisado, mas que não são exatamente iguais. Esta
melhoria permite que o usuário localize dados que foram gravados no DataSet com uma precisão
decimal maior que a configurada no campo.
Defeitos corrigidos
Engine
- A classe
XMLHttpRequest
não permitia informar o corpo de uma requisição quando utilizado o método “DELETE”.
- A reinserção de um registro excluído poderia não ser gravada corretamente pelo método
DataSet.prototype.applyUpdates
.
- Foram corrigidos alguns erros de fuga de memória no Engine.
- Em algumas situações, um erro de rede poderia ocasionar um estouro de pilha no Engine.
- Os gráficos de consumo de memória do Manage não estavam sendo exibidos.
Web Framework
- As ocorrências de uma pesquisa na grade eram apresentadas em uma ordem incorreta caso o campo
pesquisado estivesse indexado em ordem decrescente.
Outras alterações
Engine
Web Framework
- A biblioteca “ECharts” foi atualizada para a versão
4.6.0.
Última atualização em 17 Sep 2020