Page MenuHomePhabricator

"add_text,py" error
Closed, DuplicatePublic

Description

Since June, the "add_text" script gives an error. My bot is broken.

pwb.py add_text -family:wikipedia -lang:ru -page:'4-Гидроксиэстрон' -text:"{{Нет полных библиографических описаний}}" -grepnot:"\{\{([Шш]аблон:)?([Рр]едактирую|[Ss]ubst:L|[Ii]n-?use(-by)?|[Pp]rocess(ing)?|[Пп]равлю|[Пп]еревожу|[Пп]ерерабатываю|[Сс]татья редактируется|[Вв]икифицирую)\s*[|}]" -simulate
0 pages read
0 pages written
0 pages skipped
Execution time: 0 seconds
Script terminated by exception:

ERROR: TypeError: super(type, obj): obj must be an instance or subtype of type
Traceback (most recent call last):
  File "/data/project/shared/pywikipedia/core/pwb.py", line 399, in <module>
    if not main():
  File "/data/project/shared/pywikipedia/core/pwb.py", line 394, in main
    module)
  File "/data/project/shared/pywikipedia/core/pwb.py", line 109, in run_python_file
    main_mod.__dict__)
  File "/data/project/shared/pywikipedia/core/scripts/add_text.py", line 444, in <module>
    main()
  File "/data/project/shared/pywikipedia/core/scripts/add_text.py", line 395, in main
    bot.run()
  File "/mnt/nfs/labstore-secondary-tools-project/pywikibot/public_html/core/pywikibot/bot.py", line 1510, in run
    if self.skip_page(page):
  File "/data/project/shared/pywikipedia/core/scripts/add_text.py", line 340, in skip_page
    if not page.isTalkPage() and ExistingPageBot.skip_page(self, page):
  File "/mnt/nfs/labstore-secondary-tools-project/pywikibot/public_html/core/pywikibot/bot.py", line 1840, in skip_page
    return super().skip_page(page)
TypeError: super(type, obj): obj must be an instance or subtype of type
CRITICAL: Exiting due to uncaught exception <class 'TypeError'>

It started after, by May 1, the -except parameter was removed as deprecated, with a replacement for -grepnot (commit 1 commit 2) and maybe something else.

By the way, there were no notifications in the logs that the parameter was deprecated. As I see the issue_deprecation_warning () method was used for the warning, maybe it doesn't work reliably?