Skip to content

Commit 68f736b

Browse files
MONGOID-5191 Proper order for after_create callback (#5087)
1 parent 2077662 commit 68f736b

File tree

2 files changed

+72
-0
lines changed

2 files changed

+72
-0
lines changed

source/release-notes.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ Release Notes
99
.. toctree::
1010
:titlesonly:
1111

12+
release-notes/mongoid-7.5
1213
release-notes/mongoid-7.4
1314
release-notes/mongoid-7.3
1415
release-notes/mongoid-7.2

source/release-notes/mongoid-7.5.txt

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
***********
2+
Mongoid 7.5
3+
***********
4+
5+
.. default-domain:: mongodb
6+
7+
.. contents:: On this page
8+
:local:
9+
:backlinks: none
10+
:depth: 2
11+
:class: singlecol
12+
13+
This page describes significant changes and improvements in Mongoid 7.5.
14+
The complete list of releases is available `on GitHub
15+
<https://github.com/mongodb/mongoid/releases>`_ and `in JIRA
16+
<https://jira.mongodb.org/projects/MONGOID?selectedItem=com.atlassian.jira.jira-projects-plugin:release-page>`_;
17+
please consult GitHub releases for detailed release notes and JIRA for
18+
the complete list of issues fixed in each release, including bug fixes.
19+
20+
21+
Order of Callbacks Invocation
22+
-----------------------------
23+
24+
**Breaking change:** Mongoid 7.5 changes order of _create and _save callbacks
25+
invocation for documents with associations.
26+
27+
Referenced associations (``has_one`` and ``has_many``):
28+
29+
+---------------------------------------+---------------------------------------+
30+
| Mongoid 7.5 | Mongoid 7.4 |
31+
+=======================================+=======================================+
32+
| Parent :before_save | Parent :before_save |
33+
+---------------------------------------+---------------------------------------+
34+
| Parent :around_save_open | Parent :around_save_open |
35+
+---------------------------------------+---------------------------------------+
36+
| Parent :before_create | Parent :before_create |
37+
+---------------------------------------+---------------------------------------+
38+
| Parent :around_create_open | Parent :around_create_open |
39+
+---------------------------------------+---------------------------------------+
40+
| **Parent persisted in MongoDB** | **Parent persisted in MongoDB** |
41+
+---------------------------------------+---------------------------------------+
42+
| Child :before_save | Parent :around_create_close |
43+
+---------------------------------------+---------------------------------------+
44+
| Child :around_save_open | Parent :after_create |
45+
+---------------------------------------+---------------------------------------+
46+
| Child :before_create | Child :before_save |
47+
+---------------------------------------+---------------------------------------+
48+
| Child :around_create_open | Child :around_save_open |
49+
+---------------------------------------+---------------------------------------+
50+
| | Child :before_create |
51+
+---------------------------------------+---------------------------------------+
52+
| | Child :around_create_open |
53+
+---------------------------------------+---------------------------------------+
54+
| **Child persisted in MongoDB** | **Child persisted in MongoDB** |
55+
+---------------------------------------+---------------------------------------+
56+
| Child :around_create_close | Child :around_create_close |
57+
+---------------------------------------+---------------------------------------+
58+
| Child :after_create | Child :after_create |
59+
+---------------------------------------+---------------------------------------+
60+
| Child :around_save_close | Child :around_save_close |
61+
+---------------------------------------+---------------------------------------+
62+
| Child :after_save | Child :after_save |
63+
+---------------------------------------+---------------------------------------+
64+
| Parent :around_create_close | Parent :around_save_close |
65+
+---------------------------------------+---------------------------------------+
66+
| Parent :after_create | Parent :after_save |
67+
+---------------------------------------+---------------------------------------+
68+
| Parent :around_save_close | |
69+
+---------------------------------------+---------------------------------------+
70+
| Parent :after_save | |
71+
+---------------------------------------+---------------------------------------+

0 commit comments

Comments
 (0)