Skip to main content

norminette for 42 schools

Install

Norminette requires Python >=3.10.

Directly inside your global commands

Install using pip.

python3 -m pip install -U norminette

Install using pipx.

sudo apt update
sudo apt install python3-setuptools
sudo apt install pipx
pipx install norminette
pipx ensurepath

Install using a virtual environment.

python3 -m venv $HOME/.venv
source $HOME/.venv/bin/activate
python3 -m pip install --upgrade pip setuptools
python3 -m pip install norminette
echo "export PATH=\$PATH:$HOME/.venv/bin" >> $HOME/.${SHELL##/bin/}rc
deactivate

To upgrade an existing install, use

python3 -m pip install --upgrade norminette

Usage

  • Runs on the current folder and any subfolder:
norminette
  • Runs on the given filename(s):
norminette filename.[c/h]
  • Prevents stopping on various blocking errors:
norminette -d
  • Outputs all the debug logging:
norminette -dd

Docker usage

docker build -t norminette .
cd ~/42/ft_printf
docker run --rm -v $PWD:/code norminette

If you encounter an error or an incorrect output, you can:

  • Open an issue on github
  • Post a message on the dedicated slack channel (#norminette-v3-beta)

Please try to include as much information as possible (the file on which it crashed, etc)

Feel free to do pull requests if you want to help as well. Make sure that run_test.sh properly runs after your modifications.

Run for development

This new version uses uv as a dependency manager.

If you want to contribute:

uv sync

# Run dev norminette
uv run norminette

# Or... with virtual env
source .venv/bin/activate
norminette

# Run tests
uv run pytest

# Run tests against another Python version
uv run --python 3.10 pytest

# Run the linter
uv run flake8

Github action

Workflow example to check code with github action :

---
name: Norminette

on:
  push:

jobs:
  check-norminette:
    name: Norminette
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v3

      - name: Norminette
        uses: 42School/norminette@<tag>
        with:
          args: '-RCheckForbiddenSourceHeader'

Download files

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

Source Distribution

norminette-3.3.60.tar.gz (61.0 kB view details)

Uploaded Source

Built Distribution

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

norminette-3.3.60-py3-none-any.whl (102.8 kB view details)

Uploaded Python 3

File details

Details for the file norminette-3.3.60.tar.gz.

File metadata

  • Download URL: norminette-3.3.60.tar.gz
  • Upload date:
  • Size: 61.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","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 norminette-3.3.60.tar.gz
Algorithm Hash digest
SHA256 6d4aaab86b09c1f4141a1f5683864a3011fbeab7013e71ced302f4cc02049936
MD5 6bcc0c015d830bf4737490e34791e607
BLAKE2b-256 2a101499d130b71e1b9aa3afd4a9a780bc5c9c9c12bc4c410efe70eef05a9570

See more details on using hashes here.

File details

Details for the file norminette-3.3.60-py3-none-any.whl.

File metadata

  • Download URL: norminette-3.3.60-py3-none-any.whl
  • Upload date:
  • Size: 102.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","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 norminette-3.3.60-py3-none-any.whl
Algorithm Hash digest
SHA256 c963ff9ff11180351f19b2f7e26a734bba8ee601a4a0c5e8f8f4a807770cf285
MD5 64d404d2f2129e985bb670807fb6bb36
BLAKE2b-256 6ff0e86721aaf2330da52313c70d25e9a6ece7d17993e1c3c085d7f020ac824f

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

3.3.60 This release

2 files

3.3.59

2 files

3.3.58

2 files

3.3.57

2 files

3.3.56

2 files

3.3.55

2 files

3.3.54

2 files

3.3.53

2 files

3.3.52

2 files

3.3.51

1 file

3.3.50

1 file

3.3.40

1 file

3.3.32

1 file

3.3.31

1 file

3.3.4

1 file

3.3.3

1 file

3.3.2

1 file

3.3.1

1 file

3.3.0

1 file

3.2.95

1 file

3.2.9

1 file

3.2.8

1 file

3.2.7

1 file

3.2.6

1 file

3.2.5

1 file

3.2.4

1 file

3.2.3

1 file

3.2.2

1 file

3.2.1

1 file

3.2.0

1 file

3.1.3

1 file

3.1.2

1 file

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