Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
erp5_fork
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Eteri
erp5_fork
Commits
60459cc6
Commit
60459cc6
authored
Mar 16, 2022
by
Jérome Perrin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Workflow: explain why we copy previous status dict in _executeTransition
parent
8a335cca
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
11 additions
and
0 deletions
+11
-0
product/ERP5Type/Core/Workflow.py
product/ERP5Type/Core/Workflow.py
+11
-0
No files found.
product/ERP5Type/Core/Workflow.py
View file @
60459cc6
...
...
@@ -785,6 +785,17 @@ class Workflow(XMLObject):
tool
=
self
.
getParentValue
()
state_var
=
self
.
getStateVariable
()
# `status_dict` will hold the new status.
# Unlike DCWorkflow implementation, we don't start with an empty dict, but start
# by making a copy of the current status dict, this way the string used as keys
# will be the same string instances and this will reduce the pickle size:
# Copying existing dict saves space: when __setitem__(key, value) points at an
# existing key, python will just keep the existing string as key, which then
# means if both history entries are pickled together, the keys will be stored
# just once instead of once per dict.
# This is especially important with ERP5's WorkflowVariable implemented with
# IdAsReferenceMixin, because every call to getReference return a different string.
status_dict
=
self
.
getCurrentStatusDict
(
ob
)
if
tdef
is
None
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment