ACF Plugin 1.7.9.4 – Dialogs, Progress Windows, Remote Filesystems and AI-Assisted Development

Since the release of ACF Plugin 1.7.9.0, development has continued at full speed. What began as a series of incremental improvements has evolved into some of the most significant additions to the plugin in recent years.

Version 1.7.9.3 introduces native dialogs and progress windows for FileMaker, major enhancements to ZIP and remote filesystem handling, improved Apple Silicon support, and perhaps most interestingly: a new development workflow where OpenAI Codex actively assists in creating ACF functions.

Native Dialogs Without Layouts

FileMaker developers are accustomed to creating layouts, global fields and scripts simply to collect a few input values from a user. With the new open_dialog() function and the external ACF_OpenDialog() function, this is no longer necessary.

Dialogs are defined entirely in JSON and can contain:

  • Text fields and text areas
  • Checkboxes and radio buttons
  • Selection lists
  • Date and time pickers
  • Multi-column layouts
  • Dynamic field sets controlled by selectors

The dialog blocks execution until the user responds and returns the result as JSON.

This enables a completely new way of building user interfaces inside FileMaker without creating additional layouts. The release also includes a browser-based Dialog Configurator that allows developers to visually design dialogs and generate both JSON and ACF source automatically.

Native Progress Windows

Long-running tasks such as report generation, Excel exports, ZIP processing or remote transfers can now provide native progress feedback.

New functions include:

progress_open(title, message, maximum)
progress_update(handle, value, message)
progress_close(handle)

Multiple progress windows are supported simultaneously and automatically position themselves around the active FileMaker window. Indeterminate “barber pole” mode is also available for operations where total progress is unknown.

This significantly improves the user experience for longer-running operations.

ZIP Archives Have Become Virtual Filesystems

The ZIP support originally introduced in earlier releases has now matured into a fully integrated virtual filesystem.

Using open_zip(), the existing filesystem functions work directly inside ZIP archives:

string zip = open_zip("release.zip", "w");
copy_file("/Reports", zip + "/Reports/");
close_zip(zip);

The same functions can now operate on local disks, ZIP archives, FTP servers and SFTP servers using a unified programming model. Developers no longer need to learn separate APIs for each storage type.

This concept has proven especially useful when automating software release processes.

Automating Software Releases Using ACF

One unexpected use of the new filesystem capabilities has been the automation of the ACF Plugin’s own release process.

ACF functions now assemble release folders, build ZIP archives, verify code signatures, create DMG archives, perform notarization checks and upload finished deliverables to remote servers via FTP or SFTP.

The same ACF language originally designed for FileMaker business logic is now orchestrating complete software release pipelines.

Recursive directory copy now preserves symbolic links, which is essential for maintaining valid macOS application bundles and signed frameworks.

Apple Silicon and Locale Support

Version 1.7.9.2 also resolved an elusive Apple Silicon issue involving Boost.Locale and ICU integration.

Locale-aware functions such as:

lower()
upper()
proper()
set_locale()

now behave correctly on both Intel and Apple Silicon Macs. This ensures proper handling of Norwegian and other international characters for sorting, case conversion and comparisons.

For example:

proper("østfold")

now correctly returns:

Østfold

Codex as an ACF Co-Developer

One of the more surprising discoveries during recent development has been how effectively OpenAI Codex works together with ACF.

Codex can use the command-line ACF compiler to syntax-check generated code and iteratively improve its output. By combining the compiler with DDRparser exports from FileMaker solutions, Codex has been able to generate complete API integrations and business logic functions with surprisingly little manual intervention.

Developers who are new to the ACF language can now describe a task in natural language and let Codex generate a working first version of the implementation.

In practice, AI has become a highly capable ACF assistant developer.

Looking Ahead

The ACF Plugin has evolved far beyond its original purpose. Today it combines:

  • A strongly typed scripting language
  • Native FileMaker integration
  • Excel generation and manipulation
  • HTTP and SQL support
  • JSON and XML handling
  • ZIP, FTP and SFTP filesystems
  • Image rendering and print-ready graphics
  • Native dialogs and progress windows
  • AI-assisted development workflows

The result is a development platform that allows FileMaker developers to build increasingly sophisticated solutions while remaining inside the FileMaker ecosystem.

And the journey continues.

You may also like...