Skip to main content

odata-pretty-printer

Pretty printer for OData filter expressions.

This is an example of using oppen-pretty-print to create a pretty-printer for OData filter expressions.

This is not a robust program, just a bench tool that's used occasionally to pretty-print complex OData filters that would otherwise be unreadable. The input filter is expected to be grammatically correct, just untidy. Pretty error reporting is non-existent!

Usage

pip install odata-pretty-printer

odata-printer  "ShowOnSite eq true and PublicationDate le 2020-04-29T08:49:33Z \
                and PublicationDate ge 2019-04-29T08:49:33Z and ChannelId eq 23 \
                and (ExpiryDate eq null or ExpiryDate ge 2020-04-29T08:49:33Z) and \
                IsAdvisor eq true and (FundCodeList/any(fundcode: fundcode eq 'ITSMT') \
                or SectorCodeList/any(sectorcode: sectorcode eq 'T:IG') \
                or GroupCodeList/any(groupcode: groupcode eq 'BAIL'))"

odata-printer -f tmp/filter_example.txt  

Output:

ShowOnSite eq true
  and PublicationDate le 2020-04-29T08:49:33Z
  and PublicationDate ge 2019-04-29T08:49:33Z
  and ChannelId eq 23
  and (ExpiryDate eq null or ExpiryDate ge 2020-04-29T08:49:33Z)
  and IsAdvisor eq true
  and (FundCodeList/any(fundcode: fundcode eq 'ITSMT')
        or SectorCodeList/any(sectorcode: sectorcode eq 'T:IG')
        or GroupCodeList/any(groupcode: groupcode eq 'BAIL'))

Documentation

Head over to the README for more details.

Contributing

The source code for odata-pretty-printer is available on GitHub. If you find a bug or something is unclear, we encourage you to raise an issue. We also welcome contributions, to contribute, fork the repository and open a pull request.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

odata-pretty-printer-0.1.1.tar.gz (6.9 kB view details)

Uploaded Source

File details

Details for the file odata-pretty-printer-0.1.1.tar.gz.

File metadata

  • Download URL: odata-pretty-printer-0.1.1.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.3.1.post20200515 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for odata-pretty-printer-0.1.1.tar.gz
Algorithm Hash digest
SHA256 e4e8a0b8547190003e35e875a4397c64a719961d53a4d3a4be8d64a4854ff726
MD5 76f07a01067e7ec7da0db97def073dee
BLAKE2b-256 d780ec55bf48c842e0a6e02088e94250eb4071701ae2a803b72e4f23154f9464

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.1 This release

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page