Compare commits
50 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1958d8a0f4 | ||
|
|
f5e3a97e3a | ||
|
|
529c86e79e | ||
|
|
17440b316f | ||
|
|
49af8de6ee | ||
|
|
cf30edef34 | ||
|
|
9d57933e43 | ||
|
|
10c89a527a | ||
|
|
8ae1e62c6e | ||
|
|
03dd0e4fd9 | ||
|
|
cb73aee3e1 | ||
|
|
432bc43af7 | ||
|
|
7d9cdc5c0c | ||
|
|
77268f146c | ||
|
|
2d22a37a13 | ||
|
|
b4b4a14cac | ||
|
|
9c24b75338 | ||
|
|
6291141344 | ||
|
|
e11a9f7fef | ||
|
|
fae6a7be6b | ||
|
|
35ad88bc26 | ||
|
|
9d70a9f1be | ||
|
|
3b53456ad5 | ||
|
|
39a3bd44c3 | ||
|
|
f0f0c094e0 | ||
|
|
eaa706c786 | ||
|
|
4f39d6da1f | ||
|
|
4dda1c74f7 | ||
|
|
f31fd3f016 | ||
|
|
d4c832e6eb | ||
|
|
b7d7beed79 | ||
|
|
27e1330084 | ||
|
|
7f520d5f97 | ||
|
|
a0f319e0f2 | ||
|
|
07adcbdc08 | ||
|
|
4435cdb29f | ||
|
|
9bf44c00c7 | ||
|
|
772f65c2b6 | ||
|
|
b165e7b986 | ||
|
|
10b6dd1b03 | ||
|
|
c41613d35d | ||
|
|
336ab0ae18 | ||
|
|
6a7628cc72 | ||
|
|
d52c0e7eb6 | ||
|
|
da6b2b5bab | ||
|
|
8168588215 | ||
|
|
375e68f204 | ||
|
|
cb063a5dda | ||
|
|
020425199c | ||
|
|
887961bb61 |
5 changed files with 77 additions and 190 deletions
14
.gitignore
vendored
14
.gitignore
vendored
|
|
@ -30,5 +30,15 @@
|
||||||
/OWSLib-0.27.2.tar.gz
|
/OWSLib-0.27.2.tar.gz
|
||||||
/OWSLib-0.28.0.tar.gz
|
/OWSLib-0.28.0.tar.gz
|
||||||
/OWSLib-0.28.1.tar.gz
|
/OWSLib-0.28.1.tar.gz
|
||||||
/OWSLib-0.28.1-filtered.tar.zst
|
/OWSLib-0.29.0.tar.gz
|
||||||
/OWSLib-0.28.1-filtered.tar.xz
|
/OWSLib-0.29.1.tar.gz
|
||||||
|
/OWSLib-0.29.2.tar.gz
|
||||||
|
/OWSLib-0.29.3.tar.gz
|
||||||
|
/OWSLib-0.30.0.tar.gz
|
||||||
|
/OWSLib-0.30.0-filtered.tar.zst
|
||||||
|
/OWSLib-0.31.0-filtered.tar.zst
|
||||||
|
/OWSLib-0.32.0-filtered.tar.zst
|
||||||
|
/OWSLib-0.33.0-filtered.tar.zst
|
||||||
|
/OWSLib-0.34.0-filtered.tar.zst
|
||||||
|
/OWSLib-0.34.1-filtered.tar.zst
|
||||||
|
/OWSLib-0.35.0-filtered.tar.zst
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ Usage: $1 VERSION
|
||||||
|
|
||||||
Generate a source archive for OWSLib with questionably-licensed XML files in
|
Generate a source archive for OWSLib with questionably-licensed XML files in
|
||||||
tests/resources/ removed. The result will be named
|
tests/resources/ removed. The result will be named
|
||||||
OWSLib-\${VERSION}-filtered.tar.xz and will be written into the current
|
OWSLib-\${VERSION}-filtered.tar.zst and will be written into the current
|
||||||
working directory.
|
working directory.
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
|
|
@ -31,7 +31,7 @@ VERSION="${1}"
|
||||||
SOURCE0="${FORGEURL}/archive/${VERSION}/OWSLib-${VERSION}.tar.gz"
|
SOURCE0="${FORGEURL}/archive/${VERSION}/OWSLib-${VERSION}.tar.gz"
|
||||||
TARNAME="$(basename "${SOURCE0}")"
|
TARNAME="$(basename "${SOURCE0}")"
|
||||||
TARDIR="$(basename "${SOURCE0}" '.tar.gz')"
|
TARDIR="$(basename "${SOURCE0}" '.tar.gz')"
|
||||||
NEWTAR="${TARDIR}-filtered.tar.xz"
|
NEWTAR="${TARDIR}-filtered.tar.zst"
|
||||||
|
|
||||||
SAVEDIR="${PWD}"
|
SAVEDIR="${PWD}"
|
||||||
XDIR="$(mktemp -d)"
|
XDIR="$(mktemp -d)"
|
||||||
|
|
@ -56,7 +56,7 @@ TZ=UTC LC_ALL=C tar \
|
||||||
--pax-option='delete=atime,delete=ctime' \
|
--pax-option='delete=atime,delete=ctime' \
|
||||||
--clamp-mtime --mtime="@${MTIME}" \
|
--clamp-mtime --mtime="@${MTIME}" \
|
||||||
"${TARDIR}/" |
|
"${TARDIR}/" |
|
||||||
xz -9 -e > "${NEWTAR}"
|
zstdmt --ultra -22 > "${NEWTAR}"
|
||||||
touch -d @"${MTIME}" "${NEWTAR}"
|
touch -d @"${MTIME}" "${NEWTAR}"
|
||||||
|
|
||||||
cd "${SAVEDIR}"
|
cd "${SAVEDIR}"
|
||||||
|
|
|
||||||
|
|
@ -1,2 +1,7 @@
|
||||||
# All documentation is in the -doc subpackage.
|
# The source cannot be a URL because we have to filter out files before
|
||||||
addFilter(r" no-documentation$")
|
# uploading to the lookaside cache.
|
||||||
|
addFilter(r" invalid-url .* OWSLib-.*-filtered\.tar\.zst")
|
||||||
|
# There is nothing wrong with .tar.zst, but rpmlint does not know that.
|
||||||
|
addFilter(r" inconsistent-file-extension .*\.tar\.zst")
|
||||||
|
# Removed without replacement in Fedora 42
|
||||||
|
addFilter(r" obsolete-not-provided python-OWSLIB-doc")
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,5 @@
|
||||||
# Sphinx-generated HTML documentation is not suitable for packaging; see
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2006555 for discussion.
|
|
||||||
#
|
|
||||||
# We can generate PDF documentation as a substitute. However, most of the
|
|
||||||
# necessary dependencies are not packaged for EPEL8 and probably never will be.
|
|
||||||
%bcond_with doc_pdf
|
|
||||||
|
|
||||||
# Tests require pytest >= 3.8 but EPEL8 has 3.4.2.
|
|
||||||
%bcond_with tests
|
|
||||||
|
|
||||||
Name: python-OWSLib
|
Name: python-OWSLib
|
||||||
Version: 0.28.1
|
Version: 0.35.0
|
||||||
Release: %autorelease
|
Release: %autorelease
|
||||||
Summary: OGC Web Service utility library
|
Summary: OGC Web Service utility library
|
||||||
|
|
||||||
|
|
@ -30,48 +20,32 @@ URL: https://geopython.github.io/OWSLib
|
||||||
# We *could* use the PyPI sdist, which does not contain tests/resources/, but
|
# We *could* use the PyPI sdist, which does not contain tests/resources/, but
|
||||||
# it also does not contain any tests at all. We can still run some tests
|
# it also does not contain any tests at all. We can still run some tests
|
||||||
# without the XML files, and we would like to do so.
|
# without the XML files, and we would like to do so.
|
||||||
Source0: OWSLib-%{version}-filtered.tar.xz
|
Source0: OWSLib-%{version}-filtered.tar.zst
|
||||||
Source1: get_source
|
Source1: get_source
|
||||||
|
|
||||||
|
BuildSystem: pyproject
|
||||||
|
BuildOption(install): -l owslib
|
||||||
|
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
|
|
||||||
BuildRequires: python%{python3_pkgversion}-devel
|
# Tests; dependencies are in requirements-dev.txt.
|
||||||
|
BuildRequires: %{py3_dist pytest}
|
||||||
# requirements.txt:
|
BuildRequires: %{py3_dist pytest_httpserver}
|
||||||
BuildRequires: python%{python3_pkgversion}-dateutil >= 1.5
|
BuildRequires: %{py3_dist Pillow}
|
||||||
BuildRequires: python%{python3_pkgversion}-pytz
|
# We don’t have pytest-socket packaged, and we can get by without it.
|
||||||
BuildRequires: python%{python3_pkgversion}-requests >= 1.0
|
# - pytest-socket
|
||||||
BuildRequires: python%{python3_pkgversion}-pyproj >= 2
|
# We don’t use tox to run the tests. It would run "python3 setup.py develop",
|
||||||
BuildRequires: python%{python3_pkgversion}-pyyaml
|
# which is unwanted.
|
||||||
BuildRequires: python%{python3_pkgversion}-lxml
|
# - tox
|
||||||
# python_version < '3.7':
|
# Unwanted linting/coverage dependencies:
|
||||||
BuildRequires: python%{python3_pkgversion}-dataclasses
|
# https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_linters
|
||||||
|
# - coverage
|
||||||
# requirements-dev.txt
|
# - coveralls
|
||||||
# flake8
|
# - flake8
|
||||||
# pytest-cov
|
# - pytest-cov
|
||||||
# twine
|
# These are just for the maintainer to upload to PyPI.
|
||||||
# wheel
|
# - build
|
||||||
# coverage
|
# - twine
|
||||||
# coveralls
|
|
||||||
# tox
|
|
||||||
%if %{with tests}
|
|
||||||
BuildRequires: python%{python3_pkgversion}-pytest >= 3.8
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if %{with doc_pdf}
|
|
||||||
BuildRequires: make
|
|
||||||
BuildRequires: python%{python3_pkgversion}-sphinx-latex
|
|
||||||
BuildRequires: latexmk
|
|
||||||
BuildRequires: pandoc
|
|
||||||
# requirements-dev.txt
|
|
||||||
BuildRequires: python%{python3_pkgversion}-sphinx
|
|
||||||
BuildRequires: python%{python3_pkgversion}-Pillow
|
|
||||||
BuildRequires: python%{python3_pkgversion}-nbsphinx
|
|
||||||
BuildRequires: python%{python3_pkgversion}-ipykernel
|
|
||||||
BuildRequires: python%{python3_pkgversion}-nbconvert
|
|
||||||
BuildRequires: python%{python3_pkgversion}-pandoc
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%global common_description %{expand:
|
%global common_description %{expand:
|
||||||
OWSLib is a Python package for client programming with Open Geospatial
|
OWSLib is a Python package for client programming with Open Geospatial
|
||||||
|
|
@ -86,61 +60,24 @@ numerous OGC Web Service interfaces.}
|
||||||
%description %{common_description}
|
%description %{common_description}
|
||||||
|
|
||||||
|
|
||||||
%package -n python%{python3_pkgversion}-OWSLib
|
%package -n python3-OWSLib
|
||||||
Summary: %{summary}
|
Summary: %{summary}
|
||||||
|
|
||||||
%py_provides python%{python3_pkgversion}-OWSLib
|
%py_provides python3-owslib
|
||||||
%py_provides python%{python3_pkgversion}-owslib
|
|
||||||
|
|
||||||
%description -n python%{python3_pkgversion}-OWSLib %{common_description}
|
# The -doc subpackage was removed for Fedora 42; we can remove this Obsoletes
|
||||||
|
# after Fedora 44. (EPEL10 never had a -doc subpackage.)
|
||||||
|
Obsoletes: python-OWSLIB-doc < 0.32.0-1
|
||||||
|
|
||||||
|
%description -n python3-OWSLib %{common_description}
|
||||||
|
|
||||||
|
|
||||||
%package doc
|
%prep -a
|
||||||
Summary: Documentation and examples for OWSLib
|
|
||||||
|
|
||||||
%description doc %{common_description}
|
|
||||||
|
|
||||||
This package contains documentation and examples for OWSLib.
|
|
||||||
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%autosetup -n OWSLib-%{version}
|
|
||||||
|
|
||||||
%if %{with tests}
|
|
||||||
# Don’t analyze/report test coverage
|
# Don’t analyze/report test coverage
|
||||||
sed -r -i 's/[-]-cov[^[:blank:]]*[[:blank:]][^[[:blank:]]+//g' tox.ini
|
sed -r -i 's/^([[:blank:]]*)(--cov\b)/\1# \2/' tox.ini
|
||||||
%endif
|
|
||||||
|
|
||||||
# We don’t need shebangs in the examples. The pattern of selecting files
|
|
||||||
# before modifying them with sed keeps us from unnecessarily discarding the
|
|
||||||
# original mtimes on unmodified files.
|
|
||||||
find 'examples' -type f -name '*.py' \
|
|
||||||
-exec gawk '/^#!/ { print FILENAME }; { nextfile }' '{}' '+' |
|
|
||||||
xargs -r sed -r -i '1{/^#!/d}'
|
|
||||||
# Some of them, but not all of them, were executable.
|
|
||||||
chmod -v a-x examples/*.py
|
|
||||||
|
|
||||||
# Because at least one notebook requires Internet access, we must continue past
|
|
||||||
# notebook errors when building documentation.
|
|
||||||
echo 'nbsphinx_allow_errors = True' >> docs/conf.py
|
|
||||||
|
|
||||||
|
|
||||||
%build
|
%check -a
|
||||||
%py3_build
|
|
||||||
|
|
||||||
%if %{with doc_pdf}
|
|
||||||
PYTHONPATH="${PWD}" %make_build -C docs latex \
|
|
||||||
SPHINXOPTS='-j%{?_smp_build_ncpus}'
|
|
||||||
%make_build -C docs/build/latex/en LATEXMKOPTS='-quiet'
|
|
||||||
%endif
|
|
||||||
|
|
||||||
|
|
||||||
%install
|
|
||||||
%py3_install
|
|
||||||
|
|
||||||
|
|
||||||
%check
|
|
||||||
%if %{with tests}
|
|
||||||
# Otherwise, pytest finds the package twice in the Python path and complains.
|
# Otherwise, pytest finds the package twice in the Python path and complains.
|
||||||
rm -rf owslib
|
rm -rf owslib
|
||||||
|
|
||||||
|
|
@ -176,95 +113,30 @@ ignore="${ignore-} --ignore=tests/test_wps_getcapabilities_ceda.py"
|
||||||
ignore="${ignore-} --ignore=tests/test_wps_getcapabilities_usgs.py"
|
ignore="${ignore-} --ignore=tests/test_wps_getcapabilities_usgs.py"
|
||||||
ignore="${ignore-} --ignore-glob=tests/test_wps_request*.py"
|
ignore="${ignore-} --ignore-glob=tests/test_wps_request*.py"
|
||||||
ignore="${ignore-} --ignore-glob=tests/test_wps_response*.py"
|
ignore="${ignore-} --ignore-glob=tests/test_wps_response*.py"
|
||||||
# Not in 0.30.0:
|
k="${k-}${k+ and }not test_metadata"
|
||||||
k="${k-}${k+ and }not test_wmts_example_informatievlaanderen"
|
k="${k-}${k+ and }not test_responsibility"
|
||||||
|
k="${k-}${k+ and }not test_distributor"
|
||||||
|
k="${k-}${k+ and }not test_online_distribution"
|
||||||
|
k="${k-}${k+ and }not test_identification"
|
||||||
|
k="${k-}${k+ and }not test_identification_contact"
|
||||||
|
k="${k-}${k+ and }not test_identification_date"
|
||||||
|
k="${k-}${k+ and }not test_identification_extent"
|
||||||
|
k="${k-}${k+ and }not test_identification_keywords"
|
||||||
|
k="${k-}${k+ and }not test_get_all_contacts"
|
||||||
|
k="${k-}${k+ and }not test_aus"
|
||||||
|
k="${k-}${k+ and }not test_service"
|
||||||
|
k="${k-}${k+ and }not test_md_featurecataloguedesc"
|
||||||
|
k="${k-}${k+ and }not test_md_imagedescription"
|
||||||
|
k="${k-}${k+ and }not test_dq_dataquality"
|
||||||
|
k="${k-}${k+ and }not test_md_reference_system"
|
||||||
|
k="${k-}${k+ and }not test_service2"
|
||||||
|
k="${k-}${k+ and }not test_md_distribution"
|
||||||
|
|
||||||
PYTHONPATH='%{buildroot}%{python3_sitelib}' '%{python3}' -m pytest \
|
%pytest -m 'not online' -k "${k-}" ${ignore-} -v -rs
|
||||||
-m 'not online' -k "${k-}" ${ignore-} -v -rs
|
|
||||||
%else
|
|
||||||
%{py3_check_import owslib
|
|
||||||
owslib
|
|
||||||
owslib.coverage
|
|
||||||
owslib.coverage.wcs100
|
|
||||||
owslib.coverage.wcs110
|
|
||||||
owslib.coverage.wcs111
|
|
||||||
owslib.coverage.wcs200
|
|
||||||
owslib.coverage.wcs201
|
|
||||||
owslib.coverage.wcsBase
|
|
||||||
owslib.coverage.wcsdecoder
|
|
||||||
owslib.crs
|
|
||||||
owslib.csw
|
|
||||||
owslib.dif
|
|
||||||
owslib.etree
|
|
||||||
owslib.feature
|
|
||||||
owslib.feature.common
|
|
||||||
owslib.feature.postrequest
|
|
||||||
owslib.feature.schema
|
|
||||||
owslib.feature.wfs100
|
|
||||||
owslib.feature.wfs110
|
|
||||||
owslib.feature.wfs200
|
|
||||||
owslib.fes
|
|
||||||
owslib.fgdc
|
|
||||||
owslib.gm03
|
|
||||||
owslib.interfaces
|
|
||||||
owslib.iso
|
|
||||||
owslib.iso_che
|
|
||||||
owslib.map
|
|
||||||
owslib.map.common
|
|
||||||
owslib.map.wms111
|
|
||||||
owslib.map.wms130
|
|
||||||
owslib.namespaces
|
|
||||||
owslib.ogcapi
|
|
||||||
owslib.ogcapi.coverages
|
|
||||||
owslib.ogcapi.features
|
|
||||||
owslib.ogcapi.records
|
|
||||||
owslib.ows
|
|
||||||
owslib.owscontext
|
|
||||||
owslib.owscontext.atom
|
|
||||||
owslib.owscontext.common
|
|
||||||
owslib.owscontext.core
|
|
||||||
owslib.owscontext.geojson
|
|
||||||
owslib.sos
|
|
||||||
owslib.swe
|
|
||||||
owslib.swe.common
|
|
||||||
owslib.swe.observation
|
|
||||||
owslib.swe.observation.om
|
|
||||||
owslib.swe.observation.sos100
|
|
||||||
owslib.swe.observation.sos200
|
|
||||||
owslib.swe.observation.waterml2
|
|
||||||
owslib.swe.sensor
|
|
||||||
owslib.swe.sensor.sml
|
|
||||||
owslib.tms
|
|
||||||
owslib.util
|
|
||||||
owslib.waterml
|
|
||||||
owslib.waterml.wml
|
|
||||||
owslib.waterml.wml10
|
|
||||||
owslib.waterml.wml11
|
|
||||||
owslib.wcs
|
|
||||||
owslib.wfs
|
|
||||||
owslib.wmc
|
|
||||||
owslib.wms
|
|
||||||
owslib.wmts
|
|
||||||
owslib.wps}
|
|
||||||
%endif
|
|
||||||
|
|
||||||
|
|
||||||
%files -n python%{python3_pkgversion}-OWSLib
|
%files -n python3-OWSLib -f %{pyproject_files}
|
||||||
%license LICENSE
|
%doc README.md
|
||||||
|
|
||||||
%{python3_sitelib}/owslib
|
|
||||||
%{python3_sitelib}/OWSLib-%{version}-py%{python3_version}.egg-info
|
|
||||||
|
|
||||||
|
|
||||||
%files doc
|
|
||||||
%license LICENSE
|
|
||||||
%doc AUTHORS.rst
|
|
||||||
%doc CHANGES.rst
|
|
||||||
%doc README.rst
|
|
||||||
%doc examples
|
|
||||||
%if %{with doc_pdf}
|
|
||||||
%doc docs/build/latex/en/OWSLib.pdf
|
|
||||||
%endif
|
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
|
|
||||||
2
sources
2
sources
|
|
@ -1 +1 @@
|
||||||
SHA512 (OWSLib-0.28.1-filtered.tar.xz) = cc83e5973adb6d6bd5aa624017a6f7927957979f69a3dbdda1645c2ecb8b9b84bbb03b794440c7d66062d365400502a6176514f0fb8d51b8f06b1aea32c0284d
|
SHA512 (OWSLib-0.35.0-filtered.tar.zst) = be1eb52fa09049b720c1ebd476363e01c6442c9905c9adf0d35ccc11f39b228b9f3e64ed882a7c04987f2f38f9c8500a61aeef61e48a41602098ff22df0ed526
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue