Skip to main content

A stubs library for RPLY

Project description

RPLY Stubs

A stubs library for RPLY

Correctness

This is an independent static analysis of the types being used. This is not the easiest task in a codebase so unmaintained and old (not to say that RPLY doesn't set out to accomplish all that it needs to. It is a well written and complete library from the way I see it.).

This is all to say that the type annotations provided are not always correct but provide a firm guideline in an otherwise untyped library.

Completeness

symbol meaning
partial
Not worked on
completed
Module Status
errors
grammar
lexer
lexergenerator
parser
parsergenerator
token
utils

Difficulties In Completion

This stubs library is made significantly more difficult to complete due to the fact that single-letter naming conventions are used in several places without explanation or comment in to what each variable means. For example:

# rply/parsergenerator.py
def traverse(x, N, stack, F, X, R, FP):
    ...

It is clear that stack is some kind of list but what are x, N, F, X, R, and FP?

FP could be a function pointer? But that is just an educated guess.

Many such examples exist in the codebase and are hard to descern. That is also not mentioning the large amount of compounding types with signatures such as list[dict[tuple[int, str], list[dict[...]]]]. This is extremely hard to annotate or understand the individual parts of.

Most of the examples come from the parsergenerator module which I will personally say is not very readable. I would love if the library author could provide some assistance.

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

rply_stubs-0.1.0.0.7.8.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

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

rply_stubs-0.1.0.0.7.8-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file rply_stubs-0.1.0.0.7.8.tar.gz.

File metadata

  • Download URL: rply_stubs-0.1.0.0.7.8.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","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 rply_stubs-0.1.0.0.7.8.tar.gz
Algorithm Hash digest
SHA256 0176af955fcda9d5cd5489ab3ddb1c928cb50f15708675f79390e2386ab00753
MD5 a8ad08a1e3b54593957154857742d325
BLAKE2b-256 f0465e5e43ef305de7a5a35468a820e29651d7e1a3520c854e9e62da3cf10725

See more details on using hashes here.

File details

Details for the file rply_stubs-0.1.0.0.7.8-py3-none-any.whl.

File metadata

  • Download URL: rply_stubs-0.1.0.0.7.8-py3-none-any.whl
  • Upload date:
  • Size: 10.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","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 rply_stubs-0.1.0.0.7.8-py3-none-any.whl
Algorithm Hash digest
SHA256 4223b43bb9e1d08ed86b8e6f9242d37427c18eaba823b976c943f8f371b3994a
MD5 0c8e45a358a7752d8ac20bc0422a0c13
BLAKE2b-256 cd2b7ae4f32529841c1aefc819e3effcc9cc91ce1d63390ac92916e4d1028a46

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