LibreAutomate Changelog

What's new in LibreAutomate 1.2.0

Apr 18, 2024
  • Editor:
  • New small features:
  • Panel Recipe: you can set font in Options.
  • Panel Mouse: context menu with some options.
  • Options > Other > Internet search URL.
  • Menu Edit > Tidy code > Deduplicate wnd.find.
  • Hotkeys displayed in tooltips of toolbar buttons.
  • To unload AuCpp.dll: rundll32.exe "C:pathtoAuCpp.dll",UnloadAuCppDll 0.
  • Improved:
  • Tool Find UI object: improved feature "capture smaller element". Use hotkey Shift+F3.
  • Tool Find UI object: option "Use role in elm variable name".
  • Fixed bugs:
  • Fixed several bugs.
  • Library:
  • New members:
  • dialog.options.timeoutTextFormat.
  • popupMenu.caretRectFunc.
  • wait.retry.
  • ScriptEditor.GetFileInfo.
  • ScriptEditor.TestCurrentFileInProject.
  • New parameters:
  • wnd.Move, wnd.Resize, wnd.MoveL: visibleRect (exclude the transparent frame).
  • elm functions: in the prop parameter can be specified url. Use to search in side panels, developer tools, settings etc. The Find UI element tool now adds it when need.
  • Improved:
  • elm with Chrome and other Chromium-based web browsers.
  • Breaking changes:
  • Renamed functions:
  • wpfBuider.FormatText -> formatTextOf,
  • wpfBuider.FormattedText -> formattedText,
  • popupMenu.DefaultFont -> defaultFont,
  • popupMenu.DefaultMetrics -> defaultMetrics,
  • toolbar.DefaultMetrics -> defaultMetrics.

New in LibreAutomate 1.1.8 (Mar 10, 2024)

  • Editor:
  • New features:
  • Options > Compiler > Always print "Compiled".
  • The output tag <fold> can have custom link text, like <><fold link text>...</fold>.
  • Fixed bugs:
  • Exception when formatting certain code without option "Compact".
  • Library:
  • New members:
  • (1.1.8) OKey.TextShiftEnter (opt.key.TextShiftEnter).

New in LibreAutomate 1.1.7 (Mar 4, 2024)

  • Fixed:
  • Code like e.Elm.FindAll() throws InvalidOperationException.
  • Sometimes LA crashes when closing a tool like "find window".

New in LibreAutomate 1.1.7 (Mar 4, 2024)

  • Fixed:
  • Code like e.Elm.FindAll() throws InvalidOperationException.

New in LibreAutomate 1.1.2 (Feb 24, 2024)

  • Editor:
  • New features:
  • Automatically updates environment variables in LA and task processes whenever they are changed in the registry.
  • Editor extensions can use Panels.Recipe.OpeningRecipe to intercept and replace cookbook recipe text.
  • Removed features:
  • Removed feature "preload miniProgram script task process to make task startup faster". Sometimes this feature caused problems. Inactive windows, old environment variables etc. Now the startup speed is the same as when role is exeProgram.
  • Improved:
  • Several improvements.
  • Fixed bugs:
  • Cannot set exe version with Publish.
  • IME does not work when editing a file name.
  • (1.1.1) Exception when trying to end a script task if the main window never was visible.
  • (1.1.1) LA crashes when called script.debug if the main window never was visible.
  • (1.1.2) When editing a file name, cannot use some hotkeys, eg Ctrl+C, Delete.
  • Library:
  • New parameters:
  • toolbar constructor: settingsFile.
  • Improved:
  • miscInfo.getTextCursorRect works with more apps.

New in LibreAutomate 1.0.1 (Jan 28, 2024)

  • New in 1.0.1:
  • Debugger command "Jump to here".
  • Debugger can print assembly unload events.
  • Fixed bugs:
  • When compiling a library, incorrectly adds icons specified in code like "*Pack.Icon color". Then the library may fail to load these icons.
  • Incorrectly installs some NuGet packages.
  • Breaking changes:
  • Removed the "debugger script" feature.

New in LibreAutomate 0.19.3 (Nov 22, 2023)

  • Fixed v0.19 bug: difficult to uncomment multiple lines containing empty lines.

New in LibreAutomate 0.19.2 (Nov 18, 2023)

  • Fixed some v0.19 bugs.
  • Library:
  • New classes:
  • CheckListDialog.
  • Several improvements.

