Skip to main content

lncrawl-sourcelib

Interpreter for declarative light-novel source definitions.

A source definition describes how to read one website as data rather than as code: one YAML document per host, validated against a published schema and interpreted at runtime. RFC-0001 in the lncrawl/sources repository is the normative definition of the format. This package is written against it, and where the two disagree the RFC wins.

pip install lncrawl-sourcelib

What it does

sourcelib check                          # resolve and validate every document
sourcelib resolve specs/example.com.yaml # what a spec actually says once merged
sourcelib schema -o schema.json          # the JSON Schema editors read
from sourcelib.spec.checks import check_resolved
from sourcelib.spec.resolve import resolve_file

spec = resolve_file("specs/example.com.yaml", root=".")
for problem in check_resolved(spec):
    print(problem)

resolve matters more than it looks. A spec can inherit through a chain of bases, so "what am I actually running" has to be answerable in one command or a deep chain becomes undebuggable.

Why it is its own package

It is not a feature of the crawler; it is the crawler's next core. Built inside the crawler it would grow references into the code it replaces, and swapping it in would become a rewrite instead of a dependency bump.

This package never imports the crawler, and its CI asserts that. It also means the definitions repository can validate itself with no application in the loop.

Licence

Apache-2.0. The crawler is GPL-3.0-or-later, and Apache-2.0 feeds a GPL-3 application without friction. Nothing here is copied or adapted from the crawler's sources.

Download files

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

Source Distribution

lncrawl_sourcelib-0.1.1.tar.gz (251.0 kB view details)

Uploaded Source

Built Distribution

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

lncrawl_sourcelib-0.1.1-py3-none-any.whl (78.6 kB view details)

Uploaded Python 3

File details

Details for the file lncrawl_sourcelib-0.1.1.tar.gz.

File metadata

  • Download URL: lncrawl_sourcelib-0.1.1.tar.gz
  • Upload date:
  • Size: 251.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for lncrawl_sourcelib-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5075caa7acbbfa2dc25ee65f6edc2bb3f906af1ed7ddc9f9b089c135e5b36f53
MD5 56a3f013a9cddcebb1fc6a5a90d2aabc
BLAKE2b-256 df0a622b5fabcfce88a67a787aa6810b7c7a71104fb119156e5cde14039db4fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for lncrawl_sourcelib-0.1.1.tar.gz:

Publisher: publish.yml on lncrawl/sourcelib

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lncrawl_sourcelib-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for lncrawl_sourcelib-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 813c7100525e3bf3447cda77a4b44b36c7ce69546b6411f2f619e837e21da065
MD5 2a97d0808d2ed775624ffb302dfa4d74
BLAKE2b-256 c01321da65b90e1d03c706eb206118c7ef7122f6824bc618887ff65acce77a34

See more details on using hashes here.

Provenance

The following attestation bundles were made for lncrawl_sourcelib-0.1.1-py3-none-any.whl:

Publisher: publish.yml on lncrawl/sourcelib

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.1.11

2 files

0.1.10

2 files

0.1.9

2 files

0.1.8

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

This release

0.1.1 This release

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page