[blockdiag] 20/29: Import Upstream version 1.4.6
Andreas Tille
tille at debian.org
Tue Jan 10 21:35:59 UTC 2017
This is an automated email from the git hooks/post-receive script.
tille pushed a commit to branch master
in repository blockdiag.
commit 115b0feec0d52168b4d044fa44e4d0fd5c160c97
Author: Andreas Tille <tille at debian.org>
Date: Tue Jan 10 11:08:05 2017 +0100
Import Upstream version 1.4.6
---
CHANGES.rst | 8 +++++++
PKG-INFO | 2 +-
src/blockdiag.egg-info/PKG-INFO | 2 +-
src/blockdiag.egg-info/top_level.txt | 2 +-
src/blockdiag/__init__.py | 2 +-
src/blockdiag/plugins/__init__.py | 15 +++++++++++++
.../tests/rst/test_blockdiag_directives.py | 26 +++++++++-------------
src/blockdiag/utils/bootstrap.py | 1 +
src/blockdiag/utils/rst/directives.py | 9 ++++++--
9 files changed, 46 insertions(+), 21 deletions(-)
diff --git a/CHANGES.rst b/CHANGES.rst
index a6b1319..dbddc40 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -1,6 +1,14 @@
Changelog
=========
+1.4.6 (2014-10-14)
+------------------
+* Show warnings on loading plugin multiple times
+* Unload all plugins on shutdown
+* Fix bugs
+
+ - Fix caption is wrapped by paragraph node in reST parser
+
1.4.5 (2014-10-04)
------------------
* Add node event: build_finished
diff --git a/PKG-INFO b/PKG-INFO
index 850da76..05ec889 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: blockdiag
-Version: 1.4.5
+Version: 1.4.6
Summary: blockdiag generates block-diagram image from text
Home-page: http://blockdiag.com/
Author: Takeshi Komiya
diff --git a/src/blockdiag.egg-info/PKG-INFO b/src/blockdiag.egg-info/PKG-INFO
index 850da76..05ec889 100644
--- a/src/blockdiag.egg-info/PKG-INFO
+++ b/src/blockdiag.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: blockdiag
-Version: 1.4.5
+Version: 1.4.6
Summary: blockdiag generates block-diagram image from text
Home-page: http://blockdiag.com/
Author: Takeshi Komiya
diff --git a/src/blockdiag.egg-info/top_level.txt b/src/blockdiag.egg-info/top_level.txt
index 40c073e..952b7a4 100644
--- a/src/blockdiag.egg-info/top_level.txt
+++ b/src/blockdiag.egg-info/top_level.txt
@@ -1,2 +1,2 @@
-blockdiag_sphinxhelper
blockdiag
+blockdiag_sphinxhelper
diff --git a/src/blockdiag/__init__.py b/src/blockdiag/__init__.py
index 4e29346..5450abe 100644
--- a/src/blockdiag/__init__.py
+++ b/src/blockdiag/__init__.py
@@ -13,4 +13,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = '1.4.5'
+__version__ = '1.4.6'
diff --git a/src/blockdiag/plugins/__init__.py b/src/blockdiag/plugins/__init__.py
index 1c5e98a..51072a3 100644
--- a/src/blockdiag/plugins/__init__.py
+++ b/src/blockdiag/plugins/__init__.py
@@ -14,15 +14,22 @@
# limitations under the License.
from pkg_resources import iter_entry_points
+from blockdiag.utils.logging import warning
+loaded_plugins = []
node_handlers = []
general_handlers = {}
def load(plugins, diagram, **kwargs):
for name in plugins:
+ if name in loaded_plugins:
+ warning('plugin "%s" is already loaded. ignored.', name)
+ return
+
for ep in iter_entry_points('blockdiag_plugins', name):
module = ep.load()
+ loaded_plugins.append(name)
if hasattr(module, 'setup'):
module.setup(module, diagram, **kwargs)
break
@@ -31,6 +38,14 @@ def load(plugins, diagram, **kwargs):
raise AttributeError(msg)
+def unload_all():
+ for name in general_handlers:
+ del general_handlers[name]
+
+ for handler in node_handlers:
+ node_handlers.remove(handler)
+
+
def install_general_handler(name, handler):
if name not in general_handlers:
general_handlers[name] = []
diff --git a/src/blockdiag/tests/rst/test_blockdiag_directives.py b/src/blockdiag/tests/rst/test_blockdiag_directives.py
index 3569a8d..8e1850f 100644
--- a/src/blockdiag/tests/rst/test_blockdiag_directives.py
+++ b/src/blockdiag/tests/rst/test_blockdiag_directives.py
@@ -334,9 +334,8 @@ class TestRstDirectives(unittest.TestCase):
self.assertEqual(nodes.image, type(doctree[0][0]))
self.assertEqual(nodes.caption, type(doctree[0][1]))
self.assertEqual(1, len(doctree[0][1]))
- self.assertEqual(nodes.paragraph, type(doctree[0][1][0]))
- self.assertEqual(nodes.Text, type(doctree[0][1][0][0]))
- self.assertEqual('hello world', doctree[0][1][0][0])
+ self.assertEqual(nodes.Text, type(doctree[0][1][0]))
+ self.assertEqual('hello world', doctree[0][1][0])
def test_caption_option2(self):
directives.setup(format='SVG', outputdir=self.tmpdir)
@@ -350,15 +349,13 @@ class TestRstDirectives(unittest.TestCase):
self.assertEqual(2, len(doctree[0]))
self.assertEqual(nodes.image, type(doctree[0][0]))
self.assertEqual(nodes.caption, type(doctree[0][1]))
- self.assertEqual(1, len(doctree[0][1]))
- self.assertEqual(nodes.paragraph, type(doctree[0][1][0]))
- self.assertEqual(3, len(doctree[0][1][0]))
- self.assertEqual(nodes.strong, type(doctree[0][1][0][0]))
- self.assertEqual('hello', doctree[0][1][0][0][0])
- self.assertEqual(nodes.Text, type(doctree[0][1][0][1]))
- self.assertEqual(' ', doctree[0][1][0][1][0])
- self.assertEqual(nodes.emphasis, type(doctree[0][1][0][2]))
- self.assertEqual('world', doctree[0][1][0][2][0])
+ self.assertEqual(3, len(doctree[0][1]))
+ self.assertEqual(nodes.strong, type(doctree[0][1][0]))
+ self.assertEqual('hello', doctree[0][1][0][0])
+ self.assertEqual(nodes.Text, type(doctree[0][1][1]))
+ self.assertEqual(' ', doctree[0][1][1][0])
+ self.assertEqual(nodes.emphasis, type(doctree[0][1][2]))
+ self.assertEqual('world', doctree[0][1][2][0])
def test_caption_option_and_align_option(self):
directives.setup(format='SVG', outputdir=self.tmpdir)
@@ -376,9 +373,8 @@ class TestRstDirectives(unittest.TestCase):
self.assertNotIn('align', doctree[0][0])
self.assertEqual(nodes.caption, type(doctree[0][1]))
self.assertEqual(1, len(doctree[0][1]))
- self.assertEqual(nodes.paragraph, type(doctree[0][1][0]))
- self.assertEqual(nodes.Text, type(doctree[0][1][0][0]))
- self.assertEqual('hello world', doctree[0][1][0][0])
+ self.assertEqual(nodes.Text, type(doctree[0][1][0]))
+ self.assertEqual('hello world', doctree[0][1][0])
@capture_stderr
def test_maxwidth_option(self):
diff --git a/src/blockdiag/utils/bootstrap.py b/src/blockdiag/utils/bootstrap.py
index 4e8888f..47dc42f 100644
--- a/src/blockdiag/utils/bootstrap.py
+++ b/src/blockdiag/utils/bootstrap.py
@@ -50,6 +50,7 @@ class Application(object):
return -1
finally:
plugins.fire_general_event('cleanup')
+ plugins.unload_all()
def parse_options(self, args):
self.options = Options(self.module).parse(args)
diff --git a/src/blockdiag/utils/rst/directives.py b/src/blockdiag/utils/rst/directives.py
index efa7689..fa5e218 100644
--- a/src/blockdiag/utils/rst/directives.py
+++ b/src/blockdiag/utils/rst/directives.py
@@ -170,10 +170,15 @@ class BlockdiagDirective(BlockdiagDirectiveBase):
if node.get('caption'):
elem = nodes.Element()
self.state.nested_parse(ViewList([node['caption']], source=''),
- 0, elem)
+ self.content_offset, elem)
+ caption_node = nodes.caption(elem[0].rawsource, '',
+ *elem[0].children)
+ caption_node.source = elem[0].source
+ caption_node.line = elem[0].line
+
fig = nodes.figure()
fig += results[0]
- fig += nodes.caption(node['caption'], '', *elem)
+ fig += caption_node
if figwidth == 'image':
width = self.get_actual_width(node, diagram)
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/blockdiag.git
More information about the debian-science-commits
mailing list