cgi.escape is unsafe (quote=False by default) and deprecated in Python
3. We already have an openerp.tools.misc.html_escape version which
forwards to the (modern and safe) werkzeug.utils.escape, just use that
everywhere, and convert extant uses of werkzeug.utils.escape to
utils.html_escape as well so that we do the same thing everywhere.
The vendored html2text is *really* old and absolutely not
P3-compatible.
There is a maintained version on Pypy which is, so use that and stop
vendoring html2text.
In Python 3 the native acceleration module was merged into pickle
directly.
For cross-version simplicity, just use the base module in Python 2 as
well, we can reintroduce the accelerator somehow if it turns out too
much of a performance hit.
In Python 3, all of these were "consolidated" under urllib(.request,
.parse, .errors) which is inconvenient.
Since we already have hard dependencies on requests and
werkzeug(.urls, which is a backport of Python 3's unicode-aware
urllib.parse) migrate *everything* to that.
A sticking point is urllib2.URLError, those were (mostly) replaced by
the slightly more general IOError which URLError extends.
* SMTPLib[P3] uses a debug method on ``SMTP`` rather than a global
``stderr``
* email.Encoders is a deprecated & outdated (since 2006) alias for
email.encoders
* exceptions have lost their ``message`` attribute
* ``raise type, value, tb`` has been removed so add a compatibility
shim to pycompat to raise a new exception with an existing traceback
In Python 2, to raise a new exception but reuse a traceback requires a
special form of ``raise`` (``raise etype, evalue, tb``).
In Python 3, this is now done via a ``with_traceback`` method on
exception objects.
However this requires a bit of trickery as the former is invalid
syntax in Python 3, hence pycompat bridge created via an exec for
Python 2.
PyPDF is unmaintained and abandoned (as noted on its home page
http://pybrary.net/pyPdf/) and was never updated to Python 3. PyPDF2 is
a fork which provides a mostly compatible API and is P3-compatible.
Replace PyPDF by PyPDF2.
Purpose
=======
ja_JP: the implemented language font in Odoo is not Japanese but Chinese.
In Japan address structure is different:
First: Postal code
Next: City + ward (like a neighbourhoos name)
Next: Building (all buildings have names)
Name: Customer or Company
Specification
===========
New address structure for Japan:
%(zip)s
%(state_name)s %(city)s
%(street)s
%(street2)s
%(country_name)s
In Countries form view, add one selection field which set the customer name position in reports base on the customer country settings.
* cross-version metaclass spec
* more formally deprecate browse_record and browse_null since they
were using metaclasses anyway
* update docstrings referencing the latter
Purpose
=======
Internal categories are only useful for accounting & inventory.
-> so they should be only visible for such modules
Also terms are confusing: internal category -> category "internal" is not obvious
Specification
=============
- remove internal categories menus from:
sales
website_sale
pos
- rename menu in:
purchase
inventory
- add menu to:
accounting
products must be visible even if account.accountant is not installed
categories only visible if account.accountant is installed
- rename categories in product form:
- category
- pos category
Purpose
=======
Improve readability on mobile
Specification
=============
Activate Kanban view on those so it could be displayed by default on mobile instead of view list
List of impacted modules:
- base : kanban for currencies
- base : kanban for users
- base : kanban for Companies
Purpose
=======
Improve readability on mobile
Specification
=============
Activate Kanban view on those so it could be displayed by default on mobile instead of view list
List of impacted modules:
- report_intrastat: kanban for intrastat
- google_drive: kanban for Google Drive(Templates)
- anonymization: kanban for anonymized fields
Purpose
=======
Improve readability on mobile
Specification
=============
Activate Kanban view on those so it could be displayed by default on mobile instead of view list
List of impacted modules:
- mass_mailing: kanban for mailing lists
- mass_mailing : kanban for contacts
- marketing_campaign: kanban for campaigns
- marketing_campaign : kanban for segment
- survey: kanban for answers
- project : kanban for config >> project(reuse project dashbord kanban)
- project_issue_sheet: kanban for stages
Purpose
=======
Improve readability on mobile
Specification
=============
Activate Kanban view on those so it could be displayed by default on mobile instead of view list
List of impacted modules:
- hr_holidays: kanban for leaves summary
- hr_holidays: kanban for allocation request(reuse leaves summary)
- hr_holidays: kanban for leave details(reuse leaves summary)
- hr_attendance: kanban for attendances
- hr_timesheet: kanban for activities
- hr_contract: kanban for contracts
- hr_recruitment: kanban for Stages
- hr_recruitment: kanban for Job Positions(reuse Job Positions dashboard)
- lunch : kanban for previous order
- lunch : kanban for employee payment
- lunch : kanban for control accounts reuse kanban of employee payment
- lunch : kanban for control vendors reuse previous order
- lunch : kanban for product
- lunch : kanban for alerts
- lunch : kanban for today's orders(reuse previous order)
- website_event_track: kanban for track stages
Purpose
=======
Improve readability on mobile
Specification
=============
Activate Kanban view on those so it could be displayed by default on mobile instead of view list
List of impacted modules:
- account : kanban for purchases payments
- account : kanban for journal entries
- account : kanban for chart of accounts
- account : kanban for budgets
- account_analytic_default : kanban for analytic defaults
- account_asset : kanban for assets
- account_asset : kanban for asset types
- account_budget : kanban for Budgetary Positions
- account : kanban for fiscal positions
- account : kanban for taxes
- account : kanban for payment terms
- account : kanban for bank accounts
- account : kanban for journals(reuse Accounting Dashboard)
- analytic : kanban for analytic accounts
- analytic : kanban for analytic entries
Purpose
=======
Improve readability on mobile
Specification
=============
Activate Kanban view on those so it could be displayed by default on mobile instead of view list
List of impacted modules:
- stock: kanban for incoming products
- stock_picking_wave: kanban for picking waves
- stock: kanban for reordering rules
- stock: kanban for inventory adjustments
- stock: kanban for stock moves
- purchase_requisition: kanban for purchase agreement
- purchase_requisition: kanban for purchase agreement types
- procurement: kanban for procurement exceptions
- mrp: kanban for unbuild orders
- mrp: kanban for waiting availability mo
- mrp: kanban for routing
- mrp: kanban for bill of materials
- mrp_repair: kanban for repair orders
- mrp : kanban for work order messages
- mrp : kanban for productivity losses
- mrp : kanban for Orders to Plan(reuse Manufacturing Orders
- mrp : kanban for work centers(reuse Work Centers Dashboard)
- maintenance: kanban for equipment categories
- barcode : kanban for barcode nomenclatures
Purpose
=======
Improve readability on mobile
Specification
=============
Activate Kanban view on those so it could be displayed by default on mobile instead of view list
List of impacted modules:
- point_of_sale: kanban for pos orders
- point_of_sale: kanban for pos session
- point_of_sale: kanban for pos category
- point_of_sale : account journal dashboard kanban in account can be used in payment methods
- pos_restaurant: kanban for floor plans
- pos_restaurant : kanban for order printer(use default kanban)
- pos_mercury: kanban for mercury configurations(use default kanban)
- point_of_sale : kanban for configration >> point of sale (Reuse Point of Sale (dashboard))
Purpose
=======
Improve readability on mobile
Specification
=============
Activate Kanban view on those so it could be displayed by default on mobile instead of view list
List of impacted modules:
- crm: crm leads kanban
- membership: kanban for membership config
- product : kanban for pricelists
Report naming has been recently updated at commit efdb5373c3 . However
some people, same kind of people who cannot walk on two stone steps at
a time or have to put their pens parallel on their desktop, thought
another step could be done in order to have the same convention of naming
for every report. Convention for report naming is now "<report name> -
<object name>".
This commit also improves the RNG validation of report tag in order to
be able to directly put print_report_name into the report declaration
instead of having to define it in a separate ir.actions.report.xml node.
This merges remote-tracking branch 'dev/master-report-name-youpie'.
This module is buggy and unusable. The goal is to
simplify timesheet flow.
New validation flow is bring with timesheet_grid
(enterprise edition ....)
These commits provides adaptations and removal
of hr_timesheet_sheet.
Purpose of this commit is to clean and uniformize report naming through
various addons. It has been chosen to name them using a formatting like
<report_name> - <object_name or suffix> .
Improve report naming in product, stock, mrp and mrp repair.
Purpose of this commit is to clean and uniformize report naming through
various addons. It has been chosen to name them using a formatting like
<report_name> - <object_name or suffix> .
Improve report naming in hr_attendance, hr_expense and hr_payroll.
Purpose of this commit is to clean and uniformize report naming through
various addons. It has been chosen to name them using a formatting like
<report_name> - <object_name or suffix> .
Purpose of this commit is to clean and uniformize report naming through
various addons. It has been chosen to name them using a formatting like
<report_name> - <object_name or suffix> .
Improve report naming in sale, point of sale, l10n_ch, purchase,
purchase requisition, report intrastat, website_quote
Otherwise a constraint is raised because new line are added to the
payment term instead of recreating them from scratch. This constraint
blocks people from reinitializing the module, which is quite boring
when developing.
hr.recruitment.report is not necessary anymore as it can be replaced by
classic pivot and graph views on hr.applicant model.
Applicant has been slighty modified to ease reporting
* adding group_operator average on both days to computation;
* adding group_operator average on working hours computation;