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

Types with documentation changes only to substructures cannot be registered #681

Open
MrCreosote opened this issue Mar 9, 2023 · 1 comment

Comments

@MrCreosote
Copy link
Member

MrCreosote commented Mar 9, 2023

This needs further testing, but it appears as though if I have a type like so:

/* documentation */
typedef struct {
    ...
} A;

/* documentation */
typedef struct {
    A thing;
} B;
  • ... and only B is registered via the new_types register_typespec argument
  • then if I make a documentation change to A and attempt to register the typespec, the type database will conclude the specs are identical and make no changes.
  • If I make a documentation change to B as well then the type can be registered, so the workaround is to register the spec twice, once with the target changes and a temporary change to B's documentation, and once to remove the temporary change.
@MrCreosote
Copy link
Member Author

MrCreosote commented Mar 9, 2023

The symptom is this

In [11]: ws.register_typespec({'spec': spec, 'dryrun': 1}).keys()               
Out[11]: dict_keys([])

However, when the specs truly are identical, you get

ServerError: JSONRPCError: -32500. There is no difference between previous and current versions of module KBaseGenomeAnnotations

As opposed to the expected

In [19]: ws.register_typespec({'spec': spec, 'dryrun': 0}).keys()               
Out[19]: dict_keys(['KBaseGenomeAnnotations.Assembly-6.3'])

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

No branches or pull requests

1 participant