1. 18 Jul, 2023 2 commits
  2. 13 Jul, 2023 5 commits
  3. 07 Jul, 2023 1 commit
  4. 04 Jul, 2023 2 commits
  5. 03 Jul, 2023 2 commits
  6. 28 Jun, 2023 2 commits
  7. 26 Jun, 2023 1 commit
  8. 22 Jun, 2023 1 commit
  9. 21 Jun, 2023 1 commit
  10. 20 Jun, 2023 6 commits
    • Jérome Perrin's avatar
      openid_connect,google_login: increase cache duration to 10 days · 3304ea33
      Jérome Perrin authored
      Because these two plugins implement the refresh of the authentication
      token (unlike the facebook plugin), we can use a longer cache here.
      With the previous value of 1 day, when not using the site for more than
      1 day, token would expire from cache and user have to authenticate again.
      Because the scenario of "access is revoked from authorization server"
      is handled by refreshing the access token, we can use a longer duration
      here, so that user do not have to login again after not using for two
      days.
      3304ea33
    • Jérome Perrin's avatar
      ERP5Security: fix some typos · 36d7f81e
      Jérome Perrin authored
      36d7f81e
    • Jérome Perrin's avatar
      ZMySQLDA: reconnect on mariadb's Connection was killed · 831627bf
      Jérome Perrin authored
      After server restarts, mariadb uses an error 1927 which is mariadb
      specific, with no corresponding constant in CR module when server
      restart. This is the case at least with mariadb 10.3.38.
      
      This fix the following problem:
       - start zope and use mariadb connection
       - restart mariadb
       - use mariadb connection again, see an error:
          Error Type: OperationalError
          Error Value: (1927, 'Connection was killed')
      
      This change to treat 1927 as an error for which we can reconnect and
      retry the query. Some other connectors do it, for example sqlalchemy in
      https://github.com/sqlalchemy/sqlalchemy/issues/5493
      831627bf
    • Jérome Perrin's avatar
      288063e6
    • Jérome Perrin's avatar
      test: try to explicitly stop HTTP server at the end of tests · 3fb0670d
      Jérome Perrin authored
      This prevents tracebacks during shutdown:
      
        Unhandled exception in thread started by <bound method Thread.__bootstrap of <Thread(Thread-1, stopped daemon 139820471113472)>>
        Traceback (most recent call last):
          File "soft/lib/python2.7/threading.py", line 774, in __bootstrap
            self.__bootstrap_inner()
          File "soft/lib/python2.7/threading.py", line 814, in __bootstrap_inner
            (self.name, _format_exc()))
          File "soft/lib/python2.7/traceback.py", line 242, in format_exc
            return ''.join(format_exception(etype, value, tb, limit))
          File "soft/lib/python2.7/traceback.py", line 141, in format_exception
            list = list + format_tb(tb, limit)
          File "soft/lib/python2.7/traceback.py", line 76, in format_tb
            return format_list(extract_tb(tb, limit))
          File "soft/lib/python2.7/traceback.py", line 100, in extract_tb
            linecache.checkcache(filename)
        TypeError: 'NoneType' object is not callable
      
      Also rename the method because this is not longer *Z*server.
      
      This waitress close() API is not public part of API, so we still ignore
      the case where the server thread does not stop after 5 seconds. This
      happens if some HTTP connections are still open at the end of test.
      3fb0670d
    • Jérome Perrin's avatar
      Products/ZMySQLDA: ssl support · 7b49f53d
      Jérome Perrin authored
      See merge request nexedi/erp5!1772
      7b49f53d
  11. 16 Jun, 2023 6 commits
  12. 15 Jun, 2023 1 commit
  13. 07 Jun, 2023 2 commits
  14. 06 Jun, 2023 1 commit
    • Rafael Monnerat's avatar
      erp5_accounting&trade&pdm: Missing set ConstraintType on constraints · 273f273a
      Rafael Monnerat authored
         This is expected that constraints can call getConstraintType() if they are filtered:
      
          return context.checkConsistency(fixit=1, filter={'constraint_type': 'post_upgrade'},)
        Module Products.ERP5Type.Core.Folder, line 1476, in checkConsistency
          error_list.extend(obj.fixConsistency(filter=filter, **kw))
        Module Products.ERP5Type.Base, line 2714, in fixConsistency
          return self.checkConsistency(fixit=True, filter=filter, **kw)
        Module Products.ERP5Type.Core.Folder, line 1476, in checkConsistency
          error_list.extend(obj.fixConsistency(filter=filter, **kw))
        Module Products.ERP5Type.Base, line 2714, in fixConsistency
          return self.checkConsistency(fixit=True, filter=filter, **kw)
        Module Products.ERP5Type.Core.Folder, line 1462, in checkConsistency
          **kw
        Module Products.ERP5Type.Base, line 2686, in checkConsistency
          for constraint_instance in self._filteredConstraintList(filter):
        Module Products.ERP5Type.Base, line 2739, in _filteredConstraintList
          constraints = [x for x in constraints if x.__of__(self).getConstraintType() in \
      AttributeError: 'RequestContainer' object has no attribute 'getConstraintType'
      273f273a
  15. 02 Jun, 2023 1 commit
  16. 30 May, 2023 1 commit
  17. 29 May, 2023 1 commit
    • Jérome Perrin's avatar
      oauth_google_login: apply a 10 seconds timeout when connecting to google server · e53f712e
      Jérome Perrin authored
      In case of network problems, the http requests made to google during
      login may take too long and cause global unavailability of the ERP5
      instance.
      
      Today we saw in long request logs:
      
          2023-05-29 07:10:35,662 - Thread 140596157511424: Started on 1685336511.6; Running for 524.1 secs; Same.
      
      oauth2client does not expose an API to set a timeout, but it allows
      passing a custom http instance where we can set a timeout.
      e53f712e
  18. 24 May, 2023 1 commit
  19. 18 May, 2023 3 commits
    • Jérome Perrin's avatar
      BTreeFolder2: do not patch manage_delAllObjects on Zope2 · 50b981b5
      Jérome Perrin authored
      On Zope2 this method does not exist and this caused a test failure
      
      ======================================================================
      FAIL: test_method_protection (testSecurity.TestSecurity)
      ----------------------------------------------------------------------
      Traceback (most recent call last):
        File "parts/erp5/Products/ERP5/tests/testSecurity.py", line 110, in test_method_protection
          self.fail(message)
      AssertionError:
      The following 1 methods have a docstring but have no security assertions.
      	parts/erp5/product/ERP5Type/patches/BTreeFolder2.py:111 manage_delAllObjects
      50b981b5
    • Jérome Perrin's avatar
      Fix neo log rotation · a0b89f5d
      Jérome Perrin authored
      See merge request !1786
      a0b89f5d
    • Jérome Perrin's avatar
      zopewsgi: new --pidfile option · c60d39e9
      Jérome Perrin authored
      To write a pid file so that logrotate can send us signals. This is
      still needed for neo storage for now.
      
      See nexedi/slapos!1395
      c60d39e9