Skip to content

2.1.1 Alpha - Phoenix - #424

Merged
Ronierys2 merged 22 commits into
masterfrom
dev
Sep 10, 2026
Merged

2.1.1 Alpha - Phoenix#424
Ronierys2 merged 22 commits into
masterfrom
dev

Conversation

@Ronierys2

Copy link
Copy Markdown
Member

Principais entregas:

  • Novo motor NativeDrive do REST Dataware e novo RESTDWMemoryTable,
    configurado como padrão no inc (r4050)
  • Novos drivers nativos ADO, DBExpress e SQLDB com respectivos
    NativeLinks e PhysicDrivers (r4052, r4054-4057, r4062, r4073, r4077)
  • Suporte a Delta/Data no RESTDWMemtable e no ClientSQL (r4083)
  • Diversas correções nos drivers Zeos (Physic, Direct, NativeLink,
    ZDbcResultSet) (r4066, r4068-4069, r4071, r4077)
  • Correções de índices, save, setvalues, insert/delete no RESTDW (r4084-4089)
  • Suporte a campos Extended/BCD e melhorias de conexão com sqldb (r4074-4076)
  • Suporte a SSL/TAURUS_TLS e conexões multiplataforma (Android/iOS/Windows) (r4013-4014, r4017, r4026)
  • Novo instalador REST Dataware versão Alpha, com pacotes/ícones
    atualizados (v2.1.1) e correções para Lazarus/Delphi (r4035, r4059-4060,
    r4070, r4086, r4091)
  • Correções em JSON (RESTDWJSONObject, RESTDWParams) e no FireDACDriver (r4018, r4022, r4064)
  • Adição de FMC, HTML Designer (Webpascal) e Firebase Cloud Messaging (fbHTTP/fpHTTP) (r4027, r4033, r4036)
  • Limpeza de código: remoção de htmlviewer antigo, invalidDir e lixo diverso (r4030-4032, r4034)

=========================================================
DETALHAMENTO POR CATEGORIA

--- Novo motor / NativeDrive / Memtable ---
[r4050] Novo NativeDrive do REST Dataware. Novo RESTDWMemoryTable.
Configurado no inc para suporte ao RESTDWMemtable por padrão.
[r4083] Adicionado Delta e Data ao RESTDWMemtable e ao ClientSQL com
RESTDWMemtable (base para massive/Delta)

--- Drivers nativos (ADO / DBExpress / SQLDB) ---
[r4052] Driver ADO e DBX native adicionados
[r4054] Novos PhysicDrivers
[r4055] Novos Native Links (ADO, DBX)
[r4056] Novos Drivers (ADO e DBExpress)
[r4057] Correção de compilação
[r4062] Correção de modo NativeDrive para physics
[r4063] Correção de mecânica dos drivers
[r4073] Funcionamento do PhysicDriver SQLDB e nativelink
[r4074] Suporte a campos Extended
[r4075] Correção de campos Extended/BCD e outros; correção de sessão
da conexão com sqldb
[r4076] Correção de leitura e transporte de vários tipos de dados e
conectores
[r4077] Correção de dados em nativelink zeos, ado e dbx
[r4078] Correção nos pacotes de dados
[r4079] Correção de conexão
[r4081] Otimização de Dataset
[r4082] Compilação Android/iOS

--- Driver Zeos ---
[r4066] Correção no Driver ZeosPhysLink/uRESTDWZDbcResultSet.pas
[r4068] Correção do Driver Zeos
[r4069] Correção do Driver Zeos
[r4071] Correção no Physic Zeos e no Direct Drivers Zeos e NativeLink Zeos

--- ClientSQL / Dataset / Save ---
[r4020] Correção para RESTDWClientSQL Add Fields — novos campos para
adicionar ao componente
[r4080] Correção de OpenDataset e CreateDataset
[r4084] Correção de índices para post/edit e insert/delete
[r4085] Correção de ordem por IndexDefs
[r4087] Correção de setvalues e index
[r4088] Correção para save de dados no restdw
[r4089] Correção de Save geral
[r4017] Correção de OpenDatasets

--- JSON / Serialização / Params ---
[r4018] Correção na unit uRESTDWJSONObject.pas — erro ao gravar
números decimais (By Gledston)
[r4022] Ajuste type Boolean com MSSQL e correção de format do Json
(uRESTDWParams.pas e RESTDWFireDACDriver)
[r4064] Correção de transporte JSON

--- SSL / Taurus / Conexão multiplataforma ---
[r4013] Correção nas diretivas e variáveis do SSL e TAURUS_TLS
[r4014] Correções de código do Taurus e correções internas no inc
[r4025] Correção de FieldSize string no writetodataset
[r4026] Correção para uso de SSL em Android/iOS, Windows e outros
nos Clients
[r4024] Correção de ioHandler sem Taurus
[r4043] Correção de conexão