New in LibreAutomate 0.19.1 (Nov 17, 2023)

  • Fixed some v0.19.0 bugs.
  • Menu Code -> Color.
  • New version of the icons library.
  • Case-insensitive icon names.

New in LibreAutomate 0.19.0 (Nov 15, 2023)

  • Editor:
  • .NET 8.
  • C# 12.
  • Bookmarks.
  • Menu Run -> Publish. Can create single-file programs.
  • Options -> General -> Auto-backup (Git commit).
  • Properties -> nullable.
  • Menu Tools -> Update icons. Moved from the Icons tool. Now also updates custom toolbars.
  • New context menu items in the Recipe panel: Copy code, New script.
  • Several bug fixes and improvements.
  • Library:
  • New classes:
  • CheckListDialog.
  • Several improvements.

New in LibreAutomate 0.17.1 (Aug 12, 2023)

  • Editor:
  • Improved:
  • Source code search (the "Go to definition" command when the symbol is not in your code).
  • Does not use NTFS links for folders imported as links.
  • Does not use locked files (state.db) in workspace folder.
  • Improved some fonts.
  • And more.
  • Options -> Font, colors: output font, italic.
  • Library
  • New classes:
  • ComUtil.
  • WBLink. Can be used with wpfBuilder.Text.
  • (0.17.1) consoleProcess.
  • New members:
  • elm.uiaCN. Also elm and elmFinder functions that support uiaid now also support uiacn.
  • HttpResponseMessage extension methods: Download, DownloadAsync.
  • wpfBuilder: Wrap, and several new overloads of other functions.
  • folders.sourceCodeMain.
  • script.sourcePath.
  • JSettings properties: NoAutoSave, NoAutoSaveTimer.
  • New parameters:
  • filesystem.more.isSameFile: useSymlink*.
  • Improved:
  • internet.http adds default header "User-Agent: Au".
  • AutotextTriggerArgs.Menu: null adds separator.
  • wpfBuilder.Padding and .Brush support more element types.
  • filesystem.more.createSymbolicLink with deleteOld true now does not delete the old link if fails to create new.
  • filesystem.more.createSymbolicLink can create symbolic links without admin rights if in Windows Settings enabled developer mode.
  • Hash.MD5Context.Add: no exception when data is empty.
  • Bug fixes:
  • Editor:
  • Fixed: May crash when disabling triggers.
  • Fixed: Cannot convert some COM type libraries.
  • Fixed: After opening another workspace stops working the Files panel's context menu.
  • Fixed: Exception when formatting code that starts with space.
  • Fixed in 0.17.1: Cannot load program settings if using an old .NET 6 version, eg 6.0.3.
  • Fixed in 0.17.1: If the program stars hidden, it crashes when the tray icon double-clicked.
  • Library:
  • Fixed the _r bug in documentation.
  • Fixed: print.it afraids some COM types.
  • Fixed: when ExtString.ToInt fails, numberEndIndex isn't 0 if used flag IsHexWithout0x.
  • Fixed in 0.17.1: Some protected void Dispose(bool disposing) were not virtual.
  • Breaking changes
  • (0.17.1) run.console default encoding now is UTF-8 or UTF-16. Was Console.OutputEncoding.

New in LibreAutomate 0.17.0 (Jul 31, 2023)

  • Editor:
  • Improved:
  • Source code search (the "Go to definition" command when the symbol is not in your code).
  • Does not use NTFS links for folders imported as links.
  • Does not use locked files (state.db) in workspace folder.
  • Improved some fonts.
  • And more.
  • Options -> Font, colors: output font, italic.
  • Library:
  • New classes:
  • ComUtil.
  • WBLink. Can be used with wpfBuilder.Text.
  • New members:
  • elm.uiaCN. Also elm and elmFinder functions that support uiaid now also support uiacn.
  • HttpResponseMessage extension methods: Download, DownloadAsync.
  • wpfBuilder: Wrap, and several new overloads of other functions.
  • folders.sourceCodeMain.
  • script.sourcePath.
  • JSettings properties: NoAutoSave, NoAutoSaveTimer.
  • New parameters:
  • filesystem.more.isSameFile: useSymlink*.
  • Improved:
  • internet.http adds default header "User-Agent: Au".
  • AutotextTriggerArgs.Menu: null adds separator.
  • wpfBuilder.Padding and .Brush support more element types.
  • filesystem.more.createSymbolicLink with deleteOld true now does not delete the old link if fails to create new.
  • filesystem.more.createSymbolicLink can create symbolic links without admin rights if in Windows Settings enabled developer mode.
  • Hash.MD5Context.Add: no exception when data is empty.
  • Bug fixes:
  • Editor:
  • Fixed: May crash when disabling triggers.
  • Fixed: Cannot convert some COM type libraries.
  • Fixed: After opening another workspace stops working the Files panel's context menu.
  • Fixed: Exception when formatting code that starts with space.
  • Library:
  • Fixed the _r bug in documentation.
  • Fixed: print.it afraids some COM types.
  • Fixed: when ExtString.ToInt fails, numberEndIndex isn't 0 if used flag IsHexWithout0x.

