1. 26 Apr, 2019 1 commit
  2. 24 Apr, 2019 1 commit
  3. 08 Mar, 2019 3 commits
  4. 20 Dec, 2018 2 commits
  5. 14 Dec, 2018 2 commits
    • Denis Laxalde's avatar
      [hooks] Delete binary DO when deleting an archive unit not related to a profile · 30e67f4f9e29
      Denis Laxalde authored
      We extend the logic of "seda.doref.del" hook so that it not only handles
      the case of "simplified profile" but also the case of archive unit not
      related to a profile. In the later case, we check that the container of
      "SEDABinaryDataObject" is really a "SEDAArchiveUnit" (not sure what else
      it could be) and trigger the operation deleting the binary data-object
      when its parent object reference (SEDADataObjectReference entity) is
      deleted.
      
      Accordingly, we rename hook and operation classes and update their
      docstring.
      
      This resolves CONSEJIRA-643 but making deletion of an archive unit
      containing a binary data object but not related to profile. New test
      goes into test_schema.py below other tests related to the hook we
      modified.
      30e67f4f9e29
    • Denis Laxalde's avatar
      Refactor conditional logic in SimplifiedProfileDelRefROHook a bit · 049322b9d8ee
      Denis Laxalde authored
      This is a preparatory refactoring to ease introduction of a functional
      change in the next changeset.
      049322b9d8ee
  6. 29 Nov, 2018 3 commits
    • Denis Laxalde's avatar
      Added tag 0.15.1 for changeset c44cc9226387 · 181f83e6b545
      Denis Laxalde authored
      181f83e6b545
    • Denis Laxalde's avatar
      [pkg] Version 0.15.1 · c44cc9226387
      Denis Laxalde authored
      c44cc9226387
    • Denis Laxalde's avatar
      Make "seda.tree" component selectable for all items of the SEDA tree · 820fbe858027
      Denis Laxalde authored
      This follows-up on changeset 0b663b4c509f which made
      ProfileTreeComponent class abstract and introduced a regression in that
      the component was then only selectable for SEDAArchiveTransfer entities,
      hence making the tree component disappear when navigating to leafs of
      the tree.
      
      A concrete class of this component must exist for all possible entity
      types under a SEDAArchiveTransfer entity. We thus extend the selector of
      TransferTreeComponent (renamed as ProfileTreeComponent) to list all
      entity types. Accordingly, we make it clearer that the base class is
      abstract by renameing it.
      820fbe858027
  7. 29 Oct, 2018 4 commits
  8. 19 Oct, 2018 1 commit
    • Denis Laxalde's avatar
      Delete "container" relation on archive unit when unlinked from a profile · 359177d6a1c8
      Denis Laxalde authored
      - Container machinery got introduced in 143ae7a4a964, at that time the
        "container" relation was mandatory (on subject) for all entity types.
      - Integrity of this relation relied on the assumption that the relation
        was mandatory. (I.e. all entities mush have a link to their container
        and the only way to remove this link is to remove the container entity
        itself).
      - In a88deb387b2b, this assumption got broken as "container" relation
        was made optional for SEDAArchiveUnit as a subject. From there, when
        an archive unit got unlinked from a profile (through deletion of the
        "seda_archive_unit" relation), a "container" relation remained set.
      - This is problem since permission (especially on "delete" action)
        relies on the presence or absence of this relation. For instance,
        one would get an error when trying to delete an archive unit they just
        unlinked from a profile because they have no rights to delete the
        profile.
      
      So we fix this by dropping the "container" relation when a
      "seda_archive_unit" relation is deleted through a new hook.
      
      Additional test goes in test_entities.py as other container-related
      tests live there.
      
      In migration, we drop spurious "container" relation (not sure there are
      some).
      359177d6a1c8
  9. 09 Oct, 2018 2 commits
  10. 01 Oct, 2018 1 commit
    • Frank Bessou's avatar
      Import cubicweb_skos instead of cubes.skos · 9e6614f4159d
      Frank Bessou authored
      When both cubes.skos and cubicweb_skos are used to import the same
      module, appobjects are registered using the wrong objid.
      
      This is particularly problematic in register_and_replace function of
      registries which relies on the objid of appobjects to find which object
      to replace.
      9e6614f4159d
  11. 27 Sep, 2018 2 commits
    • Frank Bessou's avatar
      Make ProfileTreeComponent abstract · 0b663b4c509f
      Frank Bessou authored
      We make ProfileTreeComponent abstract to avoid selecting it for any
      entity that can be adapted to ITreeBase. Indeed, we don't want Concepts
      to be rendered as contextual components in cube saem.
      
      We then create a TransferTreeComponent extending ProfileTreeComponent
      the same way we made the UnitTreeComponent.
      0b663b4c509f
    • Frank Bessou's avatar
      Make the component_unit predicate work with non seda entities · 4f0b259e419e
      Frank Bessou authored
      In the component_unit predicate, we handle the case where
      _seda_container_from_context returns None by returning 0.
      This can be the case when the predicate is called with a non seda
      entity.
      4f0b259e419e
  12. 26 Jun, 2018 2 commits
  13. 19 Jun, 2018 1 commit
    • Denis Laxalde's avatar
      Make generation of xml:id attribute configurable through an adapter · d945aaa3f821
      Denis Laxalde authored
      The idea is to have the generation of xml:id attribute configurable
      based on entity context. So we create an entity adapter IXmlId that
      default to the current implementation. This will be extended in
      cubicweb-saem_ref where we'd want to use the ARK identifier to produce
      this xml:id attribute.
      
      In profile_generation module, we rename eid2xmlid function as xmlid and
      make it accept an entity.
      d945aaa3f821
  14. 20 Feb, 2018 4 commits
    • Denis Laxalde's avatar
      Added tag 0.13.2 for changeset f30a729c4a9d · 97b06a36d104
      Denis Laxalde authored
      97b06a36d104
    • Denis Laxalde's avatar
      [pkg] Version 0.13.2 · f30a729c4a9d
      Denis Laxalde authored
      f30a729c4a9d
    • Denis Laxalde's avatar
      Rely on cubicweb-skos's extid2eid mapping during LCSV data import · 960c8c66cfc2
      Denis Laxalde authored
      We drop monkeypatches and hacks introduced in 49d118aa8254 in 2016 which
      were supposed to be transient waiting for a cubicweb-skos release which
      came a long time ago now.
      
      Now we build the extid2eid dict before importing LCSV concept schemes
      and pass it to store_skos_extentities() so that it will be re-used for
      all files instead of re-built. Both lcsv_import and lcsv_check functions
      are updated, as the latter is used in test_dataimport.py as a kind of
      "mock" but must respect the former's interface. Also note that we now
      have to update 'extid2eid' dict after creating a new concept scheme
      (with init_seda_scheme()): while this sounds perfectly reasonable, I
      don't completely understand how this works without this before...
      
      We update requirement on cubicweb-skos so that the latest release is
      used (though some previous release would probably work as well, but I'm
      not sure which and it's not so easy to test).
      960c8c66cfc2
    • Denis Laxalde's avatar
      [test] Explicitly lenght of lxml element · aa9acf6aa53a
      Denis Laxalde authored
      Avoids FutureWarning: The behavior of this method will change in future
      versions. Use specific 'len(elem)' or 'elem is not None' test instead.
      aa9acf6aa53a
  15. 19 Feb, 2018 1 commit
    • Denis Laxalde's avatar
      [views] Display only on <button> for drop-down menus · c952e0143549
      Denis Laxalde authored
      I.e. instead of having two (clickable) buttons, one with the action text
      (e.g. "add") and one with the caret and only the latter with the effect
      of toggling the menu, we now only produce one button with both the
      action text and the caret as content. This way, the user won't get
      confused when clicking on the text as the menu will toggle.
      c952e0143549
  16. 20 Feb, 2018 1 commit
  17. 13 Feb, 2018 2 commits
  18. 05 Feb, 2018 1 commit
  19. 06 Feb, 2018 1 commit
  20. 19 Dec, 2017 3 commits
  21. 14 Dec, 2017 2 commits