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 2019/09/04 19:15:05 UTC

[allura] branch master updated (fb8aeaa -> 0cbb634)

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 fb8aeaa  [#8330] better titles on some other tools too
     new 7cda242  [#8325] upgrade qrcode
     new a39c4e6  [#8325] upgrade pypeline
     new b175b32  [#8325] upgrade pygments
     new 2e62c7e  [#8325] upgrade pillow
     new 9779f49  [#8325] upgrade MarkupSafe
     new 08058a2  [#8325] upgrade feedparser
     new 3bab5f9  [#8325] upgrade nose
     new 937c03a  [#8325] upgrade emoji
     new 6abc502  [#8325] upgrade to beautifulsoup4
     new d8f43d2  [#8325] upgrade markdown to 2.3.x
     new f01cff2  [#8325] upgrade markdown to 2.4.x
     new 5b16ee8  [#8325] upgrade markdown to 2.5.x
     new 8fb929c  [#8325] upgrade markdown to 2.6.x
     new 19b1748  [#8325] upgrade pip-tools
     new 06e39e8  [#8325] upgrade docutils
     new 0f34f2d  [#8325] upgrade paste*
     new 0cbb634  [#8325] work with newer pysvn versions

The 17 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/lib/app_globals.py                   | 11 +++---
 Allura/allura/lib/macro.py                         |  4 +-
 Allura/allura/lib/markdown_extensions.py           | 41 +-------------------
 Allura/allura/lib/search.py                        |  2 +-
 Allura/allura/model/repo_refresh.py                |  2 +-
 Allura/allura/scripts/trac_export.py               |  2 +-
 Allura/allura/templates/widgets/repo/log.html      |  2 +-
 Allura/allura/templates/widgets/repo/revision.html |  2 +-
 .../allura/tests/functional/test_trovecategory.py  | 10 ++---
 Allura/allura/tests/test_globals.py                | 10 ++---
 Allura/allura/tests/test_markdown.py               |  2 +-
 ForgeBlog/forgeblog/tests/test_commands.py         | 45 ----------------------
 .../forgegit/tests/functional/test_controllers.py  |  2 +-
 ForgeImporters/forgeimporters/base.py              |  2 +-
 .../forgeimporters/github/tests/test_wiki.py       | 10 +++--
 ForgeImporters/forgeimporters/github/wiki.py       | 15 ++++----
 ForgeSVN/forgesvn/model/svn.py                     |  3 +-
 .../forgetracker/tests/functional/test_root.py     |  2 +-
 ForgeWiki/forgewiki/converters.py                  |  4 +-
 requirements-dev.in                                |  2 +-
 requirements-dev.txt                               |  6 +--
 requirements.in                                    | 27 +++++++------
 requirements.txt                                   | 34 ++++++++--------
 23 files changed, 80 insertions(+), 160 deletions(-)


[allura] 15/17: [#8325] upgrade docutils

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 06e39e89447f257db941fa37526104892ff97432
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Wed Aug 21 16:56:46 2019 -0400

    [#8325] upgrade docutils
---
 requirements-dev.txt | 2 +-
 requirements.txt     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/requirements-dev.txt b/requirements-dev.txt
index e123447..219e60f 100644
--- a/requirements-dev.txt
+++ b/requirements-dev.txt
@@ -9,7 +9,7 @@ babel==2.7.0              # via sphinx
 certifi==2019.6.16        # via requests
 chardet==3.0.4            # via requests
 click==7.0                # via pip-tools
-docutils==0.14            # via sphinx
+docutils==0.15.2          # via sphinx
 idna==2.8                 # via requests
 imagesize==1.1.0          # via sphinx
 jinja2==2.10              # via sphinx
diff --git a/requirements.txt b/requirements.txt
index d70a913..13d2e15 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -24,7 +24,7 @@ creoleparser==0.7.5       # via pypeline
 cryptography==2.6.1
 datadiff==2.0.0
 decorator==4.4.0
-docutils==0.14            # via pypeline
+docutils==0.15.2          # via pypeline
 easywidgets==0.3.5
 emoji==0.5.3
 enum34==1.1.6             # via astroid, colander, cryptography, traitlets


[allura] 04/17: [#8325] upgrade pillow

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 2e62c7ed9140a63404bfc598617416490ba21840
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Tue Aug 20 17:08:33 2019 -0400

    [#8325] upgrade pillow
---
 requirements.in  | 2 +-
 requirements.txt | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/requirements.in b/requirements.in
index f41fc7d..06e1371 100644
--- a/requirements.in
+++ b/requirements.in
@@ -25,7 +25,7 @@ oauth2
 Paste==3.0.1
 PasteDeploy==1.5.2
 PasteScript==2.0.2
-Pillow==5.2.0
+Pillow
 Pygments
 pymongo==2.8.1
 Pypeline[creole,markdown,textile,rst]
diff --git a/requirements.txt b/requirements.txt
index e0dd9f5..e733815 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -64,7 +64,7 @@ pastescript==2.0.2
 pathlib2==2.3.4           # via ipython, pickleshare
 pexpect==4.7.0            # via ipython
 pickleshare==0.7.5        # via ipython
-pillow==5.2.0
+pillow==6.1.0
 poster==0.8.1
 prompt-toolkit==1.0.16    # via ipython
 ptyprocess==0.6.0         # via pexpect


[allura] 08/17: [#8325] upgrade emoji

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 937c03a4cda744d215378a5e6577f76a25d41c0b
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Tue Aug 20 17:35:59 2019 -0400

    [#8325] upgrade emoji
---
 requirements.in  | 2 +-
 requirements.txt | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/requirements.in b/requirements.in
index 1369fff..7c77ca6 100644
--- a/requirements.in
+++ b/requirements.in
@@ -8,7 +8,7 @@ colander==1.7.0
 cryptography==2.6.1
 decorator
 EasyWidgets>=0.3.3
-emoji==0.5.1
+emoji
 faulthandler
 feedparser
 # FormEncode may need v2.0 to work past py3.3 or so?  https://github.com/formencode/formencode/issues/140
diff --git a/requirements.txt b/requirements.txt
index b03b442..02eb7ee 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -27,7 +27,7 @@ datadiff==2.0.0
 decorator==4.4.0
 docutils==0.14            # via pypeline
 easywidgets==0.3.5
-emoji==0.5.1
+emoji==0.5.3
 enum34==1.1.6             # via astroid, colander, cryptography, traitlets
 faulthandler==3.1
 feedparser==5.2.1


[allura] 13/17: [#8325] upgrade markdown to 2.6.x

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 8fb929c7aaa689621e4f5c8f4e5a9dd35927a19c
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Wed Aug 21 13:41:02 2019 -0400

    [#8325] upgrade markdown to 2.6.x
---
 Allura/allura/lib/markdown_extensions.py | 2 +-
 requirements.in                          | 2 +-
 requirements.txt                         | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/Allura/allura/lib/markdown_extensions.py b/Allura/allura/lib/markdown_extensions.py
index 07e51d4..a8c38c4 100644
--- a/Allura/allura/lib/markdown_extensions.py
+++ b/Allura/allura/lib/markdown_extensions.py
@@ -515,7 +515,7 @@ class AutolinkPattern(markdown.inlinepatterns.Pattern):
         result.text = old_link
         # since this is run before the builtin 'escape' processor, we have to
         # do our own unescaping
-        for char in markdown.Markdown.ESCAPED_CHARS:
+        for char in self.markdown.ESCAPED_CHARS:
             old_link = old_link.replace('\\' + char, char)
         result.set('href', old_link)
         return result
diff --git a/requirements.in b/requirements.in
index 4130800..f486dd1 100644
--- a/requirements.in
+++ b/requirements.in
@@ -15,7 +15,7 @@ FormEncode
 GitPython==2.1.11
 html5lib==1.0.1
 Jinja2==2.10
-Markdown<2.6
+Markdown<3
 markdown-checklist==0.4.1
 MarkupSafe
 Ming==0.5.6
diff --git a/requirements.txt b/requirements.txt
index 71ae7a2..d70a913 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -49,7 +49,7 @@ isort==4.3.21             # via pylint
 jinja2==2.10
 lazy-object-proxy==1.4.1  # via astroid
 markdown-checklist==0.4.1
-markdown==2.5.2
+markdown==2.6.11
 markupsafe==1.1.1
 mccabe==0.6.1             # via pylint
 ming==0.5.6


[allura] 01/17: [#8325] upgrade qrcode

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 7cda24264f9a2b05adfc76741edf3249b1fccff2
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Tue Aug 20 16:56:51 2019 -0400

    [#8325] upgrade qrcode
---
 requirements.in  | 2 +-
 requirements.txt | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/requirements.in b/requirements.in
index bceb9aa..583f1ae 100644
--- a/requirements.in
+++ b/requirements.in
@@ -34,7 +34,7 @@ python-dateutil
 python-magic
 python-oembed
 pytz==2019.1
-qrcode==5.3
+qrcode
 requests
 requests-oauthlib
 # for taskd proc name switching
diff --git a/requirements.txt b/requirements.txt
index e4193cf..49c3b91 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -79,7 +79,7 @@ python-dateutil==2.8.0
 python-magic==0.4.15
 python-oembed==0.2.4
 pytz==2019.1
-qrcode==5.3
+qrcode==6.1
 repoze.lru==0.7           # via turbogears2
 requests-oauthlib==1.2.0
 requests==2.22.0
@@ -105,4 +105,4 @@ webtest==2.0.33
 wrapt==1.11.2
 
 # The following packages are considered to be unsafe in a requirements file:
-# setuptools==41.0.1        # via ipython
+# setuptools==41.1.0        # via ipython


[allura] 11/17: [#8325] upgrade markdown to 2.4.x

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 f01cff2fef173d26bddc6fc9900d5d14d2f548dd
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Wed Aug 21 12:19:25 2019 -0400

    [#8325] upgrade markdown to 2.4.x
---
 Allura/allura/lib/app_globals.py         | 3 +--
 Allura/allura/lib/markdown_extensions.py | 3 ---
 requirements.in                          | 2 +-
 requirements.txt                         | 2 +-
 4 files changed, 3 insertions(+), 7 deletions(-)

diff --git a/Allura/allura/lib/app_globals.py b/Allura/allura/lib/app_globals.py
index a30607e..604ecaa 100644
--- a/Allura/allura/lib/app_globals.py
+++ b/Allura/allura/lib/app_globals.py
@@ -424,8 +424,7 @@ class Globals(object):
     def forge_markdown(self, **kwargs):
         '''return a markdown.Markdown object on which you can call convert'''
         return ForgeMarkdown(
-            # 'fenced_code'
-            extensions=['fenced_code', 'codehilite',
+            extensions=['fenced_code', 'codehilite', 'extra',  # to allow markdown inside HTML tags
                         ForgeExtension(
                             **kwargs), EmojiExtension(), UserMentionExtension(), 'tables', 'toc', 'nl2br', 'markdown_checklist.extension'],
             output_format='html4')
diff --git a/Allura/allura/lib/markdown_extensions.py b/Allura/allura/lib/markdown_extensions.py
index 4f399a7..07e51d4 100644
--- a/Allura/allura/lib/markdown_extensions.py
+++ b/Allura/allura/lib/markdown_extensions.py
@@ -244,9 +244,6 @@ class ForgeExtension(markdown.Extension):
 
     def extendMarkdown(self, md, md_globals):
         md.registerExtension(self)
-        # allow markdown within e.g. <div markdown>...</div>  More info at:
-        # https://github.com/waylan/Python-Markdown/issues/52
-        md.preprocessors['html_block'].markdown_in_raw = True
         md.preprocessors.add('macro_include', ForgeMacroIncludePreprocessor(md), '_end')
         # this has to be before the 'escape' processor, otherwise weird
         # placeholders are inserted for escaped chars within urls, and then the
diff --git a/requirements.in b/requirements.in
index c05a8e8..38a14d8 100644
--- a/requirements.in
+++ b/requirements.in
@@ -15,7 +15,7 @@ FormEncode
 GitPython==2.1.11
 html5lib==1.0.1
 Jinja2==2.10
-Markdown<2.4
+Markdown<2.5
 markdown-checklist==0.4.1
 MarkupSafe
 Ming==0.5.6
diff --git a/requirements.txt b/requirements.txt
index 5677271..bb2e357 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -49,7 +49,7 @@ isort==4.3.21             # via pylint
 jinja2==2.10
 lazy-object-proxy==1.4.1  # via astroid
 markdown-checklist==0.4.1
-markdown==2.3.1
+markdown==2.4.1
 markupsafe==1.1.1
 mccabe==0.6.1             # via pylint
 ming==0.5.6


[allura] 02/17: [#8325] upgrade pypeline

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 a39c4e644612d3d49224939018360991940f4271
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Tue Aug 20 17:02:04 2019 -0400

    [#8325] upgrade pypeline
---
 requirements.in  | 2 +-
 requirements.txt | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/requirements.in b/requirements.in
index 583f1ae..7fd5d0d 100644
--- a/requirements.in
+++ b/requirements.in
@@ -28,7 +28,7 @@ PasteScript==2.0.2
 Pillow==5.2.0
 Pygments==2.2.0
 pymongo==2.8.1
-Pypeline[creole,markdown,textile,rst]==0.5
+Pypeline[creole,markdown,textile,rst]
 pysolr==3.6.0
 python-dateutil
 python-magic
diff --git a/requirements.txt b/requirements.txt
index 49c3b91..64acf43 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -73,7 +73,7 @@ pyflakes==2.1.1
 pygments==2.2.0
 pylint==1.9.5
 pymongo==2.8.1
-pypeline[creole,markdown,rst,textile]==0.5
+pypeline[creole,markdown,rst,textile]==0.5.1
 pysolr==3.6.0
 python-dateutil==2.8.0
 python-magic==0.4.15


[allura] 07/17: [#8325] upgrade nose

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 3bab5f96403e5007573a54dcfe1e072e08de8e8c
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Tue Aug 20 17:33:30 2019 -0400

    [#8325] upgrade nose
---
 requirements.in  | 2 +-
 requirements.txt | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/requirements.in b/requirements.in
index a218d01..1369fff 100644
--- a/requirements.in
+++ b/requirements.in
@@ -50,7 +50,7 @@ wrapt==1.11.2
 datadiff
 ipython<6  # Ipython 7 starts to require py3
 mock
-nose==1.3.4
+nose
 poster==0.8.1
 pyflakes
 pylint
diff --git a/requirements.txt b/requirements.txt
index b306cf9..b03b442 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -55,7 +55,7 @@ markupsafe==1.1.1
 mccabe==0.6.1             # via pylint
 ming==0.5.6
 mock==3.0.5
-nose==1.3.4
+nose==1.3.7
 oauth2==1.9.0.post1
 oauthlib==3.0.2           # via requests-oauthlib
 paste==3.0.1


[allura] 03/17: [#8325] upgrade pygments

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 b175b324edc3ff3a144504d8b1d14c182657a0e9
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Tue Aug 20 17:05:39 2019 -0400

    [#8325] upgrade pygments
---
 Allura/allura/tests/test_globals.py | 10 +++++-----
 requirements.in                     |  2 +-
 requirements.txt                    |  2 +-
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/Allura/allura/tests/test_globals.py b/Allura/allura/tests/test_globals.py
index 86944a1..e8787fb 100644
--- a/Allura/allura/tests/test_globals.py
+++ b/Allura/allura/tests/test_globals.py
@@ -772,11 +772,11 @@ class TestEmojis(unittest.TestCase):
 
     def test_markdown_emoji_in_code(self):
         output = g.markdown.convert('This will not become an emoji `:+1:`')
-        assert u'<p>This will not become an emoji <code>:+1:</code></p>' in output
-        output = g.markdown.convert(u'```html\n<p>:Curaçao:</p>\n```')
-        assert u':Curaçao:' in output
-        output = g.markdown.convert(u'~~~\n:Curaçao:\n~~~')
-        assert u':Curaçao:' in output
+        assert_in(u'<p>This will not become an emoji <code>:+1:</code></p>', output)
+        output = g.markdown.convert(u'```html\n<p>:camel:</p>\n```')
+        assert_in(u':camel:', output)
+        output = g.markdown.convert(u'~~~\n:camel:\n~~~')
+        assert_in(u'<span class="p">:</span><span class="n">camel</span><span class="p">:</span>', output)
 
     def test_markdown_commit_with_emojis(self):
         output = g.markdown_commit.convert('Thumbs up emoji :+1: wow!')
diff --git a/requirements.in b/requirements.in
index 7fd5d0d..f41fc7d 100644
--- a/requirements.in
+++ b/requirements.in
@@ -26,7 +26,7 @@ Paste==3.0.1
 PasteDeploy==1.5.2
 PasteScript==2.0.2
 Pillow==5.2.0
-Pygments==2.2.0
+Pygments
 pymongo==2.8.1
 Pypeline[creole,markdown,textile,rst]
 pysolr==3.6.0
diff --git a/requirements.txt b/requirements.txt
index 64acf43..e0dd9f5 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -70,7 +70,7 @@ prompt-toolkit==1.0.16    # via ipython
 ptyprocess==0.6.0         # via pexpect
 pycparser==2.19           # via cffi
 pyflakes==2.1.1
-pygments==2.2.0
+pygments==2.4.2
 pylint==1.9.5
 pymongo==2.8.1
 pypeline[creole,markdown,rst,textile]==0.5.1


[allura] 05/17: [#8325] 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 9779f49b76761b1a16138a659cb6ce8e3d8c22ac
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Tue Aug 20 17:21:53 2019 -0400

    [#8325] upgrade MarkupSafe
---
 requirements.in  | 2 +-
 requirements.txt | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/requirements.in b/requirements.in
index 06e1371..1ed968d 100644
--- a/requirements.in
+++ b/requirements.in
@@ -18,7 +18,7 @@ html5lib==1.0.1
 Jinja2==2.10
 Markdown==2.2.1
 markdown-checklist==0.4.1
-MarkupSafe==1.0
+MarkupSafe
 Ming==0.5.6
 # oauth2 doesn't have py3.6 support.  There's a fork with fixes but no pypi releases I can find.  https://github.com/joestump/python-oauth2/issues/223
 oauth2
diff --git a/requirements.txt b/requirements.txt
index e733815..15274ed 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -51,7 +51,7 @@ jinja2==2.10
 lazy-object-proxy==1.4.1  # via astroid
 markdown-checklist==0.4.1
 markdown==2.2.1
-markupsafe==1.0
+markupsafe==1.1.1
 mccabe==0.6.1             # via pylint
 ming==0.5.6
 mock==3.0.5


[allura] 10/17: [#8325] upgrade markdown to 2.3.x

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 d8f43d251ca46624f9c329d60bfe4a4fffdecf24
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Wed Aug 21 11:52:28 2019 -0400

    [#8325] upgrade markdown to 2.3.x
---
 Allura/allura/lib/markdown_extensions.py           | 36 -----------------
 Allura/allura/model/repo_refresh.py                |  2 +-
 Allura/allura/templates/widgets/repo/log.html      |  2 +-
 Allura/allura/templates/widgets/repo/revision.html |  2 +-
 ForgeBlog/forgeblog/tests/test_commands.py         | 45 ----------------------
 .../forgegit/tests/functional/test_controllers.py  |  2 +-
 requirements.in                                    |  2 +-
 requirements.txt                                   |  4 +-
 8 files changed, 7 insertions(+), 88 deletions(-)

diff --git a/Allura/allura/lib/markdown_extensions.py b/Allura/allura/lib/markdown_extensions.py
index ed093b3..4f399a7 100644
--- a/Allura/allura/lib/markdown_extensions.py
+++ b/Allura/allura/lib/markdown_extensions.py
@@ -36,10 +36,6 @@ from allura.lib.utils import ForgeHTMLSanitizerFilter, is_nofollow_url
 
 log = logging.getLogger(__name__)
 
-PLAINTEXT_BLOCK_RE = re.compile(
-    r'(?P<bplain>\[plain\])(?P<code>.*?)(?P<eplain>\[\/plain\])',
-    re.MULTILINE | re.DOTALL
-)
 
 MACRO_PATTERN = r'\[\[([^\]\[]+)\]\]'
 
@@ -251,7 +247,6 @@ class ForgeExtension(markdown.Extension):
         # allow markdown within e.g. <div markdown>...</div>  More info at:
         # https://github.com/waylan/Python-Markdown/issues/52
         md.preprocessors['html_block'].markdown_in_raw = True
-        md.preprocessors.add('plain_text_block', PlainTextPreprocessor(md), "_begin")
         md.preprocessors.add('macro_include', ForgeMacroIncludePreprocessor(md), '_end')
         # this has to be before the 'escape' processor, otherwise weird
         # placeholders are inserted for escaped chars within urls, and then the
@@ -397,37 +392,6 @@ class ForgeLinkPattern(markdown.inlinepatterns.LinkPattern):
         return href, classes
 
 
-class PlainTextPreprocessor(markdown.preprocessors.Preprocessor):
-
-    '''
-    This was used earlier for [plain] tags that the Blog tool's rss importer
-    created, before html2text did good escaping of all special markdown chars.
-    Can be deprecated.
-    '''
-
-    def run(self, lines):
-        text = "\n".join(lines)
-        while 1:
-            res = PLAINTEXT_BLOCK_RE.finditer(text)
-            for m in res:
-                code = self._escape(m.group('code'))
-                placeholder = self.markdown.htmlStash.store(code, safe=True)
-                text = '%s%s%s' % (
-                    text[:m.start()], placeholder, text[m.end():])
-                break
-            else:
-                break
-        return text.split("\n")
-
-    def _escape(self, txt):
-        """ basic html escaping """
-        txt = txt.replace('&', '&amp;')
-        txt = txt.replace('<', '&lt;')
-        txt = txt.replace('>', '&gt;')
-        txt = txt.replace('"', '&quot;')
-        return txt
-
-
 class ForgeMacroPattern(markdown.inlinepatterns.Pattern):
 
     def __init__(self, *args, **kwargs):
diff --git a/Allura/allura/model/repo_refresh.py b/Allura/allura/model/repo_refresh.py
index 9712164..8585ffe 100644
--- a/Allura/allura/model/repo_refresh.py
+++ b/Allura/allura/model/repo_refresh.py
@@ -217,7 +217,7 @@ def send_notifications(repo, commit_ids):
                 link=href,
                 unique_id=href)
 
-            summary = g.markdown_commit.convert(ci.message) if ci.message else ""
+            summary = g.markdown_commit.convert(ci.message.strip()) if ci.message else ""
             current_branch = repo.symbolics_for_commit(ci)[0]  # only the head of a branch will have this
             commit_msgs.append(dict(
                 author=ci.authored.name,
diff --git a/Allura/allura/templates/widgets/repo/log.html b/Allura/allura/templates/widgets/repo/log.html
index 90899c0..68c040d 100644
--- a/Allura/allura/templates/widgets/repo/log.html
+++ b/Allura/allura/templates/widgets/repo/log.html
@@ -54,7 +54,7 @@
                 {%- if commit.committed.email != commit.authored.email %},
                 pushed by {{ email_link(commit.committed.email, commit.committed.name) }}
                 {% endif %}
-                {{ h.hide_private_info(g.markdown_commit.convert(commit.message)) }}
+                {{ h.hide_private_info(g.markdown_commit.convert(commit.message.strip())) }}
                 {% if commit.rename_details %}
                     <div>
                       <b>renamed from</b>
diff --git a/Allura/allura/templates/widgets/repo/revision.html b/Allura/allura/templates/widgets/repo/revision.html
index 1d32953..309b332 100644
--- a/Allura/allura/templates/widgets/repo/revision.html
+++ b/Allura/allura/templates/widgets/repo/revision.html
@@ -20,7 +20,7 @@
 <div class="commit-details">
     <div class="commit-message">
         <div class="first-line">{{ h.hide_private_info(g.markdown_commit.convert(h.really_unicode(value.message.split('\n')[0]))) }}</div>
-        {{ h.hide_private_info(g.markdown_commit.convert(h.really_unicode('\n'.join(value.message.split('\n')[1:])))) }}
+        {{ h.hide_private_info(g.markdown_commit.convert(h.really_unicode('\n'.join(value.message.split('\n')[1:])).strip())) }}
     </div>
     <div class="commit-details">
 
diff --git a/ForgeBlog/forgeblog/tests/test_commands.py b/ForgeBlog/forgeblog/tests/test_commands.py
index 405b4a2..87f9c2b 100644
--- a/ForgeBlog/forgeblog/tests/test_commands.py
+++ b/ForgeBlog/forgeblog/tests/test_commands.py
@@ -131,48 +131,3 @@ def test_pull_rss_feeds(parsefeed):
     assert_equal(posts[3].title, 'Default Title 4')
     assert_equal(posts[3].text, rendered_html_content)
 
-
-@skipif(module_not_available('html2text'))
-def test_plaintext_preprocessor():
-    from forgeblog.command import rssfeeds  # importing this sets html2text.BODY_WIDTH to a value this test expects
-    from html2text import html2text
-    text = html2text(
-        "[plain]1. foo[/plain]\n"
-        "\n"
-        "[plain]#foo bar [/plain]<a href='baz'>[plain]baz[/plain]</a>\n"
-        "[plain]foo bar[/plain]\n"
-        "\n"
-        "[plain]#foo bar [/plain]<a href='baz'>\n"
-        "[plain]baz[/plain]\n"
-        "</a>\n"
-    )
-    html = g.markdown.convert(text)
-    assert_equal(html,
-                 '<div class="markdown_content"><p>1. foo '
-                 '#foo bar <a class="" href="../baz">baz</a> foo bar '
-                 '#foo bar <a class="" href="../baz"> baz </a></p></div>'
-                 )
-
-
-@skipif(module_not_available('html2text'))
-def test_plaintext_preprocessor_wrapped():
-    from forgeblog.command import rssfeeds  # importing this sets html2text.BODY_WIDTH to a value this test expects
-    from html2text import html2text
-    text = html2text(
-        "<p>[plain]1. foo[/plain]</p>\n"
-        "\n"
-        "<p>\n"
-        "[plain]#foo bar [/plain]<a href='baz'>[plain]baz[/plain]</a>\n"
-        "[plain]foo bar[/plain]\n"
-        "</p>\n"
-        "\n"
-        "<p>[plain]#foo bar [/plain]<a href='baz'>\n"
-        "[plain]baz[/plain]\n"
-        "</a></p>\n"
-    )
-    html = g.markdown.convert(text)
-    assert_equal(html,
-                 '<div class="markdown_content"><p>1. foo</p>\n'
-                 '<p>#foo bar <a class="" href="../baz">baz</a> foo bar </p>\n'
-                 '<p>#foo bar <a class="" href="../baz"> baz </a></p></div>'
-                 )
diff --git a/ForgeGit/forgegit/tests/functional/test_controllers.py b/ForgeGit/forgegit/tests/functional/test_controllers.py
index ffd0971..1f2aa0c 100644
--- a/ForgeGit/forgegit/tests/functional/test_controllers.py
+++ b/ForgeGit/forgegit/tests/functional/test_controllers.py
@@ -159,7 +159,7 @@ class TestRootController(_TestCase):
     def test_log(self):
         resp = self.app.get('/src-git/ci/1e146e67985dcd71c74de79613719bef7bddca4a/log/')
         assert 'Initial commit' in resp
-        assert '<div class="markdown_content"><p>Change README</div>' in resp
+        assert '<div class="markdown_content"><p>Change README</div>' in resp, resp
         assert 'tree/README?format=raw">Download</a>' not in resp
         assert 'Tree' in resp.html.findAll('td')[2].text, resp.html.findAll('td')[2].text
         assert_in('by Rick Copeland', squish_spaces(resp.html.findAll('td')[0].text))
diff --git a/requirements.in b/requirements.in
index d316140..c05a8e8 100644
--- a/requirements.in
+++ b/requirements.in
@@ -15,7 +15,7 @@ FormEncode
 GitPython==2.1.11
 html5lib==1.0.1
 Jinja2==2.10
-Markdown==2.2.1
+Markdown<2.4
 markdown-checklist==0.4.1
 MarkupSafe
 Ming==0.5.6
diff --git a/requirements.txt b/requirements.txt
index 7731c01..5677271 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -49,7 +49,7 @@ isort==4.3.21             # via pylint
 jinja2==2.10
 lazy-object-proxy==1.4.1  # via astroid
 markdown-checklist==0.4.1
-markdown==2.2.1
+markdown==2.3.1
 markupsafe==1.1.1
 mccabe==0.6.1             # via pylint
 ming==0.5.6
@@ -105,4 +105,4 @@ webtest==2.0.33
 wrapt==1.11.2
 
 # The following packages are considered to be unsafe in a requirements file:
-# setuptools==41.1.0        # via ipython
+# setuptools==41.2.0        # via ipython


[allura] 09/17: [#8325] upgrade to 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 6abc5020e15a604738d2cbf71e766ccdcae18c5f
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Tue Aug 20 18:57:37 2019 -0400

    [#8325] upgrade to beautifulsoup4
---
 Allura/allura/lib/macro.py                              |  4 ++--
 Allura/allura/scripts/trac_export.py                    |  2 +-
 Allura/allura/tests/functional/test_trovecategory.py    | 10 +++++-----
 ForgeImporters/forgeimporters/base.py                   |  2 +-
 ForgeImporters/forgeimporters/github/tests/test_wiki.py | 10 +++++++---
 ForgeImporters/forgeimporters/github/wiki.py            | 15 ++++++++-------
 ForgeTracker/forgetracker/tests/functional/test_root.py |  2 +-
 ForgeWiki/forgewiki/converters.py                       |  4 ++--
 requirements.in                                         |  3 +--
 requirements.txt                                        |  6 +++---
 10 files changed, 31 insertions(+), 27 deletions(-)

diff --git a/Allura/allura/lib/macro.py b/Allura/allura/lib/macro.py
index 3996826..6746a48 100644
--- a/Allura/allura/lib/macro.py
+++ b/Allura/allura/lib/macro.py
@@ -29,7 +29,7 @@ import pymongo
 from tg import tmpl_context as c, app_globals as g
 from tg import request
 from paste.deploy.converters import asint
-from BeautifulSoup import BeautifulSoup
+from bs4 import BeautifulSoup
 
 from . import helpers as h
 from . import security
@@ -463,7 +463,7 @@ def embed(url=None):
 
         # convert iframe src from http to https, to avoid mixed security blocking when used on an https page
         # and convert to youtube-nocookie.com
-        html = BeautifulSoup(html)
+        html = BeautifulSoup(html, 'html.parser')
         embed_url = html.find('iframe').get('src')
         if embed_url:
             embed_url = urlparse(embed_url)
diff --git a/Allura/allura/scripts/trac_export.py b/Allura/allura/scripts/trac_export.py
index 8b6419d..86b90bb 100644
--- a/Allura/allura/scripts/trac_export.py
+++ b/Allura/allura/scripts/trac_export.py
@@ -28,7 +28,7 @@ import re
 from optparse import OptionParser
 from itertools import islice
 
-from BeautifulSoup import BeautifulSoup, NavigableString
+from bs4 import BeautifulSoup, NavigableString
 import dateutil.parser
 import pytz
 
diff --git a/Allura/allura/tests/functional/test_trovecategory.py b/Allura/allura/tests/functional/test_trovecategory.py
index 3b1076d..4bb6eed 100644
--- a/Allura/allura/tests/functional/test_trovecategory.py
+++ b/Allura/allura/tests/functional/test_trovecategory.py
@@ -14,7 +14,7 @@
 #       KIND, either express or implied.  See the License for the
 #       specific language governing permissions and limitations
 #       under the License.
-from BeautifulSoup import BeautifulSoup
+from bs4 import BeautifulSoup
 import mock
 
 from tg import config
@@ -121,8 +121,8 @@ class TestTroveCategoryController(TestController):
                 <li>CategoryB</li>
             </ul>
         </ul>
-        """.strip())
-        assert str(expected) == str(rendered_tree)
+        """.strip(), 'html.parser')
+        assert_equals(str(expected), str(rendered_tree))
 
     @td.with_tool('test2', 'admin_main', 'admin')
     def test_trove_empty_hierarchy(self):
@@ -131,5 +131,5 @@ class TestTroveCategoryController(TestController):
         expected = BeautifulSoup("""
         <ul>
         </ul>
-        """.strip())
-        assert str(expected) == str(rendered_tree)
+        """.strip(), 'html.parser')
+        assert_equals(str(expected), str(rendered_tree))
diff --git a/ForgeImporters/forgeimporters/base.py b/ForgeImporters/forgeimporters/base.py
index e6a64b9..d7ea454 100644
--- a/ForgeImporters/forgeimporters/base.py
+++ b/ForgeImporters/forgeimporters/base.py
@@ -29,7 +29,7 @@ try:
 except ImportError:
     from StringIO import StringIO
 
-from BeautifulSoup import BeautifulSoup
+from bs4 import BeautifulSoup
 from tg import expose, validate, flash, redirect, config
 from tg.decorators import with_trailing_slash
 from tg import app_globals as g
diff --git a/ForgeImporters/forgeimporters/github/tests/test_wiki.py b/ForgeImporters/forgeimporters/github/tests/test_wiki.py
index ea85212..f99ecc4 100644
--- a/ForgeImporters/forgeimporters/github/tests/test_wiki.py
+++ b/ForgeImporters/forgeimporters/github/tests/test_wiki.py
@@ -365,7 +365,7 @@ Our website is [[http://domain.net]].
         result = u'''<p>Look at [[this page|Some Page]]</p>
 <p>More info at: [[MoreInfo]] [[Even More Info]]</p>
 <p>Our website is [[http://domain.net]].</p>
-<p>&#8216;[[Escaped Tag]]</p>
+<p>\u2018[[Escaped Tag]]</p>
 <p>[External link to the wiki page](https://github.com/a/b/wiki/Page)</p>
 <p>[External link](https://github.com/a/b/issues/1)</p>'''
 
@@ -386,12 +386,16 @@ Our website is [[http://domain.net]].
         assert_equal(
             f(u'<a href="https://github/a/b/issues/1" class="1"></a>',
               prefix, new),
-            u'<a href="https://github/a/b/issues/1" class="1"></a>')
+            u'<a class="1" href="https://github/a/b/issues/1"></a>')
         assert_equal(
             f(u'<a href="https://github/a/b/wiki/Test Page">https://github/a/b/wiki/Test Page</a>',
               prefix, new),
             u'<a href="/p/test/wiki/Test Page">/p/test/wiki/Test Page</a>')
         assert_equal(
+            f(u'<a href="https://github/a/b/wiki/Test Page">Test blah blah</a>',
+              prefix, new),
+            u'<a href="/p/test/wiki/Test Page">Test blah blah</a>')
+        assert_equal(
             f(u'<a href="https://github/a/b/wiki/Test Page">Test <b>Page</b></a>',
               prefix, new),
             u'<a href="/p/test/wiki/Test Page">Test <b>Page</b></a>')
@@ -497,7 +501,7 @@ some text and *[[Tips n' Tricks]]*
 '''
         result = u'''**[this checklist](Troubleshooting)**
 
-some text and **[Tips n' Tricks]**
+some text and **[Tips n\u2019 Tricks]**
 
 **[link](http://otherlink.com)**
 '''
diff --git a/ForgeImporters/forgeimporters/github/wiki.py b/ForgeImporters/forgeimporters/github/wiki.py
index 91c9594..4875501 100644
--- a/ForgeImporters/forgeimporters/github/wiki.py
+++ b/ForgeImporters/forgeimporters/github/wiki.py
@@ -21,9 +21,10 @@ from datetime import datetime
 from tempfile import mkdtemp
 from shutil import rmtree
 
+import six
 from paste.deploy.converters import aslist
 
-from BeautifulSoup import BeautifulSoup
+from bs4 import BeautifulSoup
 import git
 from tg import app_globals as g
 from tg import tmpl_context as c
@@ -327,7 +328,7 @@ class GitHubWikiImporter(ToolImporter):
         elif ext and ext in self.textile_exts:
             text = self._prepare_textile_text(text)
 
-            text = h.render_any_markup(filename, text)
+            text = six.text_type(h.render_any_markup(filename, text))
             text = self.rewrite_links(text, self.github_wiki_url, self.app.url)
             if html2text:
                 text = html2text.html2text(text)
@@ -417,16 +418,16 @@ class GitHubWikiImporter(ToolImporter):
             prefix += '/'
         if not new_prefix.endswith('/'):
             new_prefix += '/'
-        soup = BeautifulSoup(html)
+        soup = BeautifulSoup(html, 'html.parser')
         for a in soup.findAll('a'):
             if a.get('href').startswith(prefix):
                 page = a['href'].replace(prefix, '')
                 new_page = self._convert_page_name(page)
                 a['href'] = new_prefix + new_page
-                if a.text == page:
-                    a.setString(new_page)
-                elif a.text == prefix + page:
-                    a.setString(new_prefix + new_page)
+                if a.string == page:
+                    a.string = new_page
+                elif a.string == prefix + page:
+                    a.string = new_prefix + new_page
         return unicode(soup)
 
     def _prepare_textile_text(self, text):
diff --git a/ForgeTracker/forgetracker/tests/functional/test_root.py b/ForgeTracker/forgetracker/tests/functional/test_root.py
index 95a468f..9975c3b 100644
--- a/ForgeTracker/forgetracker/tests/functional/test_root.py
+++ b/ForgeTracker/forgetracker/tests/functional/test_root.py
@@ -26,7 +26,7 @@ import allura
 import mock
 
 import PIL
-from BeautifulSoup import BeautifulSoup
+from bs4 import BeautifulSoup
 from mock import patch
 from nose.tools import (
     assert_true,
diff --git a/ForgeWiki/forgewiki/converters.py b/ForgeWiki/forgewiki/converters.py
index 95b88f7..2793967 100644
--- a/ForgeWiki/forgewiki/converters.py
+++ b/ForgeWiki/forgewiki/converters.py
@@ -17,7 +17,7 @@
 
 #-*- python -*-
 import re
-from BeautifulSoup import BeautifulSoup
+from bs4 import BeautifulSoup
 
 _inline_img = re.compile(r'\[\[(File|Image):([^\]|]+)[^]]*\]\]', re.UNICODE)
 _inline_img_markdown = r'[[img src=\2]]'
@@ -50,7 +50,7 @@ def _internal_link_markdown(match):
 
 def _convert_toc(wiki_html):
     """Convert Table of Contents from mediawiki to markdown"""
-    soup = BeautifulSoup(wiki_html)
+    soup = BeautifulSoup(wiki_html, 'html.parser')
     for toc_div in soup.findAll('div', id='toc'):
         toc_div.replaceWith('[TOC]')
     return unicode(soup)
diff --git a/requirements.in b/requirements.in
index 7c77ca6..d316140 100644
--- a/requirements.in
+++ b/requirements.in
@@ -1,6 +1,5 @@
 ActivityStream==0.2.2
-BeautifulSoup==3.2.0
-beautifulsoup4==4.6.1
+beautifulsoup4
 Beaker
 backlash==0.1.4
 chardet
diff --git a/requirements.txt b/requirements.txt
index 02eb7ee..7731c01 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -9,11 +9,10 @@ appnope==0.1.0            # via ipython
 asn1crypto==0.24.0        # via cryptography
 astroid==1.6.6            # via pylint
 backlash==0.1.4
-backports.functools-lru-cache==1.5  # via astroid, isort, pylint
+backports.functools-lru-cache==1.5  # via astroid, isort, pylint, soupsieve
 backports.shutil-get-terminal-size==1.0.0  # via ipython
 beaker==1.10.1
-beautifulsoup4==4.6.1
-beautifulsoup==3.2.0
+beautifulsoup4==4.8.0
 bleach==3.1.0             # via pypeline
 certifi==2019.6.16        # via requests
 cffi==1.12.2              # via cryptography
@@ -89,6 +88,7 @@ simplegeneric==0.8.1      # via ipython
 singledispatch==3.4.0.3   # via astroid, pylint
 six==1.12.0
 smmap2==2.0.4             # via gitdb2
+soupsieve==1.9.3          # via beautifulsoup4
 testfixtures==6.10.0
 textile==3.0.4            # via pypeline
 timermiddleware==0.5.0


[allura] 14/17: [#8325] upgrade pip-tools

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 19b17489a7f646467fb58d39321fbe7302d1050e
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Wed Aug 21 13:49:49 2019 -0400

    [#8325] upgrade pip-tools
---
 requirements-dev.in  | 2 +-
 requirements-dev.txt | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/requirements-dev.in b/requirements-dev.in
index c1e7257..309f1ad 100644
--- a/requirements-dev.in
+++ b/requirements-dev.in
@@ -1,7 +1,7 @@
 # development-only dependencies
 # nothing needed at runtime or for tests
 
-pip-tools==3.8.0
+pip-tools
 q==2.3
 sphinx-argparse==0.2.5
 sphinx-rtd-theme==0.1.6
diff --git a/requirements-dev.txt b/requirements-dev.txt
index d2354ae..e123447 100644
--- a/requirements-dev.txt
+++ b/requirements-dev.txt
@@ -15,7 +15,7 @@ imagesize==1.1.0          # via sphinx
 jinja2==2.10              # via sphinx
 markupsafe==1.0           # via jinja2
 packaging==19.0           # via sphinx
-pip-tools==3.8.0
+pip-tools==4.0.0
 pygments==2.2.0           # via sphinx
 pyparsing==2.4.0          # via packaging
 pytz==2019.1              # via babel
@@ -32,4 +32,4 @@ typing==3.7.4             # via sphinx
 urllib3==1.25.3           # via requests
 
 # The following packages are considered to be unsafe in a requirements file:
-# setuptools==41.0.1        # via sphinx
+# setuptools==41.2.0        # via sphinx


[allura] 12/17: [#8325] upgrade markdown to 2.5.x

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 5b16ee8f7c17e2bc22f7421603b58852569ce1b3
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Wed Aug 21 12:48:53 2019 -0400

    [#8325] upgrade markdown to 2.5.x
---
 Allura/allura/lib/app_globals.py     | 10 ++++++----
 Allura/allura/lib/search.py          |  2 +-
 Allura/allura/tests/test_markdown.py |  2 +-
 requirements.in                      |  2 +-
 requirements.txt                     |  2 +-
 5 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/Allura/allura/lib/app_globals.py b/Allura/allura/lib/app_globals.py
index 604ecaa..c6e96df 100644
--- a/Allura/allura/lib/app_globals.py
+++ b/Allura/allura/lib/app_globals.py
@@ -424,9 +424,11 @@ class Globals(object):
     def forge_markdown(self, **kwargs):
         '''return a markdown.Markdown object on which you can call convert'''
         return ForgeMarkdown(
-            extensions=['fenced_code', 'codehilite', 'extra',  # to allow markdown inside HTML tags
-                        ForgeExtension(
-                            **kwargs), EmojiExtension(), UserMentionExtension(), 'tables', 'toc', 'nl2br', 'markdown_checklist.extension'],
+            extensions=['markdown.extensions.fenced_code', 'markdown.extensions.codehilite',
+                        'markdown.extensions.extra',  # to allow markdown inside HTML tags
+                        ForgeExtension(**kwargs), EmojiExtension(), UserMentionExtension(),
+                        'markdown.extensions.tables', 'markdown.extensions.toc', 'markdown.extensions.nl2br',
+                        'markdown_checklist.extension'],
             output_format='html4')
 
     @property
@@ -448,7 +450,7 @@ class Globals(object):
 
         """
         app = getattr(c, 'app', None)
-        return ForgeMarkdown(extensions=[CommitMessageExtension(app), EmojiExtension(), 'nl2br'],
+        return ForgeMarkdown(extensions=[CommitMessageExtension(app), EmojiExtension(), 'markdown.extensions.nl2br'],
                              output_format='html4')
 
     @property
diff --git a/Allura/allura/lib/search.py b/Allura/allura/lib/search.py
index 77fc1a7..91e75a9 100644
--- a/Allura/allura/lib/search.py
+++ b/Allura/allura/lib/search.py
@@ -337,7 +337,7 @@ def find_shortlinks(text):
     from .markdown_extensions import ForgeExtension
 
     md = markdown.Markdown(
-        extensions=['codehilite', ForgeExtension(), 'tables'],
+        extensions=['markdown.extensions.codehilite', ForgeExtension(), 'markdown.extensions.tables'],
         output_format='html4')
     md.convert(text)
     link_index = md.treeprocessors['links'].alinks
diff --git a/Allura/allura/tests/test_markdown.py b/Allura/allura/tests/test_markdown.py
index f362359..e122a25 100644
--- a/Allura/allura/tests/test_markdown.py
+++ b/Allura/allura/tests/test_markdown.py
@@ -143,6 +143,6 @@ Not *strong* or _underlined_."""
 <p>Not *strong* or _underlined_.</div>"""
 
         md = ForgeMarkdown(
-            extensions=[mde.CommitMessageExtension(app), 'nl2br'],
+            extensions=[mde.CommitMessageExtension(app), 'markdown.extensions.nl2br'],
             output_format='html4')
         self.assertEqual(md.convert(text), expected_html)
diff --git a/requirements.in b/requirements.in
index 38a14d8..4130800 100644
--- a/requirements.in
+++ b/requirements.in
@@ -15,7 +15,7 @@ FormEncode
 GitPython==2.1.11
 html5lib==1.0.1
 Jinja2==2.10
-Markdown<2.5
+Markdown<2.6
 markdown-checklist==0.4.1
 MarkupSafe
 Ming==0.5.6
diff --git a/requirements.txt b/requirements.txt
index bb2e357..71ae7a2 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -49,7 +49,7 @@ isort==4.3.21             # via pylint
 jinja2==2.10
 lazy-object-proxy==1.4.1  # via astroid
 markdown-checklist==0.4.1
-markdown==2.4.1
+markdown==2.5.2
 markupsafe==1.1.1
 mccabe==0.6.1             # via pylint
 ming==0.5.6


[allura] 16/17: [#8325] upgrade paste*

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 0f34f2d2c3444ad51f70362bfdebb5ee33d4ffec
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Wed Aug 21 17:28:53 2019 -0400

    [#8325] upgrade paste*
---
 requirements.in  | 6 +++---
 requirements.txt | 6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/requirements.in b/requirements.in
index f486dd1..35e0f5b 100644
--- a/requirements.in
+++ b/requirements.in
@@ -21,9 +21,9 @@ MarkupSafe
 Ming==0.5.6
 # oauth2 doesn't have py3.6 support.  There's a fork with fixes but no pypi releases I can find.  https://github.com/joestump/python-oauth2/issues/223
 oauth2
-Paste==3.0.1
-PasteDeploy==1.5.2
-PasteScript==2.0.2
+Paste
+PasteDeploy
+PasteScript
 Pillow
 Pygments
 pymongo==2.8.1
diff --git a/requirements.txt b/requirements.txt
index 13d2e15..3a0ea64 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -57,9 +57,9 @@ mock==3.0.5
 nose==1.3.7
 oauth2==1.9.0.post1
 oauthlib==3.0.2           # via requests-oauthlib
-paste==3.0.1
-pastedeploy==1.5.2
-pastescript==2.0.2
+paste==3.1.0
+pastedeploy==2.0.1
+pastescript==3.1.0
 pathlib2==2.3.4           # via ipython, pickleshare
 pexpect==4.7.0            # via ipython
 pickleshare==0.7.5        # via ipython


[allura] 17/17: [#8325] work with newer pysvn versions

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 0cbb63480b8073a13ad0c8389d6d937dd05d6ccf
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Wed Aug 21 17:29:08 2019 -0400

    [#8325] work with newer pysvn versions
---
 ForgeSVN/forgesvn/model/svn.py | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/ForgeSVN/forgesvn/model/svn.py b/ForgeSVN/forgesvn/model/svn.py
index 1ded9e3..0e8a2d0 100644
--- a/ForgeSVN/forgesvn/model/svn.py
+++ b/ForgeSVN/forgesvn/model/svn.py
@@ -537,8 +537,7 @@ class SVNImplementation(M.RepositoryImplementation):
         size = None
         if path:
             try:
-                size = int(
-                    self._svn.list(url, revision=rev, peg_revision=rev)[0][0].size)
+                size = self._svn.list(url, revision=rev, peg_revision=rev)[0][0].size
             except pysvn.ClientError:
                 pass
         rename_details = {}


[allura] 06/17: [#8325] 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 08058a2e0835041f43bda5b5f27d341be8e66b15
Author: Dave Brondsema <da...@brondsema.net>
AuthorDate: Tue Aug 20 17:32:51 2019 -0400

    [#8325] upgrade feedparser
---
 requirements.in  | 2 +-
 requirements.txt | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/requirements.in b/requirements.in
index 1ed968d..a218d01 100644
--- a/requirements.in
+++ b/requirements.in
@@ -10,7 +10,7 @@ decorator
 EasyWidgets>=0.3.3
 emoji==0.5.1
 faulthandler
-feedparser==5.1.3
+feedparser
 # FormEncode may need v2.0 to work past py3.3 or so?  https://github.com/formencode/formencode/issues/140
 FormEncode
 GitPython==2.1.11
diff --git a/requirements.txt b/requirements.txt
index 15274ed..b306cf9 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -30,7 +30,7 @@ easywidgets==0.3.5
 emoji==0.5.1
 enum34==1.1.6             # via astroid, colander, cryptography, traitlets
 faulthandler==3.1
-feedparser==5.1.3
+feedparser==5.2.1
 formencode==1.3.1
 funcsigs==1.0.2           # via beaker, mock
 future==0.17.1            # via timermiddleware