diff options
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | python-PyRSS2Gen.spec | 363 | ||||
| -rw-r--r-- | sources | 1 | 
3 files changed, 365 insertions, 0 deletions
@@ -0,0 +1 @@ +/PyRSS2Gen-1.1.tar.gz diff --git a/python-PyRSS2Gen.spec b/python-PyRSS2Gen.spec new file mode 100644 index 0000000..1b2c6a9 --- /dev/null +++ b/python-PyRSS2Gen.spec @@ -0,0 +1,363 @@ +%global _empty_manifest_terminate_build 0 +Name:		python-PyRSS2Gen +Version:	1.1 +Release:	1 +Summary:	Generate RSS2 using a Python data structure +License:	BSD +URL:		http://dalkescientific.com/Python/PyRSS2Gen.html +Source0:	https://mirrors.nju.edu.cn/pypi/web/packages/6d/01/fd610d5fc86f7dbdbefc4baa8f7fe15a2e5484244c41dcf363ca7e89f60c/PyRSS2Gen-1.1.tar.gz +BuildArch:	noarch + + +%description +I've finally decided to catch up with 1999 and play around a bit with +RSS.  I looked around, and while there are many ways to read RSS there +are remarkably few which write them.  I could use a DOM or other +construct, but I want the code to feel like Python.  There are more +Pythonic APIs I might use, like the effbot's ElementTree, but I also +wanted integers, dates, and lists to be real integers, dates, and +lists.  (And I want bug-eyed monsters from Alpha Centauri to be *real* +bug-eyed monsters from Alpha Centauri - is that too much I ask you?) +The RSS generators I found were built around print statements. +Workable, but they almost invariably left out proper HTML escaping the +sort which leads to Mark Pilgrim's to write feed_parser, to make sense +of documents which are neither XML nor HTML.  Annoying, but sadly all +too common. +So I messed around a bit with the spec from + http://blogs.law.harvard.edu/tech/rss +The result looks like this: +import datetime +import PyRSS2Gen +rss = PyRSS2Gen.RSS2( +    title = "Andrew's PyRSS2Gen feed", +    link = "http://www.dalkescientific.com/Python/PyRSS2Gen.html", +    description = "The latest news about PyRSS2Gen, a " +                  "Python library for generating RSS2 feeds", +    lastBuildDate = datetime.datetime.now(), +    items = [ +       PyRSS2Gen.RSSItem( +         title = "PyRSS2Gen-0.0 released", +         link = "http://www.dalkescientific.com/news/030906-PyRSS2Gen.html", +         description = "Dalke Scientific today announced PyRSS2Gen-0.0, " +                       "a library for generating RSS feeds for Python.  ", +         guid = PyRSS2Gen.Guid("http://www.dalkescientific.com/news/" +                          "030906-PyRSS2Gen.html"), +         pubDate = datetime.datetime(2003, 9, 6, 21, 31)), +       PyRSS2Gen.RSSItem( +         title = "Thoughts on RSS feeds for bioinformatics", +         link = "http://www.dalkescientific.com/writings/diary/" +                "archive/2003/09/06/RSS.html", +         description = "One of the reasons I wrote PyRSS2Gen was to " +                       "experiment with RSS for data collection in " +                       "bioinformatics.  Last year I came across...", +         guid = PyRSS2Gen.Guid("http://www.dalkescientific.com/writings/" +                               "diary/archive/2003/09/06/RSS.html"), +         pubDate = datetime.datetime(2003, 9, 6, 21, 49)), +    ]) +rss.write_xml(open("pyrss2gen.xml", "w")) +The output does not contain newlines, so if you want to read it, +you'll need to use your favorite XML tools to reformat it. +RSS is not a fixed format.  People are free to add various metadata, +like Dublin Core elements. +The RSS objects are converted to XML using the 'publish' method, which +takes a SAX2 ContentHandler.  If you want different output, implement +your own 'publish'.  The "simple" data types which takes a string, +int, or date, can be replaced with a publishable object, so you can +add metadata to, say, the "description" field.  To support new +elements for RSS and RSSItem, derive from them and use the +'publish_extensions" hook.  To add your own attributes (needed for +namespace declarations), redefine 'element_attrs' or 'rss_attrs' in +your subclass. +To use a different encoding, create your own ContentHandler instead of +using the helper methods 'to_xml' and 'write_xml.'  You'll need to +make sure the 'characters' method in the handler does the appropriate +translation. +The "categories" list is somewhat special.  It needs to be a list and +doesn't have a publish method.  That's because the RSS spec doesn't +have an explicit concept for the set of categories -- an RSS2 channel +can have 0 or more 'category' elements, but doesn't have a "list of +categories" -- my "categories" attribute is an API fiction. +BUGS: +Several people have used this package since its first release in +September of 2003 and reported a couple of bugs.  All those are fixed. +There are no known bugs. +The name PyRSS2Gen is a mouthful.  It didn't think it was useful to +come up with a cute name.  You might consider having +   import PyRSS2Gen as RSS2 +in any code which uses this module.  I'm not changing the name because +anyone who reads "RSS2" will likely think it's a parser and not a +generator.  Plus, the current name is very easy to find via a web +search. +LICENSE: +This is copyright (c) by Andrew Dalke Scientific, AB (previously +'Dalke Scientific Software, LLC') and released under the BSD +license. See the file LICENSE in the distribution, or  +  http://www.opensource.org/licenses/bsd-license.php +for details. +CHANGES for 1.1: Released August 25, 2012 +  - Ported to Python 3.x. Thanks to Graham Bell for the initial patch. +CHANGES for 1.0: Released November 6, 2005 +  - Many people (Richard Chamberlain, Daniel Hsu, Leonart Richardson +  and Daniel Holth) pointed out that Guid sets "isPermaLink" (with a +  "L" not "l").  Fixed, and changed it so the isPermaLink RSS attribute +  is always either "true" or "false" instead of assuming empty means false. +  - Added patches from Erik de Jonge and MATSUNO Tokuhiro to set the +  output encoding. +  - Implemented a suggestion by Daniel Hoth to convert the enclosure +  length to a string. +CHANGES for 0.1.1: Released in September 2003 +  - retroactively renamed "0.0" to "0.1" +  - fixed bug in Image height.  Patch thanks to Edward Dale. + +%package -n python3-PyRSS2Gen +Summary:	Generate RSS2 using a Python data structure +Provides:	python-PyRSS2Gen +BuildRequires:	python3-devel +BuildRequires:	python3-setuptools +BuildRequires:	python3-pip +%description -n python3-PyRSS2Gen +I've finally decided to catch up with 1999 and play around a bit with +RSS.  I looked around, and while there are many ways to read RSS there +are remarkably few which write them.  I could use a DOM or other +construct, but I want the code to feel like Python.  There are more +Pythonic APIs I might use, like the effbot's ElementTree, but I also +wanted integers, dates, and lists to be real integers, dates, and +lists.  (And I want bug-eyed monsters from Alpha Centauri to be *real* +bug-eyed monsters from Alpha Centauri - is that too much I ask you?) +The RSS generators I found were built around print statements. +Workable, but they almost invariably left out proper HTML escaping the +sort which leads to Mark Pilgrim's to write feed_parser, to make sense +of documents which are neither XML nor HTML.  Annoying, but sadly all +too common. +So I messed around a bit with the spec from + http://blogs.law.harvard.edu/tech/rss +The result looks like this: +import datetime +import PyRSS2Gen +rss = PyRSS2Gen.RSS2( +    title = "Andrew's PyRSS2Gen feed", +    link = "http://www.dalkescientific.com/Python/PyRSS2Gen.html", +    description = "The latest news about PyRSS2Gen, a " +                  "Python library for generating RSS2 feeds", +    lastBuildDate = datetime.datetime.now(), +    items = [ +       PyRSS2Gen.RSSItem( +         title = "PyRSS2Gen-0.0 released", +         link = "http://www.dalkescientific.com/news/030906-PyRSS2Gen.html", +         description = "Dalke Scientific today announced PyRSS2Gen-0.0, " +                       "a library for generating RSS feeds for Python.  ", +         guid = PyRSS2Gen.Guid("http://www.dalkescientific.com/news/" +                          "030906-PyRSS2Gen.html"), +         pubDate = datetime.datetime(2003, 9, 6, 21, 31)), +       PyRSS2Gen.RSSItem( +         title = "Thoughts on RSS feeds for bioinformatics", +         link = "http://www.dalkescientific.com/writings/diary/" +                "archive/2003/09/06/RSS.html", +         description = "One of the reasons I wrote PyRSS2Gen was to " +                       "experiment with RSS for data collection in " +                       "bioinformatics.  Last year I came across...", +         guid = PyRSS2Gen.Guid("http://www.dalkescientific.com/writings/" +                               "diary/archive/2003/09/06/RSS.html"), +         pubDate = datetime.datetime(2003, 9, 6, 21, 49)), +    ]) +rss.write_xml(open("pyrss2gen.xml", "w")) +The output does not contain newlines, so if you want to read it, +you'll need to use your favorite XML tools to reformat it. +RSS is not a fixed format.  People are free to add various metadata, +like Dublin Core elements. +The RSS objects are converted to XML using the 'publish' method, which +takes a SAX2 ContentHandler.  If you want different output, implement +your own 'publish'.  The "simple" data types which takes a string, +int, or date, can be replaced with a publishable object, so you can +add metadata to, say, the "description" field.  To support new +elements for RSS and RSSItem, derive from them and use the +'publish_extensions" hook.  To add your own attributes (needed for +namespace declarations), redefine 'element_attrs' or 'rss_attrs' in +your subclass. +To use a different encoding, create your own ContentHandler instead of +using the helper methods 'to_xml' and 'write_xml.'  You'll need to +make sure the 'characters' method in the handler does the appropriate +translation. +The "categories" list is somewhat special.  It needs to be a list and +doesn't have a publish method.  That's because the RSS spec doesn't +have an explicit concept for the set of categories -- an RSS2 channel +can have 0 or more 'category' elements, but doesn't have a "list of +categories" -- my "categories" attribute is an API fiction. +BUGS: +Several people have used this package since its first release in +September of 2003 and reported a couple of bugs.  All those are fixed. +There are no known bugs. +The name PyRSS2Gen is a mouthful.  It didn't think it was useful to +come up with a cute name.  You might consider having +   import PyRSS2Gen as RSS2 +in any code which uses this module.  I'm not changing the name because +anyone who reads "RSS2" will likely think it's a parser and not a +generator.  Plus, the current name is very easy to find via a web +search. +LICENSE: +This is copyright (c) by Andrew Dalke Scientific, AB (previously +'Dalke Scientific Software, LLC') and released under the BSD +license. See the file LICENSE in the distribution, or  +  http://www.opensource.org/licenses/bsd-license.php +for details. +CHANGES for 1.1: Released August 25, 2012 +  - Ported to Python 3.x. Thanks to Graham Bell for the initial patch. +CHANGES for 1.0: Released November 6, 2005 +  - Many people (Richard Chamberlain, Daniel Hsu, Leonart Richardson +  and Daniel Holth) pointed out that Guid sets "isPermaLink" (with a +  "L" not "l").  Fixed, and changed it so the isPermaLink RSS attribute +  is always either "true" or "false" instead of assuming empty means false. +  - Added patches from Erik de Jonge and MATSUNO Tokuhiro to set the +  output encoding. +  - Implemented a suggestion by Daniel Hoth to convert the enclosure +  length to a string. +CHANGES for 0.1.1: Released in September 2003 +  - retroactively renamed "0.0" to "0.1" +  - fixed bug in Image height.  Patch thanks to Edward Dale. + +%package help +Summary:	Development documents and examples for PyRSS2Gen +Provides:	python3-PyRSS2Gen-doc +%description help +I've finally decided to catch up with 1999 and play around a bit with +RSS.  I looked around, and while there are many ways to read RSS there +are remarkably few which write them.  I could use a DOM or other +construct, but I want the code to feel like Python.  There are more +Pythonic APIs I might use, like the effbot's ElementTree, but I also +wanted integers, dates, and lists to be real integers, dates, and +lists.  (And I want bug-eyed monsters from Alpha Centauri to be *real* +bug-eyed monsters from Alpha Centauri - is that too much I ask you?) +The RSS generators I found were built around print statements. +Workable, but they almost invariably left out proper HTML escaping the +sort which leads to Mark Pilgrim's to write feed_parser, to make sense +of documents which are neither XML nor HTML.  Annoying, but sadly all +too common. +So I messed around a bit with the spec from + http://blogs.law.harvard.edu/tech/rss +The result looks like this: +import datetime +import PyRSS2Gen +rss = PyRSS2Gen.RSS2( +    title = "Andrew's PyRSS2Gen feed", +    link = "http://www.dalkescientific.com/Python/PyRSS2Gen.html", +    description = "The latest news about PyRSS2Gen, a " +                  "Python library for generating RSS2 feeds", +    lastBuildDate = datetime.datetime.now(), +    items = [ +       PyRSS2Gen.RSSItem( +         title = "PyRSS2Gen-0.0 released", +         link = "http://www.dalkescientific.com/news/030906-PyRSS2Gen.html", +         description = "Dalke Scientific today announced PyRSS2Gen-0.0, " +                       "a library for generating RSS feeds for Python.  ", +         guid = PyRSS2Gen.Guid("http://www.dalkescientific.com/news/" +                          "030906-PyRSS2Gen.html"), +         pubDate = datetime.datetime(2003, 9, 6, 21, 31)), +       PyRSS2Gen.RSSItem( +         title = "Thoughts on RSS feeds for bioinformatics", +         link = "http://www.dalkescientific.com/writings/diary/" +                "archive/2003/09/06/RSS.html", +         description = "One of the reasons I wrote PyRSS2Gen was to " +                       "experiment with RSS for data collection in " +                       "bioinformatics.  Last year I came across...", +         guid = PyRSS2Gen.Guid("http://www.dalkescientific.com/writings/" +                               "diary/archive/2003/09/06/RSS.html"), +         pubDate = datetime.datetime(2003, 9, 6, 21, 49)), +    ]) +rss.write_xml(open("pyrss2gen.xml", "w")) +The output does not contain newlines, so if you want to read it, +you'll need to use your favorite XML tools to reformat it. +RSS is not a fixed format.  People are free to add various metadata, +like Dublin Core elements. +The RSS objects are converted to XML using the 'publish' method, which +takes a SAX2 ContentHandler.  If you want different output, implement +your own 'publish'.  The "simple" data types which takes a string, +int, or date, can be replaced with a publishable object, so you can +add metadata to, say, the "description" field.  To support new +elements for RSS and RSSItem, derive from them and use the +'publish_extensions" hook.  To add your own attributes (needed for +namespace declarations), redefine 'element_attrs' or 'rss_attrs' in +your subclass. +To use a different encoding, create your own ContentHandler instead of +using the helper methods 'to_xml' and 'write_xml.'  You'll need to +make sure the 'characters' method in the handler does the appropriate +translation. +The "categories" list is somewhat special.  It needs to be a list and +doesn't have a publish method.  That's because the RSS spec doesn't +have an explicit concept for the set of categories -- an RSS2 channel +can have 0 or more 'category' elements, but doesn't have a "list of +categories" -- my "categories" attribute is an API fiction. +BUGS: +Several people have used this package since its first release in +September of 2003 and reported a couple of bugs.  All those are fixed. +There are no known bugs. +The name PyRSS2Gen is a mouthful.  It didn't think it was useful to +come up with a cute name.  You might consider having +   import PyRSS2Gen as RSS2 +in any code which uses this module.  I'm not changing the name because +anyone who reads "RSS2" will likely think it's a parser and not a +generator.  Plus, the current name is very easy to find via a web +search. +LICENSE: +This is copyright (c) by Andrew Dalke Scientific, AB (previously +'Dalke Scientific Software, LLC') and released under the BSD +license. See the file LICENSE in the distribution, or  +  http://www.opensource.org/licenses/bsd-license.php +for details. +CHANGES for 1.1: Released August 25, 2012 +  - Ported to Python 3.x. Thanks to Graham Bell for the initial patch. +CHANGES for 1.0: Released November 6, 2005 +  - Many people (Richard Chamberlain, Daniel Hsu, Leonart Richardson +  and Daniel Holth) pointed out that Guid sets "isPermaLink" (with a +  "L" not "l").  Fixed, and changed it so the isPermaLink RSS attribute +  is always either "true" or "false" instead of assuming empty means false. +  - Added patches from Erik de Jonge and MATSUNO Tokuhiro to set the +  output encoding. +  - Implemented a suggestion by Daniel Hoth to convert the enclosure +  length to a string. +CHANGES for 0.1.1: Released in September 2003 +  - retroactively renamed "0.0" to "0.1" +  - fixed bug in Image height.  Patch thanks to Edward Dale. + +%prep +%autosetup -n PyRSS2Gen-1.1 + +%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-PyRSS2Gen -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon Mar 06 2023 Python_Bot <Python_Bot@openeuler.org> - 1.1-1 +- Package Spec generated @@ -0,0 +1 @@ +3529f831c6a4ed717b55315974e16317  PyRSS2Gen-1.1.tar.gz  | 
