summaryrefslogtreecommitdiff
path: root/python-future-fstrings.spec
diff options
context:
space:
mode:
Diffstat (limited to 'python-future-fstrings.spec')
-rw-r--r--python-future-fstrings.spec224
1 files changed, 224 insertions, 0 deletions
diff --git a/python-future-fstrings.spec b/python-future-fstrings.spec
new file mode 100644
index 0000000..14c0a82
--- /dev/null
+++ b/python-future-fstrings.spec
@@ -0,0 +1,224 @@
+%global _empty_manifest_terminate_build 0
+Name: python-future-fstrings
+Version: 1.2.0
+Release: 1
+Summary: A backport of fstrings to python<3.6
+License: MIT
+URL: https://github.com/asottile/future-fstrings
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/5d/e2/3874574cce18a2e3608abfe5b4b5b3c9765653c464f5da18df8971cf501d/future_fstrings-1.2.0.tar.gz
+BuildArch: noarch
+
+Requires: python3-tokenize-rt
+Requires: python3-tokenize-rt
+
+%description
+A backport of fstrings to python<3.6.
+## Installation
+`pip install future-fstrings`
+## Usage
+Include the following encoding cookie at the top of your file (this replaces
+the utf-8 cookie if you already have it):
+```python
+# -*- coding: future_fstrings -*-
+```
+And then write python3.6 fstring code as usual!
+```python
+# -*- coding: future_fstrings -*-
+thing = 'world'
+print(f'hello {thing}')
+```
+```console
+$ python2.7 main.py
+hello world
+```
+## Showing transformed source
+`future-fstrings` also includes a cli to show transformed source.
+```console
+$ future-fstrings-show main.py
+# -*- coding: future_fstrings -*-
+thing = 'world'
+print('hello {}'.format((thing)))
+```
+## Transform source for micropython
+The `future-fstrings-show` command can be used to transform source before
+distributing. This can allow you to write f-string code but target platforms
+which do not support f-strings, such as [micropython].
+To use this on modern versions of python, install using:
+```bash
+pip install future-fstrings[rewrite]
+```
+and then use `future-fstrings-show` as above.
+For instance:
+```bash
+future-fstrings-show code.py > code_rewritten.py
+```
+[micropython]: https://github.com/micropython/micropython
+## How does this work?
+`future-fstrings` has two parts:
+1. A utf-8 compatible `codec` which performs source manipulation
+ - The `codec` first decodes the source bytes using the UTF-8 codec
+ - The `codec` then leverages
+ [tokenize-rt](https://github.com/asottile/tokenize-rt) to rewrite
+ f-strings.
+2. A `.pth` file which registers a codec on interpreter startup.
+## you may also like
+- [future-breakpoint](https://github.com/asottile/future-breakpoint)
+
+%package -n python3-future-fstrings
+Summary: A backport of fstrings to python<3.6
+Provides: python-future-fstrings
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-future-fstrings
+A backport of fstrings to python<3.6.
+## Installation
+`pip install future-fstrings`
+## Usage
+Include the following encoding cookie at the top of your file (this replaces
+the utf-8 cookie if you already have it):
+```python
+# -*- coding: future_fstrings -*-
+```
+And then write python3.6 fstring code as usual!
+```python
+# -*- coding: future_fstrings -*-
+thing = 'world'
+print(f'hello {thing}')
+```
+```console
+$ python2.7 main.py
+hello world
+```
+## Showing transformed source
+`future-fstrings` also includes a cli to show transformed source.
+```console
+$ future-fstrings-show main.py
+# -*- coding: future_fstrings -*-
+thing = 'world'
+print('hello {}'.format((thing)))
+```
+## Transform source for micropython
+The `future-fstrings-show` command can be used to transform source before
+distributing. This can allow you to write f-string code but target platforms
+which do not support f-strings, such as [micropython].
+To use this on modern versions of python, install using:
+```bash
+pip install future-fstrings[rewrite]
+```
+and then use `future-fstrings-show` as above.
+For instance:
+```bash
+future-fstrings-show code.py > code_rewritten.py
+```
+[micropython]: https://github.com/micropython/micropython
+## How does this work?
+`future-fstrings` has two parts:
+1. A utf-8 compatible `codec` which performs source manipulation
+ - The `codec` first decodes the source bytes using the UTF-8 codec
+ - The `codec` then leverages
+ [tokenize-rt](https://github.com/asottile/tokenize-rt) to rewrite
+ f-strings.
+2. A `.pth` file which registers a codec on interpreter startup.
+## you may also like
+- [future-breakpoint](https://github.com/asottile/future-breakpoint)
+
+%package help
+Summary: Development documents and examples for future-fstrings
+Provides: python3-future-fstrings-doc
+%description help
+A backport of fstrings to python<3.6.
+## Installation
+`pip install future-fstrings`
+## Usage
+Include the following encoding cookie at the top of your file (this replaces
+the utf-8 cookie if you already have it):
+```python
+# -*- coding: future_fstrings -*-
+```
+And then write python3.6 fstring code as usual!
+```python
+# -*- coding: future_fstrings -*-
+thing = 'world'
+print(f'hello {thing}')
+```
+```console
+$ python2.7 main.py
+hello world
+```
+## Showing transformed source
+`future-fstrings` also includes a cli to show transformed source.
+```console
+$ future-fstrings-show main.py
+# -*- coding: future_fstrings -*-
+thing = 'world'
+print('hello {}'.format((thing)))
+```
+## Transform source for micropython
+The `future-fstrings-show` command can be used to transform source before
+distributing. This can allow you to write f-string code but target platforms
+which do not support f-strings, such as [micropython].
+To use this on modern versions of python, install using:
+```bash
+pip install future-fstrings[rewrite]
+```
+and then use `future-fstrings-show` as above.
+For instance:
+```bash
+future-fstrings-show code.py > code_rewritten.py
+```
+[micropython]: https://github.com/micropython/micropython
+## How does this work?
+`future-fstrings` has two parts:
+1. A utf-8 compatible `codec` which performs source manipulation
+ - The `codec` first decodes the source bytes using the UTF-8 codec
+ - The `codec` then leverages
+ [tokenize-rt](https://github.com/asottile/tokenize-rt) to rewrite
+ f-strings.
+2. A `.pth` file which registers a codec on interpreter startup.
+## you may also like
+- [future-breakpoint](https://github.com/asottile/future-breakpoint)
+
+%prep
+%autosetup -n future-fstrings-1.2.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-future-fstrings -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 1.2.0-1
+- Package Spec generated