Blob Blame History Raw
From c44f2126fb5c75a5f5afd9d320c9f6cfc4ce3384 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
Date: Tue, 26 Jun 2018 21:02:45 +0200
Subject: [PATCH] Catch StopIteration in AbstractTable._enumerate_items

This makes PEP 479 enabled Pythons (such as 3.7) work again.

Otherwise you get:

    RuntimeError: generator raised StopIteration

Fixes https://github.com/pypa/pipenv/issues/2426
---
 pipenv/patched/prettytoml/elements/abstracttable.py | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/pipenv/patched/prettytoml/elements/abstracttable.py b/pipenv/patched/prettytoml/elements/abstracttable.py
index 59fd574..627da0e 100644
--- a/pipenv/patched/prettytoml/elements/abstracttable.py
+++ b/pipenv/patched/prettytoml/elements/abstracttable.py
@@ -19,7 +19,10 @@ def _enumerate_items(self):
         """
         non_metadata = self._enumerate_non_metadata_sub_elements()
         while True:
-            yield next(non_metadata), next(non_metadata)
+            try:
+                yield next(non_metadata), next(non_metadata)
+            except StopIteration:
+                return
 
     def items(self):
         for (key_i, key), (value_i, value) in self._enumerate_items():