<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Odoo/addons/base_import/static/src/xml/base_import.xml, branch 14.0</title>
<subtitle>The current checkout of upstream Odoo</subtitle>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/'/>
<entry>
<title>[FIX] *: update documentation links Following the recent reorganisation of the documentation in 12.0+, the majority of the documents have been moved and their old links are no longer valid. Some redirection rules will soon be deployed, but those rules might be dropped in some years and we want the links to still work, which is why we still replace the links to the new ones.</title>
<updated>2021-05-17T08:25:31+00:00</updated>
<author>
<name>Victor Feyens</name>
<email>vfe@odoo.com</email>
</author>
<published>2021-05-12T14:07:43+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=598dda32f48ffeb64cbd398c6ffb1fe7577468f2'/>
<id>598dda32f48ffeb64cbd398c6ffb1fe7577468f2</id>
<content type='text'>
FW-Port of odoo/odoo#70675 (13.0)

closes odoo/odoo#70728

X-original-commit: 85c24961ab9ff5c1c79eb7415c97c46d9a77cca3
Related: odoo/enterprise#18283
Signed-off-by: Victor Feyens (vfe) &lt;vfe@odoo.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
FW-Port of odoo/odoo#70675 (13.0)

closes odoo/odoo#70728

X-original-commit: 85c24961ab9ff5c1c79eb7415c97c46d9a77cca3
Related: odoo/enterprise#18283
Signed-off-by: Victor Feyens (vfe) &lt;vfe@odoo.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[FIX] *: update document links</title>
<updated>2020-10-19T05:24:27+00:00</updated>
<author>
<name>Swapnesh Shah</name>
<email>swapneshshah111@gmail.com</email>
</author>
<published>2020-10-15T18:37:53+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=7ac08486d91d0ff0151abeeda057ffa6beda72e8'/>
<id>7ac08486d91d0ff0151abeeda057ffa6beda72e8</id>
<content type='text'>
Before this commit, links to the documentation were referenced the
previous version, 13.0, instead of the current one, 14.0.

Eventhough there is a redirection done by NGINX of a "versionless" URL
to the latest one (e.g. /documentation/user/general/auth/google.html
-&gt; /documentation/user/14.0/general/auth/google.html as of today), the
goal is to keep links owrking for users that will still be using the
14.0 in three years (and should not endup on the 17.0 doc).

closes odoo/odoo#59554

Signed-off-by: Martin Trigaux (mat) &lt;mat@odoo.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Before this commit, links to the documentation were referenced the
previous version, 13.0, instead of the current one, 14.0.

Eventhough there is a redirection done by NGINX of a "versionless" URL
to the latest one (e.g. /documentation/user/general/auth/google.html
-&gt; /documentation/user/14.0/general/auth/google.html as of today), the
goal is to keep links owrking for users that will still be using the
14.0 in three years (and should not endup on the 17.0 doc).

closes odoo/odoo#59554

Signed-off-by: Martin Trigaux (mat) &lt;mat@odoo.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[FIX] base_import: remove uppercase under Favorites</title>
<updated>2020-08-26T05:28:47+00:00</updated>
<author>
<name>Hardik Prajapati</name>
<email>hap@odoo.com</email>
</author>
<published>2020-08-26T05:28:47+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=1d54564d280d23b506e3764294318a359c0ad681'/>
<id>1d54564d280d23b506e3764294318a359c0ad681</id>
<content type='text'>
this commit removes unnecessary uppercase used under the favorites menu

task - 2325684

closes odoo/odoo#56545

Signed-off-by: Aaron Bohy (aab) &lt;aab@odoo.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
this commit removes unnecessary uppercase used under the favorites menu

task - 2325684

closes odoo/odoo#56545

Signed-off-by: Aaron Bohy (aab) &lt;aab@odoo.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[FIX] base_import: ensure reloaded file is valid</title>
<updated>2020-06-02T15:24:14+00:00</updated>
<author>
<name>Julien Castiaux</name>
<email>juc@odoo.com</email>
</author>
<published>2020-05-20T13:31:07+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=22db89188821384599f0d8901c06a29ee7f743b7'/>
<id>22db89188821384599f0d8901c06a29ee7f743b7</id>
<content type='text'>
The *Reload File* import functionality stands on an undefined behavior
or the HTML File API. The API is not clear about what should done in
case the underlying file change on the filesystem after it has been
imported in the browser.

