Skip to main content

Fast syntax highlighting using tree-sitter, powered by Rust

Project description

[!WARNING] This library is still a WIP - client-side setup, theming etc are very manual at this stage

Installation

pip install fastpylight

Rust

fastpylight can also be used as a Rust library without PyO3:

[dependencies]
fastpylight = { path = "../fastpylight", default-features = false, features = ["all-languages"] }

Use write_highlighted_inner when the caller already owns the surrounding <pre><code> block:

let mut out = String::new();
fastpylight::write_highlighted_inner("def f(): return 1", "python", "hl-", &mut out)?;

Usage

[!NOTE] Applying the highlights requires a web component implementation & styling, which need to be manually added to the server HTML

Python:

from fastpylight import highlight

code_block = '''
import time

def my_func():
    print(f'Hello World! {1 * 1}')
    time.sleep(4)

if '__name__' == '__main__':
    my_func()
'''

# `highlight` returns the HTML with token->range mappings set as a `toks` attribute on the web component

hl_html = highlight(code=code_block, lang='python')

hl_html will contain:

'<hl-code toks=\'[[1,7,"keyword-control-import"],[8,12,"namespace"],[14,17,"keyword-function"],[18,25,"function"],[25,26,"punctuation-bracket"],[26,27,"punctuation-bracket"],[27,28,"punctuation-delimiter"],[33,38,"function-builtin"],[38,39,"punctuation-bracket"],[39,54,"string"],[54,55,"punctuation-special"],[55,56,"constant-numeric-integer"],[56,57,"string"],[57,58,"operator"],[58,59,"string"],[59,60,"constant-numeric-integer"],[60,61,"punctuation-special"],[61,62,"string"],[62,63,"punctuation-bracket"],[68,72,"namespace"],[72,73,"punctuation-delimiter"],[73,78,"function-method"],[78,79,"punctuation-bracket"],[79,80,"constant-numeric-integer"],[80,81,"punctuation-bracket"],[83,85,"keyword-control-conditional"],[86,96,"string"],[97,99,"operator"],[100,110,"string"],[110,111,"punctuation-delimiter"],[116,123,"function"],[123,124,"punctuation-bracket"],[124,125,"punctuation-bracket"]]\'><pre><code>\nimport time\n\ndef my_func():\n    print(f\'Hello World! {1 * 1}\')\n    time.sleep(4)\n\nif \'__name__\' == \'__main__\':\n    my_func()\n</code></pre></hl-code>'

Example Javascript:

class HlCode extends HTMLElement {
  connectedCallback(){
    if(!CSS.highlights) return;
    setTimeout(() => {
      const d=this.getAttribute('toks'); if(!d) return;
      const tn=this.querySelector('code').firstChild, toks=JSON.parse(d);
      this._ranges=[];
      toks.forEach(([s,e,k])=>{
        const r=new Range(); r.setStart(tn,s); r.setEnd(tn,e);
        const h=CSS.highlights.get(k)||new Highlight();
        h.add(r); CSS.highlights.set(k,h);
        this._ranges.push([r,k]);
        this.removeAttribute('toks');
      });
    }, 0);
  }
  disconnectedCallback(){
    if(!this._ranges) return;
    this._ranges.forEach(([r,k])=>{
      const h=CSS.highlights.get(k); if(h) h.delete(r);
    });
    this._ranges=null;
  }
}
if(!customElements.get('hl-code')) customElements.define('hl-code',HlCode);

Example CSS:

::highlight(attribute) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); }
::highlight(type) { color: light-dark(oklch(0.45 0.13 55), oklch(0.73 0.12 65)); }
::highlight(type-builtin) { color: light-dark(oklch(0.45 0.13 55), oklch(0.73 0.12 65)); }
::highlight(type-enum) { color: light-dark(oklch(0.45 0.13 55), oklch(0.73 0.12 65)); }
::highlight(type-enum-variant) { color: light-dark(oklch(0.45 0.13 55), oklch(0.73 0.12 65)); }
::highlight(constructor) { color: light-dark(oklch(0.45 0.13 55), oklch(0.73 0.12 65)); }
::highlight(constant) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); }
::highlight(constant-builtin) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(constant-builtin-boolean) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(constant-character) { color: light-dark(oklch(0.35 0.12 260), oklch(0.72 0.1 220)); }
::highlight(constant-character-escape) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); }
::highlight(constant-numeric) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); }
::highlight(constant-numeric-integer) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); }
::highlight(constant-numeric-float) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); }
::highlight(string) { color: light-dark(oklch(0.35 0.12 260), oklch(0.72 0.1 220)); }
::highlight(string-regexp) { color: light-dark(oklch(0.35 0.12 260), oklch(0.72 0.1 220)); }
::highlight(string-special) { color: light-dark(oklch(0.35 0.12 260), oklch(0.72 0.1 220)); }
::highlight(string-special-path) { color: light-dark(oklch(0.35 0.12 260), oklch(0.72 0.1 220)); }
::highlight(string-special-url) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); text-decoration: underline; }
::highlight(string-special-symbol) { color: light-dark(oklch(0.35 0.12 260), oklch(0.72 0.1 220)); }
::highlight(escape) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); }
::highlight(comment) { color: light-dark(oklch(0.55 0.02 250), oklch(0.58 0.02 250)); }
::highlight(comment-line) { color: light-dark(oklch(0.55 0.02 250), oklch(0.58 0.02 250)); }
::highlight(comment-block) { color: light-dark(oklch(0.55 0.02 250), oklch(0.58 0.02 250)); }
::highlight(comment-block-documentation) { color: light-dark(oklch(0.55 0.02 250), oklch(0.58 0.02 250)); }
::highlight(variable) { color: light-dark(oklch(0.25 0.02 250), oklch(0.85 0.02 250)); }
::highlight(variable-builtin) { color: light-dark(oklch(0.6 0.18 55), oklch(0.73 0.14 60)); }
::highlight(variable-parameter) { color: light-dark(oklch(0.45 0.13 55), oklch(0.73 0.12 65)); }
::highlight(variable-other) { color: light-dark(oklch(0.25 0.02 250), oklch(0.85 0.02 250)); }
::highlight(variable-other-member) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); }
::highlight(label) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); }
::highlight(punctuation) { color: light-dark(oklch(0.48 0.02 250), oklch(0.65 0.02 250)); }
::highlight(punctuation-delimiter) { color: light-dark(oklch(0.48 0.02 250), oklch(0.65 0.02 250)); }
::highlight(punctuation-bracket) { color: light-dark(oklch(0.48 0.02 250), oklch(0.65 0.02 250)); }
::highlight(punctuation-special) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); }
::highlight(keyword) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(keyword-control) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(keyword-control-conditional) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(keyword-control-repeat) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(keyword-control-import) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(keyword-control-return) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(keyword-control-exception) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(keyword-operator) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(keyword-directive) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(keyword-function) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(keyword-storage) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(keyword-storage-type) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(keyword-storage-modifier) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(operator) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); }
::highlight(function) { color: light-dark(oklch(0.5 0.2 290), oklch(0.72 0.15 290)); }
::highlight(function-builtin) { color: light-dark(oklch(0.5 0.2 290), oklch(0.72 0.15 290)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(function-method) { color: light-dark(oklch(0.5 0.2 290), oklch(0.72 0.15 290)); }
::highlight(function-macro) { color: light-dark(oklch(0.5 0.2 290), oklch(0.72 0.15 290)); }
::highlight(function-special) { color: light-dark(oklch(0.5 0.2 290), oklch(0.72 0.15 290)); }
::highlight(tag) { color: light-dark(oklch(0.43 0.13 150), oklch(0.7 0.12 150)); }
::highlight(tag-builtin) { color: light-dark(oklch(0.43 0.13 150), oklch(0.7 0.12 150)); }
::highlight(namespace) { color: light-dark(oklch(0.45 0.13 55), oklch(0.73 0.12 65)); }
::highlight(special) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); }
::highlight(markup-heading) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(markup-heading-marker) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); }
::highlight(markup-heading-1) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(markup-heading-2) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(markup-heading-3) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(markup-heading-4) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(markup-heading-5) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(markup-heading-6) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); text-shadow: 0.3px 0 0 currentColor; }
::highlight(markup-list) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); }
::highlight(markup-list-unnumbered) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); }
::highlight(markup-list-numbered) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); }
::highlight(markup-list-checked) { color: light-dark(oklch(0.52 0.15 150), oklch(0.7 0.12 150)); }
::highlight(markup-list-unchecked) { color: light-dark(oklch(0.48 0.02 250), oklch(0.65 0.02 250)); }
::highlight(markup-bold) { text-shadow: 0.3px 0 0 currentColor; }
::highlight(markup-italic) { color: light-dark(oklch(0.45 0.13 55), oklch(0.73 0.12 65)); }
::highlight(markup-strikethrough) { text-decoration: line-through; }
::highlight(markup-link) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); text-decoration: underline; }
::highlight(markup-link-url) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); text-decoration: underline; }
::highlight(markup-link-label) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); }
::highlight(markup-link-text) { color: light-dark(oklch(0.45 0.16 260), oklch(0.7 0.13 235)); text-decoration: underline; }
::highlight(markup-quote) { color: light-dark(oklch(0.48 0.02 250), oklch(0.65 0.02 250)); }
::highlight(markup-raw) { color: light-dark(oklch(0.35 0.12 260), oklch(0.72 0.1 220)); background-color: light-dark(oklch(0.97 0 0 / 0.5), oklch(0.2 0 0 / 0.5)); }
::highlight(markup-raw-inline) { color: light-dark(oklch(0.35 0.12 260), oklch(0.72 0.1 220)); background-color: light-dark(oklch(0.97 0 0 / 0.5), oklch(0.2 0 0 / 0.5)); }
::highlight(markup-raw-block) { color: light-dark(oklch(0.35 0.12 260), oklch(0.72 0.1 220)); background-color: light-dark(oklch(0.97 0 0 / 0.5), oklch(0.2 0 0 / 0.5)); }
::highlight(diff-plus) { color: light-dark(oklch(0.52 0.15 150), oklch(0.7 0.12 150)); background-color: light-dark(oklch(0.95 0.05 145), oklch(0.3 0.05 145)); }
::highlight(diff-minus) { color: light-dark(oklch(0.55 0.2 25), oklch(0.72 0.16 20)); background-color: light-dark(oklch(0.95 0.05 25), oklch(0.3 0.05 25)); }
::highlight(diff-delta) { color: light-dark(oklch(0.45 0.13 55), oklch(0.73 0.12 65)); background-color: light-dark(oklch(0.95 0.05 85), oklch(0.3 0.05 85)); }
::highlight(diff-delta-moved) { color: light-dark(oklch(0.5 0.2 290), oklch(0.72 0.15 290)); background-color: light-dark(oklch(0.95 0.03 300), oklch(0.3 0.03 300)); }
hl-code > pre { color-scheme: light dark; background: oklch(0.7 0 0 / 0.1); padding: 0.75em; border-radius: 6px; white-space: pre-wrap; font-family: ui-monospace, monospace; }

Project details


Download files

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

Source Distribution

fastpylight-0.1.6.tar.gz (17.6 kB view details)

Uploaded Source

Built Distributions

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

fastpylight-0.1.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

fastpylight-0.1.6-cp313-cp313-macosx_11_0_arm64.whl (9.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

fastpylight-0.1.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

fastpylight-0.1.6-cp312-cp312-macosx_11_0_arm64.whl (9.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

fastpylight-0.1.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

fastpylight-0.1.6-cp311-cp311-macosx_11_0_arm64.whl (9.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

fastpylight-0.1.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

fastpylight-0.1.6-cp310-cp310-macosx_11_0_arm64.whl (9.9 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file fastpylight-0.1.6.tar.gz.

File metadata

  • Download URL: fastpylight-0.1.6.tar.gz
  • Upload date:
  • Size: 17.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fastpylight-0.1.6.tar.gz
Algorithm Hash digest
SHA256 8004cabe636efded75fb0c04955e0f847d895c9ef5ae77c4971f2b9c233355bd
MD5 62329640bb78053261a6b905c16e26df
BLAKE2b-256 afc41aadd55e12bf2b6c165f400f8ec07976e6f1315a38a2833a649bed25ebb9

See more details on using hashes here.

File details

Details for the file fastpylight-0.1.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: fastpylight-0.1.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 9.6 MB
  • Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fastpylight-0.1.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ac56d1c9dae137815d47aa7a9409a602a91428b53f479e55b8844f38fcfb9e70
MD5 10b88497ea3e6d9eb965efbdb643de52
BLAKE2b-256 c5eea62064489814e631dfa707b665316fb684cfb98bd290abe2ebf78096ccba

See more details on using hashes here.

File details

Details for the file fastpylight-0.1.6-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

  • Download URL: fastpylight-0.1.6-cp313-cp313-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 9.9 MB
  • Tags: CPython 3.13, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fastpylight-0.1.6-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 60d2c20e15545ede4172128840abefa9b8c9ee8618421328516c20700997a1bb
MD5 df7969daab810037f6226daab3c67fab
BLAKE2b-256 8114520f8a80f0e97dffcf0b5ad3720fa40fe95fc1d60d64f05103ba8f3007ac

See more details on using hashes here.

File details

Details for the file fastpylight-0.1.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: fastpylight-0.1.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 9.6 MB
  • Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fastpylight-0.1.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b358f11f1ec5262f11f299e287e256ac972f5a98901a6705cee42d4abed0685b
MD5 861cc8424fea44a26b5140220590754a
BLAKE2b-256 96de2849a12e8b01591760622ed26d47c479a80152a3c7a8d1dce5cbefed2791

See more details on using hashes here.

File details

Details for the file fastpylight-0.1.6-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

  • Download URL: fastpylight-0.1.6-cp312-cp312-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 9.9 MB
  • Tags: CPython 3.12, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fastpylight-0.1.6-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3c1749597cc20814b744655512c786c9ff3e4f671d3cb3ef722048947134a63a
MD5 03e703aa55afe6789b682ec408535efb
BLAKE2b-256 96f3a75961518adef27c2140d59e63bcc1b3a06cf84c41a801c11ba0f45814dd

See more details on using hashes here.

File details

Details for the file fastpylight-0.1.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: fastpylight-0.1.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 9.6 MB
  • Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fastpylight-0.1.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 521745fb957595c26f576e627c4f81227ee61c2e51dd134ddd7f3cbf997a1be3
MD5 d028c526f5f9a76c48a73415e9d47ca0
BLAKE2b-256 525577c196faecd14157662330cfe7ee4f0b136e5ed0c84c367f89e985698156

See more details on using hashes here.

File details

Details for the file fastpylight-0.1.6-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

  • Download URL: fastpylight-0.1.6-cp311-cp311-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 9.9 MB
  • Tags: CPython 3.11, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fastpylight-0.1.6-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 17dce4a3ce04d92c2035de65bc36e50dc28a195202d14bfc26ff83729d279dd6
MD5 b042086f4aebb616696e26d48278edbe
BLAKE2b-256 ba1bcd1ff4edcbd18b0533fcaba023ba58961bbe33a65865fb350180e17358b6

See more details on using hashes here.

File details

Details for the file fastpylight-0.1.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: fastpylight-0.1.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 9.6 MB
  • Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fastpylight-0.1.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 625cd64ca6fe83161a23dbb60c8b485db374b9ad4259547a5a271e0af875914f
MD5 fb3f7dc28b6ebcf3cb8249bdeb90f65a
BLAKE2b-256 a1c0724025e798c0df93dd628349b8d8a6505a9d05ecb4253721b48db72dfe9c

See more details on using hashes here.

File details

Details for the file fastpylight-0.1.6-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

  • Download URL: fastpylight-0.1.6-cp310-cp310-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 9.9 MB
  • Tags: CPython 3.10, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fastpylight-0.1.6-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 18a31e22a87457725bc18a5d553f9d53d176b142b926f26d14581411ca1716fd
MD5 08fda8bdc173c611054854612f841a17
BLAKE2b-256 77b9d118f59fadefe80dd29311dfc9ea89c37da66a72d7d343077961bd369490

See more details on using hashes here.

Supported by

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