A simple, immutable URL class with a clean API for interrogation and manipulation.
| OS | Architecture | Version |
|---|---|---|
| NetBSD 8.0 | earmv7hf | py27-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py36-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py37-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py38-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py39-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py37-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py27-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py36-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py37-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py38-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py39-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py27-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py36-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py37-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py38-purl-1.5.tgz |
| NetBSD 8.0 | earmv7hf | py39-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py27-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py36-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py37-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py38-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py27-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py36-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py37-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py38-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py39-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py27-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py36-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py37-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py38-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py39-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py27-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py36-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py37-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py38-purl-1.5.tgz |
| NetBSD 8.0 | i386 | py39-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py27-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py36-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py37-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py38-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py27-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py36-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py37-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py38-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py39-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py27-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py36-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py37-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py38-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py39-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py27-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py36-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py37-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py38-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py39-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py27-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py36-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py37-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py38-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py39-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py27-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py36-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py37-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py38-purl-1.5.tgz |
| NetBSD 8.0 | powerpc | py39-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py27-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py36-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py37-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py38-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py39-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py27-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py36-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py37-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py38-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py27-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py36-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py37-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py38-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py39-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py27-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py36-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py37-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py38-purl-1.5.tgz |
| NetBSD 8.0 | x86_64 | py39-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py39-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py39-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | aarch64 | py39-purl-1.5.tgz |
| NetBSD 9.0 | alpha | py27-purl-1.5.tgz |
| NetBSD 9.0 | alpha | py36-purl-1.5.tgz |
| NetBSD 9.0 | alpha | py37-purl-1.5.tgz |
| NetBSD 9.0 | alpha | py38-purl-1.5.tgz |
| NetBSD 9.0 | alpha | py39-purl-1.5.tgz |
| NetBSD 9.0 | alpha | py27-purl-1.5.tgz |
| NetBSD 9.0 | alpha | py36-purl-1.5.tgz |
| NetBSD 9.0 | alpha | py37-purl-1.5.tgz |
| NetBSD 9.0 | alpha | py38-purl-1.5.tgz |
| NetBSD 9.0 | alpha | py39-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py27-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py36-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py37-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py38-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py39-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py27-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py36-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py37-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py38-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py27-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py36-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py37-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py38-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py39-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py27-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py36-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py37-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py38-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py39-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py27-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py36-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py37-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py38-purl-1.5.tgz |
| NetBSD 9.0 | earmv6hf | py39-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py27-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py36-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py37-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py38-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py39-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py27-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py36-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py37-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py38-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py27-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py36-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py37-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py38-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py39-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py27-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py36-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py37-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py38-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py39-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py27-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py36-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py37-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py38-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py39-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py27-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py36-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py37-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py38-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py39-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py27-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py36-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py37-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py38-purl-1.5.tgz |
| NetBSD 9.0 | earmv7hf | py39-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py27-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py36-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py37-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py38-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py27-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py36-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py37-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py38-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py39-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py27-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py36-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py37-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py38-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py39-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py27-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py36-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py37-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py38-purl-1.5.tgz |
| NetBSD 9.0 | i386 | py39-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py27-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py36-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py37-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py38-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py39-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py27-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py36-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py37-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py38-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py27-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py36-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py37-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py38-purl-1.5.tgz |
| NetBSD 9.0 | mips64eb | py39-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py27-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py36-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py37-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py38-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py39-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py27-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py36-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py37-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py38-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py27-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py36-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py37-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py38-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py39-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py27-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py36-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py37-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py38-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py39-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py27-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py36-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py37-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py38-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py39-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py27-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py36-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py37-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py38-purl-1.5.tgz |
| NetBSD 9.0 | powerpc | py39-purl-1.5.tgz |
| NetBSD 9.0 | sparc64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | sparc64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | sparc64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | sparc64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | sparc64 | py39-purl-1.5.tgz |
| NetBSD 9.0 | sparc64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | sparc64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | sparc64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | sparc64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | sparc64 | py39-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py27-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py36-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py37-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py38-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py39-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py27-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py36-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py37-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py38-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py27-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py36-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py37-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py38-purl-1.5.tgz |
| NetBSD 9.0 | sparc | py39-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py39-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py39-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py39-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py39-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py39-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py39-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py27-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py36-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py37-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py38-purl-1.5.tgz |
| NetBSD 9.0 | x86_64 | py39-purl-1.5.tgz |
Binary packages can be installed with the high-level tool pkgin (which can be installed with pkg_add) or pkg_add(1) (installed by default). The NetBSD packages collection is also designed to permit easy installation from source.
The pkg_admin audit command locates any installed package which has been mentioned in security advisories as having vulnerabilities.
Please note the vulnerabilities database might not be fully accurate, and not every bug is exploitable with every configuration.
Problem reports, updates or suggestions for this package should be reported with send-pr.