It turns out the actual behavior vary among browsers and even among
OSes. The *Reload File* button only works as intended when importing
files via Chrome on Linux.

In other cases, the browser may refuse to send the file or may send it
in a corrupted HTTP request. Such malformed request is rejected in the
best cases by the backend web application but there is chance it hangs.

Security-wise, this problem is not much likely to happen as it requires
an authenticated user with importation privileges to perform the
operation. When it comes to the severity, it is possible to exhaust the
available workers by forcing every one of them to hang.

As there is a security impact, we decided to disable the *Reload File*
functionality.

Steps to reproduce
------------------

1) Import a CSV or XLSX document in any model.
2) Wait for the data visualization to come back to the browser.
3) Change the file on disk to
  a) remove a few lines
  b) add a few more lines.
4) Click the Reload button.

Wrong `size` attribute on Firefox.
----------------------------------

Impact: Firefox

The advertised `Content-Length` HTTP header in the POST request is
a) *greater* than the actual body length. The backend web application
   hangs on a `socket.recv` like function waiting for those missing
   bytes.
b) *smaller* than the actual body length. The request is truncated
   and futher processing is impossible.

The malformed request should have been detected and reported by the http
web application as requested by the HTTP/1.1 spec [1]:

&gt; When a Content-Length is given in a message where a message-body is
  allowed, its field value MUST exactly match the number of OCTETs in
  the message-body. HTTP/1.1 user agents MUST notify the user when an
  invalid length is received and detected.

Mitigating the issue is possible using nginx as reverse-proxy. The
connection is closed after one minute if data are missing.

Invalid `ERR_UPLOAD_FILE_CHANGED`
---------------------------------

Impact: Chrome on Windows

Chrome prevent sending the XHR due to a `ERR_UPLOAD_FILE_CHANGED` error,
this error should only happens when the underlying file content have
been changed the second before the request. On Windows, the error
is triggered as soon as the file have been changed, not considering the
modification time.

[1]: https://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html Section 4.4

opw-2252440

closes odoo/odoo#52276

X-original-commit: 30be09cdb7d5b80fb1e0221f58024586bd72ac61
Signed-off-by: Xavier Morel (xmo) &lt;xmo@odoo.com&gt;
Signed-off-by: Julien Castiaux &lt;Julien00859@users.noreply.github.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The *Reload File* import functionality stands on an undefined behavior
or the HTML File API. The API is not clear about what should done in
case the underlying file change on the filesystem after it has been
imported in the browser.

It turns out the actual behavior vary among browsers and even among
OSes. The *Reload File* button only works as intended when importing
files via Chrome on Linux.

In other cases, the browser may refuse to send the file or may send it
in a corrupted HTTP request. Such malformed request is rejected in the
best cases by the backend web application but there is chance it hangs.

Security-wise, this problem is not much likely to happen as it requires
an authenticated user with importation privileges to perform the
operation. When it comes to the severity, it is possible to exhaust the
available workers by forcing every one of them to hang.

As there is a security impact, we decided to disable the *Reload File*
functionality.

Steps to reproduce
------------------

1) Import a CSV or XLSX document in any model.
2) Wait for the data visualization to come back to the browser.
3) Change the file on disk to
  a) remove a few lines
  b) add a few more lines.
4) Click the Reload button.

Wrong `size` attribute on Firefox.
----------------------------------

Impact: Firefox

The advertised `Content-Length` HTTP header in the POST request is
a) *greater* than the actual body length. The backend web application
   hangs on a `socket.recv` like function waiting for those missing
   bytes.
b) *smaller* than the actual body length. The request is truncated
   and futher processing is impossible.

The malformed request should have been detected and reported by the http
web application as requested by the HTTP/1.1 spec [1]:

&gt; When a Content-Length is given in a message where a message-body is
  allowed, its field value MUST exactly match the number of OCTETs in
  the message-body. HTTP/1.1 user agents MUST notify the user when an
  invalid length is received and detected.

Mitigating the issue is possible using nginx as reverse-proxy. The
connection is closed after one minute if data are missing.

Invalid `ERR_UPLOAD_FILE_CHANGED`
---------------------------------

Impact: Chrome on Windows

Chrome prevent sending the XHR due to a `ERR_UPLOAD_FILE_CHANGED` error,
this error should only happens when the underlying file content have
been changed the second before the request. On Windows, the error
is triggered as soon as the file have been changed, not considering the
modification time.

[1]: https://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html Section 4.4

opw-2252440

closes odoo/odoo#52276

X-original-commit: 30be09cdb7d5b80fb1e0221f58024586bd72ac61
Signed-off-by: Xavier Morel (xmo) &lt;xmo@odoo.com&gt;
Signed-off-by: Julien Castiaux &lt;Julien00859@users.noreply.github.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[IMP] base_import,*: move Import button to Favorite menu</title>
<updated>2020-05-04T14:31:11+00:00</updated>
<author>
<name>pka-odoo</name>
<email>pka@odoo.com</email>
</author>
<published>2020-05-04T09:09:23+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=470fa48686f5ac430f0f7eb0853cf2c81dca62c0'/>
<id>470fa48686f5ac430f0f7eb0853cf2c81dca62c0</id>
<content type='text'>
*account,crm_iap_lead,hr_expense

Part of task 2234547

Co-authored-by: Mohammed Shekha &lt;msh@odoo.com&gt;
Co-authored-by: Aaron Bohy &lt;aab@odoo.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
*account,crm_iap_lead,hr_expense

Part of task 2234547

Co-authored-by: Mohammed Shekha &lt;msh@odoo.com&gt;
Co-authored-by: Aaron Bohy &lt;aab@odoo.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[IMP] base_import: improve preview table UI</title>
<updated>2020-01-16T13:38:02+00:00</updated>
<author>
<name>Sapan Zaveri</name>
<email>sza@odoo.com</email>
</author>
<published>2020-01-08T18:39:30+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=4946739c17488d32d3e61b1258ab48b5aec701a4'/>
<id>4946739c17488d32d3e61b1258ab48b5aec701a4</id>
<content type='text'>
Task 1919628

closes odoo/odoo#30430

Signed-off-by: Aaron Bohy (aab) &lt;aab@odoo.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Task 1919628

closes odoo/odoo#30430

Signed-off-by: Aaron Bohy (aab) &lt;aab@odoo.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[IMP] base_import: support multiple xlsx sheets</title>
<updated>2019-11-26T09:26:01+00:00</updated>
<author>
<name>Julien Castiaux</name>
<email>juc@odoo.com</email>
</author>
<published>2019-11-22T15:50:14+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=3460b3ca15a1086d034cc00120d0130e4c8401ed'/>
<id>3460b3ca15a1086d034cc00120d0130e4c8401ed</id>
<content type='text'>
Excel can store data in multiple tables, each is called a sheet. Odoo
was only importing the first sheet making the process to import a file
containing multiple sheets cumbersome.

It is now possible to select the sheet in the import options. By default
the first sheet is selected.

closes odoo/odoo#40728

Task: 2043768
Signed-off-by: Xavier Morel (xmo) &lt;xmo@odoo.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Excel can store data in multiple tables, each is called a sheet. Odoo
was only importing the first sheet making the process to import a file
containing multiple sheets cumbersome.

It is now possible to select the sheet in the import options. By default
the first sheet is selected.

closes odoo/odoo#40728

Task: 2043768
Signed-off-by: Xavier Morel (xmo) &lt;xmo@odoo.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[FIX] v13 urls</title>
<updated>2019-10-03T12:48:09+00:00</updated>
<author>
<name>mreficent</name>
<email>miquel.raich@eficent.com</email>
</author>
<published>2019-10-03T09:03:43+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=41c434cd5d05561c725bfc0f9df99271fe2e49d7'/>
<id>41c434cd5d05561c725bfc0f9df99271fe2e49d7</id>
<content type='text'>
Was still pointing to old links

closes odoo/odoo#37859

Signed-off-by: Adrian Torres (adt) &lt;adt@odoo.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Was still pointing to old links

closes odoo/odoo#37859

Signed-off-by: Adrian Torres (adt) &lt;adt@odoo.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[ADD] base_import: batching (&amp; some other features)</title>
<updated>2019-09-13T09:45:29+00:00</updated>
<author>
<name>Xavier Morel</name>
<email>xmo@odoo.com</email>
</author>
<published>2019-08-28T13:02:23+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=f58368210c9c962c84cdcd2e2a799c5fc6183a13'/>
<id>f58368210c9c962c84cdcd2e2a799c5fc6183a13</id>
<content type='text'>
various UI changes
------------------

* renamed "test import" button to "test"
* move relation fields thing to debug mode
* remove "Defer parent/child computation" option as it was deprecated
  / removed from the backend in
  80f1ac3599ee630e7556ff4fcf3eb192931eccd8, turns out this checkbox
  existed inactive for longer than it's been of any use (added in
  68cb2ade09206b0abb3f7c8dccb5d35a6499f802 on 2017-11-29, made
  non-operating on 2018-01-24, that's so sad)

batching
--------

* add support for batching imports (skip &amp; limit parameters)
* modify client to use batched imports &amp; properly adapt responses so
  it still looks like a single import for the client (more or less)
  e.g. update row numbers in error messages, etc...
* properly handle partial imports though
* disable usual loading throbber to have a single progress
  notification displayed continuously throughout all the batches: the
  normal throbber only shows after 3s of waiting for an RPC response,
  so it would keep flashing in and out (appear 3s into a batch's
  import then disappear at the end only to reappear 3s into the next
  batch's loading)

NOTE: the limit is row-wise. If a record straddles the limit (because
of nested O2M records), the record is imported in full and the "next
row" is whatever row follows the record. This means a limit of 10 can
lead to an import of 17 lines, and as the progress indicator is in
records# the increments can jump around.

Task 2059448</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
various UI changes
------------------

* renamed "test import" button to "test"
* move relation fields thing to debug mode
* remove "Defer parent/child computation" option as it was deprecated
  / removed from the backend in
  80f1ac3599ee630e7556ff4fcf3eb192931eccd8, turns out this checkbox
  existed inactive for longer than it's been of any use (added in
  68cb2ade09206b0abb3f7c8dccb5d35a6499f802 on 2017-11-29, made
  non-operating on 2018-01-24, that's so sad)

batching
--------

* add support for batching imports (skip &amp; limit parameters)
* modify client to use batched imports &amp; properly adapt responses so
  it still looks like a single import for the client (more or less)
  e.g. update row numbers in error messages, etc...
* properly handle partial imports though
* disable usual loading throbber to have a single progress
  notification displayed continuously throughout all the batches: the
  normal throbber only shows after 3s of waiting for an RPC response,
  so it would keep flashing in and out (appear 3s into a batch's
  import then disappear at the end only to reappear 3s into the next
  batch's loading)

NOTE: the limit is row-wise. If a record straddles the limit (because
of nested O2M records), the record is imported in full and the "next
row" is whatever row follows the record. This means a limit of 10 can
lead to an import of 17 lines, and as the progress indicator is in
records# the increments can jump around.

Task 2059448</pre>
</div>
</content>
</entry>
<entry>
<title>[FIX] base_import: layout issues</title>
<updated>2019-08-28T07:35:50+00:00</updated>
<author>
<name>Aaron Bohy</name>
<email>aab@odoo.com</email>
</author>
<published>2019-08-28T07:27:11+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=9a4123995fa4b364cd6fed2000bccdf081459103'/>
<id>9a4123995fa4b364cd6fed2000bccdf081459103</id>
<content type='text'>
This rev. makes the 'Formatting Options' area responsive.

Closes #34257

Task 2007558

closes odoo/odoo#36159

Signed-off-by: Géry Debongnie (ged) &lt;ged@openerp.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This rev. makes the 'Formatting Options' area responsive.

Closes #34257

Task 2007558

closes odoo/odoo#36159

Signed-off-by: Géry Debongnie (ged) &lt;ged@openerp.com&gt;</pre>
</div>
</content>
</entry>
</feed>
