Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DSL Update #2550

Merged
merged 12 commits into from
Dec 1, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
65 changes: 12 additions & 53 deletions RELEASE.md
Original file line number Diff line number Diff line change
@@ -1,65 +1,24 @@
# _Event Model - Qualification Functions - Enhancements for the Contract Formation qualification function_

_Background_

The current Contract Formation qualification function does not allow the inclusion of the inception premium. The latter can be transferred as part of the trade execution. This change allows a transfer instruction to be part of the representation of the business event.


_What is being released?_

The logical expression for the `Qualify_ContractFormation` function is enhanced to allow for the presence of a transfer instruction.


_Review directions_

In the CDM Portal, select the Textual Browser and inspect the function mentioned above.

Changes can be reviewed in PR: https://github.com/finos/common-domain-model/pull/2544

# _Event Model - CounterpartyPositionBusinessEvent - Cardinality of the After state_

_Background_

Following the release of counterparty position in the Common Domain Model, a modelling update is required. The cardinality of the attribute `after` of type `CounterpartyPositionBusinessEvent` has been relaxed to unbounded list `(0..*)`. This change will support the cases when multiple `after` position states are generated as a result of a _partial option exercise_ event being applied to the position.


_What is being released?_

- The cardinality of the `after` position state within `CounterpartyPositionBusinessEvent`is relaxed to unbounded list.

_Data types_

- `after` attribute of type `CounterpartyPositionState` updated to multiple cardinality.

_Review directions_

In the CDM Portal, select the Textual Browser and inspect each of the changes listed above.

Changes can be reviewed in PR: https://github.com/finos/common-domain-model/pull/2539

# *Event / Product Model - FpML 5.13 Schema*

_What is being released?_

This release updates the FpML schema used for FpML to CDM ingestion. The version has been updated from `5.13 Second Working Draft` to `5.13 Third Working Draft`. For further details, visit https://www.fpml.org/spec/fpml-5-13-3-wd-3/.

_Review Directions_

This change has no impact on the model or test expectations. The changes can be reviewed in PR [2542](https://github.com/finos/common-domain-model/pull/2542).

# *Infrastructure - Dependency Update*

_What is being released?_

This release updates the `rosetta-dsl` dependency.

Version updates include:
- `rosetta-dsl` 9.1.0: this release fixes several code generation issues such as [when assigning a Rosetta int to a Rosetta number](https://github.com/REGnosys/rosetta-dsl/issues/579). For further details see DSL release notes: https://github.com/REGnosys/rosetta-dsl/releases/tag/9.1.0.
- `rosetta-dsl` 9.1.2: this release fixes DSL issues [#670](https://github.com/REGnosys/rosetta-dsl/issues/670) and [#653](https://github.com/REGnosys/rosetta-dsl/issues/653). For further details see DSL release notes: https://github.com/REGnosys/rosetta-dsl/releases/tag/9.1.2.
- `rosetta-dsl` 9.1.3: this release fixes an issue related to the generated Java `process` method. For further details see DSL release notes: https://github.com/REGnosys/rosetta-dsl/releases/tag/9.1.3.

The issue brought to light a bug in the model having to do with the `CashPriceQuantityNoOfUnitsTriangulation` function, which has been resolved.
To ease the process of reviewing expectation changes,
the formatting of the following expectation files has also been improved:
- `cdm-sample-files/functions/repo-and-bond/repo-adjustment-input.json`
- `cdm-sample-files/functions/repo-and-bond/repo-reprice-input.json`
- `cdm-sample-files/functions/repo-and-bond/repo-substitution-input.json`

_Review directions_

Test expectations remain the same.
Inspect formatting changes in the files listed above.

There are no functional changes to the model. In the expectation files, global keys and references have been updated due
to a bug fix, but they remain semantically the same.

The changes can be reviewed in PR [#2533](https://github.com/finos/common-domain-model/pull/2533).
The changes can be reviewed in PR [#2550](https://github.com/finos/common-domain-model/pull/2550).
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,15 @@
import com.regnosys.cdm.example.AbstractExampleTest;
import com.regnosys.cdm.example.util.ResourcesUtils;
import com.regnosys.rosetta.common.serialisation.RosettaObjectMapper;
import com.regnosys.testing.WhitespaceAgnosticAssert;
import com.rosetta.model.metafields.FieldWithMetaString;
import com.rosetta.model.metafields.MetaFields;
import org.junit.jupiter.api.Test;

import java.io.IOException;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.List;

import static org.junit.jupiter.api.Assertions.assertEquals;

public class CreateEligibleCollateralSpecificationFromInstructionTest extends AbstractExampleTest {

@Inject
Expand Down Expand Up @@ -51,7 +50,7 @@ void shouldMergeCommonAndVariableEligibleCollateralCriteria() throws IOException
// Assert
String expectedJson = ResourcesUtils.getJson("merge-eligible-collateral-expected.json");
String mergedJson = RosettaObjectMapper.getNewRosettaObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(merged);
WhitespaceAgnosticAssert.assertEquals(expectedJson, mergedJson);
assertEquals(expectedJson, mergedJson);
}

private static EligibleCollateralCriteria getCommonCriteria() {
Expand Down
Loading