- Allow menu/radio option values to be any String.
- Support pyarrow 4.0.0.
cjwmodule.arrow.dictionary.recode_or_decode_dictionary()
- help modules trim columns' dictionaries so Workbench will accept them.
- Fix: allow
column_type: date
in module specs
cjwmodule.arrow.format
: addformat_date_array()
cjwmodule.arrow.condition
: allow "timestamp" comparators for date32
- Fix nested condition field schema
- Add
cjwmodule.types.UploadedFile
- Add
cjwmodule.arrow.types.TabOutput
- spec.loader: fix bug that prevented param_schema from including Timezone
- spec.paramschema
multichartseries
: fix validation
- (rarely-used paramschemaparser): allow column without column_types
- spec.schema
numberformat
: disallowplaceholder
- Package
schema.yaml
(and migrate to Poetry for dev+deploy)
cjwmodule.spec
: Workbench's module machinery, available for modules. Now you can write unit tests that agree with the module's spec.- Back to
google-re2
. v0.1+ includes wheels.
make_column("A", ["x"], dictionary=True)
shortcut for dictionary encoding
- Revamp
cjwmodule.arrow.testing
.
This would normally be a major version upgrade, but we assume nobody used the old version.
- Require
built-google-re2
. No more pinning to Debian Buster.
This is a major version upgrade because it changes dependencies. Users
should not install cjwmodule
alongside google-re2
: they should install
it alongside built-google-re2
instead.
- Introduce
cjwmodule.types
- Introduce
cjwmodule.arrow.testing
- Fix pyarrow dependency syntax, to fix pip warnings
- Accept
pyarrow
3.0 (and 2.0 is still okay, too)
- Bump
httpx
dependency to 0.17.
cjwmodule.arrow.condition
: Accumulate regex errors intoConditionError
..msg
and.pattern
remain available for backwards compatibility.
- Bump pyarrow dependency to ~=2.0
- Require
google-re2==0.0.5
-- an old version that matches the version oflibre2-5
in Debian Buster. cjwmodule.arrow.condition
: calculates masks using a condition DSL.
This is a major version change because dependencies have changed.
- Bump httpx dependency
- Bump dependency to pyarrow~=1.0.1
This is a major version change.
cjwmodule.util.colnames
: fix KeyError on colnames like " 1".
cjwmodule.util.colnames.Settings
: use python3.8typing.Protocol
(only changes type-checking, not code)cjwmodule.testing.i18n
: add type hints
cjwmodule.http
: nix errantprint()
cjwmodule.http
: revert API change from v1.5.3. Headers should be str, not bytes, because a change to bytes would mean changing the API.
DO NOT USE: not API-compatible with the other v1 releases
cjwmodule.http
: treat headers as ISO-8859-1, always. (We're a spec-compliant library; callers are welcome to second-guess server responses.) Fixes a crash when dealing with UTF-8 Content-Disposition.
cjwmodule.http.httpfile
: omit filename from gzip header. Now output will be deterministic, so if the upstream doesn't change the gzip doesn't change.- Bump black, httpx, pytest
cjwmodule.arrow.format
: handle null validity buffers. (We saw timestamp problems in the wild.)
cjwmodule.arrow.format
: convert Arrow arrays to text.
- Fix extracting some i18n messages.
- Introduce
cjwmodule.testing.i18n
module.
- Test with Python 3.8.
- Extract i18n messages with
./setup.py extract_messages
util.colnames.gen_unique_clean_colnames_and_warn()
: new utility runsgen_unique_clean_colnames()
and converts warnings to i18n messages.
- Fix packaging.
- Generate some i18n-ready messages. [BROKEN]
- Add some dummy i18n catalogs.
- Test and bugfix
cjwmodule.http.httpfile.read()
and.write()
.
cjwmodule.http
module, featuringclient.download()
(async with i18n-ready exceptions) andhttpfile.download()
/httpfile.read()
to write and read "raw" HTTP responses in a Workbench-standard format.
gen_unique_clean_colnames()
: consider byte length, not char length, when truncating after adding a number to a column name.
- Fix packaging. (v1.1.1 was a dud.)
- Add
cjwmodule.util.colnames
module withclean_colname()
andgen_unique_clean_colnames()
.
- Initial release. We only have
cjwmodule.i18n.trans()
for now....