Skip to main content

Assembly Style Linter

This linter was designed with Prof. Charles Kann's Computer Organization (EN.605.204) course in mind. It performs a strict but non-exhaustive lint; meaning it will not catch all errors but will be noisy and exacting about those that it does.

Install

pip install jhu-assembly-linter

Usage

$ jhu-assembly-linter ./path/to/file.s

E:: Tab found. Only spaces allowed.
18:     LDR x0, =helloWorld
    ^
E:: Instruction is not uppercase.
19:     mov     w8, #64     /* write is syscall #64 */
        ^
E:: Non-functional whitespace found.
20: 
    ^^^^^
E:: File name does not end with "Main" when it should.
21: main:

To lint a whole directory:

find . -name "*.s" | xargs -I{} jhu-assembly-linter  {}

To add a pre-commit hook to you repo:

repos:
-   repo: https://github.com/LogstonGradSchool/JhuAssemblyStyleLinter
    rev: <latest version>
    hooks:
    -   id: jhu-assembly-linter

Tests

tox

Deployment

poetry build
poetry publish

Release files for jhu-assembly-linter 0.1.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jhu-assembly-linter 0.1.7
File Size Uploaded
jhu_assembly_linter-0.1.7.tar.gz 4.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jhu-assembly-linter 0.1.7
File Interpreter ABI Platform
jhu_assembly_linter-0.1.7-py3-none-any.whl Python 3 none any Details

Total release size: 10.1 kB

Release files / jhu_assembly_linter-0.1.7.tar.gz

Download URL jhu_assembly_linter-0.1.7.tar.gz
Size 4.6 kB
Tags Source
SHA-256 checksum
How to use checksums
be158a9942ee6836bf0730dde31b473a636b03d9e0780b95d584acd677424b7d
BLAKE2b-256 checksum
How to use checksums
1f08f2124eeca5fff66d4e7a4ed881fb5f863eed15226fdf5d46c4ec0f20061a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.5.1 CPython/3.11.1 Darwin/22.5.0

Release files / jhu_assembly_linter-0.1.7-py3-none-any.whl

Download URL jhu_assembly_linter-0.1.7-py3-none-any.whl
Size 5.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
870fb5b559568ad1a2a87ce5afcd568d8b9b01d4049a100aac7492e6bed55608
BLAKE2b-256 checksum
How to use checksums
8fd8853d65eb7a6f090c522c57302f60faebc732fee5b01f5f783f109bfaeda6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.5.1 CPython/3.11.1 Darwin/22.5.0

Release history Release notifications | RSS feed

This release

0.1.7 This release

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release 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