Skip to content
Snippets Groups Projects
  1. Jan 20, 2020
    • Xavier Morel's avatar
      c4880f3c
    • Xavier Morel's avatar
      [FIX] web: client-side RPC error to have an arguments data member · afbf9210
      Xavier Morel authored
      Several XHR error handlers expect a data.arguments member which holds
      the args tuple from the Python exception.
      
      Some have alternate codepaths for "xhr errors" but several
      don't (e.g. addons/payment/static/src/js/payment_form.js:142,
      addons/web/static/src/js/services/crash_manager.js:229,
      addons/website/static/src/js/content/website_root.js:167) and will
      thus blow up on synthetic client-side xhr errors.
      
      Modify the synthetic errors so they provide that member as an array.
      afbf9210
    • Xavier Morel's avatar
      [FIX] point_of_sale: downgrade JS console.error to warning · 0eb69062
      Xavier Morel authored
      Commonly happens during teardown of POS tests and we really don't
      care, so avoid blowing up the runbot build.
      0eb69062
    • Xavier Morel's avatar
      [FIX] missing awaits · 062d2cd0
      Xavier Morel authored
      not sure it does anything useful but you never know
      062d2cd0
    • Xavier Morel's avatar
      [IMP] core: reporting of browser logs / errors during setup · 7b545732
      Xavier Morel authored
      Sink handling of JS logging, exceptions and websocket timeouts so
      calls other than _wait_code_ok handle them somewhat properly: the
      issue fixed by odoo/odoo#41231 passed because it occurred during
      module loading, which happens during initial page loading (browser_js
      > navigate_to > _websocket_wait_event), which ignored logs (and
      exceptions though here it's a console.error log), and as a result
      reported no failure (and would simply miss that specific test as well
      as every test following it).
      
      Also since ChromeBrowser treats console.error as an exception,
      important messages should be logged atomically. Merge two consecutive
      console.error into a single one at the loading of modules so we don't
      just get an exception "error while loading foo.bar" without any of the
      useful details.
      
      That ChromeBrowser treats console.error as exception is also why the
      new method gets a flag (to suppress this behaviour): in the case of
      two console.error, upon encountering the first it's treated as an
      error so we try to take a screenshot, which goes through the messages
      in order to get the screenshot response, which encounters the second
      console.error, which gets treated as an exception, which hides the
      first error.
      
      Instead, screenshotting (and more generally _websocket_wait_id) should
      treat console.error as a regular logging call, probably.
      
      Also run JS tests in debug=assets for easier debugging (ha!) and
      improve formatting of exception object when receiving an exception:
      * if we can get a description on an `exception` remote object just
        print that, it's formatted to show the exception type, message &
        traceback
      * otherwise format the garbage that is an "ExceptionDetails" object
      7b545732
    • Adrien Dieudonne's avatar
      [FIX] mail: Unsychronize chat windows between mobile and desktop · 8e5b6ab0
      Adrien Dieudonne authored
      Currently when you open, for example, 5 chat windows on the desktop,
      each of those windows will be opened on mobile as well.
      The big issue with that is that I have to shut down all windows before
      starting to work on the application.
      
      To make things simple, you have to explicitly open chat window to
      make it appears on mobile. Synchronization is blocked in both direction.
      We don't update the chat window state on the server and we no longer
      consider notifications (bus) about it.
      
      Tests were added in enterprise.
      
      Task ID: 1891952
      
      Backport of https://github.com/odoo/odoo/pull/41052
      
      
      
      closes odoo/odoo#43546
      
      Related: odoo/enterprise#7795
      Signed-off-by: default avatarAdrien Dieudonné (adr) <adr@odoo.com>
      8e5b6ab0
    • Andrea Grazioso (agr-odoo)'s avatar
      [FIX] account: avoid base being included twice in group · 43de214b
      Andrea Grazioso (agr-odoo) authored
      
      Create multiple tax and assign them to the same tax group.
      Create an invoice, with two lines, each one with one tax of the group.
      Save and click on "Preview" or print invoice.
      
      The tax group will be reported applied on just the first line
      This append because of 4d62a94a.
      Reverting commit to restore the former behavior in which the tax base
      amount is added for every line in which the tax group component is
      found. While this other behavior could be an issue for some user the
      behavior is more consistent accounting-wise and the template could easily
      be changed to adapt to user needs.
      
      opw-2170069
      
      closes odoo/odoo#43254
      
      Signed-off-by: default avatarNicolas Martinelli (nim) <nim@odoo.com>
      43de214b
    • Damien Bouvy's avatar
      [FIX] product: incorrect super call · cfa29936
      Damien Bouvy authored
      
      Unfortunately caught in a really wide try/except clause where it was
      completely silenced, causing a lot of stuff to be archived instead of
      deleted.
      
      closes odoo/odoo#43531
      
      Signed-off-by: default avatarDamien Bouvy (dbo) <dbo@odoo.com>
      cfa29936
    • Andrea Grazioso (agr-odoo)'s avatar
      [FIX] calendar: avoid creation of the document on invitation · 4e30db33
      Andrea Grazioso (agr-odoo) authored
      
      Install Projects, documents, calendar, website, crm.
      Under Settings enable "File Centralization"
      Now go to Projects, enter in a Task, click on "schedule activity".
      On the activity form under "Activity Type" choose Meeting, click on
      "Open Calendar" button.
      Choose a slot, edit the event, add a contact type individual, save
      Error will popup.
      
      This is caused by the whole flow of creating a new document for the
      invitation.ics generated for the meetings which has to be sent via email
      but get detected as an attachment to be sent into the document app as
      well.
      
      Disabling the document creation since it is not a relevant attachment
      
      opw-2150770
      
      closes odoo/odoo#43341
      
      Signed-off-by: default avatarNicolas Martinelli (nim) <nim@odoo.com>
      4e30db33
    • Nicolas Martinelli's avatar
      [FIX] analytic: partner without name · 90b55325
      Nicolas Martinelli authored
      
      Do not crash if the commercial partner doesn't have a name.
      
      opw-2158809
      
      closes odoo/odoo#43391
      
      X-original-commit: c70122e673579cd5f7338b6e54dae1d1445945e7
      Signed-off-by: default avatarNicolas Martinelli (nim) <nim@odoo.com>
      90b55325
  2. Jan 19, 2020
  3. Jan 17, 2020
    • Nicolas Martinelli's avatar
      [FIX] hr_holidays: allocation multi-company · 1e8ff733
      Nicolas Martinelli authored
      
      As Mitchell Admin:
      - Install Leaves
      - General Settings > Multi Company
      - Create companies A (YourCompany) and B
      - Mitchell Admin should be an employee of A, not B
      - Switch to company B
      - Go to Leaves > Managers > All > Allocations
      
      An AccessError is raised in `_compute_number_of_hours_display` because
      we try to access `employee_id.resource_calendar_id.hours_per_day`.
      
      After this AccessError is solved, several others are raised when
      accessing a record. They are solved in this commit.
      
      opw-2160542
      
      closes odoo/odoo#43504
      
      X-original-commit: 9413222e
      Signed-off-by: default avatarNicolas Martinelli (nim) <nim@odoo.com>
      1e8ff733
    • Nicolas Lempereur's avatar
      [FIX] point_of_sale: 0 => +/- => backspace => 0 and not - · d3489146
      Nicolas Lempereur authored
      
      When writting number on the point of sale keypad, if you click on the
      "+/-" button, you will get 0 (with buffer "-0"), but then you need to
      backspace 2 times to remove "-".
      
      This seems odd since this mean that:
      
      => "+/-" "backspace" "backspace" "5" will get 5.0 units
      => "+/-" "backspace" "backspace" "backspace" will remove line
      
      instead of what would be expected:
      
      => "+/-" "backspace" "5" will get 5.0 units
      => "+/-" "backspace" "backspace" will remove the line
      
      opw-2169157
      closes #43495
      
      Signed-off-by: default avatarNicolas Lempereur (nle) <nle@odoo.com>
      d3489146
    • Jason Van Malder's avatar
      [FIX] account_facturx: fix too much restrictive XML bill upload · 592d2a29
      Jason Van Malder authored
      
      Issue
      
          - Install Accounting
          - Upload XML bill (tried with a MX one)
      
          No decoder was found.
      
      Cause
      
          The _create_invoice_from_xml method gets decoders from overrides of
          _get_xml_decoders. There is only 2 overrides: Belgium & Italy.
      
          All others countries are not handled. So, this error blocks
          the user.
      
      Solution
      
          Log the error instead raising it. (Reproduce V12 behavior)
      
      OPW-2170516
      
      closes odoo/odoo#43393
      
      Signed-off-by: default avatarNicolas Martinelli (nim) <nim@odoo.com>
      592d2a29
    • Christopher Ormaza's avatar
      [FIX] core: disable wait_callback during copy_from · 8703fa33
      Christopher Ormaza authored
      
      Apparently some solutions (e.g. bitnami) deploy odoo using async
      workers, and not all pg/psycopg2 features are supported in that mode,
      notably COPY FROM (bulk-copying data from a stream to postgres). Work
      around this issue by disabling "async mode" as we do the copy (by
      resetting the wait callback) then re-enabling it.
      
      While this is not an officially supported run mode, it should Do No
      Harm™ for normal operations and could help users and clients.
      
      Of important note: while this fixes an error running in async mode, it
      will also prevent the worker from yielding while copy_from is
      executing. Hopefully that doesn't take too long (as the entire point
      of the copy_from is to be fast) but there you are.
      
      Fixes odoo/odoo#24145
      
      closes odoo/odoo#43472
      
      X-original-commit: c4583cf8
      Signed-off-by: default avatarXavier Morel (xmo) <xmo@odoo.com>
      8703fa33
    • Jason Van Malder's avatar
      [FIX] mail: handle server error in the front-end part · 6a98c75e
      Jason Van Malder authored
      
      Issue
      
          - Install Time Off
          - Marc Demo > Create leave request
          - Admin > Validate the leave request
          - Marc Demo > Add an attachment
      
          Nothing happens
      
      Cause
      
          There is a access right issue that is not handled in the
          JS.
      
      Solution
      
          Handle it by doing a do_warn.
      
      OPW-2171791
      
      closes odoo/odoo#43464
      
      Signed-off-by: default avatarNicolas Lempereur (nle) <nle@odoo.com>
      6a98c75e
  4. Jan 16, 2020
    • Sébastien Theys's avatar
      [FIX] product: flush before invalidate in write override · f721bfe2
      Sébastien Theys authored
      
      Since [1] `computer_hdd_attribute_lines` is archived instead of unlinked in
      `TestSaleProductAttributeValueConfig` which leads to indeterminism in tests due
      to the missing `flush`.
      
      Indeed `flush` is necessary before `invalidate_cache` since [2] if the data
      that are pending being written must be saved to the database before the cache
      invalidation.
      
      [1] which highlighted the issue was merged after v13.0, but it still makes sense
      to merge the current fix in the earliest version possible.
      
      [1] 5361706e
      [2] 9920f20e
      
      closes odoo/odoo#43436
      
      Signed-off-by: default avatarChristophe Monniez (moc) <moc@odoo.com>
      f721bfe2
  5. Jan 17, 2020
  6. Jan 16, 2020
  7. Jan 08, 2020
  8. Jan 15, 2020
    • Luc De Meyer's avatar
      [FIX] account: don't overwrite statement_line_id when reconciling transfer account · f20b3adc
      Luc De Meyer authored
      
      Description of the issue:
      
      Transfer between Bank1 (550001) and Bank 2 (550002) of the same company via the intercompany bank account (580000) :
      
      Bank 1: minus 1000 EUR, we create the following accounting entry via the reconcile widget
      
      account 550001 credit 1000
      account 580000 debit 1000
      
      Bank 2 : Plus 1000 EUR
      
      When we select the counterparty 580000 entry of the Bank 1 statement via the reconcile widget
      than the statement_line_id of the entry from Bank 1 statement is replaced by the one of the Bank 2 statement.
      Hence this account.move.line is linked to the wrong statement line.
      
      closes odoo/odoo#43367
      
      X-original-commit: 3d74e739
      Signed-off-by: default avataroco-odoo <oco-odoo@users.noreply.github.com>
      f20b3adc
  9. Jan 16, 2020
  10. Jan 15, 2020
    • fja-odoo's avatar
      [FIX] web_editor: save all child text nodes of oe_structure elements · f32eb28c
      fja-odoo authored
      
      When saving the content of an oe_structure, the starting text nodes
      were lost because only the internal *elements* were considered. Ending
      text nodes were kept since they are considered as the last element's
      tail by the etree library.
      
      task-2040764
      
      closes odoo/odoo#43373
      
      X-original-commit: eb71d25c
      Signed-off-by: default avatarQuentin Smetz (qsm) <qsm@odoo.com>
      f32eb28c
    • Simon Lejeune's avatar
      [REF] stock_landed_costs: domain on transfers · c6aa61b2
      Simon Lejeune authored
      
      The previous domain was too naive: a receipt is not always valued
      (inter-warehouse transfer) and even a receipt that should be valued
      isn't always (receive goods you do not own, change your config from
      manual to automated and then apply the lc on an old receipt, etc.)
      
      Enforce a domain making sure the transfer is valued.
      
      related opw-2165697
      task-2169844
      
      closes odoo/odoo#43017
      
      Signed-off-by: default avatarSimon Lejeune (sle) <sle@openerp.com>
      c6aa61b2
    • oco-odoo's avatar
      [FIX] l10n_ch: don't assume the bank account of the company always has a currency_id · 2dd2aab3
      oco-odoo authored
      
      Since this field is not required on res.partner.bank (which is fine: we want it to be synchronized with the journal's currency, which is None if the journal uses company currency), the parameter received by validate_swiss_code_arguments ended out being an empty recordset in case the company was directly in CHF. This caused the QR code to never be displayed in this situation.
      
      closes odoo/odoo#43346
      
      X-original-commit: 60a55834
      Signed-off-by: default avatarLaurent Smet <smetl@users.noreply.github.com>
      2dd2aab3
    • Goffin Simon's avatar
      [FIX] website_sale: Creating an account on the eCommerce · 1f6a4e56
      Goffin Simon authored
      
      Steps to reproduce the bug:
      
      - Go to Settings > General Settings
      - Set "Customer Account" on "Free sign up"
      - Go to Website > configuration
      - Activate "Digital Content"
      - Create a fiscal position FP with a coutry group CG and applied automatically
      - Create a service product P with digital content DC at sales price = 0
      - Publish P on the website
      _ Log out and go to the shop with public user
      - Add P in your cart
      - Process the your Order in the shop
      - When the order is confirmed, click on "Downloads"
      - You will be redirected to the login page
      - Click on "Don't have an account?"
      - Fill in the form and sign up
      
      Bug:
      
      Nothing happened because in function sale_get_order in model 'website'
      the partner on the confirmed SO was not the same as the new one and so
      update_pricelist was set to True and a call to function _cart_update was
      done on a confirmed SO. Inspired from function _cart_update in model
      'sale.order'.
      
      opw:2146902
      
      closes odoo/odoo#43343
      
      Signed-off-by: default avatarSimon Goffin (sig) <sig@openerp.com>
      1f6a4e56
    • Goffin Simon's avatar
      [FIX] point_of_sale: Print invoice in POS · b26a8d1b
      Goffin Simon authored
      
      Steps to reproduce the bug:
      
      - Let's consider two sales taxes T1, T2
      - Create Fiscal Position FP which maps T1 to T2
      - Create Product P (Customer Tax: T1)
      - Configure FP as default fiscal position and Invoicing to print invoice in POS.
      - Create POS order with any customer, with P and FP
      - Select Print Invoice in the payment window
      - Process the payment
      - Order Preview displays T2 as expected
      
      Bug:
      
      The printed invoice displayed T1 instead of T2 on the invoice line
      
      opw:2171599
      
      closes odoo/odoo#43287
      
      Signed-off-by: default avatarSimon Goffin (sig) <sig@openerp.com>
      b26a8d1b
Loading