Releases: XLSForm/pyxform
v3.1.0
- Add client_editable setting by @lindsay-stevens in #766
Full Changelog: v3.0.1...v3.1.0
v4.0.0
Small internal breaking changes that may affect those using pyxform
's data representation (see #746 -- If someone is using workbook_to_json
directly, or passing in dict
to xls2xform.convert
, then they'll now need to conform to the DefinitionData
structure. This could be as simple as DefinitionDict(**workbook_dict)
or might require specifying the sheet headers.)
What's Changed
- Case insensitivity of sheet, column, and setting names; plus more performance improvements by @lindsay-stevens in #746
- Ensure labels are visible for randomized selects with translations by @lindsay-stevens in #764
- Add client_editable setting by @lindsay-stevens in #766
- Support for / test with python 3.13 by @lindsay-stevens in #768
Full Changelog: v3.0.1...v4.0.0
v3.0.1
What's Changed
- More performance improvements by @lindsay-stevens in #743
- 748: handle obj.get(k, default) call pattern for backward compatibility by @lindsay-stevens in #755
Full Changelog: v3.0.0...v3.0.1
v3.0.0
pyxform
as a library. If these are disruptive to you, please file an issue describing your usage.
What's Changed
- Include all choice lists in output by @lindsay-stevens in #736
- Improve complex forms performance by @lindsay-stevens in #740, #742
- Always produce entity forms with the offline entities spec version by @lindsay-stevens in #732
Full Changelog: v2.2.0...v3.0.0
v2.2.0
What's Changed
- Add
background-geopoint
question type which exposesxforms-value-changed
event withodk:setgeopoint
action by @RuthShryock in #726 - 724: raise an error if a
${}
pyxform reference is malformed by @lindsay-stevens in #734
New Contributors
- @RuthShryock made their first contribution in #726
Full Changelog: v2.1.1...v2.2.0
v2.1.1
What's Changed
- Update Validate to fix support for geojson by @lognaturel in #727
Full Changelog: v2.1.0...v2.1.1
v2.1.0
Please note:
- Now requires Python 3.10, 3.11 or 3.12
- Methods moved from
utils
toxls2json_backends
What's Changed
- 661: Require Python 3.10, 3.11 or 3.12 by @lindsay-stevens in #706
- 707: Detect instance expressions with double quotes by @lindsay-stevens in #709
- 698: library API for non-path input, accept markdown and dict input by @lindsay-stevens in #712
- 641: Allow whitespace on either side of main header delimiter by @lindsay-stevens in #718
- 713: support offline entities spec v2024.1.0 via opt-in setting by @lindsay-stevens in #719
- Fix installed script name so
xls2xform
can be used by @lindsay-stevens in #722 - Upgrade Validate for
extract-signed
,geofence
functions and newdistance
variants by @lognaturel in #723
Full Changelog: v2.0.3...v2.1.0
v2.0.3
What's Changed
- 150: don't use regex to clean up XML following pretty-printing by @lindsay-stevens in #681
- dev: update dependencies, testing, packaging, and linting/formatting by @lindsay-stevens in #685
- 694: search and pulldata secondary instance conflict by @lindsay-stevens in #697
- Include project status and related work in readme by @lognaturel in #700
Full Changelog: v2.0.2...v2.0.3
v2.0.2
What's Changed
- Generate translations for choice list used with search() by @lindsay-stevens in #690
Full Changelog: v2.0.1...v2.0.2
v2.0.1
What's Changed
- 678: Add itextId node to instance items for choice list names with dashes in multilingual forms by @lindsay-stevens in #680
- 585: add test for allowed duplicate choices with translations by @lindsay-stevens in #682
- 597: Refactor PyxformTestCase to use explicit keyword arguments by @lindsay-stevens in #677
- 683: Set select or_other label to "Other" instead of "-" in multilanguage forms by @lindsay-stevens in #687
Full Changelog: v2.0.0...v2.0.1