Version history:
Release notes for version 13.1 - 7th March 2023
New functions in 13.1 and Announcement in blog.
- Added 45 new functions for XL functions to work on form controls and XL.Sheet.FormControlCount function.
- Added Archive.Create, Archive.AddContainer, Archive.AddFile, Archive.AddText and Archive.Close functions.
- Added Audit.BaseTableNameForID function.
- Added ContinuityCamera.CanImport and ContinuityCamera.HasPopupMenu functions.
- Added dot as valid character for field names for syntax coloring.
- Added DynaPDF.ChangeNamedDest function.
- Added DynaPDF.CreateStructureTreeEx function.
- Added DynaPDF.SaveAndSignFileExt1 and DynaPDF.SaveAndSignFileExt2 functions to sign a PDF using external PKCS7 signature provider.
- Added flag 32 for Text.TextToHTML function to use paragraphs.
- Added flags parameter to Matrix.Text function and a flag for Matrix.CSV and Matrix.Text to include column names in first row.
- Added FM.TextWithDataType function.
- Added iOSApp.AddSwipeGestureRecognizer and iOSApp.ClearSwipeGestureRecognizer functions to recognize a swipe gesture on your layout.
- Added JavaScript.LoadLibrary and JavaScript.Available functions.
- Added MongoDB.Command, MongoDB.AggregateDatabase and MongoDB.AggregateCollection functions.
- Added MongoDB.GetOptions, MongoDB.GetTLS and MongoDB.SetDatabase functions.
- Added PDF/UA-1 for DynaPDF.SetPDFVersion function.
- Added PKCS12.SignData function.
- Added Plugin.IsMaintenanceExpired function.
- Added Plugin.State function.
- Added Process.GetDllDirectory and Process.SetDllDirectory functions.
- Added Queue Length parameter for WebHook.Listen function.
- Added shouldPrintBackgrounds parameter for WebView.SetPrintParameter for use in WebKit 1 and 2.
- Added shouldPrintBackgrounds to WebView.SetPreferences and WebView.GetPreferences for WebKit 2 to control printing of backgrounds.
- Added support for JavaScriptWebKit functions to work on Windows and Linux if you provide a JavaScriptEngine library file to load.
- Added SyntaxColoring.ScriptSearchBox.GetRegEx and SyntaxColoring.ScriptSearchBox.SetRegEx functions.
- Added Windows support for Clipboard.SetPDF and Clipboard.GetPDF functions.
- Added Windows support for Container.ReadImage and Container.ReadImageFile functions to e.g. load HEIF/HEIC files on Windows.
- Added WindowsML.List function.
- Added WindowsOCR functions.
- Added WindowsUserNotification.List function.
- Added WindowsUserNotification.SetExpiresOnReboot and WindowsUserNotification.GetExpiresOnReboot functions.
- Added WindowsUserNotification.SetExpiresOnReboot and WindowsUserNotification.GetExpiresOnReboot functions.
- Added WindowsUserNotification.SetGroup and WindowsUserNotification.GetGroup functions.
- Added WindowsUserNotification.SetNotificationMirroring and WindowsUserNotification.GetNotificationMirroring functions.
- Added WindowsUserNotification.SetPriority and WindowsUserNotification.GetPriority functions.
- Added WindowsUserNotification.SetRemoteId and WindowsUserNotification.GetRemoteId functions.
- Added WindowsUserNotification.SetSuppressPopup and WindowsUserNotification.GetSuppressPopup functions.
- Added WindowsUserNotification.SetTag and WindowsUserNotification.GetTag functions.
- Added XL.Book.IsWriteProtected, XL.Sheet.DefaultRowHeight, XL.Sheet.GetTabColor, XL.Sheet.GetTabColorRGB and XL.Sheet.SetDefaultRowHeight functions.
- Added XL.Sheet.AddSelectionRange, XL.Sheet.GetActiveCell, XL.Sheet.RemoveSelection, XL.Sheet.SelectionRange and XL.Sheet.SetActiveCell functions.
- Adjusted various internals for future FileMaker versions.
- Applied SQLAPI patch for Oracle fix in memory leak.
- Changed all SystemInfo functions to be free to use without license.
- Changed CURL.SetOptionPassword function to not show password in log.
- Changed plugin to ignore Registration calls with older keys if a newer license was already set to avoid complaining dialogs when opening older solutions.
- Changed script search to do regular repressions (opt-in via preferences dialog).
- Changed search field for relationship graph on Windows to be a combo box.
- Changed SQL functions to log SQL statements when trace is active.
- Deprecated PHP functions.
- Deprecated SystemInfo.isLeopard, SystemInfo.isSnowLeopard, SystemInfo.isLion and SystemInfo.isMountainLion.
- Deprecated SystemInfo.isWindows2000, SystemInfo.isWindowsXP, SystemInfo.isWindowsVista and SystemInfo.isWindows7.
- Deprecated SystemInfo.WinCSDVersion and SystemInfo.WindowsAero functions.
- Deprecated SystemInfo.WinServicePackMajor and SystemInfo.WinServicePackMinor functions.
- Deprecated WebView.Cookies.Count and WebView.Cookies.Query in favor of WebView.AllCookies function.
- Disabled FTP access in libxml to avoid unintended network access.
- Enabled the WindowsML functions again for the public release.
- Fixed a bug in MongoDB.ChangeStreamErrorDocument, MongoDB.ChangeStreamResumeToken and MongoDB.NextChange functions.
- Fixed a bug with library loading for aarch64 on Linux for libusb, libidn2, libiconv and libldap.
- Fixed a crash in JSON.ToHTML function.
- Fixed a crash in trace function.
- Fixed a link error in the simulator plugin for Apple Silicon which prevented it from loading when used in newer iOS SDK versions when using newer Xcode version.
- Fixed a problem loading iconv on Linux.
- Fixed a problem with Container.ReadImage function returning error about NSRange being wrong.
- Fixed a problem with CURL.SetProgressScriptName causing a crash when transfer went too fast.
- Fixed a problem with export dialog tooltips not showing when using the script step.
- Fixed a timing crash with option click on Set Field in newer FileMaker Pro being too quick.
- Fixed Clipboard.SetPicture to better pass transparency.
- Fixed CURL.GetProgressFileName and CURL.GetProgressScriptName functions.
- Fixed FM.SQL.InsertRecords, FM.SQL.InsertRecordsToSQL, Matrix.InsertRecordsToSQL and Matrix.InsertRecords to quote the table name for the SQL used internally.
- Fixed JavaScript.New to work on iOS again.
- Fixed problem in Barcode.Generate and Barcode.GenerateJSON functions, where a warning from the zint library would be treated as an error.
- Fixed relationship graph search box not showing in Dutch.
- Fixed ScreenshotRect, Container.Screenshot and WebView.Screenshot for Windows to better use right DPI for high DPI screens.
- Implemented local Hotkeys for Windows. So if HotKey.Register is passed Local = 1, we run a different code path to monitor keyboard instead of registering global hotkey.
- Implemented Vision.RecognizeText for Windows using WindowsOCR functions.
- Implemented WebView.AllCookies and WebView.PrintToFile for Windows.
- Improved Clipboard.GetPicture to take JPEG, PNG or GIF directly from the clipboard if available. Falls back to bitmap if that is not available.
- Improved Clipboard.SetPicture to put PNG on the clipboard in addition to a bitmap for applications, that can read PNG forever.
- Patched SQLAPI to work again with Field() query without FetchNext.
- Rewrote the WindowsUserNotification functions.
- Updated CURL library to version 7.88.1.
- Updated DynaPDF to version 4.0.72.208.
- Updated DynaPDF.GetBookmark and DynaPDF.GetBookmarksAsJSON functions to return Action and NamedDest properties.
- Updated LCMS2 library to version 2.15.
- Updated LibXL to version 4.1.
- Updated libxml to version 2.10.3.
- Updated openssl library to 1.1.1t.
- Updated SQLite to version 3.41.0.
- Updated tiff library to version 4.5.0.
Release notes for version 13.0 - January 2023
New functions in 13.0 and Announcement in blog.
- Added WebSocket support for CURL functions.
- Added functions to watch changes in MongoDB: MongoDB.ChangeStreamErrorDocument, MongoDB.ChangeStreamResumeToken, MongoDB.CloseChangeStream, MongoDB.NextChange, MongoDB.WatchClient, MongoDB.WatchCollection and MongoDB.WatchDatabase.
- Added example database for SMTP with OAuth for Office 365 in FileMaker.
- Add PATCH support for CURL.SetupAWS function.
- Added AppleScript.List function.
- Added AVExport.List function.
- Added AVPlayer.List function.
- Added AVRecorder.List function.
- Added BinaryFile.List function.
- Added CFunction.List and CLibrary.List functions.
- Added CGImageSource.List function.
- Added checkbox to preferences dialog for code folding and for export dialog tooltips.
- Added checkbox to preferences dialog on Windows for relationship search box.
- Added checkbox to preferences dialog to control the option-click feature in Script Workspace.
- Added checkbox to preferences dialog to control the syntax highlighting for formulas independent of scripts.
- Added control-F shortcut for Relationship search field on Windows to move focus to the search field. Press control-G to search next.
- Added CoreML.List function.
- Added CURL.GetDebugMessages to replace deprecated CURL.GetDebugAsText, but old name will stay around for a long time.
- Added CURL.GetHeaders to replace deprecated CURL.GetHeaderAsText.
- Added CURL.SetOptionCACacheTimeout and CURL.SetOptionQuickExit functions.
- Added CURL.SetOptionWebSocketOptions, CURL.WebSocketReceive and CURL.WebSocketSend functions.
- Added DNSLookup.List function.
- Added DynaPDF.CreateICCBasedColorSpace and DynaPDF.CreateICCBasedColorSpaceContainer.
- Added DynaPDF.GetPageField and DynaPDF.GetPageFieldAnnotation functions.
- Added DynaPDF.Table.List function.
- Added DynaPDF.TestGlyphs function.
- Added ECKey.List function.
- Added Events.Event.EventIdentifier function.
- Added find and go to line commands to contextual menu for ScriptWorkspace to make them more visible.
- Added fontname and fontsize as keys for the XML for Menu.DefineQuickMenuXML function. Now works for submenus, too.
- Added FSEvents.List function.
- Added ImageView.List function.
- Added iOSApp.GetDidBecomeActiveScript, iOSApp.GetDidEnterBackgroundScript, iOSApp.GetDidReceiveMemoryWarningScript, iOSApp.GetSignificantTimeChangeScript, iOSApp.GetWillEnterForegroundScript and iOSApp.GetWillResignActiveScript functions.
- Added Java.List function.
- Added JavaScript.List function.
- Added JSON.Text function.
- Added LDAP.List function.
- Added MapView.List function.
- Added MarkDown.List function.
- Added MetaDataQuery.List function.
- Added new flags parameter to FM.SQL.CSV and Matrix.CSV.
- Added new Get() function names in FileMaker 19.6 for our links in calculations.
- Added new option to XML.Compact and XML.Format to skip the ?xml line with version details.
- Added option key for code folding to decide whether we fold until next Else or End If.
- Added PDFKit.List function.
- Added PKCS7.List, PKCS12.List and PKey.List functions.
- Added PortMidi.List function.
- Added recursive parameter to Menu.FindItemWithTag and Menu.FindItemWithTitle functions.
- Added RichText.CopyToClipboard and RichText.ReadFromClipboard functions.
- Added SerialPort.GetTag and SerialPort.SetTag functions.
- Added SerialPort.Path function.
- Added Shell.GetTag and Shell.SetTag functions.
- Added Shell.List function.
- Added special handling in LDAP functions for returning objectSid and objectGUID values in order to return them formatted.
- Added SSH.List function.
- Added SyntaxColoring.GetExportTooltipsEnabled and SyntaxColoring.SetExportTooltipsEnabled functions.
- Added TouchBar.List function.
- Added UNNotification.List function.
- Added WebRequest.GetMode function.
- Added WhitespaceHeight, GuardDescent and WarnLevel options for Barcode.GenerateJSON functions.
- Added Windows support for ProcessActivity.beginActivity function.
- Added WMFP.List function.
- Added WordFile.List function.
- Added X509.List function.
- Added XL.List function.
- Added XL.Sheet.ReadCellsAsMatrix function to copy cell values into a new matrix.
- Adjusted maximum object counts. Now DynaPDF.Table.Create can have 10000 tables at the same time in memory.
- Changed context menu command to show "sort descending" only when you press option key. Without option key we sort ascending.
- Changed DynaPDF.Initialize function to return an error, if the license key contains invalid characters on the beginning.
- Changed Files.DeleteFolder for Linux to do recursive deletion.
- Changed FM.SQL.Text and FM.SQL.CSV functions to return empty text if there are no rows and no row parameter.
- Changed font popup in preferences dialog to list monospace fonts first.
- Changed JPEG loader for GMImage.NewFromContainer, GMImage.NewFromFile and related to not stop loading of an image on a warning.
- Changed JSON parser to skip non breaking spaces like regular spaces.
- Changed JSON.SetPathItem to do nothing if value is empty (like v12.4 and before).
- Changed minimum iOS version for deployment to iOS 12.0.
- Changed search field in ScriptWorkspace to be a real search field with history menu.
- Changed variable check to disable while scrolling on macOS Ventura with multi line comments in use to avoid layout trouble.
- Deprecated CURL.GetProtocol function.
- Deprecated CURL.SetOptionEGDSocket, CURL.SetOptionSSLEnableNPN, CURL.SetOptionSocks5GSSAPIService and CURL.SetOptionRandomFile functions.
- Deprecated CURL.SetOptionProtocols in favor of CURL.SetOptionProtocolsString function.
- Deprecated CURL.SetOptionRedirProtocols in favor of CURL.SetOptionRedirProtocolsString function.
- Deprecated DynaPDF.ExtractPageRectText and DynaPDF.ExtractPageText functions in favor of DynaPDF.ExtractText function.
- Deprecated FM.GetDictionary and FM.GetDictionaryList functions.
- Deprecated Proj functions.
- Deprecated SyntaxColoring.LineNumbers.Disable, SyntaxColoring.LineNumbers.Enable, SyntaxColoring.LineNumbers.Enabled, SyntaxColoring.LineNumbers.GetColor and SyntaxColoring.LineNumbers.SetColor functions.
- Fixed a bug in LDAP.Search passing attribute names on macOS.
- Fixed a crash in JSON function when parsing invalid JSON code, broken in 12.5 while fixing another bug.
- Fixed a memory leak in LDAP.AddJSON and LDAP.ModifyJSON and added additional checks for the passed in JSON.
- Fixed a problem with iOS plugins missing the version number.
- Fixed a problem with macOS using same class name for a class as MBS. This may lead to a crash if one side tries to use the class and gets the one from the other side. We renamed our classes.
- Fixed a problem with shifting text to left or right in first row of a calculation.
- Fixed a problem with SQL.InsertOrUpdateRecords not finding the primary key field.
- Fixed a problem with text jumping down when coloring in calculations.
- Fixed a problem with XL.Book.AddSheet function not passing correct name each time.
- Fixed an issue with relationship search box not hidden correctly when switching tabs.
- Fixed bugs for search field for relationship graph on Windows.
- Fixed PrintDialog.GetLastSettings to not return an error if there are no print settings yet.
- Fixed problem passing field index to DynaPDF.FlattenAnnotOrField function.
- Fixed problem with Schedule functions with storing result from evaluate.
- Fixed Shell.ExitCode to work better on Linux.
- Fixed Window.PositionNextDialog to work on Windows with the progress dialog shown by Insert From URL script step.
- Fixed XL.Sheet.SetColumn and XL.Sheet.SetRow to better.
- Improved Files.MoveFile on Linux to allow you to specify a folder as destination.
- Improved our link detection for comment lines in ScriptWorkspace to better work with new line and all unicode space characters.
- Improved Vision.SupportedRecognitionLanguages to report more languages.
- Linux for ARM 64-bit now is compiled with C++11 standard library.
- Optimized initialization to log better if something gets wrong to help debugging.
- Removed syntax coloring support for FileMaker 13 and older since our plugin doesn't run there any more (since we moved to 64-bit only).
- Updated CURL library to version 7.87.0.
- Updated DynaPDF to version 4.0.70.201.
- Updated for Claris Pro v40.1.
- Updated GraphicsMagick to version 1.3.38.
- Updated Plugin SDK or FileMaker 19.6.
- Updated SQLAPI to version 5.2.3.
- Updated SQLite to version 3.40.0.
- Updated Xcode to version 14.2.
- Updated zint library to version 2.11.1. Barcode text may be bigger.
- Updated zlib to version 1.2.13.
Release notes for version 12.5 - 8th November 2022
New functions in 12.5 and Announcement in blog.
- Added a search field for relationship graph on Windows for European languages.
- Added PhotoPicker functions to show newer image picker on iOS.
- Added MongoDB.StartTransaction, MongoDB.CommitTransaction, MongoDB.InTransaction, MongoDB.AbortTransaction and MongoDB.TransactionState functions.
- Added algorithm and DecodeBase32 parameters to TOTP.Calculate function.
- Added App.GetFocussedWindowTitle function.
- Added BigEndian flag to BinaryFile.WriteInt and BinaryFile.ReadInt functions.
- Added command-[ and command-] shortcuts for macOS for text views, so you can indent text of formulas.
- Added Files.IsReadOnly and Files.SetReadOnly functions for Windows.
- Added FM.SQL.List, JSON.List, Matrix.List, MongoDB.List and XML.List functions.
- Added LDAP.SetBinaryKeys and LDAP.GetBinaryKeys functions.
- Added macOS support for CNContact.Show to show contact as popover.
- Added Matrix.ConvertDataType function.
- Added Matrix.SetColumnNames and Matrix.SetRowNames functions.
- Changed code folding to collapse If to the next else.
- Changed comment URLs to add current file name for URLs starting with "fmp://$/?".
- Changed custom WebViewer to put it back if FileMaker rebuilds the layout. No longer need Window.SetCloseTrigger to trigger a script to do this.
- Changed duplicate search for script workspace to skip separators.
- Changed minimum iOS version for deployment to iOS 12.0.
- Changed plugin to work with Claris Server.
- Changed TOTP.Calculate function to return number with zeros on front.
- Changed URL comments for ScriptWorkspace to encode unicode characters if needed.
- Changed WebHook.Listen to allow passing zero as port number to pick a random port, which you then query via WebHook.GetPort.
- Changed XML.ToJSON to better convert single values, which are boolean or number and not just text.
- Disabled code folding for FileMaker 15 and older.
- Disabled debug logging left over in CoreML.Update function.
- Disabled debug logging left over in RegEx.DataDetector function.
- Fixed a bug in Matrix.Add and Matrix.Multiply.
- Fixed a but in XL.CopySheet, where it failed if the sheet didn't have a name.
- Fixed a problem in Internal SQLite Library for new changes64 function.
- Fixed a problem in SyntaxColoring.Format function.
- Fixed a problem in XML.SetVariables and long variable names.
- Fixed a problem showing IDs for scripts, layouts and value lists for Claris Pro.
- Fixed a problem with Claris Pro not loading the plugin.
- Fixed a problem with JSON.IsValid accepting garbage characters behind parsing.
- Fixed a problem with restoring custom WebViewers with WebView.Create.
- Fixed a regression in JSON.GetPathItem and JSON.SetPathItem to restore functionality, where you just grab an array item with just an index.
- Fixed bug in coloring field names with underscore character.
- Fixed bug in DynaPDF.AppendImagePage, where we missed last image in a multi image picture.
- Fixed crash if text is missing in JSON for Barcode.GenerateJSON function.
- Fixed issue with our script ID display hiding the script name.
- Fixed JSON.Colorize to work better with color for keys in nested objects.
- Fixed problem in JSON.GetStringValue crashing for invalid JSON.
- Fixed problem in linux plugin preventing it to load in Claris Server.
- Fixed problem in WordFile.ReplaceTag with all = true, where it returned error, but replaced tags.
- Fixed problem with DragDrop.GetFileDescriptor not working in v12.4.
- Fixed XL.Format.SetNumFormat and related functions to not crash if you pass an invalid format number.
- Implemented ProgressDialog functions for iOS.
- Implemented WebView.ClearSelection for WebKit 2 on macOS.
- Improved Auto Complete to remove duplicates in MBS function list.
- Improved EmailParser.HTMLToPlainText function to better handle comments in html and div tags.
- Improved EventMonitor functions for Windows to recognize better 3rd, 4th or 5th mouse button.
- Improved URL detection in Script Workspace to recognize fmp19:// URLs.
- Updated CURL to version 7.86.0.
- Updated DynaPDF to version 4.0.70.200.
- Updated LCMS library to version 2.14.
- Updated openssl to version 1.1.1s.
- Updated SQLAPI to version 5.2.2.
- Updated SQLite to version 3.39.4.
- Updated Xcode to version 14.0.1.
Release notes for version 12.4 - 6th September 2022
New functions in 12.4 and Announcement in blog.
- Added code folding for Script Workspace (macOS only).
- Added Collapse/Expand All commands to script list in Script Workspace (macOS only).
- Added CURL.Options function to query JSON with all options set.
- Added CURL.SetOptionMaxLifeTimeConnection, CURL.SetOptionMimeOptions and CURL.SetOptionSSHHostPublicKeySHA256 functions.
- Added DirectoryWatcher.TotalChangeCount function.
- Added DoNotComprMetadata flag for DynaPDF.SetGStateFlags function.
- Added DynaPDF.SetRenderingIntent function.
- Added Find Duplicate Names contextual menu commands for script list in Script Workspace (macOS only).
- Added flags for JSON.Import and XML.Import functions to skip table and field creation.
- Added hide/unhide commands for contextual menus for Script Workspace (macOS only).
- Added json key for PDFKit.GetPDFAttribute function.
- Added List.MatchesSubString function.
- Added Matrix.Rotate function.
- Added MongoDB.CloseCollection and MongoDB.CloseDatabase functions.
- Added MongoDB.CursorErrorDocument and MongoDB.NewCursorFromCommandReply functions.
- Added MongoDB.FindIndexes and MongoDB.Rename functions.
- Added MongoDB.InsertMany function to insert multiple records in one operation.
- Added Overlays parameter to MapView.ShowAllAnnotations function.
- Added RemoteControl.InsertText function.
- Added size parameter for GMImage.Hash function.
- Added XML.GetSaveNoEmptyTags and XML.SetSaveNoEmptyTags functions.
- Added zstd support for CURL functions.
- Changed JSON.ToXML to better convert arrays.
- Changed JSON.ToXML to unpack the text nodes made by XML.ToJSON.
- Changed QLPreviewPanel.AddPDF to pass right filename of PDF from container to the preview window.
- Changed variable name check to allow % in the variable name.
- Fixed a bug in SyntaxColoring.Format raising exception if a color is not defined.
- Fixed a bug in WordFile.Tags on Windows.
- Fixed a crash with MongoDB where some functions would not check whether you set URI before.
- Fixed a problem in DragDrop functions on Windows crashing if used with text dropping.
- Fixed a problem where ErrorLog would show IsError function.
- Fixed a problem where one function sets error flag and calling function gets logged to have error incorrectly.
- Fixed a problem with FM.InsertRecord and FM.UpdateRecord functions. They now ignore empty field names.
- Fixed a problem with List.CSVSplit, Matrix.CSVSplit and QuickList.CSVSplit not parsing properly quoted multi line value.
- Fixed an issue where you couldn't call basic functions like Version or Register if demo mode ended.
- Fixed links for Get() functions to not show up if the checkbox in preferences dialog is not set.
- Fixed per thread storage to properly cleanup and avoid trace functions leak file handles on server if you use per thread trace files.
- Implemented Files.DiskInfo function for iOS.
- Improved code to add/remove table occurrence prefixes to skip quoted text.
- Improved DynaPDF.AppendImagePage and DynaPDF.AppendImagePages to handle PDF, too.
- Improved JSON.SetPathItem and JSON.GetPathItem functions to accept FileMaker's style for object/array accessing.
- Improved XML.Import and JSON.Import to better report progress on slow connections.
- Improved XML.ToJSON to handle data type conversion for attributes, too.
- Renamed CURL.SetOptionFTPResponseTimeout function to CURL.SetOptionServerResponseTimeout. (old name stays valid, too)
- Reverted a fix for our mutex handling, which we broke in 12.3. Fixed in 12.3.0.08 and newer.
- Rewrote Files.RevealFile for Windows to select a file.
- Updated CURL to version 7.85.0.
- Updated DynaPDF to version 4.0.70.197.
- Updated SQLite to version 3.39.2.
Release notes for version 12.3 - 12th July 2022
New functions in 12.3 and Announcement in blog.
- Added MongoDB functions to connect to Mongo databases.
- Added a button for links in comments in script workspace to open page in the browser.
- Added ErrorLog function to query JSON of errors from function calls in MBS FileMaker Plugin since last call to ClearErrors function.
- Added ' to list of allowed characters for variables or function names in syntax highlighting.
- Added AddToErrorLog function to add custom log entries.
- Added Audit.GetDateAndTimeAsNumbers and Audit.SetDateAndTimeAsNumbers to log dates, times and timestamps as numbers instead of text.
- Added checkbox in preferences for comment links.
- Added Collapse/Expand All commands to table views in the FileMaker user interface like layouts.
- Added CURL.GetCAInfo and CURL.GetCAPath functions.
- Added DynaPDF.GetFontSize function.
- Added DynaPDF.SetDateTimeFormat function.
- Added DynaPDF.SetTemplBBox function.
- Added Find Duplicate Names contextual menu commands for layout window in FileMaker.
- Added FM.VariableLookup and SharedMemory.LookupValue functions.
- Added MariaDB as option for SQL.SetClient function.
- Added Mode = 2 for SerialPort.List function to return information as JSON.
- Added PDF support for Vision.RecognizeText function, so you can get live text from PDF documents.
- Added PDF/X 5 and 6 values for DynaPDF functions.
- Added SyntaxColoring.CommentLinks.GetEnabled and SyntaxColoring.CommentLinks.SetEnabled functions.
- Added SystemInfo.isVentura function.
- Added TOTP.Calculate function and TOTP.CurrentTime function to create Time-based one-time passwords.
- Changed Container.GetDataURL function to use right mime type for WebP images.
- Changed DynaPDF.SetFont, DynaPDF.SetFieldFont, DynaPDF.SetFontEx and DynaPDF.Table.SetFont to use unicode as default code page.
- Changed variable check to handle "Perform Script", "Perform Script on Server" and "Install OnTimer Script" script steps.
- Deprecated WebView.ShowDebugBar function.
- Fixed a bug where debugger would crash if the script is zoomed in.
- Fixed a possible race condition for CURL.GetResultAsText and similar.
- Fixed a problem where changing font would remove our extra tab stops added for formulas.
- Fixed a problem where WinPhotoAcquire.Files would not get all the pictures.
- Fixed Container.GetBase64 function to work without error and only container parameter.
- Fixed DynaPDF.SysFontInfo function and example database to not miss the last font.
- Fixed List.DeCombine and QuickList.DeCombine to handle the ReturnNewline parameter correctly.
- Fixed parameter count check for DynaPDF.DeleteAnnotation function.
- Fixed problem in contextual menu, where wrong shortcut key was displayed.
- Fixed problem with plugin correctly identifying Claris Pro.
- Fixed SystemInfo.WindowsMachineInfo to report correctly for Windows on ARM.
- Fixed to problem where the repetition field in a calculation window was too small.
- Implemented recover for mutex handling, so we better handle if a function crashes and avoid timeout exceptions.
- Implemented SerialPort.GetCTS, SerialPort.GetDSR, SerialPort.GetDTR, SerialPort.GetRTS, SerialPort.SetCTS, SerialPort.SetDSR, SerialPort.SetDTR, and SerialPort.SetRTS for Linux.
- Updated CURL to version 7.84.0.
- Updated DynaPDF to version 4.0.69.188.
- Updated SQLAPI to version 5.2.1.
- Updated tesseract support for OCR functions to work with version 5.1.
- Updated LibXL to version 4.0.4.
- Updated to Xcode 13.4.
- Upgraded If/Loop colorization to detect more script steps in various localizations.
- You can now use english spelling JSON.Colourise and XML.Colourise if you prefer to call JSON.Colorize or XML.Colorize.
Release notes for version 12.2 - 17th May 2022
New functions in 12.2 and Announcement in blog.
- Added links in calculation dialogs for get functions to point to FileMaker documentation.
- Added AsArray flag 4 for Matrix.JSONRecord and Matrix.JSONRecords functions.
- Added ClearErrors and HadErrors functions.
- Added Clipboard.GetPDF and Clipboard.SetPDF functions.
- Added JavaScript.CallFunction, JavaScript.GetPropertyJSON and JavaScript.SetPropertyJSON functions.
- Added JavaScript.CF function for using this JavaScript engine for custom functions, too.
- Added Menu and MenuSet as types for Clipboard.DetectFileMakerDataType function.
- Added new optional RootTableName parameter for JSON.Import function.
- Added new parameter for JavaScript.New to name the instance.
- Added new parameter to replace new lines in the list with replacement text for Matrix.GetColumn, Matrix.GetRow and Matrix.GetText functions.
- Added SchemaCacheFlushed counter for Audit.Statistics function to show how often we flushed the table cache.
- Added WordFile.Tags function.
- Changed App.SetDockIcon to allow passing empty value to clear image.
- Changed Container.GetBase64 and Container.GetHex to return main container item if no index is passed.
- Changed DynaPDF.ReplacePattern to fallback to Courier (fixed pitch), Times (serif) or Helvetica as font.
- Changed PDFKit.Combine to ignore empty value in parameters.
- Changed SharedMemory.GetValue to trim trailing zero bytes.
- Changed Text.AppendTextFile, Text.WriteToContainer and Text.WriteTextFile to allow writing BOM character.
- Changed XML.NodeNames to return names in order of appearance.
- Changed XML.SetPathValue to create text note if needed.
- Deprecated Barcode.Detect in favor of Barcode.Scan function.
- DynaPDF has been updated and tested to work with ZUGFeRD 2.2 / Factur-X 1.0.06.
- Extended the menu for script list in script workspace and added sort commands.
- Fixed a problem with Dialog.SetTextAlignment and FileMaker 18 causing an out of bounds exception.
- Fixed a problem with high unicode character encodings for Text.TextToHTML function.
- Fixed an edge case for Files.FileNameWithoutExtension, where the path contains no slashes.
- Fixed an edge case in EmailParser functions where file name got an extra space in front.
- Fixed DynaPDF.AttachFileContainer to allow PDF containers to be attached.
- Fixed Files.List to better check directory status on macOS using alternative code path.
- Fixed Files.Mount to return correct path when mounting to a folder.
- Fixed issue with XL.Sheet.CellWriteText to allow you to pass empty value to not change format.
- Fixed problem in DynaPDF.GetInPDFVersionEx and DynaPDF.GetPDFVersionEx not always returning the data.
- Fixed problem with DynaPDF.CheckConformance not parsing options right, e.g. for DefaultPDFA3.
- Fixed WebView.ClearSelection to work with Edge based WebViewer on Windows.
- Fixed WebView.SetInternetExplorerVersion and WebView.SetInternetExplorerHiDPI to return OK on success instead of the new setting as documented.
- Implemented DialogModifications functions for iOS to customize some error messages in FileMaker iOS application.
- Improved Audit to only query metadata for required tables instead of all as that should be faster.
- Improved CURL.SetProgressScript to not fire too often.
- Improved exception handling for SQL functions.
- Improved performance for scrolling in Script Workspace when debugger tooltips are enabled.
- Improved trace logging for macOS to replace newsline for console output to have LF instead of CR for line endings.
- Improved WebHook functions to work better with mixed IPv4 and IPv6 networks.
- Marked FM.ExecuteSQL as deprecated in favor of newer FM.ExecuteFileSQL function.
- Marked FM.ExecuteSQLOnIdle as deprecated in favor of newer FM.ExecuteFileSQLOnIdle function.
- Optimized List.CSVSplit, QuickList.CSVSplit and Matrix.CSVSplit to better handle lonely quotes in quoted strings.
- Optimized Schedule functions to be faster if there is no schedule to run.
- Rewrote Window.ConfigureToolbarMenu for macOS 12 to make it work again.
- Updated CURL to version 7.83.1.
- Updated DukTape library for JavaScript functions to version 2.7.
- Updated DynaPDF to version 4.0.66.181.
- Updated openssl to version 1.1.1n.
- Updated SQLite to version 3.38.5.
- Updated Text.FilterASCII, Text.RemoveAccents and Text.RemoveAccentsCaseInsensitive functions to recognize more characters like ½.
- Updated to Xcode 13.3.1.
- Version 12.1
- Version 12.0
- Version 11.5
- Version 11.4
- Version 11.3
- Version 11.2
- Version 11.1
- Version 11.0
- Version 10.5
- Version 10.4
- Version 10.3
- Version 10.2
- Version 10.1
- Version 10.0
- Version 9.5
- Version 9.4
- Version 9.3
- Version 9.2
- Version 9.1
- Version 9.0
- Version 8.5
- Version 8.4
- Version 8.3
- Version 8.2
- Version 8.1
- Version 8.0
- Version 7.5
- Version 7.4
- Version 7.3
- Version 7.2
- Version 7.1
- Version 7.0
- Version 6.5
- Version 6.4
- Version 6.3
- Version 6.2
- Version 6.1
- Version 6.0
- Version 5.4
- Version 5.3
- Version 5.2
- Version 5.1
- Version 5.0
- Version 4.4
- Version 4.3
- Version 4.2
- Version 4.1
- Version 4.0
- Version 3.5
- Version 3.4
- Version 3.3
- Version 3.2
- Version 3.1
- Version 3.0
- Version 2.9
- Version 2.8
- Version 2.7
- Version 2.6
- Version 2.5
- Version 2.4
- Version 2.3
- Version 2.2
- Version 2.1
- Version 2.0
- Version 1.8
- Version 1.7
- Version 1.6
- Version 1.5
- Version 1.4
- Version 1.3
- Version 1.2
- Version 1.1
- Version 1.0

