%global _empty_manifest_terminate_build 0
Name: python-reviewer2
Version: 0.9.31
Release: 1
Summary: Starts a simple image server that lets you quickly flip through image files from a local directory using your web browser and optionally answering customizable questions about each one
License: MIT
URL: https://github.com/broadinstitute/reviewer2
Source0: https://mirrors.aliyun.com/pypi/web/packages/03/65/9a98b067db83a9beae48a9907a0109099c4cdfc72096f75f609dae362584/reviewer2-0.9.31.tar.gz
BuildArch: noarch
Requires: python3-configargparse
Requires: python3-flask
Requires: python3-flask-cors
Requires: python3-gunicorn
Requires: python3-jinja2
Requires: python3-openpyxl
Requires: python3-pandas
Requires: python3-requests
Requires: python3-wcmatch
Requires: python3-xlrd
Requires: python3-xlwt
%description
[![PyPI version](https://img.shields.io/pypi/v/reviewer2.svg?style=flat)](https://pypi.org/project/reviewer2/) [![Supported Python versions](https://img.shields.io/pypi/pyversions/reviewer2.svg)](https://shields.io/)
### Install:
```
python3 -m pip install reviewer2
```
### Run:
```
python3 -m reviewer2 # start server for all images in the current directory and subdirectories
```
Below are more examples. Run with `--help` to see all available options and their descriptions.
```
python3 -m reviewer2 -x temp -x keyword2 /path/dir-with-images # -x are keyword(s) of paths to skip and /path/dir-with-images is the top level dir to search instead of the current dir
python3 -m reviewer2 -t /path/user_responses.xls # change where user responses get saved (default: reviewer2_form_responses.tsv)
python3 -m reviewer2 -m /path/metadata.tsv # provide a metadata table
```
After the server is running, open your web browser to [http://localhost:8080](http://localhost:8080) to start reviewing images.
### Options:
- metadata table (`-m`)
It's often useful to add extra info to the image pages to help with review - such as image descriptions, quality scores, etc.
To enable this, there are several ways to specify arbitrary key-value pairs to add to specific image pages.
The 1st way is to put a file called `reviewer2_metadata.json` next to the image(s). All keys and values from this file
will appear on that image page. The 2nd way is to use `-m` to pass in a metadata table
(`.tsv` or `.xls`) with a `Path` column + arbitrary other columns. If the `Path` value matches the relative directory containing
the image(s), entries from that row will be added to this image page.
Since the keys and values are treated as html, they can be used to add more complex info - such as
colors, text formatting, tags with images from other web pages, iframes containing entire sections of external pages, etc.
- responses table (`-t`)
As you fill in the forms at the top of the image pages, the responses are written to this table. If you later restart reviewer2 with the same `-t`, it will reload previous responses. You can also optionally use this table to provide additional columns to display - sometimes this can be more convenient than using `-m`.
*Default*: `reviewer2_form_responses.tsv`
- custom form schema (`--form-schema-json`)
If you'd like to use non-default questions in the image page forms, you can specify the path or url of a .json file containing a custom form schema. For examples of the expected format see [main/form_schema_examples](https://github.com/broadinstitute/reviewer2/tree/main/form_schema_examples)
- config file (`~/.reviewer2_config`)
Most settings that can be provided on the command line can also be set via this YAML config file instead. For example:
*~/.reviewer2_config*
```
form-schema-json: /path/to/my-schema.json
hide-metadata-on-home-page: true
host: 127.0.0.1
port: 8080
```
For more details, run:
```
python3 -m reviewer2 --help
```
### Comparing reviews:
If 2 or more people review the same images, the reviews can be compared using the `compare_form_response_tables` script.
For example:
```
python3 -m compare_form_response_tables egor_reviewer2_form_responses.tsv ben_reviewer2_form_responses.tsv -o combined_responses.tsv -s1 egor -s2 ben
```
This script will print concordance stats, and output a `combined_responses.tsv` table that contains one image per row as well as each person's review of the image.
To see the full list of args and descriptions, run `python3 -m compare_form_response_tables --help`
### Development:
To create a local dev instance, run
```
git clone git@github.com:broadinstitute/reviewer2.git
cd reviewer2
# start server in dev mode so it reloads code on change
python3 -m reviewer2 /path/dir-with-images --dev-mode
```
%package -n python3-reviewer2
Summary: Starts a simple image server that lets you quickly flip through image files from a local directory using your web browser and optionally answering customizable questions about each one
Provides: python-reviewer2
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-reviewer2
[![PyPI version](https://img.shields.io/pypi/v/reviewer2.svg?style=flat)](https://pypi.org/project/reviewer2/) [![Supported Python versions](https://img.shields.io/pypi/pyversions/reviewer2.svg)](https://shields.io/)
### Install:
```
python3 -m pip install reviewer2
```
### Run:
```
python3 -m reviewer2 # start server for all images in the current directory and subdirectories
```
Below are more examples. Run with `--help` to see all available options and their descriptions.
```
python3 -m reviewer2 -x temp -x keyword2 /path/dir-with-images # -x are keyword(s) of paths to skip and /path/dir-with-images is the top level dir to search instead of the current dir
python3 -m reviewer2 -t /path/user_responses.xls # change where user responses get saved (default: reviewer2_form_responses.tsv)
python3 -m reviewer2 -m /path/metadata.tsv # provide a metadata table
```
After the server is running, open your web browser to [http://localhost:8080](http://localhost:8080) to start reviewing images.
### Options:
- metadata table (`-m`)
It's often useful to add extra info to the image pages to help with review - such as image descriptions, quality scores, etc.
To enable this, there are several ways to specify arbitrary key-value pairs to add to specific image pages.
The 1st way is to put a file called `reviewer2_metadata.json` next to the image(s). All keys and values from this file
will appear on that image page. The 2nd way is to use `-m` to pass in a metadata table
(`.tsv` or `.xls`) with a `Path` column + arbitrary other columns. If the `Path` value matches the relative directory containing
the image(s), entries from that row will be added to this image page.
Since the keys and values are treated as html, they can be used to add more complex info - such as
colors, text formatting, tags with images from other web pages, iframes containing entire sections of external pages, etc.
- responses table (`-t`)
As you fill in the forms at the top of the image pages, the responses are written to this table. If you later restart reviewer2 with the same `-t`, it will reload previous responses. You can also optionally use this table to provide additional columns to display - sometimes this can be more convenient than using `-m`.
*Default*: `reviewer2_form_responses.tsv`
- custom form schema (`--form-schema-json`)
If you'd like to use non-default questions in the image page forms, you can specify the path or url of a .json file containing a custom form schema. For examples of the expected format see [main/form_schema_examples](https://github.com/broadinstitute/reviewer2/tree/main/form_schema_examples)
- config file (`~/.reviewer2_config`)
Most settings that can be provided on the command line can also be set via this YAML config file instead. For example:
*~/.reviewer2_config*
```
form-schema-json: /path/to/my-schema.json
hide-metadata-on-home-page: true
host: 127.0.0.1
port: 8080
```
For more details, run:
```
python3 -m reviewer2 --help
```
### Comparing reviews:
If 2 or more people review the same images, the reviews can be compared using the `compare_form_response_tables` script.
For example:
```
python3 -m compare_form_response_tables egor_reviewer2_form_responses.tsv ben_reviewer2_form_responses.tsv -o combined_responses.tsv -s1 egor -s2 ben
```
This script will print concordance stats, and output a `combined_responses.tsv` table that contains one image per row as well as each person's review of the image.
To see the full list of args and descriptions, run `python3 -m compare_form_response_tables --help`
### Development:
To create a local dev instance, run
```
git clone git@github.com:broadinstitute/reviewer2.git
cd reviewer2
# start server in dev mode so it reloads code on change
python3 -m reviewer2 /path/dir-with-images --dev-mode
```
%package help
Summary: Development documents and examples for reviewer2
Provides: python3-reviewer2-doc
%description help
[![PyPI version](https://img.shields.io/pypi/v/reviewer2.svg?style=flat)](https://pypi.org/project/reviewer2/) [![Supported Python versions](https://img.shields.io/pypi/pyversions/reviewer2.svg)](https://shields.io/)
### Install:
```
python3 -m pip install reviewer2
```
### Run:
```
python3 -m reviewer2 # start server for all images in the current directory and subdirectories
```
Below are more examples. Run with `--help` to see all available options and their descriptions.
```
python3 -m reviewer2 -x temp -x keyword2 /path/dir-with-images # -x are keyword(s) of paths to skip and /path/dir-with-images is the top level dir to search instead of the current dir
python3 -m reviewer2 -t /path/user_responses.xls # change where user responses get saved (default: reviewer2_form_responses.tsv)
python3 -m reviewer2 -m /path/metadata.tsv # provide a metadata table
```
After the server is running, open your web browser to [http://localhost:8080](http://localhost:8080) to start reviewing images.
### Options:
- metadata table (`-m`)
It's often useful to add extra info to the image pages to help with review - such as image descriptions, quality scores, etc.
To enable this, there are several ways to specify arbitrary key-value pairs to add to specific image pages.
The 1st way is to put a file called `reviewer2_metadata.json` next to the image(s). All keys and values from this file
will appear on that image page. The 2nd way is to use `-m` to pass in a metadata table
(`.tsv` or `.xls`) with a `Path` column + arbitrary other columns. If the `Path` value matches the relative directory containing
the image(s), entries from that row will be added to this image page.
Since the keys and values are treated as html, they can be used to add more complex info - such as
colors, text formatting, tags with images from other web pages, iframes containing entire sections of external pages, etc.
- responses table (`-t`)
As you fill in the forms at the top of the image pages, the responses are written to this table. If you later restart reviewer2 with the same `-t`, it will reload previous responses. You can also optionally use this table to provide additional columns to display - sometimes this can be more convenient than using `-m`.
*Default*: `reviewer2_form_responses.tsv`
- custom form schema (`--form-schema-json`)
If you'd like to use non-default questions in the image page forms, you can specify the path or url of a .json file containing a custom form schema. For examples of the expected format see [main/form_schema_examples](https://github.com/broadinstitute/reviewer2/tree/main/form_schema_examples)
- config file (`~/.reviewer2_config`)
Most settings that can be provided on the command line can also be set via this YAML config file instead. For example:
*~/.reviewer2_config*
```
form-schema-json: /path/to/my-schema.json
hide-metadata-on-home-page: true
host: 127.0.0.1
port: 8080
```
For more details, run:
```
python3 -m reviewer2 --help
```
### Comparing reviews:
If 2 or more people review the same images, the reviews can be compared using the `compare_form_response_tables` script.
For example:
```
python3 -m compare_form_response_tables egor_reviewer2_form_responses.tsv ben_reviewer2_form_responses.tsv -o combined_responses.tsv -s1 egor -s2 ben
```
This script will print concordance stats, and output a `combined_responses.tsv` table that contains one image per row as well as each person's review of the image.
To see the full list of args and descriptions, run `python3 -m compare_form_response_tables --help`
### Development:
To create a local dev instance, run
```
git clone git@github.com:broadinstitute/reviewer2.git
cd reviewer2
# start server in dev mode so it reloads code on change
python3 -m reviewer2 /path/dir-with-images --dev-mode
```
%prep
%autosetup -n reviewer2-0.9.31
%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-reviewer2 -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Tue Jun 20 2023 Python_Bot - 0.9.31-1
- Package Spec generated