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

725: always produce entity forms with the offline entities spec version #732

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

lindsay-stevens
Copy link
Contributor

Closes #725

Why is this the best possible solution? Were any other approaches considered?

  • Removed the older create/update spec versions which are now unused.
  • Although it looks a bit useless now, the "entity_features" code in xls2json.py and survey.py was retained since it seems likely that this will be needed in the near future as the entities spec evolves.
  • Incorporated the previous opt-in test expectations for create/update entities into the respective "basic building blocks" tests.

What are the regression risks?

  • Pyxform will only emit entities version 2024.1.0 so if these are provided to an older version of Central (or another spec-compliant server) then they will be rejected.
  • The offline column is now undefined for the entities sheet, so like other undefined columns it will now raise an error. Any forms that added the offline opt-in column will now need to remove it during their next form version update.

Does this change require updates to documentation? If so, please file an issue here and include the link below.

Filed an issue to add the proposed offline version description to the spec: getodk/xforms-spec#319

Before submitting this PR, please make sure you have:

  • included test cases for core behavior and edge cases in tests
  • run python -m unittest and verified all tests pass
  • run ruff format pyxform tests and ruff check pyxform tests to lint code
  • verified that any code or assets from external sources are properly credited in comments

- removed the older create/update spec versions which are now unused.
- although it looks a bit useless now, the "entity_features" code in
  xls2json.py and survey.py was retained since it seems likely that
  this will be needed in the near future as the entities spec evolves.
@lognaturel
Copy link
Contributor

I've given this a quick look and didn't see any issues. I'm going to let it marinate and give it some more thought.

Let's hold off on merging a bit because when we do it will go on the staging server and could cause some confusion. Entity forms converted after this is merged will not work with Collect v2024.2 and prior.

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.

Always produce Entity forms with the offline entities spec version
2 participants