Compare commits

10 Commits

Author SHA256 Message Date
8870859d48 Accepting request 1294921 from devel:languages:python
- Do not install testsuite.
- Add patch support-new-bs4.patch:
  * Support new bs4 changes.

OBS-URL: https://build.opensuse.org/request/show/1294921
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pelican?expand=0&rev=28
2025-07-22 10:20:43 +00:00
a410b543b7 - Do not install testsuite.
- Add patch support-new-bs4.patch:
  * Support new bs4 changes.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pelican?expand=0&rev=60
2025-07-22 03:10:12 +00:00
4f88200de7 Accepting request 1238504 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1238504
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pelican?expand=0&rev=27
2025-01-17 17:43:45 +00:00
2ae2bf3040 Accepting request 1238334 from home:benoit_monin:branches:devel:languages:python
- update to version 4.11.0
- increase the minimum version of typogrify to 2.1.0

OBS-URL: https://build.opensuse.org/request/show/1238334
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pelican?expand=0&rev=58
2025-01-17 13:23:07 +00:00
34bc37ebde Accepting request 1227204 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1227204
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pelican?expand=0&rev=26
2024-11-30 12:27:44 +00:00
4101d7335d Accepting request 1227184 from home:benoit_monin:branches:devel:languages:python
update to version 4.10.2

OBS-URL: https://build.opensuse.org/request/show/1227184
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pelican?expand=0&rev=56
2024-11-28 22:49:25 +00:00
e73181a371 Accepting request 1204601 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1204601
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pelican?expand=0&rev=25
2024-09-30 13:40:46 +00:00
784bf4d18b Accepting request 1204405 from home:benoit_monin:branches:devel:languages:python
- update to version 4.10.1
- add build dependency python-pdm-backend

OBS-URL: https://build.opensuse.org/request/show/1204405
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pelican?expand=0&rev=54
2024-09-29 23:30:02 +00:00
5c5e57a12f Accepting request 1201615 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1201615
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pelican?expand=0&rev=24
2024-09-17 16:19:37 +00:00
ca0456efd8 Accepting request 1201471 from home:benoit_monin:branches:devel:languages:python
update to version 4.10.0

OBS-URL: https://build.opensuse.org/request/show/1201471
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pelican?expand=0&rev=52
2024-09-17 12:42:36 +00:00
5 changed files with 169 additions and 11 deletions

3
pelican-4.11.0-gh.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d18b0a9b2cf0427d05b9b8a955bf7bb1028c9849fb2fa44c562d0fe34b6e3655
size 1573316

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6c5f2a15470600d2d8a0955ad48619dd1c8c063fa901d6cde46c9524a2eb974f
size 1374443

View File

