1. 14 Jun, 2023 11 commits
  2. 07 Jun, 2023 2 commits
  3. 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
  4. 02 Jun, 2023 1 commit
  5. 30 May, 2023 1 commit
  6. 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
  7. 24 May, 2023 1 commit
  8. 18 May, 2023 4 commits
  9. 17 May, 2023 3 commits
  10. 16 May, 2023 4 commits
  11. 15 May, 2023 2 commits
  12. 12 May, 2023 2 commits
  13. 08 May, 2023 2 commits
  14. 03 May, 2023 2 commits
  15. 02 May, 2023 3 commits
    • Jérome Perrin's avatar
      ProcessingNodeTestCase: also setRequest in processing_node · 18deb716
      Jérome Perrin authored
      This is done on the process running test (by
      ERP5TypeTestCaseRequestConnection) and when using timerserver loop (by
      TimerServer which calls publish_module), but this was never set in
      processing_node.
      
      Before 3b874e49 (ERP5Type/tests: review requests in tests, 2023-04-19)
      getRequest could find a request anyway, because the test pached
      getRequest to find a request from the app, but after this change
      executing activities in an instance running with runUnitTest without
      test specified failed with:
      
          Module importlib, line 37, in import_module
            __import__(name)
          Module Products.ERP5Type.dynamic.component_package, line 412, in load_module
            return self.__load_module(fullname)
          Module Products.ERP5Type.dynamic.component_package, line 379, in __load_module
            erp5.component.ref_manager.add_module(module)
          Module Products.ERP5Type.dynamic.dynamic_module, line 75, in add_module
            self.add_request(get_request())
          Module Products.ERP5Type.dynamic.dynamic_module, line 53, in add_request
            self.setdefault(last_sync, (WeakSet(), set()))[0].add(request_obj)
          Module _weakrefset, line 86, in add
            self.data.add(ref(item, self._remove))
        TypeError: cannot create weak reference to 'NoneType' object
      
      ( maybe we remove processing_node and use only timerserver, these two
      methods are more or less equivalent for simple cases and timerserver is
      closer to what a "real" zope does )
      18deb716
    • Xiaowu Zhang's avatar
      a6f74a19
    • Jérome Perrin's avatar
      tests: execute `addCleanup` cleanups with ZODB connection · 25eb8920
      Jérome Perrin authored
      unittest executes the cleanups after `tearDown`, after the ZODB
      connection is closed, so accessing database objects cause errors.
      
      According to python unittest documentation, it is safe to call
      `doCleanups` ourselves when we need the cleanup to be executed earlier,
      this is a typical case where we want the cleanup to be called before
      closing the database connections.
      25eb8920