Compare commits

..

4 commits

Author SHA1 Message Date
Jeffrey C. Ollie
6a61b6770c - 2.1.5 (2009-01-06)
- Bugs fixed
-
- * Potential memory leak on exception handling. This was due to a
- problem in Cython, not lxml itself.
- * Failing import on systems that have an io module.
2009-01-06 21:19:25 +00:00
Jeffrey C. Ollie
c24324406c - 2.1.4 (2008-12-12)
- Bugs fixed
-
- * Crash when using an XPath evaluator in multiple threads.
2008-12-13 01:45:08 +00:00
Jeffrey C. Ollie
f4ed42f0bd - 2.1.3 (2008-11-17)
- Bugs fixed
-
- * Ref-count leaks when lxml enters a try-except statement while an
- outside exception lives in sys.exc_*(). This was due to a problem
- in Cython, not lxml itself.
- * Parser Unicode decoding errors could get swallowed by other
- exceptions.
- * Name/import errors in some Python modules.
- * Internal DTD subsets that did not specify a system or public ID
- were not serialised and did not appear in the docinfo property
- of ElementTrees.
- * Fix a pre-Py3k warning when parsing from a gzip file in Py2.6.
- * Test suite fixes for libxml2 2.7.
- * Resolver.resolve_string() did not work for non-ASCII byte strings.
- * Resolver.resolve_file() was broken.
- * Overriding the parser encoding didn't work for many encodings.
2008-11-18 13:41:44 +00:00
Jesse Keating
b73ba2a7a6 Initialize branch F-10 for python-lxml 2008-11-07 04:10:22 +00:00
13 changed files with 185 additions and 1851 deletions

1
.cvsignore Normal file
View file

@ -0,0 +1 @@
lxml-2.1.5.tar.gz

View file

@ -1 +0,0 @@
1

75
.gitignore vendored
View file

@ -1,75 +0,0 @@
lxml-2.2.7.tar.gz
lxml-2.2.7.tar.gz.asc
/lxml-2.2.8.tar.gz
/lxml-2.2.8.tar.gz.asc
/lxml-2.3.tar.gz
/lxml-2.3.tar.gz.asc
/lxml-2.3.1.tar.gz
/lxml-2.3.1.tar.gz.asc
/lxml-2.3.2.tar.gz
/lxml-2.3.2.tar.gz.asc
/lxml-2.3.3.tar.gz
/lxml-2.3.3.tar.gz.asc
/lxml-2.3.5.tar.gz
/lxml-2.3.5.tar.gz.asc
/lxml-3.0.tar.gz
/lxml-3.0.tar.gz.asc
/lxml-3.0.tgz
/lxml-3.0.tgz.asc
/lxml-3.0.1.tgz
/lxml-3.0.1.tgz.asc
/lxml-3.1.0.tgz
/lxml-3.1.0.tgz.asc
/lxml-3.2.0.tgz
/lxml-3.2.0.tgz.asc
/lxml-3.2.1.tgz
/lxml-3.2.1.tgz.asc
/lxml-3.2.3.tgz
/lxml-3.2.3.tgz.asc
/lxml-3.2.4.tgz
/lxml-3.2.4.tgz.asc
/lxml-3.3.0.tgz
/lxml-3.3.0.tgz.asc
/lxml-3.3.2.tgz
/lxml-3.3.2.tgz.asc
/lxml-3.3.3.tgz
/lxml-3.3.3.tgz.asc
/lxml-3.3.5.tgz
/lxml-3.3.5.tgz.asc
/lxml-3.3.6.tgz
/lxml-3.3.6.tgz.asc
/lxml-3.4.4.tgz
/lxml-3.4.4.tgz.asc
/lxml-3.6.4.tar.gz
/lxml-3.7.0.tar.gz
/lxml-3.7.1.tgz
/lxml-3.7.2.tgz
/lxml-3.8.0.tgz
/lxml-4.0.0.tgz
/lxml-4.1.1.tgz
/lxml-4.2.1.tgz
/lxml-4.2.3.tgz
/lxml-4.2.4.tgz
/lxml-4.2.5.tgz
/lxml-4.4.0.tgz
/lxml-4.4.1.tgz
/lxml-4.5.1.tgz
/lxml-4.6.2.tar.gz
/lxml-4.6.3.tar.gz
/lxml-4.7.1.tar.gz
/lxml-4.9.1.tar.gz
/lxml-4.9.2.tar.gz
/lxml-4.9.2-no-isoschematron.tar.gz
/lxml-4.9.2-no-isoschematron-rng.tar.gz
/lxml-4.9.3-no-isoschematron-rng.tar.gz
/lxml-4.9.4-no-isoschematron-rng.tar.gz
/lxml-5.1.0-no-isoschematron-rng.tar.gz
/lxml-5.2.0-no-isoschematron-rng.tar.gz
/lxml-5.2.1-no-isoschematron-rng.tar.gz
/lxml-5.3.0-no-isoschematron-rng.tar.gz
/lxml-5.3.1-no-isoschematron-rng.tar.gz
/lxml-5.3.2-no-isoschematron-rng.tar.gz
/lxml-5.4.0-no-isoschematron-rng.tar.gz
/lxml-6.0.0-no-isoschematron-rng.tar.gz
/lxml-6.0.1-no-isoschematron-rng.tar.gz
/lxml-6.0.2-no-isoschematron-rng.tar.gz

