1. 24 Apr, 2018 1 commit
    • Laurent Wouters's avatar
      [server] Fixed issue with the adapters cache of a cloned EditedEntity · 38058ce2a9ec
      Laurent Wouters authored
      The adapters' cache of the entity within an EditedEntity used to be copied along
      the entity itself during a cloning operation of the EditedEntity. This raises
      an issue when the adapters' cache is not empty and contains cached values
      linking to transaction-specific data (or the transaction itself). This prevents
      the clone EditedEntity being used in a transaction outside the one that created
      This change resets the adapters' cache of the new copy so that no cached value
      remain. The new copy can then be used in a new transaction afterwards.
  2. 23 Apr, 2018 4 commits
  3. 12 Jan, 2018 1 commit
    • Denis Laxalde's avatar
      [schema] Define a decorator to handle methods override · 46a8146f9703
      Denis Laxalde authored
      There is a number of external classes (from yams/rql) methods overridden
      "by hand" in cubicweb/schema.py. Define a single decorator to factor out
      the pattern. It handles specifying the method name (to avoid conflict
      with the local namespace) and passing the original method to the new
      definition when needed.
  4. 24 Jan, 2018 9 commits
  5. 12 Jan, 2018 3 commits
  6. 12 Dec, 2017 1 commit
    • Denis Laxalde's avatar
      [pyramid] Let logging be configured through .ini file · cd760c411242
      Denis Laxalde authored
      We do not initialize logging in CubicWebPyramidConfiguration thus
      preventing logging to be started with cubicweb's configuration. On the
      other hand, any logging configuration defined in ``development.ini``
      file will be loaded by whatever start the instance using this file (i.e.
      pserve, gunicorn, etc.). The benefit is that logging can now be
      configured per "qualified name" in this file (i.e. one can easily set
      the DEBUG level for the application cube while keeping all dependencies'
      level to WARNING). In the development.ini template, we add logger
      configurations for "logilab" and "cubicweb" qualified names (along with
      those of the application cube).
  7. 01 Dec, 2017 2 commits
    • Denis Laxalde's avatar
      Disable pytest's logs reporting · 6a71cb23f827
      Denis Laxalde authored
      CubicWeb already prints captured logs in stderr upon test failure, so we
      get them twice. Until we fix our logging management, disabling pytest
      capture and restore brings the output level back to sanity.
    • Denis Laxalde's avatar
      [pyramid] Do not issue security warnings in test mode · a46fb3f58ea2
      Denis Laxalde authored
      When some session or authtk secret is missing in Pyramid settings,
      scary "!! SECURITY WARNING !!" are issued. This is arguably pointless in
      tests. So disable them in this case.
  8. 30 Nov, 2017 3 commits
    • Denis Laxalde's avatar
      [ssplanner] Prevent execution of write queries involving computed relations · 68ca7fe0ca29
      Denis Laxalde authored
      Previously, setting a computed relation upon entity creation or
      modification (using the ORM or an RQL query) would usually fail with an
      operational error in the backend ("no such table"). However, under some
      mysterious circumstances (like passing a string as value in cw_set for a
      computed relation), the RQL to SQL transformation would simply drop the
      To prevent this to happen, we add a check for computed relation before
      adding a relation to an execution plan. This check raises a QueryError.
      It happens in several places:
      * in querier.InsertPlan.add_relation_def() (called from several places
        in ssplanner steps) for INSERT queries,
      * in ssplanner.UpdateStep.execute() for SET queries and,
      * in ssplanner.SSplanner.build_delete_plan() for DELETE queries.
      Tests added to unittest_querier.py because unittest_sslplanner.py looked
      inappropriate (it has only unit tests) and the former already had a
      NonRegressionTC class.
    • Denis Laxalde's avatar
      [querier] Expand 'rdef' argument in InsertPlan.add_relation_def() · 06deb43c23c3
      Denis Laxalde authored
      Expand the 'rdef' tuple to improve readability. The 'rtype' value is not
      used at the moment, but will in the next changeset.
    • Denis Laxalde's avatar
  9. 03 Nov, 2017 4 commits
  10. 30 Oct, 2017 1 commit
  11. 24 Oct, 2017 1 commit
  12. 17 Oct, 2017 2 commits
  13. 16 Oct, 2017 1 commit
  14. 13 Dec, 2017 1 commit
  15. 19 Apr, 2018 4 commits
  16. 22 Mar, 2018 2 commits