Skip to content

Conversation

@aparajit-pratap
Copy link
Contributor

@aparajit-pratap aparajit-pratap commented Apr 6, 2018

Purpose

This fixes QNTM-3947. Nested dictionaries will not have any information about preferred dictionary ordering. Therefore when the same ordering from the outer dictionary is passed into the nested dictionary preview, the ordering of the outer dictionary does not apply to the nested one resulting in an key not found exception. In this case, we therefore pass null to the nested dictionary all the time. And we add a null check for preferredDictinoaryordering argument so that we check it only if a non-null argument for it is passed.

Related Github issue: #8665
image
image

Declarations

Check these if you believe they are true

  • The code base is in a better state after this PR
  • Is documented according to the standards
  • The level of testing this PR includes is appropriate
  • User facing strings, if any, are extracted into *.resx files
  • All tests pass using the self-service CI.
  • Snapshot of UI changes, if any.
  • Changes to the API follow Semantic Versioning, and are documented in the API Changes document.

Reviewers

@mjkkirschner

FYIs

@jnealb

@mjkkirschner
Copy link
Member

mjkkirschner commented Apr 6, 2018

@aparajit-pratap this seems good, is it worth it to add a test? I know the view tests are sometimes time consuming.

@QilongTang @ramramps I believe this will break binary compatibility as a public method has changed its signature. I think we should definitely re-release the 2.0 nugets if this is merged.

IMO: Nested dictionaries seem like a general enough problem that this should be merged.

@jnealb
Copy link
Collaborator

jnealb commented Apr 6, 2018

no nested dictionaries would be no good

@aparajit-pratap
Copy link
Contributor Author

@mjkkirschner I can revert the public method signatures if needed as I've only changed the order of the argument (stuck it at the end) in order to make it a default argument.

@ramramps
Copy link
Collaborator

ramramps commented Apr 6, 2018

@QilongTang
I am not sure whether 2.0 nugets actuals are released....if it is 2.0.0-beta, then we are good, because the package will be released as 2.0.0 again.

@QilongTang
Copy link
Contributor

QilongTang commented Apr 6, 2018

@ramramps This is unfortunate. Dynamo Nugets 2.0.0 are all out this morning since we need an official RC to test. Two options here in my mind:

  1. We do not include this in 2.0 ( I am not sure if we have decided to include it yet @Racel ?)
  2. We include this in 2.0 and after cherry-picking we release nuget 2.0.0.xxxx to accomadate this change which is pretty easy and just update [ RC2.0.0 Release ] Update Nugets Prep Work #8723 We have never done that but according to sementic versioning, it is valid because what is out there currently is treated as 2.0.0.0000. This mechanism still allows any last minute DynamoCore fix if appropriate.

FYI: @mjkkirschner @aparajit-pratap @smangarole @jnealb

@ramramps
Copy link
Collaborator

ramramps commented Apr 6, 2018

@QilongTang Thanks. 2.0.0.xxxx after @aparajit-pratap changed the method signature?

@mjkkirschner
Copy link
Member

@aparajit-pratap LGTM 👍 nice tests.

@mjkkirschner
Copy link
Member

@Racel should this get cherry picked to RC 2.0?
what do you guys think?

@jnealb
Copy link
Collaborator

jnealb commented Apr 6, 2018

Plan A: merge to master, and we can test over the weekend and then merge to RC. Just in case QA pushes back.

@QilongTang
Copy link
Contributor

@aparajit-pratap @mjkkirschner @jnealb I am merging in now in case we need to cherry-pick this in the last minute.

@QilongTang QilongTang merged commit 15d5fef into DynamoDS:master Apr 7, 2018
@jnealb
Copy link
Collaborator

jnealb commented Apr 7, 2018

will test it when the build is posted

mjkkirschner added a commit that referenced this pull request Apr 9, 2018
Reverting public API signature changes made in #8734
@Racel
Copy link
Contributor

Racel commented Apr 9, 2018

@QilongTang @mjkkirschner If it has not been done yet, please cherry pick. This should be in 2.0 release. Regarding the nuget packages, can't you just "delete" the one we released with out this fix?

@QilongTang
Copy link
Contributor

@Racel There is not delete function there so it is not doable

@Racel
Copy link
Contributor

Racel commented Apr 9, 2018

@QilongTang - "Hide" then?

@QilongTang
Copy link
Contributor

@Racel Even we hide it, we won't be able to upload 2.0.0 version again. It has to be a different version like 2.0.0.xxxx

@Racel
Copy link
Contributor

Racel commented Apr 9, 2018

ah, ok. i think that is ok....

aparajit-pratap added a commit to aparajit-pratap/Dynamo that referenced this pull request Apr 9, 2018
* update tests for List.Rank

* Update failing tests (DynamoDS#8663)

* update tests

* fix nested dictionary preview

* minor argument refactor

* add test
aparajit-pratap added a commit that referenced this pull request Apr 9, 2018
* cherry-pick #8661

* update tests

* Fix nested dictionary preview (#8734)

* update tests for List.Rank

* Update failing tests (#8663)

* update tests

* fix nested dictionary preview

* minor argument refactor

* add test

* revert signatures of public APIs

* change version number of test DYN file to 2.0.0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants