Skip to main content

XIST provides an extensible HTML and XML generator. XIST is also a XML parser with a very simple and pythonesque tree API. Every XML element type corresponds to a Python class and these Python classes provide a conversion method to transform the XML tree (e.g. into HTML). XIST can be considered ‘object oriented XSLT’.

XIST also includes the following modules and packages:

  • ll.ul4c is compiler for a cross-platform templating language with similar capabilities to Django’s templating language. UL4 templates are compiled to an internal format, which makes it possible to implement template renderers in other languages and makes the template code “secure” (i.e. template code can’t open or delete files).

    There are implementations for Python, Java and Javascript.

  • ll.ul4on provides functions for encoding and decoding a lightweight machine-readable text-based format for serializing the object types supported by UL4. It is extensible to allow encoding/decoding arbitrary instances (i.e. it is basically a reimplementation of pickle, but with string input/output instead of bytes and with an eye towards cross-plattform support).

    There are implementations for Python, Java and Javascript.

  • ll.orasql provides utilities for working with oracledb:

    • It allows calling functions and procedures with keyword arguments.

    • Query results will be put into Record objects, where database fields are accessible as object attributes.

    • The Connection class provides methods for iterating through the database metadata.

    • Importing the modules adds support for URLs with the scheme oracle to ll.url.

  • ll.vsql provides a way to build Oracle SQL queries safely and dynamically using UL4 expressions. Instead of manually concatenating strings, you can express query logic with vSQL (a variant of UL4), which is then compiled into proper SQL. This approach eliminates the risky parts of query construction, effectively preventing SQL injection attacks, while offering the expressive power of an ORM without the overhead.

  • ll.make is an object oriented make replacement. Like make it allows you to specify dependencies between files and actions to be executed when files don’t exist or are out of date with respect to one of their sources. But unlike make you can do this in a object oriented way and targets are not only limited to files.

  • ll.color provides classes and functions for handling RGB color values. This includes the ability to convert between different color models (RGB, HSV, HLS) as well as to and from CSS format, and several functions for modifying and mixing colors.

  • ll.sisyphus provides classes for running Python scripts as cron jobs.

  • ll.url provides classes for parsing and constructing RFC 2396 compliant URLs.

  • ll.nightshade can be used to serve the output of PL/SQL functions/procedures with CherryPy.

  • ll.misc provides several small utility functions and classes.

  • ll.astyle can be used for colored terminal output (via ANSI escape sequences).

  • ll.daemon can be used on UNIX to fork a daemon process.

  • ll.xml_codec contains a complete codec for encoding and decoding XML.

Changes in 5.88 (released 2026-07-28)

  • vsql.Query now supports interpolated values in the vSQL snippets, i.e. now you can do:

    import datetime
    from ll import vsql
    q = vsql.Query()
    
    string1 = "foo"
    string2 = "bar"
    now = datetime.datetime.now()
    
    # Define the expression we want
    q.select_vsql(t"({string1}.upper() + {string2}.lower())[:3]")
    q.select_vsql(t"{now} + years(3)")
    
    # Output the SQL query
    print(list(q.sqlsource()))

    This outputs:

    ['select\n\tvsqlimpl_pkg.slice_str((upper(',
     Interpolation('foo', 'value', None, ''),
     ' /* p1 */) || lower(',
     Interpolation('bar', 'value', None, ''),
     ' /* p2 */)), null, 3),\n\tvsqlimpl_pkg.add_datetime_months(',
     Interpolation(datetime.datetime(2026, 7, 28, 19, 2, 51, 610021), 'value', None, ''),
     ' /* p1 */, (12 * 3))\nfrom\n\tdual\n']

    This t-string is directly supported by ll.orasql.Cursor.execute.

  • Fixed a bug in the check for duplicate aliases in ll.vsql.Query.from_sql.

  • Use the “official” function oracledb.enquote_literal for formatting Oracle SQL literals in ll.orasql.sqlliteral.

Download files

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

Source Distribution

ll_xist-5.88.tar.gz (830.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ll_xist-5.88-cp314-cp314-macosx_26_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.14macOS 26.0+ ARM64

File details

Details for the file ll_xist-5.88.tar.gz.

File metadata

  • Download URL: ll_xist-5.88.tar.gz
  • Upload date:
  • Size: 830.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for ll_xist-5.88.tar.gz
Algorithm Hash digest
SHA256 ccce2ae661772ff952cbfa8c3c433350c047d96a9695c85b41226b680f3e3135
MD5 6b9c1107645a4a08200e8ce1e6a6f5c7
BLAKE2b-256 4b50b58152b29142089e4e5b691327d6ff5136ffc0c0f03ccc04501f289e6bc9

See more details on using hashes here.

File details

Details for the file ll_xist-5.88-cp314-cp314-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for ll_xist-5.88-cp314-cp314-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 597f865f30e9f6055dac484567633b2670e39120dcbb35d0545c7187d7187710
MD5 d4eb4a845278f77de114264440000d1c
BLAKE2b-256 39759d83883a3eae09ac410c059820194f6355ee147920504b4b0f38557151b9

See more details on using hashes here.

Release history Release notifications | RSS feed

5.89

4 files

This release

5.88 This release

2 files

5.87

4 files

5.86

4 files

5.85

6 files

5.84

6 files

5.83

2 files

5.82.2

6 files

5.82.1

2 files

5.82

7 files

5.81

2 files

5.80.1

12 files

5.80

2 files

5.79

2 files

5.78

2 files

5.77

2 files

5.76

2 files

5.75.1

12 files

5.75

12 files

5.74

8 files

5.73.2

8 files

5.73.1

2 files

5.73

2 files

5.72

2 files

5.71

2 files

5.70

8 files

5.69

8 files

5.68.1

12 files

5.68

10 files

5.67.2

10 files

5.67.1

10 files

5.67

10 files

5.66.1

2 files

5.66

10 files

5.65

10 files

5.64

6 files

5.63.1

2 files

5.63

2 files

5.61.2

6 files

5.61.1

2 files

5.61

2 files

5.60

6 files

5.59

6 files

5.58

6 files

5.57

6 files

5.56

6 files

5.55

6 files

5.54.1

6 files

5.54

6 files

5.53

6 files

5.52.1

2 files

5.52

6 files

5.51

6 files

5.50

6 files

5.49

6 files

5.48

6 files

5.47

6 files

5.46

6 files

5.45

6 files

5.44

6 files

5.43

6 files

5.42.1

6 files

5.42

6 files

5.41

6 files

5.40.2

6 files

5.40.1

6 files

5.40

6 files

5.39

6 files

5.38

6 files

5.37.1

6 files

5.37

6 files

5.36

6 files

5.35

6 files

5.34

6 files

5.33

4 files

5.32

4 files

5.31

4 files

5.30

4 files

5.29

4 files

5.28.2

4 files

5.28.1

4 files

5.28

2 files

5.27

6 files

5.26.1

6 files

5.26

6 files

5.25.1

6 files

5.25

6 files

5.24

6 files

5.23

8 files

5.22.1

8 files

5.22

8 files

5.21

8 files

5.20.1

8 files

5.20

8 files

5.19.4

8 files

5.19.3

8 files

5.19.2

8 files

5.19.1

8 files

5.19

8 files

5.18

8 files

5.17.1

14 files

5.17

13 files

5.16

14 files

5.15.1

14 files

5.15

14 files

5.14.2

14 files

5.14.1

14 files

5.14

14 files

5.13.1

9 files

5.13

9 files

5.12.1

7 files

5.12

7 files

5.11

7 files

5.10

7 files

5.9.1

7 files

5.9

7 files

5.8.1

7 files

5.8

7 files

5.7.1

3 files

5.7

3 files

5.6

3 files

5.5.1

3 files

5.5

3 files

5.4.1

3 files

5.4

3 files

5.3

4 files

5.2.7

4 files

5.2.6

4 files

5.2.5

4 files

5.2.4

4 files

5.2.3

4 files

5.2.2

4 files

5.2.1

4 files

5.2

4 files

5.1

4 files

5.0

4 files

4.10

4 files

4.9.1

5 files

4.9

5 files

4.8

5 files

4.7

5 files

4.6

5 files

4.5

5 files

4.4

4 files

4.3.1

4 files

4.3

4 files

4.2

4 files

4.1

4 files

4.0

4 files

3.25

6 files

3.24.1

4 files

3.24

4 files

3.23.1

6 files

3.23

4 files

3.22

4 files

3.21

4 files

3.20.2

4 files

3.20.1

4 files

3.20

5 files

3.19

4 files

3.18.1

4 files

3.18

4 files

3.17.3

4 files

3.17.2

4 files

3.17.1

4 files

3.17

5 files

3.16

4 files

3.15.3

4 files

3.15.2

4 files

3.15.1

4 files

3.15

4 files

3.14

4 files

3.13

4 files

3.12.1

4 files

3.12

4 files

3.11.1

4 files

3.11

4 files

3.10.1

4 files

3.10

4 files

3.9

4 files

3.8.3

4 files

3.8.2

6 files

3.8.1

6 files

3.8

6 files

3.7.6

4 files

3.7.5

4 files

3.7.4

4 files

3.7.3

4 files

3.7.2

4 files

3.7.1

4 files

3.7

4 files

3.6.6

4 files

3.6.5

4 files

3.6.4

6 files

3.6.3

6 files

3.6.2

6 files

3.6.1

6 files

3.6

4 files

3.5

6 files

3.4.4

6 files

3.4.3

6 files

3.4.2

6 files

3.4.1

4 files

3.4

6 files

3.3.1

6 files

3.3

6 files

3.2.7

4 files

3.2.6

6 files

3.2.5

6 files

3.2.4

6 files

3.2.3

6 files

3.2.2

6 files

3.2.1

6 files

3.2

6 files

3.1

6 files

3.0

5 files

2.15.5

4 files

2.15.4

4 files

2.15.3

4 files

2.15.2

5 files

2.15.1

5 files

2.15

6 files

2.14.2

6 files

2.14.1

6 files

2.14

6 files

2.13

6 files

2.12

2.11

3 files

2.10

2 files

2.9

2 files

2.8.1

2 files

2.8

2.7

2.6.1

2.6

2.5

2.4.1

2.4

2.3

2.2

Supported by

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