1. 03 Jul, 2018 1 commit
    • all: Replace after_path_and_method_id on reindexation methods by after_tag · 028c9ad7
      after_method_id is too aggressive a dependency.
      after_path_and_method_id is marginally better, but is bad practice
      nevertheless, as such activity dependencies remain very hard to introspect.
      Tags allow more variations, and are hence easier to follow.
      Also, add XXX comments when (recursive) reindexation is only added to
      represent the dependency, without certainty that a reindexation is actually
      needed per-se: maybe another place in the code chould just appropriately
      tag its reindexation activities instead, saving at least the cost of
      spawning one more activity set, and at most the cost of actually
      reindexing these documents.
      Vincent Pelletier committed
  2. 04 Sep, 2014 1 commit
  3. 29 Jan, 2013 1 commit
  4. 03 Oct, 2012 1 commit
    • Simulation: splitted expand, performance improvements and bugfixes · 5c09e2e2
      All interactions and activity tags are reviewed to fix bugs like duplicated
      root applied rules, and also reduces the amount of duplicated/useless work, e.g:
      - Simulation trees are not expanded anymore when simulated objects are modified.
      - 'expand' activities are merged (i.e. dropped) with any other 'expand' activity
        for an ancestor.
      New implementation exposes new API that hides much complexity to the developper
      about activity dependencies.
      
      By default, expand() now automatically defers any work if the current
      transaction takes too long time. This method also gains a parameter to
      explicitely choose when to expand, which is often important in unit tests or
      solvers. In particular, when postponing work, it takes care of setting proper
      activity dependencies.
      - If you have any code requiring to expand everything immediately, you'll have
        to replace 'expand()' by 'expand(expand_policy="immediate")'.
      - On the contrary, you should replace any 'activate().expand()' by
        'expand(expand_policy="deferred")'.
      expand() still accepts activity parameters for any extra needs.
      
      In causality workflow, 'building' state is clarified and now means
      « delivery may diverge but we can't know now ». A delivery remains in draft
      as long as it does not contain any movement built from simulation.
      After init/clone/builder/etc. scripts used to call 'startBuilding' &
      'updateCausalityState': this calls must be removed since only
      SimulatedDeliveryBuilder should take care of move to 'building' state and
      workflows now triggers 'updateCausalityState'.
      
      Disguised interactions have been unhardcoded and either deleted, or moved to
      appropriate interaction workflows, which have been reorganized. Those
      that triggers update of portal_workflow can be easily customized or disabled.
      
      New API:
      - updateSimulation() on deliveries and subscription items. It takes care of
        creating root applied rule, expanding and reindexing parts of simulation
        trees. It somehow replaces:
        - Delivery_updateSimulation
        - Delivery_updateAppliedRule
        - Delivery.applyToDeliveryRelatedMovement
        - Delivery.updateAppliedRule
        - Delivery.expand
        - Delivery.expandRuleRelatedToMovement
        - SubscriptionItem.expand
        - SubscriptionItem.updateAppliedRule
      - Delivery.localBuild() is the new way to do local building and replaces
        Delivery_expandAndBuild. Private method Delivery._localBuild replaces
        Delivery_buildOnComposedDocument.
      - Simulation Movements that are being built by a builder are reindexed with
        the following tag: 'built:<delivery_path>'. Any after_path_and_method_id
        dependency against 'related_simulation_movement_path_list' and reindexing
        methods should be replaced by this after_tag.
      
      After builder scripts used to confirm the delivery in a separate activity,
      which was useless.
      Julien Muchembled committed
  5. 14 Dec, 2011 1 commit
  6. 06 Dec, 2011 1 commit
  7. 26 Oct, 2011 1 commit
  8. 07 May, 2011 1 commit
  9. 05 Oct, 2010 1 commit
  10. 15 Jul, 2010 1 commit
    • sync with trunk@37114 · c1ae57b0
      Conflicts:
      	bt5/erp5_base/bt/revision
      	bt5/erp5_simulation/DocumentTemplateItem/InvoiceSimulationRule.py
      	bt5/erp5_simulation/bt/revision
      	bt5/erp5_trade/SkinTemplateItem/portal_skins/erp5_trade/Base_viewTradeFieldLibrary.xml
      	bt5/erp5_trade/bt/change_log
      	bt5/erp5_trade/bt/revision
      	products/ERP5/Document/BusinessPath.py
      	products/ERP5/Document/SimulationMovement.py
      	products/ERP5/Document/TradeCondition.py
      	products/ERP5/Document/TradeModelLine.py
      	products/ERP5/bootstrap/erp5_mysql_innodb_catalog/bt/revision
      	products/ERP5Type/ERP5Type.py
      
      git-svn-id: https://svn.erp5.org/repos/public/erp5/sandbox/amount_generator@37129 20353a03-c40f-0410-a6d1-a30d3c3de9de
      Sebastien Robin committed
  11. 31 May, 2010 1 commit
  12. 18 May, 2010 1 commit
  13. 14 May, 2010 1 commit
  14. 26 Apr, 2010 1 commit
  15. 18 Feb, 2010 2 commits
  16. 15 Feb, 2010 1 commit
  17. 12 Feb, 2010 1 commit
  18. 28 Jan, 2010 1 commit
  19. 02 Nov, 2009 1 commit
  20. 03 Sep, 2009 2 commits
  21. 19 Aug, 2009 1 commit
  22. 16 Feb, 2009 1 commit
  23. 31 Jan, 2009 1 commit
  24. 30 Jan, 2009 5 commits
  25. 12 Nov, 2008 1 commit
  26. 16 Sep, 2008 1 commit
  27. 21 Aug, 2008 1 commit
  28. 31 Jul, 2008 1 commit
  29. 20 May, 2008 1 commit
  30. 05 Sep, 2007 1 commit
  31. 22 Aug, 2007 1 commit
  32. 11 Aug, 2007 1 commit
  33. 17 Jul, 2007 1 commit
  34. 28 Mar, 2007 1 commit