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

Clarify the semantics of codelists update #298

Open
Jongmassey opened this issue Jan 28, 2025 · 0 comments
Open

Clarify the semantics of codelists update #298

Jongmassey opened this issue Jan 28, 2025 · 0 comments

Comments

@Jongmassey
Copy link
Contributor

What opensafely codelists update does do:

  • downloads the csv version of any codelists 1 that are listed in codelists.txt that aren't present in codelists.json and adds an entry for them to codelists.json
  • checks the SHA of any previously-downloaded codelists in codelists.json against what the OpenCodelists API says the SHA is, and downloads csv and updates codelists.json for those that are different 2
  • deletes any files in the codelists/ directory that aren't listed in codelists.json 3

What opensafely codelists update doesn't do:

  • update your codelists to the latest version

Many of our users are accustomed to this behaviour, but I feel like we should find out what would be most useful or intuitive to users; including assessing any side-effects of updating codelists.

Footnotes

  1. a CodelistVersion in terms of OpenCodelists' models, since the bits of the URL specified in codelists.txt includes a version identifier. What a "codelist" means is different contexts isn't always clear

  2. Once a codelist version is "published" or "in review" on OpenCodelists it cannot be definitionally changed, and is pinned to a release of the coding system; EXCEPT for the case of updated VMP IDs in dm+d (see codelist rot) where the downloadable csv version of the codelist contains the latest updated VMP codes which thus changes the SHA

  3. commonly-encountered footgun encountered by users using non-opencodelists codelists. The use of the local_codelists directory is documented but still feels surprising to many.

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