Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
3.23.1
Released on 18-11-2024
Added
additional keywords and logic to improve PDF cutting
check into runner-process to see if device is still running
reading exchange rate into the InvoiceReader when processing pdf invoices
Fixed
log warning instead of raising an exception when display-mask is out of the screen boundary
convert_to_decimal
to remove whitespace characters from the input stringAttributeError
in cloud processor when extracting currency code
3.23.0
Released on 25-10-2024
Added
reading secondary totals from ISDOC files via InvoiceReader
aiviro-cli deploy toolkit
for deploying Reader, Image Recognition, and other services in one gradio appmerge_files_into_pdf
method intoPDFRobot
to merge multiple PDF or Image files into a single PDF filetwo columns into prefect stats report markdown_report & markdown_error
cut_pdf_to_valid_pages
method intoPDFRobot
to cut a PDF file to valid pages onlyability to read primary and secondary totals and currencies via InvoiceReader
Changed
reading prefix of the local bank account to 2-6 characters
merge
excel
extra requirement intoreader
Fixed
TypeError: cannot pickle '_regex.Match' object
error when usingRegexText
requests to Reader server, re-open file with each failed request to prevent 422 http-error
raise exception
RequestFailedException
when APIClient stops retrying request to the server
3.22.0
Released on 10-10-2024
Added
command to extract text & ui elements from an image
get_raw_elements
doc-example into
PDFRobot
get
command to extract all texts or words from a pageinvoiceField to indicate if vendor is not a tax payer into InvoiceReader
convertors module, to convert string into Decimal, Datetime and to convert result if
get
commanddocumentation section
Aiviro Utilities > Convertors
enhanced quality of reading bank accounts in InvoiceReader
searching for more than one order number per page in pdf when using InvoiceReader
gradio Explorer into deployment as a separate service
aiviro-cli log stats
command for generating statistics using local & prefect logssection of scenario performance metrics into email-notification
metric
argument into@step
decorator to define custom metrics for a scenarioemail_metrics
argument intosend_report
method in EmailNotifier to include performance section in emailadditional keywords and logic for DueDate in InvoiceReader
Changed
internal implementation of bound-box to Pydantic 2.0
interface of Gradio Explorer app
disallowing empty title & content for Notification blocks & messages
update pre-commit to use ruff instead of other linters
Fixed
value-error while converting IBAN to Local account bank number
filtering of already used IDs and tax IDs when using InvoiceReader
print format of BoundBox in logger
parsing of old-format of run-folders
merging of
YAMLConfig
objects
3.21.2
Released on 16-09-2024
Added
enhanced reading of due dates in InvoiceReader via checking payment term or texts like “payable in XX days”
removal of all Unicode characters at the beginning of the text for text normalization, instead of just the first character
getting company name from ARES’ response when parsing invoice via InvoiceReader
Fixed
calculation of wait-time for new screen, change negative value to 0
normalization of email attachment’s name in Outlook connector
3.21.1
Released on 09-09-2024
Added
field for local-bank-account in reader-client app
Fixed
search-settings for order-number in reader-client app, now search through every page
Removed
previously added check if device is running, due to failures in production
3.21.0
Released on 27-08-2024
Added
check for correctness of a parsed IBAN
pDF robot now uses dynamically calculated DPI for better handling of PDFs with different page sizes.
improvements in Reader’s ability to read tax IDs
path attribute for str/repr into Image search-object
the
tmp_folder
attribute forBaseScenario
which enables automatic creation of temporary folder(s) for the scenariothe
__auto_folder
option which automatically creates shared-folder in RDPRobot via YAML configuration file
Changed
to unidecode and lowercase comparison of identifiers and reader’s items
Fixed
currency reading (especially invoices with multiple currencies)
fixed bug that application tried to interact with already closed robot
saving email with empty subject
runtime-error when closing robots in scenario - dictionary size changed
3.20.5
Released on 16-08-2024
Added
additional build checks for aiviro build-documentation job
Fixed
condition statement, which allowed passing empty TZ variable to the agent-container
missing references in aiviro documentation
3.20.4
Released on 15-08-2024
Fixed
calculation of waiting time for taking new screenshots & screen stability
3.20.3
Released on 12-08-2024
Added
normalization of the email’s attachments’ filenames (especially characters like ‘/’, ‘’, etc.)
logging for _before_run & _after_run methods in scenario
option to start scenario in
with
statement
Changed
moved
mypy
parameters from CI topyproject.toml
Fixed
fixed error in automatic closing of
aiviro
which in some cases could cause a infinite hangincorrect parsing of invoice & due-date in the invoice
Windows fatal exception
, when detecting QR codes inpyzbar
libraryencoding problem in PowerShell
create_and_copy_powershell_script
command on Windows
3.20.2
Released on 17-07-2024
Added
TZ
variable into agent docker-compose to set the timezone for the agent container
Changed
identifier of
FindMethod
in cache-context from value to attribute-name
Fixed
aiviro-cli log generate
creates output folder if it doesn’t exist
3.20.1
Released on 08-07-2024
Added
more detailed logging for API requests
Changed
value of
skip_waiting
toNone
forgo_to_url
command
Fixed
endless loop in streaming waiting for new image, in case stream is closed
filtering of word-boxes with single character
€
cI build for python package, CentOS 7 reached EOL
video streaming for Static-Robot-Runner (PDF Robot)
3.20.0
Released on 26-06-2024
Added
conversion for Aiviro Reader’s IBAN to a bank account, and vice versa
new log folders for statistics and data-storage
description into
@step
decoratorerror_step
attribute to access failed step inget_run_context
methodLogging
section into documentationcalculation of the net-amount for items in the
InvoiceReader
warning message when custom api-url is used
best-practices for dataclasses and pathlib into docs
docs for
ISDOCProcessor
,Parsers
examplesdocs about key-value search into tips & tricks section
working-area into the debug images (search-object service result)
working-area into robot’s video stream
option for
clear_and_type
&clear_text
to accept None as element valuewebdriver_type
argument intocreate_web_robot
to support additional web browsers - Firefox, Edge, Safariwebdriver_path
argument intocreate_web_robot
to override the default path to the web-driver
Changed
structure of the log folders, 3 separate folders -
runs
,stats
,storage
default value of maximum disk-size of logs to 20GB
default value of maximum number of log-files to unlimited (limited by disk_size)
primarily unit-price net-amount is extracted from .isdoc files
internal arguments for robot’s initialization method
Fixed
deployment of gitlab-pages in CI, caused by too big artifacts
user-normalization, apply it only when
USER_NORMALIZATION
find-method flag is setempty item-line in
.isdoc
documentimprovements in reader’s accuracy (mainly tax-date & order-numbers)
Deprecated
setting
webdriver_path
in configuration file, it’s loaded now automatically from $PATH
3.19.0
Released on 15-05-2024
Added
--project-name
argument fordeploy agent start
command, to set prefect project namedeploy agent start-env
command to start an agent using existing .env fileAUTO
andDYNAMIC
option forfind_method
additional keywords for order-number search in Reader
option to ignore_keywords search in InvoiceReader for order-number search
item-identifiers & tags/category search for
InvoiceItem
simpler (client’s version) of gradio Aiviro Reader app
processing of
.isdoc
files into InvoiceReadernew option into aiviro.find_method CASE_SENSITIVE
Changed
default
find_method
option fromSIMILAR
toAUTO
in search-objectsattribute
extra
toextra_comparable
instead, for BoundBox hash calculation - same as eq_[breaking] logic for text/element search
timeout for pdf conversion to images from 30 to 60 seconds
normalization of words, first and last characters with length in bytes >= 3 are removed
words with only one character which length in bytes >= 3 are removed
default value of arguments in
start_process
command,use_likely_area
- False to True,sleep_time
- 0 to 1text search, by default as CASE_INSENSITIVE
logic for element-search, now only element and text are checked (before element, other type of elements, text)
“improved
InvoiceReader
accuracy of DUZP field”
Fixed
ModuleNotFoundError('No module named /root/')
exception when agent-container is restartedproblem of text merging for icons
extraction of unresolved pdf-attachments
split sentence if texts have too different heights (vertical vs horizontal texts)
duplicated sentences when prediction element splits a sentence
Removed
assertions in pdf processing, replace them with PDFError exception
3.18.1
Released on 14-04-2024
Fixed
encoding in mime-multipart emails, from utf8 to utf-8
3.18.0
Released on 04-04-2024
Added
builder
Gradio app for creating HTML robot’s reportsexplorer
Gradio app for exploring robot’s logsvideo
aiviro-cli command to generate video from robot’s logsautomatic image resize for bigger than 3350x4750x3 pixels, before sending to server
documentation example for @step and @staticmethod
processing of other content-types from smime.p7m files
method
as_imap_message
to convert ‘message/rfc822’ attachment intoIMAPMessage
object
Changed
allow usage of recipients arguments in
EmailNotifier.send_email
method
Fixed
digital PDF parsing for words containing only
_
(underscore) charactersclosing of streaming-service, handling of ValueError if process is still running
empty text-body of email from imap-basic-auth, extract text from html-body
closing streaming in case of exception
exception for script without initialized logging
handling of negative sleep time in
RunnerProcess
IMAPMessage
empty-None subject, by default now set to empty string
3.17.3
Released on 12-03-2024
Added
nano
tool into agent docker-container
Changed
version of CI python-docker image to 3.11 from 3.9
versions of pre-commit packages to the newest
Fixed
unexpectedly PDF robot switching to OCR, due to missing mask-removal update
sorting of boxes from sub-image search, sort them by position instead of matching-score
3.17.2
Released on 07-03-2024
Added
retry for
TimeoutError('Screen wasn't updated for way too long.')
error message when main process ends unexpectedly
Changed
version of pypdf package dependency from 4.0.1 to 3.16.1 due to file corruption problem
Fixed
fix closing of shared memory process
encoding problem of
ErrorHandler
on Windowsincluding content of invoice item (text content) into
InvoiceItem
dataclassstarting deployment server without running docker service
logging of
robot-id
attribute into logs
3.17.1
Released on 21-02-2024
Changed
@step
can be used also withoutBaseScenario
running
Fixed
formatting of documentation for rdp shared-folder
3.17.0
Released on 19-02-2024
Added
two methods into
RDPRobot
for working with shared-folder,local_shared_folder
&remote_shared_folder
new tab “convert-csv” into reader Gradio app
Changed
repository for
pylint
tool in pre-commitnew versions for all pre-commit tools
versions of all dependencies (update them)
Removed
singleton pattern from
LoggingContext
class
3.16.0
Released on 02-02-2024
Added
unique identifier for each run of aiviro-script (run-id)
run-id into logs name and email report content
localization for aiviro package (cs_CZ, sk_SK, de_DE, en_US)
post-processing of invoice items into
InvoiceReader
reading of missing “variable-symbol” from QR code
datetime information into .eml files for email messages
support for np.ndarray as argument in
Image
search-objectadditional logging methods,
stop_logging
,get_logger
,get_logger_advanced
,disable_logger
@step
decorator into template module, to separate script into logical blocksnew logging attributes as ‘step_name’, ‘step_id’, ‘step_run_id’
Changed
visual design and structure of the email report
internal structure & implementation of the
logging
moduledocumentation section “Utility methods” to “Aiviro Utilities” & restructure it
name of “Template” section to “Scenario Structure” & add documentation for
@step
decorator
Removed
ares-utils dependency as old ARES API is not supported anymore
3.15.2
Released on 18-12-2023
Added
option for agent container to install requirements.txt, using
ENABLE_REQUIREMENTS_INSTALLATION
variable
Fixed
starting script of the agent docker container
3.15.1
Released on 14-12-2023
Changed
deprecated warning for
skip_waiting
argument, it shows only once
Fixed
current working-directory in agent-container
3.15.0
Released on 12-12-2023
Added
exception for agent-container & aiviro-package version mismatch
logging capability into
EmailNotifier
new doc section “Integration Process”
additional tips and tricks from Aiviro Cookbook
new “Best Practices” section from Aiviro Cookbook
local deployment of Aiviro into documentation
new
wait
argument, instead ofskip_waiting
allowing numeric argument to calltime.sleep
functionsleep_time
argument intotype_*
commands, to sleep between every sub-action, e.g. click, key-shortcut, …restriction of maximum size of a single PDF page, to 3350x4750 pixels
constants section into documentation
SCENARIO_CONFIG_FOLDER_PATH
available fromaiviro.*
module, to access the configuration folder--old-deployment
option toaiviro-cli create scenario
commandcustomer & vendor IČO fields into InvoiceReader
additional fields into InvoiceReader - customer & vendor name, shipping address & amount due
implicit utf-8 encoding for
aiviro-cli create scenario
commandadditional group-context into
CacheService
to save results separately for each group (digital PDF or OCR)read smime.p7m files from outlook
documentation how to add additional handlers into aiviro logging
unencrypted option for SMTP server (port 25)
new command
clear_working_area_and_screen_masks
into robots
Changed
hierarchy in documentation based on sections priority
naming from subscriber to customer, supplier to vendor for InvoiceReader
name of parameter
-pn
to-pf
inaiviro-cli create scenario
commandinternal implementation of switching between digital PDF and OCR texts
Fixed
long block’s title in the notification email
deployment of several flows at once
clearing of working area and masks in
InvoiceReader
Deprecated
the
NotifierManager
class
Removed
Xlib
dependencypath to aiviro-config file from Flow template
3.14.0
Released on 31-10-2023
Added
exchangeLib protocol into
EmailClient
new functionality into Gradio Reader app
cli connectivity test for RDP robot
pre-commit check & installation when creating Aiviro project
new improved implementation of Aiviro Reader
documentation with code examples of main story, email extractor, erp handler and pdf reader
auto-language detection for
InvoiceReader
Changed
new logos in the documentation
Fixed
removal of old records from cache
pre-commit error when new Aiviro project is created
fix a value of max disk size of logs to 5GB, when in docker and initially set to 0
missing page size for empty Invoice page
missing confidence value in Invoice fields
parsing exception of “tax_date” in Reader
Deprecated
old implementation of Aiviro Reader (Universal Parser)
Removed
find_utils
unused sub-module fromreader
moduleaiviro-cli reader find
command
3.13.3
Released on 20-10-2023
Fixed
converting of Decimal number in Czech QR codes
build of prefect-agent & correct version of chromedriver
exceptions which occur in child process are now properly transferred to main process for handling.
handling of ConnectionError in the Microsoft Graph API calls
loading of aiviro-config in prefect
AiviroNotifyTask
3.13.2
Released on 18-10-2023
Added
plain_login
argument intoimap_basic_auth
to allow utf-8 login authentication
Changed
base docker-image from python3.8 to python3.11 for prefect-agent
Fixed
version of google-chrome and chromedriver in prefect-agent
handling of 404 client error from Microsoft Graph API
3.13.1
Released on 13-09-2023
Added
flag
docker-compose
into deployment commands to usedocker-compose
commandexecute_script
command into WebRobotraise of RuntimeError when robot was closed and user tries to use it
Changed
by default
docker compose
(plugin version) is used in aiviro-cli deployment commandscumulative enum implementation to be an extension of python builtin enum type
Fixed
loading of aiviro-config in flows
ci pipeline for prefect-agent build
loading of yaml and aiviro configuration files correctly from old environment variables
converting of total-amount string to Decimal in UniversalParser
3.13.0
Released on 23-08-2023
Added
public method
clean
for every context-manager to clean up after itselfErrorHandler
for saving and processing image & text logs when error occursaiviro-cli test-connection
commands for testing IMAP & SMTP server configurationsunencrypted IMAP mailbox support
parsing of bank-account information into
UniversalParser
parsing of due-date information into
UniversalParser
parsing of company-name, based on IČO, into
UniversalParser
separate reader analysis for OCR and Digital pdf documents
server
andagent
deploy command intoaiviro-cli deploy
deployment section into documentation
docker build into CI for prefect agent & ui
error handling for invalid metadata-log records, skip them
type restriction, arguments of
WaitUntilDisappear
can only be of typeSearchObject
aiviro-cli config
command to set-up api credentials and other settingsdelete_folder
method intoEmailClient
class
Changed
context-manager logic from decorator into separate class
loading strategy of aiviro-config files, several options are now available
alignment of boxes in one line, added threshold for which the alignment is ignored
Fixed
context-manager for setting working-area while other context-manager is active
qr-code decoding for empty values
pip dependency backtracking issue
empty string argument in Notifier message object
adding text into PDF when exception occurs
recursion bug when using
BaseKey
in interactive consoleempty file processing in
EmailExtractor
rendering of email’s report for desktop Outlook
attribute access in cache-file if attribute does not exist
Deprecated
environment variable “AIVIRO_CONFIG”
Removed
deprecated email-client methods
setup_imap
andsetup_smtp
3.12.0
Released on 03-07-2023
Added
bigger retry-waiting time for sending email
standard BoundBox output for UniversalParser lookup objects
post-processing method for UniversalParser lookup objects
auto-rotation functionality of scanned documents into
PDFRobot
outlook authentication token refresh, if 401 is returned
merge functionality for
YAMLConfig
wait_until_ready
method forRDPRobot
BaseScenario
object that helps with initialization of some basic Aiviro servicessupport for custom split-condition argument in document items detection
no-verify
argument for ssl certificate verification in SMTP & IMAP basic-auth email methodsdynamic repack of the cache to reduce its disk-size
Changed
default endpoint from “api.*.aiviro.com” to “api.aiviro.com” in doc & config file
Fixed
pSKeyword error while loading pdf-file
handling of ReadTimeout exception for api-calls
adding text to an empty scanned PDF file
improved accuracy of total-amount extraction
recursive loading of Outlook email attachments
streaming initialization error
handling of locked cache file
pDFRobot closing in global-context object
dynamic removal of cache records (time reduction)
Removed
old request structure to api.aiviro.com endpoints
3.11.2
Released on 10-05-2023
Fixed
encoding of PDF attachments
position recalculation when adding text or image into PDF file
3.11.1
Released on 03-05-2023
Added
aiviro-cli deploy
command to deploy certain Aiviro functionality as a web applicationexception handling in global-context, when service cannot be closed properly
Fixed
read error of non-existing temporary folder
3.11.0
Released on 25-04-2023
Added
extraction of attachments & comments from PDF file
new properties
attachments
andcomments
intoPDFRobot
documents item parsing into UniversalParser
lazy loading of PDF files for text or image addition
oneDrive module which allows to perform basic operations on user, shared and sites drives
functionality to add new-column in
CSVWriter
excel module to read .xlsx files
documentation examples for
NotifierManager
test into CI for default dependency imports
inactive option (gray color) for notifier
Changed
dependency from PyPDF4 to pypdf
longer waiting/retry time for api requests (up to 5 minutes in total)
CSVWriter
can be initialized also with emptyPDFRobot
documentation for
EmailNotifier
Fixed
loading of PDF files with invalid structure
improved order-number extraction in universal-parser
warning message about package versions in
aiviro-cli log
commandclosing of streaming service when communication pipe between processes is broken
long compression time of complex png images
3.10.0
Released on 14-03-2023
Added
pause
&unpause
methods into robotget_last_image
method into ImageCollector serviceunit-tests for runner-service
__add__
method for CumulativeEnum object, used inBaseKey
activate robot method into dynamic robots
missing metrics into global-context
Changed
code structure of how streaming is started
Fixed
bug with token normalization replacing wrong elements
initialization of RDP shared-folder, when only path is provided without path-name
3.9.2
Released on 02-03-2023
Fixed
PDFRobot
failing to read some pdfsPDFRobot
spliting words at some unicode charsIndexError
exception while parsing total_amount
3.9.1
Released on 28-02-2023
Added
documentation for
universal-parser
modulenew version of Universal Parser
additional tests for universal-parser
improve universal-parser performance
3.9.0
Released on 13-02-2023
Added
access to created working-area & display masks by
with
statementlast_block
variable intoNotifierManager
send_report
method inNotifierManager
to send messages across all notifiers based on scopeoauth2
authentication for SMTP & IMAP into EmailClient.coveragerc file to improve code coverage
evaluation test for universal-parser
global-context object that contains information about script & correctly closes robots & services
additional metadata into aiviro-metrics
method
as_file_attachment
to convertIMAPMessage
intoIMAPAttachment
support for processing
IMAPAttachment
in send_email methodpoint into image-logs for click commands
unit-tests for desktop, rdp & web devices
additional methods for easier PDF annotation
new search-object
Biggest
argument
ignore_exception
into QR code decoder, to ignore invalid codestext extraction from body of HTML email content into
email.text
variablerenaming of aiviro processes (on linux only) for better debugging
Changed
updated project metadata information
documentation for Email’s Outlook OAuth2
Fixed
logic for selecting correct working-area by checkpoints
default parameter of
send_report
inEmailNotifier
Removed
support for python3.7
3.8.0
Released on 29-12-2022
Added
command
add_mask_windows_taskbar
to cover windows taskbarstrict
argument intocheck_are_intersecting
commandNotifierManager
to share messages between several notifiers at oncepowershell command
create_and_copy_powershell_script
aiviro-cli command
reader find
to validate if exported data is present in pdf-filestest coverage reports into GitLab-CI
negative results into cache
dynamic records removal from cache
option
FindMethod.GLOBAL
which finds all occurrences of searches not only the first onemethods for text and image addition to the PDFRobot
method for saving the PDF file, modified or not, was added to the PDFRobot
Changed
imports of notifier components from
aiviro.modules.email.notifier
toaiviro.modules.notifier
Fixed
typing of all functions to follow the newest versions of mypy
error some pdfs failing on decoding error
regex backtracking error
Deprecated
creation of message directly through
EmailNotifier
, use insteadNotifierManager
recipients
argument insend_report()
method inEmailNotifier
, moved into object’s constructor
3.7.1
Released on 01-12-2022
Added
info log into pdf-robot about the name of parsed pdf-file
Secret
object for better handling of secret/sensitive textslogging support for new pyfreerdp version
Changed
all exceptions which are triggered from worker process now use
ChildProcessError
class
Fixed
added timeout handling for starting worker process
3.7.0
Released on 29-11-2022
Added
argument
auto_move
into EmailExtractor, extract_* methodsemail
argument into EmailExtractor ConditionsEmailDatetimeCondition
&EmailSubjectCondition
new EmailExtractor conditionssupported python, os & cpu versions into documentation
new version of API calls to backend-vision server
api versioning, new endpoint /v1/detect
aiviro-cli reader
commands -stats
&extract
search-object
ClosestElement
to find closest object to its referencesimple scenario metrics calculation, cache usage, pdfs, api calls
checkout to master/develop into flow templates
logging of INFO logs into separate text-file
Changed
pillow version to 9 so higher versions of python can use prebuilt wheels
clean-up internal code of Universal Parser
Fixed
report template for microsoft Outlook
Deprecated
old configuration of backend-vision server
3.6.0
Released on 24-10-2022
Added
find_method
variable instead oftext_find_methods
chaining capability for
key
,find_method
&boundary_type
processing of Outlook itemAttachments, as if attachment is additional e-mail
MultiPDFRobot
, can extract and hold data of several PDF filesvariable
IS_RUNNING_IN_PREFECT
into aiviro packageget_working_area
command
Changed
some headless tests into static-robot, to speed them up
version of imap-tools dependency from 0.49.1 to 0.57.0
file & inline email-attachments into file_attachments variable
name of method
do_text_extraction
toparse
in PDF robot
Fixed
visibility of Outlook OAuth2 folders
Deprecated
variable
text_find_methods
Removed
argument
skip_chars
argument from PDF robot, moved intoparse
method
3.5.2
Released on 21-09-2022
Fixed
data-type of shared-folder path in RDP robot
3.5.1
Released on 19-09-2022
Added
group
argument into mask_* commands to add/delete only specific group of masks
Fixed
ci deploy job now working correctly
pdf extraction error which sometimes didn’t split words correctly
3.5.0
Released on 15-09-2022
Added
methods for Outlook with OAuth2.0 & graf.microsoft endpoints into EmailClient
setup_imap_basic_auth
&setup_smtp_basic_auth
methods in EmailClientunit testing for multiple versions of python (3.7, 3.8, 3.9, 3.10)
Changed
updated versions of dependencies
Fixed
pdf text duplication issue
Deprecated
username
&password
arguments in EmailClientsetup_imap
&setup_smtp
methods in EmailClient
3.4.0
Released on 30-08-2022
Added
czech Invoice-Payment decoder for QR codes (https://qr-faktura.cz/)
CheckCommandError
exception for check_* commandsdocumentation section for aiviro-exceptions
implicit_wait
option into user_config optionsalternatives for some standard fonts in pdf
support for pdfs which don’t have characters in top level
Copy-Item
command into PowerShellget_shared_folder_path
variable into PowerShell to get path on remote machineuniversal_parser
modulexception_to_raise
argument into get, see & wait_* commandscreate
command into aiviro-cli to initialize Aiviro project structure & add scenarios
Changed
internal use of
os.path
topathlib.Path
internal points distance calculation to use math module
name of FindService to SearchObjectService
names of Positioned* to Positional*
location of robots from one big script into separate ones
class
Robot
, split intoBaseRobot
,DynamicRobot
&StaticRobot
internal use of
deque
forOrderedDict
Fixed
pdf robot font parsing
pdf character merging not working sometimes properly
Removed
decoder
argument fromCodesExtractor
3.3.1
Released on 25-07-2022
Changed
regex dot changed to new style
3.3.0
Released on 25-07-2022
Added
aiviro-cli log analyze
commandoption to edit Notification type in EmailNotifier -
notification_type
variableargument
email_attachments
into EmailNotifieruser_config
object to change similarity_threshold & set custom text-normalizationuser Configuration section into documentation
AutoSelectParsingStrategy
for ParserHandlerignorable_parser_objects
argument into ParserHandlerparser
attribute intoParserProcessingError
forward
method into email moduleencoding
argument into CSV & YAML configurations
Changed
aiviro-debugger into aiviro-cli
functionality of *_by_boundary commands into
BoundaryArea
search-object
Fixed
documentation typos in email-notifier section
texts & examples in documentation
loading of duplicated parser-classes
Deprecated
command
add_mask_by_boundaries
command
add_mask_by_margin
command
set_working_area_by_boundaries
Removed
parser_name
attribute fromParserProcessingError
3.2.4
Released on 20-07-2022
Added
missing keys into web-robot
Fixed
bug when creating pdf robot state data
3.2.3
Released on 19-07-2022
Fixed
regex issue when using escaped special character
3.2.2
Released on 11-07-2022
Added
y-alignment of ocr-boxes when merged into common line
regex support for backref characters
Changed
added
normalized_text
ofBoundBox
to noncomparable keys as it is lazy evaluated
Fixed
ocr-boxes line-grouping into fix order
bound box mutable issue
regex normalization for charclasses containing space
3.2.1
Released on 01-07-2022
Added
current_page
property into PDFRobotis_digital
property into PDFRobot
Changed
opencv-python-headless dependency back to opencv-python
Fixed
typo in unable-to-process message in EmailNotifier
ocr-box connection for bigger boxes
cache version incompatibility, between <3.1.5 & >=3.1.5
3.2.0
Released on 29-06-2022
Added
pdf robot now uses masks correctly
commonly used Powershell commands for RDP-Robot
subject
argument for sending email-notificationlast_block
property into EmailExtractoroption to pass
Msg
orstr
argument as message for EmailExtractorItem
object for creating notification messagesduration tag into
EmailNotifier
functionality to load aiviro_config from env-variable in prefect flows
configuration loaders for YAML & CSV files
ignore_exception
option to get elementemailExtractor for simplified way of email & attachment extraction
documentation for image-buffer
default values into doc for Aiviro configuration file
skip_chars
argument intocreate_pdf_robot
methodcodes module for reading QR & Bar codes from image
Changed
regex normalization to be more intelligent and prevent normalization of regexes with catastrophic backtracking
opencv-python dependency to opencv-python-headless
Fixed
timezone in EmailNotifier & message typo
less verbose log messages when creating pdf robot
duplicated OCR boxes in metadata
box sorting for ocr-line-grouping
bug with memory not releasing before application exit
combination of
paste
&blocking
argument in transfer_files_to_guests_clipboard cmd
Removed
sorting of email notifications, make it optional
force
option for robot-streaming
3.1.5
Released on 09-06-2022
Added
check when file exists when using RDP transfer to host
Changed
pip project summary, email, licence
Fixed
reference box filtering in positional elements
wrong argument call to
pyfreerdp
when using clipboardocr filtering by Icon elements
3.1.4
Released on 20-05-2022
Fixed
error handling of internal errors when parsing pdf
3.1.3
Released on 18-05-2022
Fixed
bug when using cc field in
send_mail
3.1.2
Released on 17-05-2022
Fixed
bug when regex match didn’t appear in unicode texts
robot now correctly releases shared memory
handling of email attachments with no content disposition
email sending to CC and BCC now works correctly
3.1.1
Released on 09-05-2022
Fixed
pdf text extraction now correctly uses clipping boxes
3.1.0
Released on 04-05-2022
Added
email-notification object for creating reports
ability to use non-default port when using RDPRobot
context-manager into
clear_screen_masks
command to work withwith
sleep-time argument into rdp-robot
start-process
commandinterval parameters to debugger
or_index
variable into bound-box for result ofOr
search-objectBaseParser
andParserHandler
as standardized way to implement document data extractionimage logs for
key_*
commands
Changed
debugger to use more processor cores to speedup logs generation
Fixed
rdp-robot
start_process
command issueserror when parsing log names
email sending from alias or shared mailbox
email query when used without parameters
email message operations when the message is not in the same path
too-many-elements exception in
wait-for
command
3.0.1
Released on 14-04-2022
Fixed
unknown method error in
wait_for_clipboard_file_transfer
command
3.0.0
Released on 09-04-2022
Added
missing RDPRobot clipboard functions.
several new SearchObject exceptions
ability to change name of the folder which is shared with rdp machine
text split by capital letters and special characters as “:”, “.”
PDFRobot
which is used to read and parse PDF files.
Changed
calculation of area intersection between working-area and detected boxes
email connection handling
core structure for merging core & toolbox together
main logger from
aivirocore
intoaiviro
location of toolbox modules into aiviro package
Fixed
regex correctly searching after normalization.
detection of a scene stability transition
element-index error in line-grouping service
documentation typos
documentation after aiviro + toolbox merge
waiting for rdp file transfer not working correctly
Removed
all deprecated funcionality of 2.x.x aiviro-core versions
unimportant warning messages from wait_* commands
2.6.4
Released on 23-03-2022
Added
command
disable_cross_validation
gif generation from image buffer
ignore_timeout_exception argument
forwait-until-disappear
commandbitwise operators
&
(and),|
(or) for search-objectscommand
close_tab
for WebRobotnew TableAnchor options, that calculates distance between objects based on both axis
more advanced cache into recognition-service, reducing time to find elements
Changed
image hash in cache-service from percentual to sha1
cross-validation is skipped for
Area
&BoundBox
elementsprefect version dependency to 1.0.0 from 0.15.6
Fixed
onTheRight/Left
element search, reference object is removed from the find-resultsdebug-log for
CustomBox
search-objecthandling of connection errors to vision server.
some typos in documentation
typo in
text_to_type
&check_are_in_row
commandscross-validation exception in
wait-for
commanderror logs into prefect
merge of
Input
element with OCR textbehaviour of DISTANCE option in positional search-objects
2.6.3
Released on 14-12-2021
Added
option to run start_process as admin when using RDP robot
Fixed
issue when calculating disjunction of ocr and icon box, could lead to bounding box with negative width
2.6.2
Released on 08-11-2021
Added
print_port
option into configuration file for video-streamargument
use_full_screen
into working-area checkpoint commandsrolling logs that can be specified by maximum disk size, maximum number or both
set_working_area_by_grid
command, which can be used for tables
Changed
error when image is not set in
StaticRobot
Fixed
get-by-scroll
command with timeout > 0set-working-area-by-checkpoint
when checkpoint is created with set working-areaincorrect mask generation of
add_mask_by_display
when all sides are set to True and include_object set to False
Removed
restriction of saving images locally from buffer in docker environment
unused tests & test-data from repository
2.6.1
Released on 11-10-2021
Added
aiviro-core version into robot’s printout info
limit-working-area
commandexception section into documentation
extra requirement Prefect into setup.py
Changed
wait-*
commands to work as get command when timeout is 0command proxy now uses cached property
Fixed
get_by_scroll
sometimes didn’t register scroll when application registered scroll slowlyrequired version of pyfreerdp package
changelog text & doc-strings
Removed
unused methods from robot
2.6.0
Released on 22-09-2021
Added
timezone option into config-file for aiviro-logs
create_static_robot
which can be used when working with images without the need to create another type of robotoption to compress Aiviro-Logs
set_working_area_by_boundaries
now supports multiple rules of bounding box creationmetadata-logging for Aiviro image-logs
option to generate only last-N-log-images
filtering of too big OCR boxes
get_by_scroll
command which can be used to scroll until the all elements are foundsupport for new version of
pyfreerdp
(version 3.0.0)new arguments for
create_rdp_robot
which allow shared folderintegration tests for RDP robot
documentation for aiviro-config file
automatic import sorting of repo
exception raise in set-working-area-by-checkpoint for images with different shape
automatic generation of
CHANGELOG.md
collection of all release changes into one file
CHANGELOG.md
Changed
filtering of OCR boxes using Icon elements
documentation examples to use interactive python correctly
versions of required dependency packages
start_process
has now a parameter to check only in lower left corner of the screen for dialog windows. (Most likely place for the run window)start_process
waits for the dialog to disapear to continue execution
Fixed
text splitting for special characters in sentence
generation of documentation changelog
type_text
argument call errortype-text command when input element is not found
Deprecated
parameters
upper_boundary
andlower_boundary
ofset_working_area_by_boundaries
will are replaced withfirst_boundary
andsecond_boundary
Removed
error logs in cross-validation for wait-until-disappear command
2.5.4
Released on 18-08-2021
Changed
doc-strings & documentation references
Fixed
working-area for get with static-image
log of after-image in type-text command
Removed
ReferenceObjectNotFound
exception
2.5.3
Released on 28-07-2021
Added
AND
search-object
Changed
version of pyfreerdp for extra-dependency
Fixed
too-nested-object exception
2.5.2
Released on 21-07-2021
Added
cwd
argument for prefect-utils methodrun_shell_command
doc-string for EXCLUSIVE find-text-method option
unit-tests for devices/
static runner manager & get-elements command from image
Changed
aiviro setup options with extra python packages
reformat source-code with Black
Fixed
image resources for documentation
table-anchor, NO_THRESHOLD option for Above/Below positional elements
Removed
upload file-size restriction
2.5.1
Released on 15-07-2021
Fixed
regex normalization
missing keyboard for RDP-robot
2.5.0
Released on 12-07-2021
Added
filter of reference object in positional search-objects
markdown reporting into Prefect artifact
command to get streaming url
EXCLUSIVE
text-find-method optioncommand to switch between robots as video-streaming source
RegexText
search-objectoption to create a robot from env-variable
support for CustomSearchObject & CustomBox
support for webdriver capability setting
Changed
constants value names to a shorter version (deprecated)
Fixed
text merging into lines
exact word search
reference-object & element-index exception for wait_* commands
checkpoint working-area command to work with current working-area
Above/Below
anchor distance thresholds
Removed
deprecated functionality for 2.5.0 version
2.4.6
Released on 23-06-2021
Fixed
merging of different sized text
2.4.5
Released on 01-06-2021
Fixed
correct termination of Aiviro-script in Prefect
empty regex_match is not stored in BoundBox anymore
positional elements overlaping
processing of image-logs & add additional evaluation for wait_* command
2.4.4
Released on 19-05-2021
Changed
streaming settings
2.4.3
Released on 13-05-2021
Added
example code into documentation
Fixed
prefect logging
2.4.2
Released on 28-04-2021
Added
debug messages for cross-validation service
sensitive-data argument to clear-and-type command
SearchObjectError
exception everywhere, when search-object is not foundprefect logging safeguard
non-case-sensitive option for aiviro.text_find_methods
Changed
updated prefect API for version 0.14.16
Fixed
clear-and-type command causing double-click
image-logging for INFO debug level & INFO level set as default
Icon
object text-reference when texts are too close to each other
2.4.1
Released on 07-04-2021
Fixed
wait-for command for positional element
2.4.0
Released on 02-04-2021
Added
text content into output BoundBox
aiviro custom exceptions
argument for env variables for prefect-utils, run-aiviro-script method
move-away command, mouse moves over empty position at screen
artifacts integration with Prefect
asynchronous logging for stdout/stderr for Prefect Tasks
wait-until-disappear command
regex result into output BoundBox
Changed
optimize Wait-For command
Fixed
robot methods documentation
sub-image search service
configuration constants
cross-validation service
working-area checkpoint command for gray background
2.3.1
Released on 12-03-2021
Added
warning for image-buffer, transfer-file & forbid image-logging and streaming in docker
socket timeout for robot streaming
Changed
return state for NotifyTask
Fixed
context manager for working-area
2.3.0
Released on 09-03-2021
Added
image upload logs to dashboard
api-key check for Aiviro configuration
argument for addional files into image-upload logs
notification task for Prefect
tips & trciks section into Documentation
video streaming static link
Changed
stability checking limited by working-area
method of screen capture for cross-validation service
Fixed
small bugs & sleep-check
2.2.0
Released on 12-02-2021
Added
timeout for recieving a new image
image logging buffer
creation of working-area by checkpoint
Changed
logging of BoundBox object into human readable form
Fixed
sleep-check for type-text command
cache getting duplicated results