--- SQL Editor ---
[r4065] Correção no sqleditor
[r4090] Correção no sql editor

--- Instalador / Pacotes / Ícones / Lazarus ---
[r4035] Instalação de novos recursos no Lazarus/Delphi
[r4059] Novo pacote de ícones da versão 2.1.1
[r4058] Novo ícone do ServerRoutes
[r4060] Ajuste de versão
[r4070] Instalador do REST Dataware versão Alpha
[r4061] Correção de transporte dos binários para drivers
[r4086] Correções no instalador
[r4091] Correção de pacote instalador Lazarus
[r4044] Libs
[r4048] Novas libs
[r4049] Correção Delphi/Lazarus
[r4067] Correção de posição no grupo
[r4072] Ajuste Projeto

--- Features adicionais (FMC / HTML Designer / Firebase) ---
[r4027] Adição do FMC e HTML Designer do Webpascal
[r4028] Units adicionais
[r4033] FCM para fbHTTP
[r4036] Firebase Cloud Messaging no fpHTTP
[r4046] Add novos ícones
[r4047] Ajustes no rest dataware
[r4045] Commit de novas features

--- Limpeza de código ---
[r4030] Remove invalidDir
[r4031] Remoção do htmlviewer antigo
[r4032] Remoção de lixo
[r4034] Remoção de lixo

--- Demos / Exemplos ---
[r4016] Correções de unidac e do driverbase
[r4019] Ajustes no pacote
[r4021] Ajustes nos Demos, e ajuste na unit uRESTDWZeosDriver.pas
[r4023] Correções diversas do projeto
[r4029] Correções de Demos
[r4037] Correção de DEMO
[r4051] Correção de exemplos

--- Correções pontuais / diversas (commits pequenos, sem categoria específica) ---
[r4038] complemento
[r4039] Fix de quebra de linha
[r4040] commit de ajustes
[r4041] Correção de declaração
[r4042] Correção de caracteres
[r4053] Correção de compilação

Novo motor de memtable nativo do REST Dataware (RESTDWMemoryTable),
base para o RESTDWMemtable com suporte a Delta/Data.

refs r4050, r4083
Adiciona os PhysicDrivers e NativeLinks nativos para ADO, DBExpress
e SQLDB, alem de correcoes de compilacao, mecanica do NativeDrive,
suporte a campos Extended/BCD, sessao de conexao com sqldb, leitura/
transporte de tipos de dados, pacotes de dados, otimizacao de
Dataset e compilacao Android/iOS. Inclui tambem as correcoes dos
drivers Zeos (Physic, Direct, NativeLink e ZDbcResultSet).

refs r4052, r4054-r4057, r4062-r4063, r4066, r4068-r4069, r4071,
r4073-r4079, r4081-r4082
Correcao para RESTDWClientSQL Add Fields, OpenDataset/CreateDataset,
indices para post/edit/insert/delete, ordem por IndexDefs, setvalues
e save geral de dados.

refs r4017, r4020, r4080, r4084-r4089
Corrige erro ao gravar numeros decimais em uRESTDWJSONObject, ajuste
de tipo Boolean com MSSQL e formato do Json em uRESTDWParams, alem de
correcao de transporte JSON e atualizacao dos utilitarios de SSL/
OpenSSL (Bson, OAuth2, DateUtils, SysUtils, System).

refs r4018, r4022, r4064
Novo suporte a Firebase Cloud Messaging para os clients fbHTTP e
fpHTTP, incluindo checkin, crypto, OAuth, transporte MCS/WebPush e
integracao com o JClient_LAMW (Android).

refs r4033, r4036
…TAURUS_TLS

Implementa o transporte de Firebase Cloud Messaging para cada
biblioteca de socket (Ics, Indy, HttpDef, Fphttp) e ajusta as bases
desses clients com as correcoes de SSL/TAURUS_TLS para uso em
Android/iOS/Windows.

refs r4013-r4014, r4017, r4024, r4026, r4033, r4036, r4043
Novo HTML Designer integrado (Webpascal), com WebView (WebView2),
SynEdit privado embarcado e adaptadores de JSON/PageProducer, alem
do FMC (uRESTDWHTMLEditor/uRESTDWFMXHTMLEditor) e ajustes no
SelfSigned e no DMDados.

refs r4027-r4028, r4045-r4047
Ajusta uRESTDW.inc para suporte ao RESTDWMemtable/NativeDrive por
padrao, adiciona includes de suporte (SynEdit, WebView2, DCPCrypt) e
atualiza ShellTools/Wizards/Consts para Delphi e Lazarus.

refs r4050
…ables, webview)

