Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fail2ban: fix 2to3 error #17341

Merged
merged 1 commit into from
Jan 10, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 9 additions & 2 deletions net/fail2ban/Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SPDX-License-Identifier: GPL-2.0-or-later
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
# Copyright (C) 2021-2022 Gerald Kerma
#

include $(TOPDIR)/rules.mk
Expand All @@ -20,6 +20,8 @@ PKG_LICENSE_FILES:=COPYING
include $(INCLUDE_DIR)/package.mk
include ../../lang/python/python3-package.mk

HOST_BUILD_DEPENDS:=2to3/host

define Package/fail2ban
SECTION:=net
CATEGORY:=Network
Expand Down Expand Up @@ -75,6 +77,11 @@ define Py3Package/fail2ban/install
$(INSTALL_BIN) ./files/fail2ban.defaults $(1)/etc/uci-defaults/99_fail2ban
endef

define Py3Build/Compile
cd $(PKG_BUILD_DIR) && ./fail2ban-2to3
$(call Py3Build/Compile/Default)
endef

$(eval $(call Py3Package,fail2ban))
$(eval $(call BuildPackage,fail2ban))
$(eval $(call BuildPackage,fail2ban-src))
62 changes: 62 additions & 0 deletions net/fail2ban/patches/020-fix-2to3.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
From 196c55e93103d1e56d1336f27a5f2591b4e54fef Mon Sep 17 00:00:00 2001
From: sebres <info@sebres.de>
Date: Sun, 19 Sep 2021 18:49:18 +0200
Subject: [PATCH] fix gh-3098: build fails with error in fail2ban setup
command: use_2to3 is invalid (setuptools 58+)

---
setup.py | 16 +---------------
1 file changed, 1 insertion(+), 15 deletions(-)

--- a/setup.py
+++ b/setup.py
@@ -56,7 +56,7 @@ import warnings
from glob import glob

from fail2ban.setup import updatePyExec
-
+from fail2ban.version import version

source_dir = os.path.realpath(os.path.dirname(
# __file__ seems to be overwritten sometimes on some python versions (e.g. bug of 2.6 by running under cProfile, etc.):
@@ -120,22 +120,12 @@ class install_scripts_f2b(install_script
# Wrapper to specify fail2ban own options:
class install_command_f2b(install):
user_options = install.user_options + [
- ('disable-2to3', None, 'Specify to deactivate 2to3, e.g. if the install runs from fail2ban test-cases.'),
('without-tests', None, 'without tests files installation'),
]
def initialize_options(self):
- self.disable_2to3 = None
self.without_tests = not with_tests
install.initialize_options(self)
def finalize_options(self):
- global _2to3
- ## in the test cases 2to3 should be already done (fail2ban-2to3):
- if self.disable_2to3:
- _2to3 = False
- if _2to3:
- cmdclass = self.distribution.cmdclass
- cmdclass['build_py'] = build_py_2to3
- cmdclass['build_scripts'] = build_scripts_2to3
if self.without_tests:
self.distribution.scripts.remove('bin/fail2ban-testcases')

@@ -186,7 +176,6 @@ commands.'''
if setuptools:
setup_extra = {
'test_suite': "fail2ban.tests.utils.gatherTests",
- 'use_2to3': True,
}
else:
setup_extra = {}
@@ -210,9 +199,6 @@ if platform_system in ('linux', 'solaris
('/usr/share/doc/fail2ban', doc_files)
)

-# Get version number, avoiding importing fail2ban.
-# This is due to tests not functioning for python3 as 2to3 takes place later
-exec(open(join("fail2ban", "version.py")).read())

setup(
name = "fail2ban",