@@ -1,3 +1,59 @@
-------------------------------------------------------------------
Tue Jul 22 03:09:19 UTC 2025 - Steve Kowalik <steven.kowalik@suse.com>
- Do not install testsuite.
- Add patch support-new-bs4.patch:
* Support new bs4 changes.
-------------------------------------------------------------------
Thu Jan 16 20:16:19 UTC 2025 - Benoît Monin <benoit.monin@gmx.fr>
- update to version 4.11.0:
* Add setting to selectively omit Typogrify filters (#3439)
* Add more blocks to the Simple themes base template, making it
easier to create new themes by inheriting from the Simple theme
(#3405)
* Fix auto-reload behavior upon changes to the theme, content or
settings. Make default IGNORE_FILES recursively ignore all
hidden files as well as the default filters from
watchfiles.DefaultFilter. (#3441)
* Get current year from the SOURCE_DATE_EPOCH environment
variable, if available (#3430)
* Add Python 3.13 to test matrix and remove Python 3.8 (#3435)
* Require Typogrify 2.1+ and Pygments <2.19
- increase the minimum version of typogrify to 2.1.0
-------------------------------------------------------------------
Thu Nov 28 17:57:44 UTC 2024 - Benoît Monin <benoit.monin@gmx.fr>
- update to version 4.10.2:
* Change IGNORE_FILES setting default to ignore all hidden files
* Fix SUMMARY_MAX_PARAGRAPHS not being respected in some
combinations with SUMMARY_MAX_LENGTH
-------------------------------------------------------------------
Sat Sep 28 20:22:21 UTC 2024 - Benoît Monin <benoit.monin@gmx.fr>
- update to version 4.10.1:
* Fix error when running pelican -r -l
* Fix symlink handling in pelican-themes
- add build dependency python-pdm-backend
-------------------------------------------------------------------
Mon Sep 16 19:41:55 UTC 2024 - Benoît Monin <benoit.monin@gmx.fr>
- update to version 4.10.0:
* Add setting to specify summary via paragraph count
* Add new status to skip generation of a post
* Add setting to append ref parameter to links in feeds
* Configure logging handler via --log-handler CLI option
* Resolve intra-site links in summaries
* Warn when files are not processed due to disabled readers
* Add Medium post importer
* Improve GitHub Pages workflow
* Improve code test coverage
* Translate documentation into Simplified Chinese
-------------------------------------------------------------------
Fri Dec 1 17:26:21 UTC 2023 - Matej Cepl <mcepl@cepl.eu>

View File

@@ -1,7 +1,7 @@
#
# spec file for package python-pelican
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,13 +18,14 @@
%{?sle15_python_module_pythons}
Name: python-pelican
Version: 4.9.1
Version: 4.11.0
Release: 0
Summary: A tool to generate a static blog from reStructuredText or Markdown input files
License: AGPL-3.0-only
Group: Development/Languages/Python
URL: https://getpelican.com/
Source: https://github.com/getpelican/pelican/archive/refs/tags/%{version}.tar.gz#/pelican-%{version}-gh.tar.gz
# PATCH-FIX-UPSTREAM gh#getpelican/pelican#3461
Patch0: support-new-bs4.patch
BuildRequires: %{python_module Jinja2 >= 3.1.2}
BuildRequires: %{python_module Pygments >= 2.16.1}
BuildRequires: %{python_module Unidecode >= 1.3.7}
@@ -33,6 +34,7 @@ BuildRequires: %{python_module blinker >= 1.7.0}
BuildRequires: %{python_module docutils >= 0.20.1}
BuildRequires: %{python_module feedgenerator >= 2.1.0}
BuildRequires: %{python_module ordered-set >= 4.1.0}
BuildRequires: %{python_module pdm-backend}
BuildRequires: %{python_module pdm}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module python-dateutil >= 2.8.2}
@@ -53,11 +55,11 @@ Requires: python-python-dateutil >= 2.8.2
Requires: python-rich >= 13.6.0
Requires: python-watchfiles >= 0.21.0
Requires(post): update-alternatives
Requires(postun):update-alternatives
Requires(postun): update-alternatives
Recommends: make
Suggests: asciidoc
Suggests: python-Markdown >= 3.5.1
Suggests: python-typogrify >= 2.0.7
Suggests: python-typogrify >= 2.1.0
BuildArch: noarch
ExcludeArch: %{ix86}
# SECTION test
@@ -73,7 +75,7 @@ BuildRequires: %{python_module pytest-cov >= 4.1.0}
BuildRequires: %{python_module pytest-sugar >= 0.9.7}
BuildRequires: %{python_module pytest-xdist >= 3.4.0}
BuildRequires: %{python_module tomli >= 2.0.1 if %python_base < 3.11}
BuildRequires: %{python_module typogrify >= 2.0.7}
BuildRequires: %{python_module typogrify >= 2.1.0}
# /SECTION
%python_subpackages
@@ -118,7 +120,10 @@ chmod -x \
%install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
# Do not install tests
%{python_expand rm -r %{buildroot}%{$python_sitelib}/pelican/tests
%fdupes %{buildroot}%{$python_sitelib}
}
for p in pelican pelican-import pelican-plugins pelican-quickstart pelican-themes; do
%python_clone -a %{buildroot}%{_bindir}/$p
@@ -145,6 +150,6 @@ export PYTHONPATH=.
%python_alternative %{_bindir}/pelican-quickstart
%python_alternative %{_bindir}/pelican-themes
%{python_sitelib}/pelican
%{python_sitelib}/pelican-*.dist-info
%{python_sitelib}/pelican-%{version}.dist-info
%changelog

97
support-new-bs4.patch Normal file
View File

@@ -0,0 +1,97 @@
From 49941b62c7edabd051c6a79306e5db986186f890 Mon Sep 17 00:00:00 2001
From: Justin Mayer <entroP@gmail.com>
Date: Fri, 11 Apr 2025 18:33:27 +0200
Subject: [PATCH] Upgrade Beautiful Soup & adjust tests to conform
---
pelican/tools/pelican_import.py | 18 +++++++++---------
pyproject.toml | 2 +-
2 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/pelican/tools/pelican_import.py b/pelican/tools/pelican_import.py
index 65517f42a..7270488e9 100755
--- a/pelican/tools/pelican_import.py
+++ b/pelican/tools/pelican_import.py
@@ -27,7 +27,7 @@
def decode_wp_content(content, br=True):
pre_tags = {}
- if content.strip() == "":
+ if content is None or content.strip() == "":
return ""
content += "\n"
@@ -148,7 +148,7 @@ def wp2fields(xml, wp_custpost=False):
"""Opens a wordpress XML file, and yield Pelican fields"""
soup = file_to_soup(xml)
- items = soup.rss.channel.findAll("item")
+ items = soup.rss.channel.find_all("item")
for item in items:
if item.find("status").string in ["publish", "draft"]:
try:
@@ -172,11 +172,11 @@ def wp2fields(xml, wp_custpost=False):
author = item.find("creator").string
categories = [
- cat.string for cat in item.findAll("category", {"domain": "category"})
+ cat.string for cat in item.find_all("category", {"domain": "category"})
]
tags = [
- tag.string for tag in item.findAll("category", {"domain": "post_tag"})
+ tag.string for tag in item.find_all("category", {"domain": "post_tag"})
]
# To publish a post the status should be 'published'
status = (
@@ -218,7 +218,7 @@ def blogger2fields(xml):
"""Opens a blogger XML file, and yield Pelican fields"""
soup = file_to_soup(xml)
- entries = soup.feed.findAll("entry")
+ entries = soup.feed.find_all("entry")
for entry in entries:
raw_kind = entry.find(
"category", {"scheme": "http://schemas.google.com/g/2005#kind"}
@@ -253,7 +253,7 @@ def blogger2fields(xml):
# blogger posts only have tags, no category
tags = [
tag.get("term")
- for tag in entry.findAll(
+ for tag in entry.find_all(
"category", {"scheme": "http://www.blogger.com/atom/ns#"}
)
]
@@ -571,8 +571,8 @@ def strip_medium_post_content(soup) -> str:
# See https://stackoverflow.com/a/8439761
invalid_tags = ["section", "div", "footer"]
for tag in invalid_tags:
- for match in soup.findAll(tag):
- match.replaceWithChildren()
+ for match in soup.find_all(tag):
+ match.unwrap()
# Remove attributes
# See https://stackoverflow.com/a/9045719
@@ -845,7 +845,7 @@ def get_attachments(xml):
of the attachment_urls
"""
soup = file_to_soup(xml)
- items = soup.rss.channel.findAll("item")
+ items = soup.rss.channel.find_all("item")
names = {}
attachments = []
diff --git a/pyproject.toml b/pyproject.toml
index 014ebfc8c..9684d6df5 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -78,7 +78,7 @@ test = "invoke tests"
[tool.pdm.dev-dependencies]
dev = [
- "BeautifulSoup4>=4.12.2",
+ "BeautifulSoup4>=4.13.3",
"jinja2>=3.1.2",
"lxml>=4.9.3",
"markdown>=3.5.1",