Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-fanficfare for 
openSUSE:Factory checked in at 2025-10-20 13:35:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-fanficfare (Old)
 and      /work/SRC/openSUSE:Factory/.python-fanficfare.new.18484 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-fanficfare"

Mon Oct 20 13:35:14 2025 rev:72 rq:1312236 version:4.49.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-fanficfare/python-fanficfare.changes      
2025-10-09 15:08:08.466769920 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-fanficfare.new.18484/python-fanficfare.changes
   2025-10-20 13:35:31.495746639 +0200
@@ -1,0 +2,6 @@
+Sat Oct 18 20:48:01 UTC 2025 - Matej Cepl <[email protected]>
+
+- add otw-login.patch to fix AO3 login
+  (gh#JimmXinu/FanFicFare#1263).
+
+-------------------------------------------------------------------

New:
----
  otw-login.patch

----------(New B)----------
  New:
- add otw-login.patch to fix AO3 login
  (gh#JimmXinu/FanFicFare#1263).
----------(New E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-fanficfare.spec ++++++
--- /var/tmp/diff_new_pack.4GfgBE/_old  2025-10-20 13:35:32.471787948 +0200
+++ /var/tmp/diff_new_pack.4GfgBE/_new  2025-10-20 13:35:32.475788117 +0200
@@ -27,6 +27,9 @@
 Group:          Development/Languages/Python
 URL:            https://github.com/JimmXinu/FanFicFare
 Source:         
https://github.com/JimmXinu/FanFicFare/archive/v%{version}/FanFicFare-%{version}.tar.gz
+# PATCH-FIX-UPSTREAM otw-login.patch gh#JimmXinu/FanFicFare#1263 [email protected]
+# fix authorization on OTW sites
+Patch0:         otw-login.patch
 BuildRequires:  %{python_module beautifulsoup4}
 BuildRequires:  %{python_module chardet}
 BuildRequires:  %{python_module cloudscraper}

++++++ otw-login.patch ++++++
>From 68ad4c87aa6435c3c41b859ecd85f70f21e8841f Mon Sep 17 00:00:00 2001
From: Jim Miller <[email protected]>
Date: Sat, 18 Oct 2025 09:29:14 -0500
Subject: [PATCH] OTW: Fix for site change breaking logged in detection. Closes
 #1263

---
 fanficfare/adapters/base_otw_adapter.py |   10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

Index: FanFicFare-4.49.0/fanficfare/adapters/base_otw_adapter.py
===================================================================
--- FanFicFare-4.49.0.orig/fanficfare/adapters/base_otw_adapter.py      
2025-10-18 22:50:28.231730300 +0200
+++ FanFicFare-4.49.0/fanficfare/adapters/base_otw_adapter.py   2025-10-18 
22:50:45.661953857 +0200
@@ -27,6 +27,8 @@
 
 from .base_adapter import BaseSiteAdapter, makeDate
 
+LOGOUT_STR='href="/users/logout'
+
 class BaseOTWAdapter(BaseSiteAdapter):
 
     def __init__(self, config, url):
@@ -129,9 +131,9 @@
 
         d = self.post_request(loginUrl, params)
 
-        if 'href="/users/logout"' not in d :
+        if LOGOUT_STR not in d :
             logger.info("Failed to login to URL %s as %s" % (loginUrl,
-                                                              
params['user[login]']))
+                                                             
params['user[login]']))
             raise exceptions.FailedToLogin(url,params['user[login]'])
             return False
         else:
@@ -184,7 +186,7 @@
         # need to log in for this one, or always_login.
         # logger.debug(data)
         if self.needToLoginCheck(data) or \
-                ( self.getConfig("always_login") and 'href="/users/logout"' 
not in data ):
+                ( self.getConfig("always_login") and LOGOUT_STR not in data ):
             self.performLogin(url,data)
             data = self.get_request(url,usecache=False)
             meta = self.get_request(metaurl,usecache=False)
@@ -210,7 +212,7 @@
         a = soup.find('a', href=re.compile(r"/works/\d+$"))
         self.story.setMetadata('title',stripHTML(a))
 
-        if self.getConfig("always_login") and 'href="/users/logout"' in data: 
# check actually is logged.
+        if self.getConfig("always_login") and LOGOUT_STR in data: # check 
actually is logged.
             # deliberately using always_login instead of checking for
             # actual login so we don't have a case where these show up
             # for a user only when they get user-restricted stories.

Reply via email to