cups is an external dependency, if it is not installed Odoo will not start.
OCA guidelines specify guidelines for External dependencies, code is from there.
[Usability] Auto-add Administrator user to the Print group
Make XML code more readable
base_report_to_printer: add support for remote CUPS server (not just localhost)
More logging and better error handling
Add CUPS_HOST in more debug logs
Migrate ir_report.py to new API
Migrate printing.py to new API
Migrate res_users.py to new API
Migrate report_xml_action.py to new API
Migrate wizard/update_printers.py to new API
Better view for wizard
Recursion when calling a method with old-style api signature from browse
Remove the Lock because it is useless on multiprocess
Replace it by a database lock so the different processes are
all aware of the lock and the last update timestamp.
browse is called often enough to call the update routine (even too much)
Implements the print on the new 'report' model
Restore the print capability on deprecated reports
Update copyrights
Improve form view, add search view for printers
Update translations, add a string to URI so it is uppercased
missing api decorator
We need the report in print_document and print options (needed in
printer_tray)
Move the 'skip_update' right in the browse, it prevents a loop
See https://github.com/odoo/odoo/issues/3644
Also, it helps to have the value set/read in context close to each
other.
Avoid to hits the database too many times to check if the list of
printers needs to be refreshed.
Keep the last update datetime in cache and invalidate this datetime if is
is older than POLL_INTERVAL. Thus, one process won't hit the DB more
than 1 time every POLL_INTERVAL (10 seconds currently) to check if it
needs to update the list.
Refresh the list of printers every 15 seconds instead of 10
Extract a method so it will be easier to override in printer_tray
Error on installation of the module
Invalidate the cache when the table is created so the table_exists()
method returns a fresh value after creation of the table
Use a cron instead of threads to update printers status
The implementation with threads was blocking the loading of the
server in multiprocess. Using a cron will lower the frequency of
the updates but at least it is simple and reliable.
Fixes#14
Do not write the printer status if it has not changed
Avoid unnecessary UPDATE every minute
Clean the XML file (remove eval, reindent)
Give access to models to all users for reading
So they are able to print