21
Makefile Normal file
View file

@ -0,0 +1,21 @@
# Makefile for source rpm: python-lxml
# $Id$
NAME := python-lxml
SPECFILE = $(firstword $(wildcard *.spec))
define find-makefile-common
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
endef
MAKEFILE_COMMON := $(shell $(find-makefile-common))
ifeq ($(MAKEFILE_COMMON),)
# attept a checkout
define checkout-makefile-common
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
endef
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
endif
include $(MAKEFILE_COMMON)

1
branch Normal file
View file

@ -0,0 +1 @@
F-10

1642
changelog

File diff suppressed because it is too large Load diff

1
ci.fmf
View file

@ -1 +0,0 @@
resultsdb-testcase: separate

View file

@ -1,8 +0,0 @@
--- !Policy
product_versions:
- fedora-*
decision_contexts:
- bodhi_update_push_testing
- bodhi_update_push_stable
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/smoke.functional}

View file

@ -1,28 +0,0 @@
#! /bin/bash -ex
# Download a release of lxml (if missing) and remove the isoschematron module from it
version=$1
if [ -z "${version}" ]; then
echo "Usage: $0 VERSION" >& 2
echo "" >& 2
echo "example: $0 4.9.2" >& 2
exit 1
fi
versionedname=lxml-${version}
orig_archive=${versionedname}.tar.gz
new_archive=${versionedname}-no-isoschematron-rng.tar.gz
if [ ! -e ${orig_archive} ]; then
wget -N https://files.pythonhosted.org/packages/source/l/lxml/${orig_archive}
fi
deleted_directory=lxml-${version}/src/lxml/isoschematron/resources/rng
# tar --delete does not operate on compressed archives, so do
# gz decompression explicitly
gzip --decompress ${orig_archive}
tar -v --delete -f ${orig_archive//.gz} ${deleted_directory}
gzip -cf ${orig_archive//.gz} > ${new_archive}

View file

@ -1,7 +0,0 @@
import lxml.etree as et
s = '<foo><bar baz="xyzzy">a<![CDATA[b]]>c</bar></foo>'
x = et.fromstring(s)
t = x.find('bar').text
print(t)
if t != 'abc':
raise Exception()

View file

@ -1,12 +0,0 @@
summary: Basic smoke test
discover:
how: shell
tests:
- name: /smoke/import-python-module
test: |
python3 -c 'import importlib as il; print(il.import_module("lxml"))'
- name: /smoke/etree-fromstring
test: |
python3 plans/etree-fromstring.py
execute:
how: tmt

View file

@ -1,94 +1,179 @@
%{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
Name: python-lxml Name: python-lxml
Version: 6.0.2 Version: 2.1.5
Release: %autorelease Release: 1%{?dist}
Summary: XML processing library combining libxml2/libxslt with the ElementTree API Summary: ElementTree-like Python bindings for libxml2 and libxslt
# The lxml project is licensed under BSD-3-Clause Group: Development/Libraries
# Some code is derived from ElementTree and cElementTree License: BSD
# thus using the MIT-CMU elementtree license URL: http://codespeak.net/lxml/
# .xsl schematron files are under the MIT license Source0: http://cheeseshop.python.org/packages/source/l/lxml/lxml-%{version}.tar.gz
License: BSD-3-Clause AND MIT-CMU AND MIT #Source0: http://codespeak.net/lxml/lxml-%{version}.tgz
URL: https://github.com/lxml/lxml BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# We use the get-lxml-source.sh script to generate the tarball
# without the isoschematron RNG validation file under a problematic license.
# See: https://gitlab.com/fedora/legal/fedora-license-data/-/issues/154
Source0: lxml-%{version}-no-isoschematron-rng.tar.gz
Source1: get-lxml-source.sh
BuildRequires: gcc
BuildRequires: libxml2-devel
BuildRequires: libxslt-devel BuildRequires: libxslt-devel
BuildRequires: python3-devel
# Some of the extras create a build dependency loop. %if 0%{?fedora} >= 8
# - [cssselect] Requires cssselect BuildRequires lxml BuildRequires: python-setuptools-devel
# - [html5] Requires html5lib BuildRequires lxml %else
# - [htmlsoup] Requires beautifulsoup4 Requires lxml BuildRequires: python-setuptools
# - [html_clean] Requires lxml-html-clean Requires lxml
# Hence we provide a bcond to disable the extras altogether.
# By default, the extras are disabled in RHEL, to avoid dependencies.
%bcond extras %{undefined rhel}
%global _description \
lxml is a Pythonic, mature binding for the libxml2 and libxslt libraries. It\
provides safe and convenient access to these libraries using the ElementTree It\
extends the ElementTree API significantly to offer support for XPath, RelaxNG,\
XML Schema, XSLT, C14N and much more.
%description %{_description}
%package -n python3-lxml
Summary: %{summary}
%if %{with extras}
Suggests: python3-lxml+cssselect
Suggests: python3-lxml+html5
Suggests: python3-lxml+htmlsoup
Suggests: python3-lxml+html_clean
%endif %endif
%description -n python3-lxml %{_description} %description
lxml provides a Python binding to the libxslt and libxml2 libraries.
Python 3 version. It follows the ElementTree API as much as possible in order to provide
a more Pythonic interface to libxml2 and libxslt than the default
%if %{with extras} bindings. In particular, lxml deals with Python Unicode strings
%pyproject_extras_subpkg -n python3-lxml cssselect html5 htmlsoup html_clean rather than encoded UTF-8 and handles memory management automatically,
%endif unlike the default bindings.
%prep %prep
%autosetup -n lxml-%{version} -p1 %setup -q -n lxml-%{version}
# Don't run html5lib tests --without extras
%{!?without_extras:rm src/lxml/html/tests/test_html5parser.py}
# Remove limit for version of Cython chmod a-x doc/rest2html.py
sed -i "s/Cython.*/Cython/" requirements.txt
sed -i 's/"Cython.*",/"Cython",/' pyproject.toml
%generate_buildrequires
%pyproject_buildrequires -x source%{?with_extras:,cssselect,html5,htmlsoup,html_clean}
%build %build
# Remove pregenerated Cython C sources CFLAGS="%{optflags}" %{__python} -c 'import setuptools; execfile("setup.py")' build
# We need to do this after %%pyproject_buildrequires because setup.py errors
# without Cython and without the .c files.
find -type f -name '*.c' -print -delete >&2
export WITH_CYTHON=true
%pyproject_wheel
%install %install
%pyproject_install rm -rf %{buildroot}
%pyproject_save_files lxml %{__python} -c 'import setuptools; execfile("setup.py")' install --skip-build --root %{buildroot}
%check %clean
# The tests assume inplace build, so we copy the built library to source-dir. rm -rf %{buildroot}
# If not done that, Python can either import the tests or the extension modules, but not both.
cp -a build/lib.%{python3_platform}-*/* src/
# The options are: verbose, unit, functional
%{python3} test.py -vuf
%files -n python3-lxml -f %{pyproject_files} %files
%license doc/licenses/BSD.txt doc/licenses/elementtree.txt %defattr(-,root,root,-)
%doc README.rst %doc README.txt LICENSES.txt PKG-INFO CREDITS.txt CHANGES.txt doc/
%{python_sitearch}/*
%changelog %changelog
%autochangelog * Tue Jan 6 2009 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.1.5-1
- 2.1.5 (2009-01-06)
- Bugs fixed
-
- * Potential memory leak on exception handling. This was due to a
- problem in Cython, not lxml itself.
- * Failing import on systems that have an io module.
* Fri Dec 12 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.1.4-1
- 2.1.4 (2008-12-12)
- Bugs fixed
-
- * Crash when using an XPath evaluator in multiple threads.
* Mon Nov 17 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.1.3-1
- 2.1.3 (2008-11-17)
- Bugs fixed
-
- * Ref-count leaks when lxml enters a try-except statement while an
- outside exception lives in sys.exc_*(). This was due to a problem
- in Cython, not lxml itself.
- * Parser Unicode decoding errors could get swallowed by other
- exceptions.
- * Name/import errors in some Python modules.
- * Internal DTD subsets that did not specify a system or public ID
- were not serialised and did not appear in the docinfo property
- of ElementTrees.
- * Fix a pre-Py3k warning when parsing from a gzip file in Py2.6.
- * Test suite fixes for libxml2 2.7.
- * Resolver.resolve_string() did not work for non-ASCII byte strings.
- * Resolver.resolve_file() was broken.
- * Overriding the parser encoding didn't work for many encodings.
* Fri Sep 5 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.1.2-1
- 2.1.2 (2008-09-05)
- Features added
-
- * lxml.etree now tries to find the absolute path name of files when
- parsing from a file-like object. This helps custom resolvers when
- resolving relative URLs, as lixbml2 can prepend them with the path of
- the source document.
-
- Bugs fixed
-
- * Memory problem when passing documents between threads.
- * Target parser did not honour the recover option and raised an exception
- instead of calling .close() on the target.
* Fri Jul 25 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.1.1-1
- Update to 2.1.1
* Fri Jun 20 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.0.7-1
- Update to 2.0.7
- Update download URL
* Sat May 31 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.0.6-1
- Update to 2.0.6
* Thu May 8 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.0.5-1
- Update to 2.0.5
* Wed Mar 26 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.0.3-1
- Update to 2.0.3
* Sat Feb 23 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.0.2-1
- Update to 2.0.2
* Tue Feb 19 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.0.1-1
- Update to 2.0.1
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.3.6-2
- Autorebuild for GCC 4.3
* Mon Nov 4 2007 Jeffrey C. Ollie <jeff@ocjtech.us> - 1.3.6-1
- Update to 1.3.6.
* Mon Oct 22 2007 Jeffrey C. Ollie <jeff@ocjtech.us> - 1.3.5-1
- Update to 1.3.5.
* Thu Aug 30 2007 Jeffrey C. Ollie <jeff@ocjtech.us> - 1.3.4-1
- Update to 1.3.4.
* Wed Aug 29 2007 Fedora Release Engineering <rel-eng at fedoraproject dot org> - 1.3.3-3
- Rebuild for selinux ppc32 issue.
* Tue Aug 28 2007 Jeffrey C. Ollie <jeff@ocjtech.us> - 1.3.3-2
- BR python-setuptools-devel
* Mon Jul 30 2007 Jeffrey C. Ollie <jeff@ocjtech.us> - 1.3.3-1
- Update to 1.3.3
* Fri Jan 19 2007 Jeffrey C. Ollie <jeff@ocjtech.us> - 1.1.2-1
- Update to 1.1.2
* Thu Dec 14 2006 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.0.3-3
- Rebuild for new Python
* Sat Sep 16 2006 Shahms E. King <shahms@shahms.com> 1.0.3-2
- Rebuild for FC6
* Thu Aug 17 2006 Shahms E. King <shahms@shahms.com> 1.0.3-1
- Update to new upstream version
* Fri Aug 11 2006 Shahms E. King <shahms@shahms.com> 1.0.2-2
- Include, don't ghost .pyo files per new guidelines
* Fri Jul 07 2006 Shahms E. King <shahms@shahms.com> 1.0.2-1
- Update to new upstream release
* Mon Jun 26 2006 Shahms E. King <shahms@shahms.com> 1.0.1-1
- Update to new upstream release
* Fri Jun 02 2006 Shahms E. King <shahms@shahms.com> 1.0-1
- Update to new upstream 1.0 release
* Wed Apr 26 2006 Shahms E. King <shahms@shahms.com> 0.9.1-3
- Add python-setuptools to BuildRequires
- Use dist tag
* Wed Apr 26 2006 Shahms E. King <shahms@shahms.com> 0.9.1-2
- Fix summary and description
* Tue Apr 18 2006 Shahms E. King <shahms@shahms.com> 0.9.1-1
- update the new upstream version
- remove Pyrex build req
* Tue Dec 13 2005 Shahms E. King <shahms@shahms.com> 0.8-1
- Initial package

View file

@ -1 +1 @@
SHA512 (lxml-6.0.2-no-isoschematron-rng.tar.gz) = dc89f75c3a3c828a46bcb2eefbebe8f98ce8072b9fb66f8ef81edbf2babed74e4c54e26392603319d60ab3bfab6a4795eedc85b28efba815797d43d53aae4060 22567ccc6ab8ec8c90c335c810cabe11 lxml-2.1.5.tar.gz