Download Latest Version v1.12.0 source code.zip (17.6 MB) Google Add to Preferred Sources
Home / v1.12.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2026-10-23 2.8 kB
v1.12.0 source code.tar.gz 2026-10-23 17.0 MB
v1.12.0 source code.zip 2026-10-23 17.6 MB
Totals: 3 Items   34.6 MB 0

New Features

  • Add a polling mode to the gRPC communicators for servers behind proxies or load balancers with an idle timeout (e.g., 504 Gateway Timeout after 60 seconds). With use_polling: True on the server, long-running requests are acknowledged immediately with a ticket and clients poll for the result every poll_interval seconds sent by the server, so clients need no extra configuration. Documentation
  • The gRPC server and clients no longer need the same max_message_size: each client declares its own in every request and the server chunks its responses to the smaller of the two, while the server accepts incoming messages of up to 256 MB (configurable with max_receive_message_size). Documentation
  • Stream gRPC configuration responses through the new GetConfigurationStream RPC, so configurations of any size fit the message size limits, with a fallback to GetConfiguration for older servers.
  • Exchange APPFL versions between the gRPC server and clients, and check them against compatibility rules: the server rejects clients that would always fail (e.g., clients older than 1.12.0 against a polling server) with a message to upgrade them, and both sides warn about versions that may fail or recommend upgrading the older side. Documentation
  • Add a prototype LightningTrainer for PyTorch Lightning models with MLflow logging, installable via the new lightning extra. Documentation
  • Add AIDRIN data readiness notebook tutorials for running APPFL on NERSC. Documentation
  • Document gRPC message size, model chunking, polling mode and version compatibility in the communicator user guide.

Bug Fixes

  • Use default_factory for DictConfig defaults in the configuration dataclasses, for compatibility with omegaconf 2.4.
  • Enable SSL in the default client notebooks for NERSC.
  • Rename the gRPC message GetGlobalModelRespone to GetGlobalModelResponse; the wire format is unchanged, so this is compatible with older peers.

Upgrade Notes

  • Upgrading both the gRPC server and all clients to 1.12.0 is recommended. Clients older than 1.12.0 cannot connect to a server in polling mode, and are rejected with a message to upgrade.
  • Mixed versions still work without polling as long as the server and clients use the same max_message_size, and both sides log a warning naming the side to upgrade.

Full Changelog: https://github.com/APPFL/APPFL/compare/v1.11.0...v1.12.0

Source: README.md, updated 2026-10-23