Change to Dictionary>>#copy behavior
Reason for the change
The definition of the copy operation is: “Return a new object that must be as similar as possible to the receiver in its initial state and behavior. Any operation that changes the state of the new object should not, as a side-effect, change the state or behavior of the receiver. Similarly, any change to the receiver should not, as a side-effect, change the new object.”
The implementation of Dictionary>>#copy did not conform to this definition.
Change
The implementation of Dictionary>>#copy has been changed to conform to the definition.
Action required
You should examine the usage of Dictionary>>#copy in your applications to ensure that you have no dependency on the copy of a Dictionary being updated when the original Dictionary is updated. If you do, you will need to update your applications to use #shallowCopy in place of #copy in these cases.
Last modified date: 07/02/2019