Skip to main content
Version: 20 R5

Release Notes

4D 20 R5

Read What’s new in 4D 20 R5, the blog post that lists all new features and enhancements in 4D 20 R5.

Highlights

Behavior changes

  • The plug-ins 4D Internet Commands and 4D for OCI are no longer included in 4D installers. To get these plug-ins, you need to connect to the 4D Product Download portal.
  • Changes made in the Structure editor regarding graphical appearance of tables and fields (color, position, order...) are now saved in a separate file named catalog_editor.json stored in the project's Sources folder.

4D 20 R4

Read What’s new in 4D 20 R4, the blog post that lists all new features and enhancements in 4D 20 R4.

Highlights

Behavior changes

  • Using a legacy syntax for declaring parameters (e.g. C_TEXT($1) or var $1 : Text) is now deprecated and generates warnings at code typing, syntax checking, and compilation steps.
  • Selections are now kept consistent after some records have been deleted and others records created (see this blog post.
  • In the updated OpenSSL library, the default SSL/TLS security level has been changed from 1 to 2. RSA, DSA and DH keys of 1024 bits and above and less than 2048 bits as well as ECC keys of 160 bits and above and less than 224 bits are now no longer allowed. By default, TLS compression was already disabled in previous OpenSSL versions. At security level 2 it cannot be enabled.
  • In order to allow password verification when the 4D user directory uses the bcrypt algorithm, the "password" value in the connectionInfo parameter of the Open datastore command is now sent in clear form by default. 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 specific cases, a new "passwordAlgorithm" option can also be used for compatibility (see Open datastore command).

4D 20 R3

Read What’s new in 4D 20 R3, the blog post that lists all new features and enhancements in 4D 20 R3.

Highlights

Behavior changes

  • Some errors were catchable by your error handling method in interpreted mode only. 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. However, for such errors on Intel processors, the procedure is still interrupted as before, whereas on Apple Silicon processors the procedure is only interrupted if you call the ABORT command.
  • 4D no longer includes an internal PHP interpreter. You need to set up and run your own PHP interpreter to use PHP commands.

4D 20 R2

Read What’s new in 4D 20 R2, the blog post that lists all new features and enhancements in 4D 20 R2.

Security Note

If your 4D applications use TLS connections, it is recommended that you upgrade to 4D 20 R2 HF1 build 100440 or higher. For more information, refer to this Security bulletin.

Highlights

Behavior changes

  • Warning: The starting offset value of 4D.FileHandle objects was incorrectly set to 1 instead of 0. A fix has been made in 4D as of versions 20.1 HF1 and 20 R2 and the value is now 0.

4D 20.x LTS

See Release Notes for 4D 20.x LTS.

Library table

LibraryCurrent versionUpdated in 4DComment
ICU73.220.1This major upgrade forces an automatic rebuild of alphanumeric, text and object indexes.
CEF12120 R5Chromium 6167
Hunspell1.7.220Used for spell checking in 4D forms and 4D Write Pro
PDFWriter4.320FreeType dependency in 12.2.1
SpreadJS16.2.620 R44D View Pro engine
OpenSSL3.2.020 R4Default TLS/SSL security level has been upgraded. See Behavior changes for release 20 R4
libZip1.9.220Used by zip class, 4D Write Pro, svg and serverNet components
LZMA5.4.120
Zlib1.2.1320
webKitWKWebView19
PHP8.2.420
libldap2.6.420 R3
libsasl2.1.2820