You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@allura.apache.org by ke...@apache.org on 2021/09/17 18:45:07 UTC
[allura] branch master updated (96787ed -> 06b8808)
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git.
from 96787ed Show multifactor setup key in addition to QR code
new 2314636 [#8396] Revert "[#8386] remove chardet, make requests library still work"
new 4f0db91 [#8396] restore nose cmd
new 6d890cc [#8396] upgrade requests, depend on charset-normalizer now
new fe7829f [#8396] upgrade requests deps
new 1dd4d3d [#8396] upgrade feedparser
new bccd290 [#8396] upgrade inflection (from profanity filter, for ForgeFeedback)
new fd1d335 [#8396] remove dependency on ipython
new e3318c1 [#8396] upgrade colander and its dependencies
new 19f35ce [#8396] upgrade pysolr
new 8aa8a77 [#8396] upgrade python-magic
new 563ef7c [#8396] upgrade setproctitle
new e71b75c [#8396] upgrade gitpython
new fbc9f2b [#8396] allow newer akismet
new b70ea02 [#8396] upgrade beautifulsoup4
new d8dd599 [#8396] upgrade decorator
new d5c51f6 [#8396] upgrade html5lib
new 1f8fb81 [#8396] upgrade markupsafe
new 06b8808 [#8396] upgrade webtest and dep
The 18 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
Allura/allura/command/show_models.py | 22 ------
Allura/allura/lib/custom_middleware.py | 2 +-
Allura/allura/lib/helpers.py | 16 -----
Allura/allura/lib/phone/nexmo.py | 1 -
Allura/allura/lib/project_create_helpers.py | 2 +-
Allura/allura/lib/search.py | 16 ++++-
Allura/allura/lib/security.py | 2 +-
Allura/allura/lib/solr.py | 5 +-
Allura/allura/lib/utils.py | 20 +-----
Allura/allura/tests/functional/test_root.py | 6 +-
Allura/allura/tests/test_helpers.py | 7 +-
Allura/allura/webhooks.py | 2 +-
Allura/docs/getting_started/install_each_step.rst | 2 +-
Allura/docs/getting_started/installation.rst | 2 +-
AlluraTest/alluratest/tools.py | 57 ++++++++++++---
AlluraTest/alluratest/validation.py | 3 +-
ForgeBlog/forgeblog/tests/test_commands.py | 5 +-
ForgeImporters/forgeimporters/github/__init__.py | 1 -
.../forgeimporters/github/tests/test_wiki.py | 18 ++---
.../tests/github/functional/test_github.py | 2 +-
ForgeImporters/forgeimporters/trac/__init__.py | 1 -
.../forgeimporters/trac/tests/test_tickets.py | 6 +-
.../forgesvn/tests/functional/test_controllers.py | 8 +--
ForgeSVN/forgesvn/tests/model/test_repository.py | 7 +-
ForgeWiki/forgewiki/tests/test_converters.py | 7 +-
requirements-dev.txt | 10 +--
requirements-optional.txt | 2 +-
requirements.in | 17 ++---
requirements.txt | 82 ++++++++--------------
update.sh | 6 +-
30 files changed, 158 insertions(+), 179 deletions(-)
[allura] 14/18: [#8396] upgrade beautifulsoup4
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit b70ea0206c5b42a5fede8b5be446867e45cd75da
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Mon Sep 13 19:10:25 2021 +0000
[#8396] upgrade beautifulsoup4
---
requirements.txt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/requirements.txt b/requirements.txt
index 2b7dc0f..c28cd6c 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -8,7 +8,7 @@ activitystream==0.3.0
# via -r requirements.in
beaker==1.10.1
# via -r requirements.in
-beautifulsoup4==4.8.0
+beautifulsoup4==4.10.0
# via
# -r requirements.in
# webtest
@@ -182,7 +182,7 @@ six==1.15.0
# webtest
smmap==4.0.0
# via gitdb
-soupsieve==1.9.3
+soupsieve==2.2.1
# via beautifulsoup4
testfixtures==6.10.0
# via -r requirements.in
[allura] 15/18: [#8396] upgrade decorator
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit d8dd59967d5e73977300d837eb21e43f0e7fcbd1
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Mon Sep 13 19:16:35 2021 +0000
[#8396] upgrade decorator
rewrite one @decorator due to
https://github.com/micheles/decorator/issues/109
---
AlluraTest/alluratest/tools.py | 39 +++++++++++++++++++++++++++++----------
requirements.txt | 2 +-
2 files changed, 30 insertions(+), 11 deletions(-)
diff --git a/AlluraTest/alluratest/tools.py b/AlluraTest/alluratest/tools.py
index 8831b12..71a9a6a 100644
--- a/AlluraTest/alluratest/tools.py
+++ b/AlluraTest/alluratest/tools.py
@@ -14,24 +14,28 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
-
+import functools
import unittest
from decorator import decorator
testcase = unittest.TestCase(methodName='__init__') # py2 needs a methodName that is a valid attr :/
+
def with_setup(setup, teardown=None):
# this might have subtle ordering differences from a true "setup" method, esp. if other decorators are involved
- @decorator
- def inner_with_setup(func, *a, **kw):
- try:
- setup()
- return func(*a, **kw)
- finally:
- if teardown:
- teardown()
- return inner_with_setup
+ def with_setup__wrapper(func):
+ @functools.wraps(func)
+ def with_setup__decorated(*a, **kw):
+ try:
+ setup()
+ return func(*a, **kw)
+ finally:
+ if teardown:
+ teardown()
+ return with_setup__decorated
+ return with_setup__wrapper
+
def raises(ExcType):
@decorator
@@ -40,48 +44,63 @@ def raises(ExcType):
return func(*a, **kw)
return inner_raises
+
def assert_equal(*a, **kw):
return testcase.assertEqual(*a, **kw)
+
def assert_equals(*a, **kw):
return testcase.assertEquals(*a, **kw)
+
def assert_not_equal(*a, **kw):
return testcase.assertNotEqual(*a, **kw)
+
def assert_raises(*a, **kw):
return testcase.assertRaises(*a, **kw)
+
def assert_is_none(*a, **kw):
return testcase.assertIsNone(*a, **kw)
+
def assert_is_not_none(*a, **kw):
return testcase.assertIsNotNone(*a, **kw)
+
def assert_is(*a, **kw):
return testcase.assertIs(*a, **kw)
+
def assert_true(*a, **kw):
return testcase.assertTrue(*a, **kw)
+
def assert_false(*a, **kw):
return testcase.assertFalse(*a, **kw)
+
def assert_in(*a, **kw):
return testcase.assertIn(*a, **kw)
+
def assert_not_in(*a, **kw):
return testcase.assertNotIn(*a, **kw)
+
def assert_less(*a, **kw):
return testcase.assertLess(*a, **kw)
+
def assert_greater(*a, **kw):
return testcase.assertGreater(*a, **kw)
+
def assert_greater_equal(*a, **kw):
return testcase.assertGreaterEqual(*a, **kw)
+
def assert_regexp_matches(*a, **kw):
return testcase.assertRegexpMatches(*a, **kw)
diff --git a/requirements.txt b/requirements.txt
index c28cd6c..2132c71 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -32,7 +32,7 @@ cryptography==3.3.2
# via -r requirements.in
datadiff==2.0.0
# via -r requirements.in
-decorator==4.4.0
+decorator==5.1.0
# via -r requirements.in
docutils==0.15.2
# via pypeline
[allura] 02/18: [#8396] restore nose cmd
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit 4f0db916f6f231f0902c9d8ff13df7e14ed6dcdc
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Fri Sep 10 18:00:18 2021 +0000
[#8396] restore nose cmd
---
.travis.yml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/.travis.yml b/.travis.yml
index ced0267..4d90096 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -26,7 +26,8 @@ jobs:
- pip install https://sourceforge.net/projects/pysvn/files/pysvn/V1.9.12/pysvn-1.9.12.tar.gz
install:
- sudo apt-get install -qq libjpeg8-dev zlib1g-dev
- - pip install -r requirements.txt
+ - pip install nose
+ - pip install -r requirements.txt --no-deps --upgrade --upgrade-strategy=only-if-needed
- npm install
script:
- ./rebuild-all.bash
[allura] 07/18: [#8396] remove dependency on ipython
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit fd1d33563d95abb45f3adb3fbfa95ddd584a476c
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Fri Sep 10 21:02:06 2021 +0000
[#8396] remove dependency on ipython
---
Allura/allura/command/show_models.py | 22 ----------------
Allura/allura/lib/utils.py | 20 +++------------
Allura/allura/tests/functional/test_root.py | 6 ++---
Allura/allura/tests/test_helpers.py | 7 +++---
AlluraTest/alluratest/tools.py | 18 ++++++++++++++
ForgeBlog/forgeblog/tests/test_commands.py | 5 ++--
.../forgeimporters/github/tests/test_wiki.py | 18 +++++++-------
.../forgeimporters/trac/tests/test_tickets.py | 6 ++---
.../forgesvn/tests/functional/test_controllers.py | 8 +++---
ForgeSVN/forgesvn/tests/model/test_repository.py | 7 +++---
ForgeWiki/forgewiki/tests/test_converters.py | 7 ++++--
requirements.in | 1 -
requirements.txt | 29 ++--------------------
13 files changed, 57 insertions(+), 97 deletions(-)
diff --git a/Allura/allura/command/show_models.py b/Allura/allura/command/show_models.py
index f4623de..b0fb3ac 100644
--- a/Allura/allura/command/show_models.py
+++ b/Allura/allura/command/show_models.py
@@ -385,25 +385,3 @@ def dfs(root, graph, depth=0):
for node in graph[root][1]:
for r in dfs(node, graph, depth + 1):
yield r
-
-
-def pm(etype, value, tb): # pragma no cover
- import pdb
- import traceback
- try:
- from IPython.ipapi import make_session
- make_session()
- from IPython.Debugger import Pdb
- sys.stderr.write('Entering post-mortem IPDB shell\n')
- p = Pdb(color_scheme='Linux')
- p.reset()
- p.setup(None, tb)
- p.print_stack_trace()
- sys.stderr.write('%s: %s\n' % (etype, value))
- p.cmdloop()
- p.forget()
- # p.interaction(None, tb)
- except ImportError:
- sys.stderr.write('Entering post-mortem PDB shell\n')
- traceback.print_exception(etype, value, tb)
- pdb.post_mortem(tb)
diff --git a/Allura/allura/lib/utils.py b/Allura/allura/lib/utils.py
index 3f566a3..5adc4f4 100644
--- a/Allura/allura/lib/utils.py
+++ b/Allura/allura/lib/utils.py
@@ -440,23 +440,9 @@ def postmortem_hook(etype, value, tb): # pragma no cover
import sys
import pdb
import traceback
- try:
- from IPython.ipapi import make_session
- make_session()
- from IPython.Debugger import Pdb
- sys.stderr.write('Entering post-mortem IPDB shell\n')
- p = Pdb(color_scheme='Linux')
- p.reset()
- p.setup(None, tb)
- p.print_stack_trace()
- sys.stderr.write('%s: %s\n' % (etype, value))
- p.cmdloop()
- p.forget()
- # p.interaction(None, tb)
- except ImportError:
- sys.stderr.write('Entering post-mortem PDB shell\n')
- traceback.print_exception(etype, value, tb)
- pdb.post_mortem(tb)
+ sys.stderr.write('Entering post-mortem PDB shell\n')
+ traceback.print_exception(etype, value, tb)
+ pdb.post_mortem(tb)
class LineAnchorCodeHtmlFormatter(HtmlFormatter):
diff --git a/Allura/allura/tests/functional/test_root.py b/Allura/allura/tests/functional/test_root.py
index 3caf217..31efd55 100644
--- a/Allura/allura/tests/functional/test_root.py
+++ b/Allura/allura/tests/functional/test_root.py
@@ -31,14 +31,14 @@ Please read http://pythonpaste.org/webtest/ for more information.
from __future__ import unicode_literals
from __future__ import absolute_import
import os
+from unittest import skipIf
import six
from tg import tmpl_context as c
-from alluratest.tools import assert_equal, assert_in
+from alluratest.tools import assert_equal, module_not_available
from ming.orm.ormsession import ThreadLocalORMSession
import mock
-from IPython.testing.decorators import module_not_available, skipif
from allura.tests import decorators as td
from allura.tests import TestController
@@ -177,7 +177,7 @@ class TestRootController(TestController):
self.app.get('/p', status=301)
self.app.get('/p/', status=302)
- @skipif(module_not_available('newrelic'))
+ @skipIf(module_not_available('newrelic'), 'requires newrelic')
def test_newrelic_set_transaction_name(self):
from allura.controllers.project import NeighborhoodController
with mock.patch('newrelic.agent.callable_name') as callable_name,\
diff --git a/Allura/allura/tests/test_helpers.py b/Allura/allura/tests/test_helpers.py
index 4e35c01..d743a95 100644
--- a/Allura/allura/tests/test_helpers.py
+++ b/Allura/allura/tests/test_helpers.py
@@ -19,7 +19,7 @@
from __future__ import unicode_literals
from __future__ import absolute_import
-from unittest import TestCase
+from unittest import TestCase, skipIf
from os import path
from datetime import datetime, timedelta
import time
@@ -27,8 +27,7 @@ import time
import PIL
from mock import Mock, patch
from tg import tmpl_context as c
-from alluratest.tools import assert_equals, assert_raises
-from IPython.testing.decorators import skipif, module_not_available
+from alluratest.tools import assert_equals, assert_raises, module_not_available
from datadiff import tools as dd
from webob import Request
from webob.exc import HTTPUnauthorized
@@ -368,7 +367,7 @@ def test_notifications_disabled():
assert_equals(project.notifications_disabled, False)
-@skipif(module_not_available('html2text'))
+@skipIf(module_not_available('html2text'), 'html2text required')
def test_plain2markdown_with_html2text():
"""Test plain2markdown using html2text to escape markdown, if available."""
text = '''paragraph
diff --git a/AlluraTest/alluratest/tools.py b/AlluraTest/alluratest/tools.py
index dd3e4d2..8831b12 100644
--- a/AlluraTest/alluratest/tools.py
+++ b/AlluraTest/alluratest/tools.py
@@ -84,3 +84,21 @@ def assert_greater_equal(*a, **kw):
def assert_regexp_matches(*a, **kw):
return testcase.assertRegexpMatches(*a, **kw)
+
+
+#
+# copied from IPython.testing.decorators
+# BSD license
+def module_not_available(module):
+ """Can module be imported? Returns true if module does NOT import.
+
+ This is used to make a decorator to skip tests that require module to be
+ available, but delay the 'import numpy' to test execution time.
+ """
+ try:
+ mod = __import__(module)
+ mod_not_avail = False
+ except ImportError:
+ mod_not_avail = True
+
+ return mod_not_avail
diff --git a/ForgeBlog/forgeblog/tests/test_commands.py b/ForgeBlog/forgeblog/tests/test_commands.py
index addc8ee..b275067 100644
--- a/ForgeBlog/forgeblog/tests/test_commands.py
+++ b/ForgeBlog/forgeblog/tests/test_commands.py
@@ -20,7 +20,7 @@ from __future__ import absolute_import
from datetime import datetime, timedelta
from tg import app_globals as g
from datadiff.tools import assert_equal
-from IPython.testing.decorators import module_not_available, skipif
+from unittest import skipIf
import pkg_resources
import mock
import feedparser
@@ -28,6 +28,7 @@ import feedparser
from ming.orm.ormsession import ThreadLocalORMSession
from alluratest.controller import setup_basic_test, setup_global_objects
+from alluratest.tools import module_not_available
from allura import model as M
from forgeblog import model as BM
@@ -71,7 +72,7 @@ def _mock_feed(*entries):
_mock_feed.i = 0
-@skipif(module_not_available('html2text'))
+@skipIf(module_not_available('html2text'), 'requires html2text')
@mock.patch.object(feedparser, 'parse')
def test_pull_rss_feeds(parsefeed):
html_content = (
diff --git a/ForgeImporters/forgeimporters/github/tests/test_wiki.py b/ForgeImporters/forgeimporters/github/tests/test_wiki.py
index 578a875..1be0a94 100644
--- a/ForgeImporters/forgeimporters/github/tests/test_wiki.py
+++ b/ForgeImporters/forgeimporters/github/tests/test_wiki.py
@@ -19,17 +19,17 @@
from __future__ import unicode_literals
from __future__ import absolute_import
-from unittest import TestCase
+from unittest import TestCase, skipIf
from alluratest.tools import assert_equal
from mock import Mock, patch, call
from ming.odm import ThreadLocalORMSession
import git
-from IPython.testing.decorators import module_not_available, skipif
from allura import model as M
from allura.tests import TestController
from allura.tests.decorators import with_tool, without_module
from alluratest.controller import setup_basic_test
+from alluratest.tools import module_not_available
from forgeimporters.github.wiki import GitHubWikiImporter
from forgeimporters.github.utils import GitHubMarkdownConverter
from forgeimporters.github import GitHubOAuthMixin
@@ -187,7 +187,7 @@ class TestGitHubWikiImporter(TestCase):
assert_equal(render.call_args_list,
[call('Home.rst', '# test message')])
- @skipif(module_not_available('html2text'))
+ @skipIf(module_not_available('html2text'), 'html2text required')
@patch('forgeimporters.github.wiki.WM.Page.upsert')
@patch('forgeimporters.github.wiki.mediawiki2markdown')
def test_with_history_mediawiki(self, md2mkm, upsert):
@@ -300,7 +300,7 @@ Our website is <http://domain.net>.
assert_equal(f(source), result)
- @skipif(module_not_available('html2text'))
+ @skipIf(module_not_available('html2text'), 'html2text required')
def test_convert_markup(self):
importer = GitHubWikiImporter()
importer.github_wiki_url = 'https://github.com/a/b/wiki'
@@ -403,7 +403,7 @@ Our website is [[http://domain.net]].
prefix, new),
'<a href="/p/test/wiki/Test Page">Test <b>Page</b></a>')
- @skipif(module_not_available('html2text'))
+ @skipIf(module_not_available('html2text'), 'html2text required')
def test_convert_markup_with_mediawiki2markdown(self):
importer = GitHubWikiImporter()
importer.github_wiki_url = 'https://github.com/a/b/wiki'
@@ -431,7 +431,7 @@ Our website is [[http://domain.net]].
assert_equal(f(source, 'test.mediawiki'), result)
- @skipif(module_not_available('html2text'))
+ @skipIf(module_not_available('html2text'), 'html2text required')
def test_convert_textile_no_leading_tabs(self):
importer = GitHubWikiImporter()
importer.github_wiki_url = 'https://github.com/a/b/wiki'
@@ -455,7 +455,7 @@ Some text 1.
See [Page]'''
assert_equal(f(source, 'test.textile').strip(), result)
- @skipif(module_not_available('html2text'))
+ @skipIf(module_not_available('html2text'), 'html2text required')
def test_convert_markup_with_amp_in_links(self):
importer = GitHubWikiImporter()
importer.github_wiki_url = 'https://github.com/a/b/wiki'
@@ -467,7 +467,7 @@ See [Page]'''
# markdown should be untouched
assert_equal(f(source, 'test.rst').strip(), result)
- @skipif(module_not_available('html2text'))
+ @skipIf(module_not_available('html2text'), 'html2text required')
def test_convert_markup_textile(self):
importer = GitHubWikiImporter()
importer.github_wiki_url = 'https://github.com/a/b/wiki'
@@ -513,7 +513,7 @@ some text and **[Tips n\u2019 Tricks]**
'''
assert_equal(f(source, 'test3.textile'), result)
- @skipif(module_not_available('html2text'))
+ @skipIf(module_not_available('html2text'), 'html2text required')
def test_convert_textile_special_tag(self):
importer = GitHubWikiImporter()
importer.github_wiki_url = 'https://github.com/a/b/wiki'
diff --git a/ForgeImporters/forgeimporters/trac/tests/test_tickets.py b/ForgeImporters/forgeimporters/trac/tests/test_tickets.py
index a942fd5..0b010e0 100644
--- a/ForgeImporters/forgeimporters/trac/tests/test_tickets.py
+++ b/ForgeImporters/forgeimporters/trac/tests/test_tickets.py
@@ -20,15 +20,15 @@ from __future__ import absolute_import
import json
import os
-from unittest import TestCase
+from unittest import TestCase, skipIf
from mock import Mock, patch
from ming.orm import ThreadLocalORMSession
from tg import tmpl_context as c
-from IPython.testing.decorators import module_not_available, skipif
from allura.tests import TestController
from allura.tests.decorators import with_tracker
from alluratest.controller import TestRestApiBase, setup_unit_test
+from alluratest.tools import module_not_available
from allura import model as M
from forgetracker import model as TM
@@ -262,7 +262,7 @@ class TestTracImportSupportFunctional(TestRestApiBase, TestCase):
import_support.get_slug_by_id('204', '2'), comments[1].slug)
@with_tracker
- @skipif(module_not_available('html2text'))
+ @skipIf(module_not_available('html2text'), 'html2text required')
def test_list(self):
from allura.scripts.trac_export import TracExport, DateJSONEncoder
csv_fp = open(os.path.dirname(__file__) + '/data/test-list.csv')
diff --git a/ForgeSVN/forgesvn/tests/functional/test_controllers.py b/ForgeSVN/forgesvn/tests/functional/test_controllers.py
index 116542c..99100f3 100644
--- a/ForgeSVN/forgesvn/tests/functional/test_controllers.py
+++ b/ForgeSVN/forgesvn/tests/functional/test_controllers.py
@@ -23,6 +23,7 @@ import json
import re
import shutil
import os
+from unittest import skipUnless
import six
import tg
@@ -31,7 +32,6 @@ from tg import tmpl_context as c
from ming.orm import ThreadLocalORMSession
from mock import patch
from alluratest.tools import assert_equal, assert_in
-from IPython.testing.decorators import onlyif
from allura import model as M
from allura.lib import helpers as h
@@ -230,7 +230,7 @@ class TestRootController(SVNTestController):
r = self.app.get('/src/2/log/?path=does/not/exist/')
assert 'No (more) commits' in r
- @onlyif(os.path.exists(tg.config.get('scm.repos.tarball.zip_binary', '/usr/bin/zip')), 'zip binary is missing')
+ @skipUnless(os.path.exists(tg.config.get('scm.repos.tarball.zip_binary', '/usr/bin/zip')), 'zip binary is missing')
def test_tarball(self):
r = self.app.get('/src/3/tree/')
assert 'Download Snapshot' in r
@@ -245,7 +245,7 @@ class TestRootController(SVNTestController):
r = self.app.get('/src/3/tarball')
assert 'Your download will begin shortly' in r
- @onlyif(os.path.exists(tg.config.get('scm.repos.tarball.zip_binary', '/usr/bin/zip')), 'zip binary is missing')
+ @skipUnless(os.path.exists(tg.config.get('scm.repos.tarball.zip_binary', '/usr/bin/zip')), 'zip binary is missing')
def test_tarball_cyrillic(self):
r = self.app.get('/src/6/tree/')
assert 'Download Snapshot' in r
@@ -260,7 +260,7 @@ class TestRootController(SVNTestController):
r = self.app.get('/src/6/tarball')
assert 'Your download will begin shortly' in r
- @onlyif(os.path.exists(tg.config.get('scm.repos.tarball.zip_binary', '/usr/bin/zip')), 'zip binary is missing')
+ @skipUnless(os.path.exists(tg.config.get('scm.repos.tarball.zip_binary', '/usr/bin/zip')), 'zip binary is missing')
def test_tarball_path(self):
h.set_context('test', 'svn-tags', neighborhood='Projects')
shutil.rmtree(c.app.repo.tarball_path, ignore_errors=True)
diff --git a/ForgeSVN/forgesvn/tests/model/test_repository.py b/ForgeSVN/forgesvn/tests/model/test_repository.py
index 6781b9f..f71a787 100644
--- a/ForgeSVN/forgesvn/tests/model/test_repository.py
+++ b/ForgeSVN/forgesvn/tests/model/test_repository.py
@@ -22,6 +22,8 @@ from __future__ import absolute_import
import os
import shutil
import unittest
+from unittest import skipUnless
+
import pkg_resources
from itertools import count, product
from datetime import datetime
@@ -38,7 +40,6 @@ import ming
from ming.base import Object
from ming.orm import session, ThreadLocalORMSession
from testfixtures import TempDirectory
-from IPython.testing.decorators import onlyif
from alluratest.controller import setup_basic_test, setup_global_objects
from allura import model as M
@@ -434,7 +435,7 @@ class TestSVNRepo(unittest.TestCase, RepoImplTestBase):
revision=pysvn.Revision.return_value,
recurse=False)
- @onlyif(os.path.exists(tg.config.get('scm.repos.tarball.zip_binary', '/usr/bin/zip')), 'zip binary is missing')
+ @skipUnless(os.path.exists(tg.config.get('scm.repos.tarball.zip_binary', '/usr/bin/zip')), 'zip binary is missing')
def test_tarball(self):
tmpdir = tg.config['scm.repos.tarball.root']
assert_equal(self.repo.tarball_path,
@@ -451,7 +452,7 @@ class TestSVNRepo(unittest.TestCase, RepoImplTestBase):
shutil.rmtree(self.repo.tarball_path.encode('utf-8'),
ignore_errors=True)
- @onlyif(os.path.exists(tg.config.get('scm.repos.tarball.zip_binary', '/usr/bin/zip')), 'zip binary is missing')
+ @skipUnless(os.path.exists(tg.config.get('scm.repos.tarball.zip_binary', '/usr/bin/zip')), 'zip binary is missing')
def test_tarball_paths(self):
rev = '19'
h.set_context('test', 'svn-tags', neighborhood='Projects')
diff --git a/ForgeWiki/forgewiki/tests/test_converters.py b/ForgeWiki/forgewiki/tests/test_converters.py
index 398c0a8..bd8fa4d 100644
--- a/ForgeWiki/forgewiki/tests/test_converters.py
+++ b/ForgeWiki/forgewiki/tests/test_converters.py
@@ -17,12 +17,15 @@
from __future__ import unicode_literals
from __future__ import absolute_import
-from IPython.testing.decorators import module_not_available, skipif
+
+from unittest import skipIf
+
+from alluratest.tools import module_not_available
from forgewiki import converters
-@skipif(module_not_available('mediawiki'))
+@skipIf(module_not_available('mediawiki'), 'mediawiki required')
def test_mediawiki2markdown():
mediawiki_text = """
'''bold''' ''italics''
diff --git a/requirements.in b/requirements.in
index 1357e79..1512c40 100644
--- a/requirements.in
+++ b/requirements.in
@@ -54,7 +54,6 @@ wrapt==1.11.2
# testing
datadiff
-ipython<6 # Ipython 7 starts to require py3
mock
pyflakes
#pylint -- disabled due to [#8346] (also requires diff versions on py2 vs 3, including transitive deps which gets tricky with pip-compile)
diff --git a/requirements.txt b/requirements.txt
index a79e0be..ff20e15 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -33,10 +33,7 @@ cryptography==3.3.2
datadiff==2.0.0
# via -r requirements.in
decorator==4.4.0
- # via
- # -r requirements.in
- # ipython
- # traitlets
+ # via -r requirements.in
docutils==0.15.2
# via pypeline
easywidgets==0.3.6
@@ -72,10 +69,6 @@ idna==3.2
# via requests
inflection==0.5.1
# via profanityfilter
-ipython==5.8.0
- # via -r requirements.in
-ipython-genutils==0.2.0
- # via traitlets
iso8601==0.1.12
# via colander
jinja2==2.11.3
@@ -117,26 +110,16 @@ pastedeploy==2.0.1
# pastescript
pastescript==3.1.0
# via -r requirements.in
-pexpect==4.7.0
- # via ipython
-pickleshare==0.7.5
- # via ipython
pillow==8.3.2
# via -r requirements.in
profanityfilter==2.0.6
# via -r requirements.in
-prompt-toolkit==1.0.16
- # via ipython
-ptyprocess==0.6.0
- # via pexpect
pycparser==2.19
# via cffi
pyflakes==2.1.1
# via -r requirements.in
pygments==2.9.0
- # via
- # -r requirements.in
- # ipython
+ # via -r requirements.in
pymongo==3.10.1
# via
# -r requirements.in
@@ -178,8 +161,6 @@ setproctitle==1.1.9
# via -r requirements.in
sgmllib3k==1.0.0
# via feedparser
-simplegeneric==0.8.1
- # via ipython
six==1.15.0
# via
# -r requirements.in
@@ -194,11 +175,9 @@ six==1.15.0
# mock
# paste
# pastescript
- # prompt-toolkit
# python-dateutil
# qrcode
# textile
- # traitlets
# webhelpers2
# webtest
smmap2==2.0.4
@@ -211,8 +190,6 @@ textile==3.0.4
# via pypeline
timermiddleware==0.5.1
# via -r requirements.in
-traitlets==4.3.2
- # via ipython
translationstring==1.3
# via colander
turbogears2==2.3.12
@@ -221,8 +198,6 @@ urllib3==1.26.6
# via requests
waitress==1.4.3
# via webtest
-wcwidth==0.1.7
- # via prompt-toolkit
webencodings==0.5.1
# via
# bleach
[allura] 11/18: [#8396] upgrade setproctitle
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit 563ef7ca5656130c9f342845fcc2a9e6ca1a06b6
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Fri Sep 10 22:10:40 2021 +0000
[#8396] upgrade setproctitle
---
requirements.in | 2 +-
requirements.txt | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/requirements.in b/requirements.in
index 14b95cd..41188f0 100644
--- a/requirements.in
+++ b/requirements.in
@@ -43,7 +43,7 @@ qrcode
requests
requests-oauthlib
# for taskd proc name switching
-setproctitle==1.1.9
+setproctitle
six
TimerMiddleware==0.5.1
TurboGears2==2.3.12
diff --git a/requirements.txt b/requirements.txt
index ee1a96f..1dedb77 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -157,7 +157,7 @@ requests==2.26.0
# requests-oauthlib
requests-oauthlib==1.2.0
# via -r requirements.in
-setproctitle==1.1.9
+setproctitle==1.2.2
# via -r requirements.in
sgmllib3k==1.0.0
# via feedparser
[allura] 09/18: [#8396] upgrade pysolr
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit 19f35cefe966762b6552b4e69366b3109051d4cd
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Fri Sep 10 22:04:57 2021 +0000
[#8396] upgrade pysolr
---
Allura/allura/lib/search.py | 14 ++++++++++++++
Allura/allura/lib/solr.py | 3 +++
requirements.in | 2 +-
requirements.txt | 2 +-
4 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/Allura/allura/lib/search.py b/Allura/allura/lib/search.py
index 462ffc2..6d820cf 100644
--- a/Allura/allura/lib/search.py
+++ b/Allura/allura/lib/search.py
@@ -105,6 +105,20 @@ class SearchIndexable(object):
# To do so, we convert markdown into html, and then strip all html tags.
text = g.markdown.convert(text)
doc['text'] = jinja2.Markup.escape(text).striptags()
+
+ # convert some date/time field types to str
+ # from https://github.com/django-haystack/pysolr/blob/1a8887cb2ce1c30ef9d6570704254b4520f8a959/pysolr.py#L692
+ for k, value in doc.items():
+ if hasattr(value, "strftime"):
+ if hasattr(value, "hour"):
+ offset = value.utcoffset()
+ if offset:
+ value = value - offset
+ value = value.replace(tzinfo=None).isoformat() + "Z"
+ else:
+ value = "%sT00:00:00Z" % value.isoformat()
+ doc[k] = value
+
return doc
@classmethod
diff --git a/Allura/allura/lib/solr.py b/Allura/allura/lib/solr.py
index d97141e..de4c536 100644
--- a/Allura/allura/lib/solr.py
+++ b/Allura/allura/lib/solr.py
@@ -17,6 +17,8 @@
from __future__ import unicode_literals
from __future__ import absolute_import
+
+import json
import logging
from tg import config
@@ -145,6 +147,7 @@ class MockSOLR(object):
def add(self, objects):
for o in objects:
o['text'] = ''.join(o['text'])
+ json.dumps(o) # ensure no errors (since pysolr 3.9+ uses json API to solr)
self.db[o['id']] = o
def commit(self):
diff --git a/requirements.in b/requirements.in
index d4bf5af..14b95cd 100644
--- a/requirements.in
+++ b/requirements.in
@@ -34,7 +34,7 @@ profanityfilter==2.0.6
Pygments
pymongo==3.10.1
Pypeline[creole,markdown,textile,rst]
-pysolr==3.6.0
+pysolr
python-dateutil
python-magic
python-oembed
diff --git a/requirements.txt b/requirements.txt
index a987f50..c9cb3d0 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -131,7 +131,7 @@ pyparsing==2.4.7
# packaging
pypeline[creole,markdown,rst,textile]==0.5.3
# via -r requirements.in
-pysolr==3.6.0
+pysolr==3.9.0
# via -r requirements.in
python-dateutil==2.8.0
# via
[allura] 12/18: [#8396] upgrade gitpython
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit e71b75cd1a16ddc62b82f6904bcd0c2d25583acf
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Mon Sep 13 18:32:18 2021 +0000
[#8396] upgrade gitpython
---
requirements.in | 6 ++----
requirements.txt | 10 ++++++----
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/requirements.in b/requirements.in
index 41188f0..5b6c49d 100644
--- a/requirements.in
+++ b/requirements.in
@@ -7,13 +7,11 @@ cryptography
decorator
EasyWidgets>=0.3.6
emoji
-# only needed < py3.4 and causes problems >=3.6 https://stackoverflow.com/a/45716067/
-enum34 ; python_version < "3.4"
-faulthandler ; python_version < "3.3"
feedgenerator
feedparser
FormEncode>=2
-GitPython==2.1.11
+# 3.1.23 drops py36 support
+GitPython<=3.1.23
html5lib==1.0.1
Jinja2
Markdown<3
diff --git a/requirements.txt b/requirements.txt
index 1dedb77..2b7dc0f 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -52,9 +52,9 @@ future==0.17.1
# via timermiddleware
genshi==0.7.3
# via creoleparser
-gitdb2==2.0.4
+gitdb==4.0.7
# via gitpython
-gitpython==2.1.11
+gitpython==3.1.18
# via -r requirements.in
gunicorn==20.1.0
# via -r requirements.in
@@ -180,8 +180,8 @@ six==1.15.0
# textile
# webhelpers2
# webtest
-smmap2==2.0.4
- # via gitdb2
+smmap==4.0.0
+ # via gitdb
soupsieve==1.9.3
# via beautifulsoup4
testfixtures==6.10.0
@@ -194,6 +194,8 @@ translationstring==1.4
# via colander
turbogears2==2.3.12
# via -r requirements.in
+typing-extensions==3.10.0.2
+ # via gitpython
urllib3==1.26.6
# via requests
waitress==1.4.3
[allura] 04/18: [#8396] upgrade requests deps
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit fe7829f33da88d9862d440315faafaec225885c0
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Fri Sep 10 20:37:02 2021 +0000
[#8396] upgrade requests deps
---
requirements-dev.txt | 6 +++---
requirements.txt | 6 +++---
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/requirements-dev.txt b/requirements-dev.txt
index a37ceba..b58798e 100644
--- a/requirements-dev.txt
+++ b/requirements-dev.txt
@@ -8,7 +8,7 @@ alabaster==0.7.12
# via sphinx
babel==2.7.0
# via sphinx
-certifi==2019.6.16
+certifi==2021.5.30
# via requests
charset-normalizer==2.0.4
# via requests
@@ -18,7 +18,7 @@ coverage==4.5.4
# via -r requirements-dev.in
docutils==0.15.2
# via sphinx
-idna==2.8
+idna==3.2
# via requests
imagesize==1.1.0
# via sphinx
@@ -67,7 +67,7 @@ tomli==1.2.1
# via pep517
typing-extensions==3.10.0.2
# via importlib-metadata
-urllib3==1.26.5
+urllib3==1.26.6
# via requests
wheel==0.37.0
# via pip-tools
diff --git a/requirements.txt b/requirements.txt
index 4c0370c..4827626 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -16,7 +16,7 @@ bleach==3.3.0
# via pypeline
cchardet==2.1.7
# via -r requirements.in
-certifi==2019.6.16
+certifi==2021.5.30
# via requests
cffi==1.12.2
# via cryptography
@@ -68,7 +68,7 @@ html5lib==1.0.1
# textile
httplib2==0.19.0
# via oauth2
-idna==2.8
+idna==3.2
# via requests
inflection==0.3.1
# via profanityfilter
@@ -215,7 +215,7 @@ translationstring==1.3
# via colander
turbogears2==2.3.12
# via -r requirements.in
-urllib3==1.26.5
+urllib3==1.26.6
# via requests
waitress==1.4.3
# via webtest
[allura] 16/18: [#8396] upgrade html5lib
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit d5c51f6642c2c4a7f61f0a08f029c753bec7e555
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Mon Sep 13 19:27:28 2021 +0000
[#8396] upgrade html5lib
---
requirements.in | 2 +-
requirements.txt | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/requirements.in b/requirements.in
index 5b6c49d..5867e54 100644
--- a/requirements.in
+++ b/requirements.in
@@ -12,7 +12,7 @@ feedparser
FormEncode>=2
# 3.1.23 drops py36 support
GitPython<=3.1.23
-html5lib==1.0.1
+html5lib
Jinja2
Markdown<3
markdown-checklist==0.4.1
diff --git a/requirements.txt b/requirements.txt
index 2132c71..02db468 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -58,7 +58,7 @@ gitpython==3.1.18
# via -r requirements.in
gunicorn==20.1.0
# via -r requirements.in
-html5lib==1.0.1
+html5lib==1.1
# via
# -r requirements.in
# pypeline
[allura] 01/18: [#8396] Revert "[#8386] remove chardet,
make requests library still work"
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit 231463646e54dfd91b10bba8f14d5230ae7577c0
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Fri Sep 10 17:59:08 2021 +0000
[#8396] Revert "[#8386] remove chardet, make requests library still work"
This reverts commit f4ac641bcabcd7bdc199cd022fb13cf79cd93ff3.
---
.travis.yml | 3 +--
Allura/allura/lib/custom_middleware.py | 2 +-
Allura/allura/lib/helpers.py | 16 ----------------
Allura/allura/lib/phone/nexmo.py | 1 -
Allura/allura/lib/project_create_helpers.py | 2 +-
Allura/allura/lib/search.py | 2 +-
Allura/allura/lib/security.py | 2 +-
Allura/allura/lib/solr.py | 2 +-
Allura/allura/webhooks.py | 2 +-
Allura/docs/getting_started/install_each_step.rst | 2 +-
Allura/docs/getting_started/installation.rst | 2 +-
AlluraTest/alluratest/validation.py | 3 +--
ForgeImporters/forgeimporters/github/__init__.py | 1 -
.../tests/github/functional/test_github.py | 2 +-
ForgeImporters/forgeimporters/trac/__init__.py | 1 -
requirements.txt | 2 ++
update.sh | 6 +++---
17 files changed, 16 insertions(+), 35 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index 4d90096..ced0267 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -26,8 +26,7 @@ jobs:
- pip install https://sourceforge.net/projects/pysvn/files/pysvn/V1.9.12/pysvn-1.9.12.tar.gz
install:
- sudo apt-get install -qq libjpeg8-dev zlib1g-dev
- - pip install nose
- - pip install -r requirements.txt --no-deps --upgrade --upgrade-strategy=only-if-needed
+ - pip install -r requirements.txt
- npm install
script:
- ./rebuild-all.bash
diff --git a/Allura/allura/lib/custom_middleware.py b/Allura/allura/lib/custom_middleware.py
index 55f9ab6..25b31bf 100644
--- a/Allura/allura/lib/custom_middleware.py
+++ b/Allura/allura/lib/custom_middleware.py
@@ -29,11 +29,11 @@ from tg import tmpl_context as c
from tg.support.middlewares import _call_wsgi_application as call_wsgi_application
from timermiddleware import Timer, TimerMiddleware
from webob import exc, Request
+import pysolr
import six
from ming.odm import session
from allura.lib import helpers as h
-import pysolr # after 'h' import to get requests/chardet patched
from allura.lib.utils import is_ajax
from allura import model as M
import allura.model.repository
diff --git a/Allura/allura/lib/helpers.py b/Allura/allura/lib/helpers.py
index 79f8ad8..a7a334c 100644
--- a/Allura/allura/lib/helpers.py
+++ b/Allura/allura/lib/helpers.py
@@ -44,22 +44,6 @@ from functools import partial
from io import BytesIO
import cgi
-
-# https://forge-allura.apache.org/p/allura/tickets/8386/
-# we don't want to depend on LGPL'd chardet, but the requests library needs it
-# so if we can't import it, we'll make it exist as a copy of cchardet
-# this spot in the codebase is best, since it is imported by many things and is before 'requests' is imported
-# if https://github.com/psf/requests/pull/5797 is resolved, this hack could be removed
-try:
- import chardet
-except ImportError:
- import sys
- import cchardet
- sys.modules['chardet'] = sys.modules['cchardet']
- import chardet
- chardet.__version__ += '.cchardet'
-
-
import emoji
import tg
import six
diff --git a/Allura/allura/lib/phone/nexmo.py b/Allura/allura/lib/phone/nexmo.py
index f5025d7..f251c93 100644
--- a/Allura/allura/lib/phone/nexmo.py
+++ b/Allura/allura/lib/phone/nexmo.py
@@ -22,7 +22,6 @@ from six.moves.urllib.parse import urljoin
import cgi
import json
-from allura.lib import helpers as h # to get requests/chardet patched
import requests
import jinja2
diff --git a/Allura/allura/lib/project_create_helpers.py b/Allura/allura/lib/project_create_helpers.py
index 026b197..5e08fb3 100644
--- a/Allura/allura/lib/project_create_helpers.py
+++ b/Allura/allura/lib/project_create_helpers.py
@@ -29,6 +29,7 @@ except ImportError: # py2 doesn't have typing yet
import colander as col
import bson
+import requests
import formencode
import six
from six.moves.urllib.parse import urlparse
@@ -42,7 +43,6 @@ from tg import tmpl_context as c, app_globals as g
from allura import model as M
from allura.lib import helpers as h
-import requests
from allura.lib.plugin import ProjectRegistrationProvider
diff --git a/Allura/allura/lib/search.py b/Allura/allura/lib/search.py
index 6d44361..462ffc2 100644
--- a/Allura/allura/lib/search.py
+++ b/Allura/allura/lib/search.py
@@ -30,9 +30,9 @@ import jinja2
from tg import redirect, url
from tg import tmpl_context as c, app_globals as g
from tg import request
+from pysolr import SolrError
from allura.lib import helpers as h
-from pysolr import SolrError # after 'h' import to get requests/chardet patched
from allura.lib.solr import escape_solr_arg
from allura.lib.utils import urlencode
import six
diff --git a/Allura/allura/lib/security.py b/Allura/allura/lib/security.py
index 2889c9e..4ff62f7 100644
--- a/Allura/allura/lib/security.py
+++ b/Allura/allura/lib/security.py
@@ -25,6 +25,7 @@ import sys
import logging
from collections import defaultdict
import hashlib
+import requests
from tg import tmpl_context as c
from tg import request
@@ -562,7 +563,6 @@ class HIBPClient(object):
Raises a named HIBPCompromisedCredentials exception if any found
:param password: user-supplied password
"""
- import requests
result = 0
try:
# sha1 it
diff --git a/Allura/allura/lib/solr.py b/Allura/allura/lib/solr.py
index 138fa6d..d97141e 100644
--- a/Allura/allura/lib/solr.py
+++ b/Allura/allura/lib/solr.py
@@ -21,10 +21,10 @@ import logging
from tg import config
from paste.deploy.converters import asbool
+import pysolr
import six
from allura.lib.helpers import shlex_split
-import pysolr # after helpers import to get requests/chardet patched
log = logging.getLogger(__name__)
diff --git a/Allura/allura/webhooks.py b/Allura/allura/webhooks.py
index 5778b44..a5f0004 100644
--- a/Allura/allura/webhooks.py
+++ b/Allura/allura/webhooks.py
@@ -25,6 +25,7 @@ import time
import socket
import ssl
+import requests
from bson import ObjectId
from tg import expose, validate, redirect, flash, config
from tg.decorators import with_trailing_slash, without_trailing_slash
@@ -39,7 +40,6 @@ from paste.deploy.converters import asint, aslist
from allura.app import AdminControllerMixin
from allura.controllers import BaseController
from allura.lib import helpers as h
-import requests
from allura.lib import validators as v
from allura.lib.decorators import require_post, task
from allura.lib.utils import DateJSONEncoder
diff --git a/Allura/docs/getting_started/install_each_step.rst b/Allura/docs/getting_started/install_each_step.rst
index 4bbe8f0..ec948c2 100644
--- a/Allura/docs/getting_started/install_each_step.rst
+++ b/Allura/docs/getting_started/install_each_step.rst
@@ -112,7 +112,7 @@ We'll upgrade `pip <https://pip.pypa.io/en/stable/>`_ to make sure its a current
(env-allura)~/src$ cd allura
(env-allura)~/src/allura$ pip install -U pip
- (env-allura)~/src/allura$ pip install -r requirements.txt --no-deps --upgrade --upgrade-strategy=only-if-needed
+ (env-allura)~/src/allura$ pip install -r requirements.txt
This may take a little while.
diff --git a/Allura/docs/getting_started/installation.rst b/Allura/docs/getting_started/installation.rst
index 1074af5..0c06b18 100644
--- a/Allura/docs/getting_started/installation.rst
+++ b/Allura/docs/getting_started/installation.rst
@@ -165,7 +165,7 @@ Update requirements and reinstall apps:
.. code-block:: bash
- docker-compose run web pip install -r requirements.txt --no-deps --upgrade --upgrade-strategy=only-if-needed
+ docker-compose run web pip install -r requirements.txt
docker-compose run web ./rebuild-all.bash
You may want to restart at least "taskd" container after that in order for it to
diff --git a/AlluraTest/alluratest/validation.py b/AlluraTest/alluratest/validation.py
index b10a783..30f9c46 100644
--- a/AlluraTest/alluratest/validation.py
+++ b/AlluraTest/alluratest/validation.py
@@ -39,10 +39,9 @@ import six
import webtest
from webtest import TestApp
from ming.utils import LazyProperty
+import requests
from allura.lib import utils
-from allura.lib import helpers as h # to get requests/chardet patched
-import requests
log = logging.getLogger(__name__)
diff --git a/ForgeImporters/forgeimporters/github/__init__.py b/ForgeImporters/forgeimporters/github/__init__.py
index 2d570b3..32098fa 100644
--- a/ForgeImporters/forgeimporters/github/__init__.py
+++ b/ForgeImporters/forgeimporters/github/__init__.py
@@ -29,7 +29,6 @@ from datetime import datetime
from tg import config, session, redirect, request, expose
from tg.decorators import without_trailing_slash
from tg import tmpl_context as c
-from allura.lib import helpers as h # to get requests/chardet patched
from requests_oauthlib import OAuth2Session
import requests
from formencode import validators as fev
diff --git a/ForgeImporters/forgeimporters/tests/github/functional/test_github.py b/ForgeImporters/forgeimporters/tests/github/functional/test_github.py
index c83cc50..5cb7b8f 100644
--- a/ForgeImporters/forgeimporters/tests/github/functional/test_github.py
+++ b/ForgeImporters/forgeimporters/tests/github/functional/test_github.py
@@ -16,6 +16,7 @@
# under the License.
from __future__ import unicode_literals
from __future__ import absolute_import
+import requests
import tg
from mock import patch, call, Mock
from alluratest.tools import assert_equal
@@ -23,7 +24,6 @@ from unittest import TestCase
from allura.tests import TestController
from allura import model as M
-import requests
class TestGitHubImportController(TestController, TestCase):
diff --git a/ForgeImporters/forgeimporters/trac/__init__.py b/ForgeImporters/forgeimporters/trac/__init__.py
index 7ba6693..3a0949d 100644
--- a/ForgeImporters/forgeimporters/trac/__init__.py
+++ b/ForgeImporters/forgeimporters/trac/__init__.py
@@ -18,7 +18,6 @@
from __future__ import unicode_literals
from __future__ import absolute_import
from formencode import validators as fev
-from allura.lib import helpers as h # to get requests/chardet patched
import requests
from allura.lib import validators
diff --git a/requirements.txt b/requirements.txt
index 0af5cf6..3189b28 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -20,6 +20,8 @@ certifi==2019.6.16
# via requests
cffi==1.12.2
# via cryptography
+chardet==3.0.4
+ # via requests
colander==1.7.0
# via -r requirements.in
crank==0.8.1
diff --git a/update.sh b/update.sh
index f160744..9bf3a1e 100755
--- a/update.sh
+++ b/update.sh
@@ -25,12 +25,12 @@ fi
echo 'Getting latest code with `git pull` ...'
git pull
-echo 'Updating python packages with pip install ...'
-pip install -r requirements.txt --no-deps --upgrade --upgrade-strategy=only-if-needed
+echo 'Updating python packages with `pip install -r requirements.txt` ...'
+pip install -r requirements.txt
if [ "$?" -gt 0 ]; then
echo
echo
- echo 'Command `pip install ...` failed. Sometimes this is a random download error. If so, just try again.'
+ echo 'Command `pip install -r requirements.txt` failed. Sometimes this is a random download error. If so, just try again.'
exit;
fi
[allura] 10/18: [#8396] upgrade python-magic
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit 8aa8a77c0a4587f3be6388722bad9410b3340853
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Fri Sep 10 22:08:27 2021 +0000
[#8396] upgrade python-magic
---
requirements.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/requirements.txt b/requirements.txt
index c9cb3d0..ee1a96f 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -137,7 +137,7 @@ python-dateutil==2.8.0
# via
# -r requirements.in
# easywidgets
-python-magic==0.4.15
+python-magic==0.4.24
# via -r requirements.in
python-oembed==0.2.4
# via -r requirements.in
[allura] 17/18: [#8396] upgrade markupsafe
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit 1f8fb812eee47b49375212bbe5c196460e059d2c
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Mon Sep 13 19:27:46 2021 +0000
[#8396] upgrade markupsafe
---
requirements.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/requirements.txt b/requirements.txt
index 02db468..9cda678 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -80,7 +80,7 @@ markdown==2.6.11
# pypeline
markdown-checklist==0.4.1
# via -r requirements.in
-markupsafe==1.1.1
+markupsafe==2.0.1
# via
# -r requirements.in
# easywidgets
[allura] 18/18: [#8396] upgrade webtest and dep
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit 06b88084bfbc77a0c371be9d8455509efda3f203
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Mon Sep 13 19:30:25 2021 +0000
[#8396] upgrade webtest and dep
---
requirements.in | 2 +-
requirements.txt | 5 ++---
2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/requirements.in b/requirements.in
index 5867e54..0627b83 100644
--- a/requirements.in
+++ b/requirements.in
@@ -56,7 +56,7 @@ mock
pyflakes
#pylint -- disabled due to [#8346] (also requires diff versions on py2 vs 3, including transitive deps which gets tricky with pip-compile)
testfixtures
-WebTest==2.0.33
+WebTest
# deployment
gunicorn
diff --git a/requirements.txt b/requirements.txt
index 9cda678..a434e65 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -179,7 +179,6 @@ six==1.15.0
# qrcode
# textile
# webhelpers2
- # webtest
smmap==4.0.0
# via gitdb
soupsieve==2.2.1
@@ -198,7 +197,7 @@ typing-extensions==3.10.0.2
# via gitpython
urllib3==1.26.6
# via requests
-waitress==1.4.3
+waitress==2.0.0
# via webtest
webencodings==0.5.1
# via
@@ -213,7 +212,7 @@ webob==1.7.4
# timermiddleware
# turbogears2
# webtest
-webtest==2.0.33
+webtest==3.0.0
# via -r requirements.in
werkzeug==1.0.1
# via -r requirements.in
[allura] 03/18: [#8396] upgrade requests,
depend on charset-normalizer now
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit 6d890ccba3cec49abd1fb787ded93f8355b3377e
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Fri Sep 10 19:43:23 2021 +0000
[#8396] upgrade requests, depend on charset-normalizer now
---
requirements-dev.txt | 4 ++--
requirements.txt | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/requirements-dev.txt b/requirements-dev.txt
index 1975e44..a37ceba 100644
--- a/requirements-dev.txt
+++ b/requirements-dev.txt
@@ -10,7 +10,7 @@ babel==2.7.0
# via sphinx
certifi==2019.6.16
# via requests
-chardet==3.0.4
+charset-normalizer==2.0.4
# via requests
click==7.0
# via pip-tools
@@ -44,7 +44,7 @@ pytz==2019.1
# via babel
q==2.3
# via -r requirements-dev.in
-requests==2.25.1
+requests==2.26.0
# via sphinx
six==1.15.0
# via sphinx
diff --git a/requirements.txt b/requirements.txt
index 3189b28..4c0370c 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -20,7 +20,7 @@ certifi==2019.6.16
# via requests
cffi==1.12.2
# via cryptography
-chardet==3.0.4
+charset-normalizer==2.0.4
# via requests
colander==1.7.0
# via -r requirements.in
@@ -167,7 +167,7 @@ qrcode==6.1
# via -r requirements.in
repoze.lru==0.7
# via turbogears2
-requests==2.25.1
+requests==2.26.0
# via
# -r requirements.in
# pysolr
[allura] 08/18: [#8396] upgrade colander and its dependencies
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit e3318c124cd54f7a07082d4f340ee5f986b5e811
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Fri Sep 10 21:45:53 2021 +0000
[#8396] upgrade colander and its dependencies
---
requirements.in | 2 +-
requirements.txt | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/requirements.in b/requirements.in
index 1512c40..d4bf5af 100644
--- a/requirements.in
+++ b/requirements.in
@@ -2,7 +2,7 @@ ActivityStream==0.3.0
beautifulsoup4
Beaker
cchardet
-colander==1.7.0
+colander
cryptography
decorator
EasyWidgets>=0.3.6
diff --git a/requirements.txt b/requirements.txt
index ff20e15..a987f50 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -22,7 +22,7 @@ cffi==1.12.2
# via cryptography
charset-normalizer==2.0.4
# via requests
-colander==1.7.0
+colander==1.8.3
# via -r requirements.in
crank==0.8.1
# via turbogears2
@@ -69,7 +69,7 @@ idna==3.2
# via requests
inflection==0.5.1
# via profanityfilter
-iso8601==0.1.12
+iso8601==0.1.16
# via colander
jinja2==2.11.3
# via -r requirements.in
@@ -190,7 +190,7 @@ textile==3.0.4
# via pypeline
timermiddleware==0.5.1
# via -r requirements.in
-translationstring==1.3
+translationstring==1.4
# via colander
turbogears2==2.3.12
# via -r requirements.in
[allura] 13/18: [#8396] allow newer akismet
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit fbc9f2b55641bdcc88523be0df4395fafd19b3da
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Mon Sep 13 19:05:19 2021 +0000
[#8396] allow newer akismet
---
requirements-optional.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/requirements-optional.txt b/requirements-optional.txt
index 9248ca2..d3c4fb5 100644
--- a/requirements-optional.txt
+++ b/requirements-optional.txt
@@ -8,4 +8,4 @@ html2text==2019.8.11 # last to support py2
mediawiki2html # GPL
# for spam checking
-akismet==1.0.1
+akismet>=1.0.1
[allura] 06/18: [#8396] upgrade inflection (from profanity filter,
for ForgeFeedback)
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit bccd290f904e8aa99b27c6f06245c458518c01b0
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Fri Sep 10 20:26:09 2021 +0000
[#8396] upgrade inflection (from profanity filter, for ForgeFeedback)
---
requirements.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/requirements.txt b/requirements.txt
index 78fe8d0..a79e0be 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -70,7 +70,7 @@ httplib2==0.19.0
# via oauth2
idna==3.2
# via requests
-inflection==0.3.1
+inflection==0.5.1
# via profanityfilter
ipython==5.8.0
# via -r requirements.in
[allura] 05/18: [#8396] upgrade feedparser
Posted by ke...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
kentontaylor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/allura.git
commit 1dd4d3d57e148955b71e7348b8fbdc2d89663a92
Author: Dave Brondsema <db...@slashdotmedia.com>
AuthorDate: Fri Sep 10 20:16:23 2021 +0000
[#8396] upgrade feedparser
---
requirements.txt | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/requirements.txt b/requirements.txt
index 4827626..78fe8d0 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -45,7 +45,7 @@ emoji==0.5.3
# via -r requirements.in
feedgenerator==1.9.1
# via -r requirements.in
-feedparser==5.2.1
+feedparser==6.0.8
# via -r requirements.in
formencode==2.0.0
# via
@@ -176,6 +176,8 @@ requests-oauthlib==1.2.0
# via -r requirements.in
setproctitle==1.1.9
# via -r requirements.in
+sgmllib3k==1.0.0
+ # via feedparser
simplegeneric==0.8.1
# via ipython
six==1.15.0