New in LibreAutomate 0.16.0 (Jun 8, 2023)

  • Editor:
  • New features:
  • Options -> Check for updates.
  • Menu Edit -> View -> Customize this menu.
  • Tool "Find UI element" can create FindAll code.
  • New cookbook recipes:
  • Extract table data using UI elements.
  • Library:
  • New members:
  • osdRect.SetRects.
  • Triggers.RunThread.
  • run.thread overload.
  • Improved:
  • HSMessage.Text and HSContentPart.Text now get text even if encoding is unknown. Previously returned null.
  • Bug fixes:
  • Editor:
  • Fixed some bugs.
  • Library:
  • Fixed some bugs.

New in LibreAutomate 0.15.1 (May 20, 2023)

  • New members:
  • TriggerOptions.ThreadThis.
  • New parameters:
  • WpfBuilder.Options: bindLabelVisibility.
  • Bug fixes:
  • Editor:
  • Some "go to position in text" commands set wrong position if there are non-ASCII characters.
  • Library:
  • ElmFinder.FindAll does not work with path.

New in LibreAutomate 0.15.0 (May 17, 2023)

  • Editor:
  • New tools:
  • Get files in folder.
  • New cookbook recipes:
  • End script task.
  • Run script on another computer; HTTP server.
  • Improved:
  • Improvemets in "drop files", "surround code", completion list sorting and more.
  • Library:
  • New classes:
  • HttpServerSession.
  • print.util.
  • InputDesktopException. All functions that send keyboard/mouse input or activate/focus a window now throw this exception if failed because of changed input desktop. It allows to use Ctrl+Alt+Delete or Win+L to end scripts that use these functions even without script.setup(lockExit: true), unless the script handles these exceptions.
  • New members:
  • script.pause.
  • script.paused.
  • print.list.
  • print.noHex.
  • print.it overload for interpolated strings.
  • ExplorerFolder.All.
  • Extension methods string.ToUTF8, byte[].ToStringUTF8.
  • Convert2.GzipCompress.
  • Convert2.GzipDecompress.
  • New parameters:
  • script.setup: exitKey, pauseKey.
  • RegisteredHotkey.Register: noRepeat.
  • HttpClient.Get etc: auth (user name and password), also.
  • HttpResponseMessage.Bytes: decompress.
  • Improved:
  • script.setup flag UExcept.Dialog: the dialog now has links to functions in the call stack.
  • internet.http: the HttpClient now accepts compressed content; decompresses automatically.
  • Bug fixes:
  • Editor:
  • Fixed several exceptions and other bugs.
  • Library:
  • Fixed: script.trayIcon and some script.setup features don't work in exeProgram script started not from editor.
  • Fixed: popupMenu check/radio menu item click delegate not invoked if CheckDontClose true.
  • Fixed: Convert2.BrotliCompress fails if already compressed.

