Skip to the content

Release Notes

IIZI 5.0 Release Notes

Upgrading from 4.x

Every step and incompatibility, in the order an operator and a developer meet them.

November 1, 2026 · applies from IIZI 5.0.0

IIZI 5.0 is not backwards compatible with 4.x clients. Plan the order of the move: devices first, then the server. Keep a copy of every 4.8 workspace, configuration file and database before you start.

Devices and iiziRun

Store-built iiziRun apps

iiziServer 5.0 and the development server of iiziGo 5.0 answer protocol version 5, and every iiziRun checks that number for equality. An iiziRun installed from a store before 5.0 – iiziRun Developer and every iiziRun Custom or Customized app – reports “not compatible” and opens nothing; the message names both versions.

A Browser with a 4.x page in its cache

A Browser that still holds a 4.x page in its cache shows “Network error.” once; a reload gets the 5.0 page.

Application addresses

Every application is served at /app/<appID>/. The address /iiziApp.html?0:0&app=<appID> of earlier versions answers with a redirect there. ServerAdmin's address is /app/com.iizix.serveradmin/.

No IIZI cookie

The Browser client keeps its parameters, the device's ID and the analytics consent in the Browser's local storage, per application address; the cookies of earlier versions are moved there once and removed.

Sensitive device parameters

Values an application stored on a device as sensitive device parameters are sealed to the application from 5.0. A value stored under 4.x reads as not found once and is removed from the device. An application must treat that answer as a missing value – ask the user for it again and store it anew – or the value is lost.

Installing the server

A new installation, step by step: Installing iiziServer.

A Windows service installed by 4.x

Install it again with 5.0's iiziServer\bin\ntservice\is.bat, so that it runs through 5.0's service host and wrapper:

is.bat UNINSTALL serviceName
is.bat INSTALL serviceName SERVER javaDir memory

An update keeps bin\ntservice\, so after a later update the service keeps running the previous service wrapper until it is installed again the same way (stop, uninstall, install with the same parameters, start).

Linux

bin/install-iiziServer.sh installs iiziServer from the signed distribution package as a systemd service under its own service account, after checking the package's signature. bin/iiziServer.sh starts ServerAdmin only: define further applications in the configuration file, or add them on its command line, for example bin/iiziServer.sh -app com.example.app -appjar apps/example.jar.

Which Java the launchers use

Every launcher – iiziServer, iizi-secrets and iiziServer-update, as .sh and .bat – runs the Java named by the environment variable IIZI_JAVA when it is set, else the installation's own JDK, else java from the PATH.

Applications in config.iiziServer

A configuration file of 4.x with its application entries directly in an environment still loads: the server moves them into the environment's applications at load, with one WARNING naming the file, and the file takes the new layout at its next save.

Going back to the previous version

Stop the server and run bin/iiziServer-update.sh <previous package> -allowDowngrade (bin\iiziServer-update.bat on Windows). The database is never rolled back, and the rollback copy is replaced by every update: it is no backup.

Server settings to review

Accounts, groups and administrators

The group “Default All Apps (disabled!)”

A new 5.0 database creates its third group disabled and names it “ServerAdmin” (it allows all applications; builds before 2026-10-30 named it “Default All Apps (disabled!)”). An existing database is not changed: the group keeps its old name and stays enabled, so its members (the two administrators and the two “iiziRun Developer” accounts, whose password is public) reach every application. Disable it after the upgrade: ServerAdmin, Groups, “Default All Apps (disabled!)”, check “Disabled”, save – or, on the server's database:

UPDATE IZS.GROUPS SET disabled=TRUE WHERE gid=3;

and restart the server. Before doing so, check which users reach an application only through this group. Renaming the group to “ServerAdmin” is optional (ServerAdmin, Groups, Edit).

Application access by group is enforced

Until 5.0 every enabled user signed in to every application, whatever the application's group list said. Check each application's groups in ServerAdmin before the upgrade: an application whose list names no group admits only the groups that allow all applications, and a name that is no group admits nobody.

Applications whose users signed in at the connection

Such an application is public on 5.0 unless it gates itself. In 4.x the connection signed the user in, so every session of the application had a user; in 5.0 every session starts with nobody signed in, and the group list is applied only when a user signs in with the SignIn module. A session that never signs in is shown every page the application opens. Before the upgrade, decide for each application whether it is public; if it is not, it must check for a signed-in user itself.

Administrators

The seeded users of the database script

On an installed server, the accounts user, iiziRun Developer and iiziRun Developer 2 that still have the passwords of the database script, which are public, are disabled at the next start (not deleted, the password untouched). The server log names each one with a WARNING at that start and at every later start while it stays disabled. To use such an account, give it another password in ServerAdmin and enable it again. An account whose password was changed is not touched, and iiziGo's development server keeps the three as they are.

Licensing

The license system is installed and does not enforce in 5.0, in iiziGo and in iiziServer alike: nothing is refused.

Push Notification secrets

An application's VAPID private key and Firebase service account are read only from the machine's secrets store. A value written in the application's .iiziPush, or a key file it names, is dropped when the application loads, with one WARNING naming the member (never the value). Before moving an application with Push Notifications to a 5.0 server:

  1. In iiziGo 5, open its Push page and generate the key pair or import the service account; this stores them in the machine's store.
  2. Export them on the iiziGo machine: iizi-secrets export <file> app.<appID>.
  3. Import them on the server: iizi-secrets import <file>.

A new VAPID key pair ends the Browser subscriptions made under the old one.

Logs from 4.x

A server.log written before 5.0, on a server where a password reset link was opened, holds that link's token. Such a token is dead 30 minutes after it was issued or once used, but a reader of the log inside that window could have used it: treat old logs as confidential, or delete them. From 5.0 no log line holds the token.

Application developers

3270 terminal captures

In iiziGo before 5.0, a field of a 3270 capture that was set numeric was saved as numeric and non-display, so it showed hidden; 5.0 saves it numeric only, but does not repair captures saved earlier. A saved field carrying both attributes is the sign: set it numeric again and save. (A capture written by NetPhantom's editor may hold a genuine numeric non-display field, such as a PIN.)

iiziGo

Installing iiziGo 5 on each platform, or into an existing Eclipse: Installing iiziGo.

Back to the IIZI 5.0 release notes