Bibliotecas e recursos estaticos usados pelo HTML Designer (Webpascal):
bundles de bootstrap/chartjs/datatables, icones, classdefs do editor e
scripts de instalacao do WebView para Windows/Linux/FreeBSD.

refs r4027-r4028
Remove o componente Htmlviewer antigo (incluindo o pacote
Extras/TntUnicode), agora substituido pelo novo HTML Designer
(Webpascal).

refs r4030-r4032, r4034
…igner

Atualiza os pacotes (dpk/dproj/dcr/lpk) para os novos drivers nativos
(ADO, DBExpress, SQLDB, NativeLinks FireDAC/Zeos) e para o HTML
Designer, incluindo os assets do pacote Delphi/html (bootstrap,
chartjs, datatables, classdefs).

refs r4044, r4048-r4049, r4052-r4057, r4067, r4072
Atualiza os icones (bmp/png) de todos os componentes, incluindo os
novos icones para os drivers/NativeLinks nativos e o icone do
ServerRoutes.

refs r4046, r4058-r4059
Adiciona o novo instalador/packager do REST Dataware (versao Alpha),
com scripts de build para Delphi/FPC/Lazarus, e os extras de FCM.

refs r4035, r4059-r4060, r4061, r4070, r4086, r4091
Ronierys2 and others added 8 commits September 8, 2026 22:18
… Lazarus

O RESTDataWareComponents.lpk apontava para
Source\Basic\ZLib\uRESTDWZlib.pas (pasta inexistente); o arquivo
esta em Source\Basic\uRESTDWZlib.pas. Isso quebrava o lazbuild no
passo "Build the Main package" em Windows e Linux (falha ja
presente antes deste PR).
…ote principal

uRESTDWDesignReg usa uRESTDWHTMLEditor/uRESTDWFMXHTMLEditor (em
Source\Plugins) e uRESTDWHTMLDesigner usa as unidades de
Source\Plugins\HTMLEditor\PrivateSynEdit (uRESTDWPrivSynEdit e
highlighters), mas nenhuma das duas pastas estava no OtherUnitFiles
do RESTDataWareComponents.lpk, quebrando o lazbuild em Windows e
Linux com "can't find unit".
- uRESTDWHTMLDesigner.pas usava D.Options/cdFullOpen/cdAnyColor do
  TColorDialog, que sao exclusivos da VCL/Delphi e nao existem na
  LCL; guarda o trecho com {$IFNDEF FPC}.
- RESTDWIndySockets.lpk nao tinha Source\Sockets (uRESTDWFirebase
  CloudMessaging) nem Source\utils (uRESTDWOpenSslLib) no
  OtherUnitFiles, quebrando a compilacao do FCM sobre Indy.
- RESTDWZeosDriver.lpk nao tinha Source\Basic (uRESTDWBasicDbTypes)
  no OtherUnitFiles.

Causas reais confirmadas pelos logs do lazbuild (Windows e Linux,
todas as versoes testadas).
uRESTDWShellServicesLazarus.pas usa {\$I uRESTDW.inc}, mas o lpk so
tinha Source\Includes em OtherUnitFiles (busca de units), nao em
IncludeFiles (busca de includes), quebrando o lazbuild com "Cannot
open include file uRESTDW.inc".
O TZMemTable.LoadFromStream usado em uRESTDWZDbcResultSet.pas exige
a ZeosDBO 8.0.0-stable (versao usada no desenvolvimento); a versao
padrao instalada pelo setup-lazarus nao tem esse metodo, quebrando
o "Build ZeosDriver package" no CI.
O ZeosDBO instalado via OPM no CI vem com o define
ZMEMTABLE_ENABLE_STREAM_EXPORT_IMPORT desligado ({.$DEFINE ...} em
src/Zeos.inc), entao TZMemTable.LoadFromStream nao existe e o
RESTDWZeosDriver.lpk falha ao compilar uRESTDWZDbcResultSet.pas.
Adiciona um passo no CI (Windows e Linux) que localiza o Zeos.inc
instalado pelo OPM e ativa o define antes do build.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
O passo anterior editava src/Zeos.inc depois que o proprio instalador
do OPM (gcarreno/setup-lazarus) ja tinha compilado zcomponent.lpk (que
contem ZMemTable.pas) com o define antigo. O FPC nao detecta mudanca
em arquivos .inc incluidos via {$I} para fins de recompilacao
incremental, entao o .ppu ficava desatualizado e o erro persistia.
Agora o step roda "lazbuild -B" no zcomponent.lpk logo apos o patch,
forcando a recompilacao com LoadFromStream/SaveToStream habilitados.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@Ronierys2
Ronierys2 merged commit 2253ed0 into master Sep 10, 2026
14 checks passed
@github-project-automation github-project-automation Bot moved this from Todo to Done in REST DataWare Sep 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant