Skip to content
Snippets Groups Projects
  1. Jan 06, 2022
    • Thibault Delavallée's avatar
      [REF] various: remove usage and dependency on html2text library · d79197f1
      Thibault Delavallée authored
      
      We have our own html2plaintext, already used in lot of use cases instead of
      just a few for the html2txt library.
      
      Notably for emails: most emails going through Odoo stack use our simple
      html2plaintext to format the body alternative. When no body alternative
      is given to ``build_email`` an alternative is built using the library to
      remove. Using our own parser allows to have the same results compared to
      using ``MailMail.send()``. Difference lies in spaces and new lines as well
      as markdown. Our html2plaintext is a bit simple and does not try to generate
      Markdown but generates a simple plaintext version.
      
      This also helps solving some issues with depending on that library.
      
      Task-2702034
      
      closes odoo/odoo#82330
      
      X-original-commit: odoo/odoo@9b5f86e8fa5bef341ea7392b86987092d6f6933a
      Related: odoo/enterprise#23292
      Signed-off-by: default avatarThibault Delavallee (tde) <tde@openerp.com>
      d79197f1
  2. Sep 15, 2021
  3. Mar 05, 2021
  4. Feb 25, 2021
  5. Feb 01, 2021
  6. Jan 29, 2021
    • Christophe Monniez's avatar
      [FIX] packaging: update rpm packaging for fedora 32 · a8deb1dd
      Christophe Monniez authored
      
      As Fedora 32 was the current release when Odoo 14.0 was released, this
      should be the supported version.
      
      Also, a few  old libs were still in mentioned in the packaging files.
      They flew under the radar because they never broke the packaging.
      This is not the case anymore, those libs disappeared from the Fedora
      repos.
      
      It seems that pyparsing is not used anymore since 5a1c06a1 and thus can
      be safely removed from `requirements.txt` too.
      
      pychart is not used anymore since 3425752e.
      
      While at it, remove mix of tabs and spaces in package.dffedora, also add
      missing packages to avoid installation at test time.
      
      Now that I started down the slippery slope, also removed some `-dev`
      packages in package.dfsrc as wheel's are available.
      
      Finally, the rpm install script now detects the python ABI version in
      order to avoid update this file at each ABI change in Fedora.
      
      Fixes #63719
      
      closes odoo/odoo#65224
      
      Signed-off-by: default avatarChristophe Monniez (moc) <moc@odoo.com>
      a8deb1dd
  7. Dec 18, 2020
  8. Nov 27, 2020
    • Xavier Morel's avatar
      [IMP] requirements: resolve compatibility issues for 3.8 and 3.9 · 648635de
      Xavier Morel authored
      
      Only updates outdated requirements which actively cause issues:
      
      * freezegun broken in 3.8 (removal of time.clock)
      * xlrd broken in 3.8 (removal of time.clock)
      * also monkeypatches xlrd.xlsx for 3.9 (removal of
        Element.getiterator, breaks because of defusedxml)
      * jinja triggers DeprecationWarning in 3.8
      * pillow triggers warning in 3.9
      * lxml, greenlet don't compile in 3.9
      * reportlab doesn't work in 3.9
      
      New versions try to match those of Debian Bullseye.
      
      Also adds a script to more easily compare dependency versions between
      the requirements files and what's in various distributions (currently
      supports checking against debian and ubuntu).
      
      Furthermore updates warnings filtering:
      
      * removes xlrd (mischeck was monkeypatched as noted above)
      * removes setuptools (was for older versions, one would hope this
        isn't an issue anymore)
      * adds babel: python-babel/babel#684 fixes the deprecation warning but
        is not part of any release yet
      * ignores error related to `random.sample` on a set, this is a
        diagnostics bug because recordsets implement both Sequence and Set,
        and the stdlib checks for Set first (bpo-42470)
      
      See #59980
      Closes #61103
      
      closes odoo/odoo#62380
      
      Signed-off-by: default avatarXavier Morel (xmo) <xmo@odoo.com>
      648635de
  9. Oct 21, 2020
  10. Sep 24, 2020
    • Christophe Monniez's avatar
      [FIX] packaging: wait for windows sshd service · aed85d89
      Christophe Monniez authored
      
      In some undeterministic conditions, the Windows virtual machine can take
      more than 60 sec to start and have the sshd service ready.
      
      With this commit, the packaging script tries to connect to the VM up to
      30 times, giving more than 10 minutes for the boot.
      
      As soon as the connexion is ready, the packaging starts. This means
      that the script will probably start sooner in most of the cases.
      
      closes odoo/odoo#58271
      
      Signed-off-by: default avatarChristophe Monniez (moc) <moc@odoo.com>
      aed85d89
  11. Sep 15, 2020
    • Christophe Monniez's avatar
      [IMP] packaging: update windows packaging · c47d7c67
      Christophe Monniez authored
      
      Up to Odoo 13.0, the windows setup is 32 bits and embeds an old
      postgresql 9.5 32 bits version too.
      
      With this commit, the postgresql server is no longer embedded in the
      resulting setup file. Instead, if the user choose to install the
      postgresql server, the 12.4 version is downloaded from the official site
      (version 10.14 in the case of a 32 bits windows).
      
      Also, the Python target achitecture is choosen based on the Windows
      system on which Odoo is installed.
      
      This imply changes on the KVM images used to build the installer:
      
          - The Windows system on the KVM as to be 64 bits.
          - A 32 bits WinPython version must be in `c:/odoobuild/WinPy32`
          - A 64 bits WinPyhton version must be in `c:/odoobuild/WinPy64`
      
      A little bit of cleaning also comes with this commit to get rid of the
      old `openerp` references.
      
      closes odoo/odoo#57155
      
      Signed-off-by: default avatarChristophe Monniez (moc) <moc@odoo.com>
      c47d7c67
  12. Aug 21, 2020
    • Christophe Monniez's avatar
      [FIX] packaging: stop docker container when odoo fails · 5dbabad0
      Christophe Monniez authored
      
      When the Odoo installation is tested, if the test fails an error is
      raised but the Docker container is not stopped.
      
      As a result, a ghost container stays alive with a Postgres server
      running. Worse, if another package is built on the same host, the
      ghost container prevent the other build to succeed.
      
      With this commit, a specific Exception is raised and the container is
      stopped in any case.
      
      closes odoo/odoo#56270
      
      X-original-commit: fbe2092d
      Signed-off-by: default avatarChristophe Monniez (moc) <moc@odoo.com>
      5dbabad0
  13. Aug 03, 2020
  14. Jul 10, 2020
    • Romain Tartière's avatar
      [FIX] packaging: List all package versions in APT repositories · 607b3c9b
      Romain Tartière authored
      
      When building the package list of the APT repository, dpkg-scanpackages
      reports the following and only output the latest package information in
      the Packages file:
      
      ```
      dpkg-scanpackages: warning: Packages with multiple instances but no --multiversion specified:
      dpkg-scanpackages: warning: ./odoo_13.0.20191002_all.deb
      dpkg-scanpackages: warning: ./odoo_13.0.20191003_all.deb
      [...]
      dpkg-scanpackages: warning: ./odoo_13.0.20200630_all.deb
      ```
      
      Having only the latest version listed in the Packages file makes it
      impossible to tell apt to use a specific version through apt-pinning.
      It also makes it impossible to revert to a previous version if a
      regression is caused by an update.
      
      For these reasons, tell dpkg-scanpackages to include all versions of the
      odoo package in the Packages file it generates.
      
      closes odoo/odoo#54302
      
      X-original-commit: f41c00a8
      Signed-off-by: default avatarChristophe Monniez (moc) <moc@odoo.com>
      607b3c9b
  15. Apr 09, 2020
  16. Apr 01, 2020
    • Adrian Torres's avatar
      [REM] *: remove various unused import shims · 5952928b
      Adrian Torres authored
      
      Before this commit, a lot of leftover import shims existed in the
      codebase for py2-py3 compatibility, these are no longer needed since
      Odoo 13.0+ doesn't support Python 2 anymore and is (finally) in EOL.
      
      With this commit, these shims are dropped, making the code cleaner,
      easier to read and with one less dependency.
      
      Queue -> queue -> py2-py3 compatibility
      xmlrpclib -> xmlrpc.client -> py2-py3 compatibility
      ConfigParser -> configparser -> py2-py3 compatibility
      itertools.izip_longest -> itertools.zip_longest -> py2-py3 compatibility
      urllib -> urllib.request -> py2-py3 compatibility
      __builtins__ -> builtins -> py2-py3 compatibility
      _winreg -> winreg -> py2-py3 compatibility
      
      mock -> unittest.mock -> merged into CPython
      
      The debian/fedora packages and requirements.txt have been updated accordingly
      
      closes odoo/odoo#44601
      
      Related: odoo/enterprise#8141
      Signed-off-by: default avatarXavier Morel (xmo) <xmo@odoo.com>
      5952928b
  17. Feb 05, 2020
  18. Jan 22, 2020
    • Martin Trigaux's avatar
      [FIX] auth_ldap: replace the deprecated library by one up to date · 9aef423d
      Martin Trigaux authored
      At 795c7b0a the external dependencies was changed from trying
      to import 'ldap' to checking than 'pyldap' package was installed.
      The problem is that pyldap is a unmaintained library that should no
      longer be used, as explained on the package page:
      https://pypi.org/project/pyldap/
      
      
      "The pyldap fork was merged back into python-ldap, and released as
       python-ldap 3.0.0."
      
      Having pyldap version >= 3.0 installs python-ldap automatically and
      will not cause any issue.
      
      The Debian control file package name is adapted to use the latest.
      
      The "ldap" externalm dependency defined in __manifest__.py will cause
      pkg_resources.get_distribution() to fail in both case ("python-lap" or
      "pyldap"), but the "import" fallback will succeed. For that reason, the
      log warning is turned into a log info.
      
      closes odoo/odoo#43769
      
      Note: This library should be replaced by the pure python "ldap3" library.
      X-original-commit: 1afd0ccf
      Signed-off-by: default avatarChristophe Monniez (moc) <moc@odoo.com>
      9aef423d
  19. Nov 05, 2019
    • Christophe Monniez's avatar
      [FIX] packaging: compute winpython path with package.py args · 7ce07a7a
      Christophe Monniez authored
      
      When building the MS Windows package, the PYTHON_VERSION variable is not
      used and the WinPython path is hard coded in the Makefile and NSI file.
      This prevent the usage of a newer version of Python.
      
      With this commit, the PYTHON_VERSION is used to compute the WinPython
      Python directory. That way, this directory can be derived from
      package.py command line argument --vm-winxp-python-version.
      
      Also the less windows binaries are not packaged anymore.
      
      closes odoo/odoo#39821
      
      X-original-commit: ac90d858
      Signed-off-by: default avatarChristophe Monniez (moc) <moc@odoo.com>
      7ce07a7a
  20. Oct 22, 2019
  21. Oct 11, 2019
  22. Oct 02, 2019
    • Christophe Monniez's avatar
      [REF] packaging: use docker to build packages · 8c4c4394
      Christophe Monniez authored
      
      Actually, docker is used to test Linux packages once they are built.
      The packaging process is done on the host system where package.py is
      run.
      
      Consequences:
          * difficult to reproduce an exact same build on another host
          * changing a Debian/Ubuntu target version means some upgrade steps
            on the build host (mix that with the fact that the host also
            could build old Odoo versions)
          * Fedora rpm package is built on an Ubuntu system (which is not a
            real problem but it could be)
      
      With this commit, the package.py utility is refactored to use Docker
      containers to build the Gnu/Linux packages.
      
      Also, the Debian package is adapted for Debian Buster, the RPM package
      is built based on Fedora 30.
      
      Some minor changes are also made in the windows packaging system.
      
      closes odoo/odoo#37766
      
      Signed-off-by: default avatarChristophe Monniez (moc) <moc@odoo.com>
      8c4c4394
  23. Jun 05, 2019
  24. Jun 14, 2019
  25. Apr 10, 2019
    • Olivier Dony's avatar
      [FIX] requirements: bump up jinja2 reqs · 6cbecced
      Olivier Dony authored
      
      Recommended by GitHub's repository alerts.
      
      We normally stick as close as possible to the version we depend
      on in the official DEB packages. This in turn depends on the version of
      Debian stable at the time of release - for 11.0 that would be Debian 9
      (stretch) and thus Jinja 2.8 (with security backports).
      
      However Jinja2 before 2.10.1 suffers from a few issues that could lead
      to crashes of Odoo processes.
      
      It seems it's worth an exception to our rule for pip users, similarly to
      previous bump up at d2605bcc.
      
      closes odoo/odoo#32601
      
      Signed-off-by: default avatarChristophe Simonis <chs@odoo.com>
      6cbecced
  26. May 07, 2019
    • Olivier Dony's avatar
      [FIX] requirements: bump up jinja2 reqs · e554ce34
      Olivier Dony authored
      
      Recommended by GitHub's repository alerts.
      
      We normally stick as close as possible to the version we depend
      on in the official DEB packages. This in turn depends on the version of
      Debian stable at the time of release - for 11.0 that would be Debian 9
      (stretch) and thus Jinja 2.8 (with security backports).
      
      However Jinja2 before 2.10.1 suffers from a few issues that could lead
      to crashes of Odoo processes.
      
      It seems it's worth an exception to our rule for pip users, similarly to
      previous bump up at d2605bcc.
      
      closes odoo/odoo#32601
      
      Signed-off-by: default avatarChristophe Simonis <chs@odoo.com>
      e554ce34
  27. Feb 05, 2019
  28. Jan 29, 2019
    • Christophe Monniez's avatar
      [FIX] packaging: allow install on fedora29 · 7eec6b36
      Christophe Monniez authored
      Fedora 29 switched to python 3.7. It seems that there is no official
      way to build a RPM package that could works with 3.6 and 3.7.
      Building two different packages for each version could open the pandora
      box of packaging.
      
      With this commit an ugly hack is used: if python3.7 is found, the odoo
      directory is symlinked into its site-packages dir.
      
      fixes #30579
      
      closes odoo/odoo#30618
      7eec6b36
  29. Nov 19, 2018
    • Christophe Monniez's avatar
      [FIX] packaging: add qrcode package to docker file · 51ee0c3c
      Christophe Monniez authored
      After the Odoo package is built, the package.py script uses a Docker
      image to test the package. After that python3-qrcode was added as a
      dependency for the package in 2ff49c5f , it revealed some issues.
      
      A missing cli parameter and a forgotten '&&' in the Dockerfile prevented
      the installation of the depending packages.
      
      Also, the script shebang was wrong by launching python2.
      
      Finally, the fact that python3-xlwt is missing in Debian stretch was
      highlighted. With this commit, the python3-xlwt is explicitly removed
      from the dependencies and the documentation is updated accordingly.
      
      closes odoo/odoo#28807
      51ee0c3c
  30. Nov 08, 2018
    • Christophe Monniez's avatar
      [REM] packaging: remove useless code · 055e1b83
      Christophe Monniez authored
      PKG-INFO is generated during the setup phase and is not needed anymore.
      Also this file contains outdated informations.
      
      py2exe is not used anymore to build the windows installer.
      
      closes odoo/odoo#28494
      055e1b83
  31. Oct 09, 2018
  32. Aug 27, 2018
  33. Jul 27, 2018
  34. Jun 08, 2018
  35. Jun 05, 2018
  36. May 04, 2018
  37. Apr 26, 2018
    • Christophe Monniez's avatar
      [IMP] packaging: automate package update in Windows build · 5666bc3d
      Christophe Monniez authored
      When building the Windows installer, a virtual machine is used with
      prepackaged python modules.
      
      With this commit, the packaging script will try to install on the
      virtual machine the python packages specified in requirements.txt.
      Each package is installed individually, that way, if an install fails,
      the install of the other packages continues.
      At the end of the process, successfully packages are listed so that they
      will appear in the build log files.
      
      Also, the Makefile was cleaned in this commit (removal of py2exe stuffs).
      5666bc3d
  38. Apr 24, 2018
  39. Apr 18, 2018
Loading