New in LibreAutomate 0.14.0 (Apr 7, 2023)

  • Editor:
  • Menu Edit -> Find symbol.
  • Menu Edit -> Find references.
  • Menu Edit -> Find implementations.
  • Menu Edit -> Rename symbol.
  • Menu Edit -> Go to base.
  • Highlights references of the symbol at the text cursor.
  • Highlights matching braces and directives of the brace/directive at the text cursor.
  • Multiple pages in the 'Found' panel.
  • Now /*/ pr /*/ can be used in any file of a project, not just in the main file.
  • Improved:
  • Replacing text in multiple files. Multi-file undo/redo.
  • Implement interface.
  • Folding margin context menu.
  • And more.
  • New options:
  • Options -> Font, colors -> highlight, selection.
  • Options -> Code editor -> Formatting.
  • Options -> Hotkeys -> Capture image.
  • Library:
  • New members:
  • Event computer.suspendResumeEvent.
  • Flag IFFlags.Parallel for uiimage.find.
  • New parameters:
  • string.FindWord: isWordChar (callback).
  • wpfBuilder.Options: showToolTipOnKeyboardFocus. And changed the default behavior of tooltips on keyboard focus.
  • Bug fixes:
  • Editor:
  • Fixed: cannot use NuGet packages that depend on .NET 7 assemblies.
  • Fixed: error message box on exit.
  • Fixed several memory leaks and other bugs.
  • Library:
  • Fixed "TextForFind" bug in documentation.
  • Several improvements.
  • Breaking changes:
  • When converting int/uint to ColorInt, now by default sets alpha 255 only if it is 0 in the specified value. It allows to specify alpha in implicit conversion.

New in LibreAutomate 0.13.0 (Jan 29, 2023)

  • Editor:
  • Fixed: tree/list view item height too small when big system font.
  • Improvements and bug fixes in the "Find image..." tool.
  • Improvements and bug fixes in /*/ resource ... /*/.
  • Library:
  • Fixed: in some cases does not find native dlls. Then some NuGet packages cannot be used.
  • Fixed: uiimage functions don't work if used both flag PrintWindow and rectangle.
  • Fixed: popupMenu.Show flag PMFlags.AlignCenterH ignored.

New in LibreAutomate 0.12.0 (Dec 4, 2022)

  • Editor:
  • Can run as a portable app.
  • Allows to test-execute class files without a test script etc.
  • Library:
  • New functions:
  • ScriptEditor.IsPortable.
  • script.isRunning.
  • AutotextTriggers.MenuOptions.
  • filesystem.more.comparePaths.
  • filesystem.more.isSameFile.
  • filesystem.more.createSymbolicLink.
  • folders.Editor.
  • folders.noAutoCreate.
  • folders.unexpandPath: added 1 overload.
  • clipboard.copyData: added 1 overload.
  • New classes:
  • TempFile.
  • TAMenuOptions (for autotext triggers).
  • New parameters:
  • clipboard functions: timeoutMS.
  • filesystem.more.getFinalPath: format.
  • Bug fixes and improvements:
  • Editor:
  • Several small improvements.
  • Fixed several bugs.
  • Library:
  • Improved: miscInfo.getTextCursorRect supports more windows. It is used to get menu position, for example with autotext triggers.
  • Fixed regression: pathname.unprefixLongPath and functions that use it don't support paths like "?UNC...".
  • Improved: pathname.getRootLength supports more path types.
  • Breaking changes:
  • Default folders.ThisAppX subfolders used in scripts changed from "Au" to @"LibreAutomate_script". If the old folder exists and the new doesn't, editor when starting copies files and prints a note.

New in LibreAutomate 0.11.0 (Nov 8, 2022)

  • Editor:
  • Properties -> Add file -> Other file. Use to copy files to .exe output or find unmanaged dlls at run time.
  • Menu File -> Workspace -> Repair workspace. Finds missing and orphaned files.
  • New Cookbook recipes:
  • Editor extension - modify UI.
  • Library:
  • New features:
  • Class ExtWpf: several new functions and parameters.
  • ScriptEditor.Open: new parameters line and offset.
  • New function print.scrollToTop.
  • Bug fixes and improvements:
  • Editor:
  • Fixed: in Properties dialog cannot specify preBuild/postBuild arguments.
  • Fixed: in editorExtension script does not work unmanaged dll resolving at run time.
  • Fixed several other bugs.
  • Improved: now in /*/ r A.dll; /*/ don't need to specify dlls used by A.dll but not used in code.
  • Library:
  • Fixed: print class functions may not work in non-console program started from a console program (cmd, .bat, etc).

New in LibreAutomate 0.10.0 (Nov 1, 2022)

  • Editor:
  • New tools:
  • Snippets. Add and edit code snippets.
  • Customize. Customize menus, toolbars and hotkeys of the editor window.
  • Library:
  • New features:
  • Several new functions or parameters in wpfBuilder class: Name, Watermark, Text, Border.
  • Bug fixes and improvements:
  • Fixed: ExplorerFolder.Of may throw exception.