%global _empty_manifest_terminate_build 0 Name: python-pantomime Version: 0.6.0 Release: 1 Summary: MIME type normalisation and labels. License: MIT URL: http://github.com/alephdata/pantomime Source0: https://mirrors.nju.edu.cn/pypi/web/packages/ba/81/b1709f841503fc4fa416ec40b802b9a14da46f9b91587bf1d0faee8d3ae7/pantomime-0.6.0.tar.gz BuildArch: noarch Requires: python3-banal Requires: python3-normality Requires: python3-wheel Requires: python3-twine Requires: python3-mypy Requires: python3-black Requires: python3-flake8 Requires: python3-pytest Requires: python3-pytest-cov Requires: python3-banal Requires: python3-coverage %description # pantomime [![build](https://github.com/alephdata/pantomime/actions/workflows/build.yml/badge.svg)](https://github.com/alephdata/pantomime/actions/workflows/build.yml) ``pantomime`` is a small library that handles the parsing and normalisation of internet MIME types in Python. This can be useful to normalise invalid, or misformatted MIME types emitted by remote web servers. ## Usage The simplest use is to normalise a MIME type: ```python from pantomime import normalize_mimetype assert normalize_mimetype('TEXT/PLAIN') == 'text/plain' assert normalize_mimetype('plain/text') == 'text/plain' assert normalize_mimetype(None) == 'application/octet-stream' assert normalize_mimetype('') == 'application/octet-stream' ``` Internally, `pantomime` uses a `MIMEType` object to handle parsing. It can be used to access more specific information, like human readable labels: ```python from pantomime import parse_mimetype parsed = parse_mimetype('text/plain') assert parsed.family == 'text' assert parsed.subtype == 'plain' assert parsed.label == 'Plain text' ``` ## Open issues * Internationalisation, i.e. make the human-readable labels available in multiple languages. * Expand replacements for specific MIME types. ## License Licensed under MIT terms, see the ``LICENSE`` file included in this repository. %package -n python3-pantomime Summary: MIME type normalisation and labels. Provides: python-pantomime BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-pantomime # pantomime [![build](https://github.com/alephdata/pantomime/actions/workflows/build.yml/badge.svg)](https://github.com/alephdata/pantomime/actions/workflows/build.yml) ``pantomime`` is a small library that handles the parsing and normalisation of internet MIME types in Python. This can be useful to normalise invalid, or misformatted MIME types emitted by remote web servers. ## Usage The simplest use is to normalise a MIME type: ```python from pantomime import normalize_mimetype assert normalize_mimetype('TEXT/PLAIN') == 'text/plain' assert normalize_mimetype('plain/text') == 'text/plain' assert normalize_mimetype(None) == 'application/octet-stream' assert normalize_mimetype('') == 'application/octet-stream' ``` Internally, `pantomime` uses a `MIMEType` object to handle parsing. It can be used to access more specific information, like human readable labels: ```python from pantomime import parse_mimetype parsed = parse_mimetype('text/plain') assert parsed.family == 'text' assert parsed.subtype == 'plain' assert parsed.label == 'Plain text' ``` ## Open issues * Internationalisation, i.e. make the human-readable labels available in multiple languages. * Expand replacements for specific MIME types. ## License Licensed under MIT terms, see the ``LICENSE`` file included in this repository. %package help Summary: Development documents and examples for pantomime Provides: python3-pantomime-doc %description help # pantomime [![build](https://github.com/alephdata/pantomime/actions/workflows/build.yml/badge.svg)](https://github.com/alephdata/pantomime/actions/workflows/build.yml) ``pantomime`` is a small library that handles the parsing and normalisation of internet MIME types in Python. This can be useful to normalise invalid, or misformatted MIME types emitted by remote web servers. ## Usage The simplest use is to normalise a MIME type: ```python from pantomime import normalize_mimetype assert normalize_mimetype('TEXT/PLAIN') == 'text/plain' assert normalize_mimetype('plain/text') == 'text/plain' assert normalize_mimetype(None) == 'application/octet-stream' assert normalize_mimetype('') == 'application/octet-stream' ``` Internally, `pantomime` uses a `MIMEType` object to handle parsing. It can be used to access more specific information, like human readable labels: ```python from pantomime import parse_mimetype parsed = parse_mimetype('text/plain') assert parsed.family == 'text' assert parsed.subtype == 'plain' assert parsed.label == 'Plain text' ``` ## Open issues * Internationalisation, i.e. make the human-readable labels available in multiple languages. * Expand replacements for specific MIME types. ## License Licensed under MIT terms, see the ``LICENSE`` file included in this repository. %prep %autosetup -n pantomime-0.6.0 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-pantomime -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Mon May 29 2023 Python_Bot - 0.6.0-1 - Package Spec generated