<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Batch extension failing to generate OTFs from UFOs]]></title><description><![CDATA[<p dir="auto">I've generated UFO instances from Superpolator and I'm trying to generate OTFs with the Batch extension.</p>
<p dir="auto">I've been getting an error off and on. In the past, I've been able to change to a different number of source UFOs, then get generate OTFs. Now, however, I'm getting stuck, and it won't even work on a single instance.</p>
<p dir="auto">Here's the error message from the Output Window:</p>
<pre><code class="language-console">******************************
Traceback (most recent call last):
  File "/Users/stephennixon/Library/Application Support/RoboFont/plugins/Batch.roboFontExt/lib/batchTools.py", line 115, in runTask_
  File "/Users/stephennixon/Library/Application Support/RoboFont/plugins/Batch.roboFontExt/lib/batchGenerate/__init__.py", line 145, in run
  File "/Applications/RoboFont3.app/Contents/Resources/lib/python3.6/fontParts/base/font.py", line 343, in generate
  File "lib/fontObjects/fontPartsWrappers.pyc", line 1635, in _generate
  File "lib/fontObjects/doodleFont.pyc", line 256, in generate
  File "lib/fontObjects/doodleLayer.pyc", line 296, in generate
  File "/Applications/RoboFont3.app/Contents/Resources/lib/python3.6/fontCompiler/compiler.py", line 146, in generateFont
  File "/Applications/RoboFont3.app/Contents/Resources/lib/python3.6/fontCompiler/baseCompiler.py", line 333, in compile
  File "/Applications/RoboFont3.app/Contents/Resources/lib/python3.6/ufo2fdk/makeotfParts.py", line 111, in compile
  File "/Applications/RoboFont3.app/Contents/Resources/lib/python3.6/ufo2fdk/makeotfParts.py", line 282, in setupFile_features
  File "/Applications/RoboFont3.app/Contents/Resources/lib/python3.6/ufo2fdk/makeotfParts.py", line 809, in extractFeaturesAndTables
RuntimeError: dictionary changed size during iteration

******************************
</code></pre>
<p dir="auto">Browsing around Google, it seems like this might be a problem that some code runs into with Python 3.6 <a href="https://cito.github.io/blog/never-iterate-a-changing-dict/" rel="nofollow">when handling a dictionary without making it a list</a>. Therefore, I think it might have to do with the interaction of <code>ufo2fdk</code> and my feature code?</p>
<p dir="auto">If you know of anything that might help, please let me know!</p>
<p dir="auto">Robfont Version 3.0 (built 1803062007)<br />
Batch Version 1.9.8, downloaded fresh from GitHub today (June 26, 2018)</p>
]]></description><link>https://forum.robofont.com/topic/487/batch-extension-failing-to-generate-otfs-from-ufos</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Jul 2026 23:20:39 GMT</lastBuildDate><atom:link href="https://forum.robofont.com/topic/487.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 26 Jun 2018 14:44:05 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Batch extension failing to generate OTFs from UFOs on Wed, 11 Jul 2018 12:28:57 GMT]]></title><description><![CDATA[<p dir="auto">I've generated UFO instances from Superpolator and I'm trying to generate OTFs with the Batch extension.</p>
<p dir="auto">I've been getting an error off and on. In the past, I've been able to change to a different number of source UFOs, then get generate OTFs. Now, however, I'm getting stuck, and it won't even work on a single instance.</p>
<p dir="auto">Here's the error message from the Output Window:</p>
<pre><code class="language-console">******************************
Traceback (most recent call last):
  File "/Users/stephennixon/Library/Application Support/RoboFont/plugins/Batch.roboFontExt/lib/batchTools.py", line 115, in runTask_
  File "/Users/stephennixon/Library/Application Support/RoboFont/plugins/Batch.roboFontExt/lib/batchGenerate/__init__.py", line 145, in run
  File "/Applications/RoboFont3.app/Contents/Resources/lib/python3.6/fontParts/base/font.py", line 343, in generate
  File "lib/fontObjects/fontPartsWrappers.pyc", line 1635, in _generate
  File "lib/fontObjects/doodleFont.pyc", line 256, in generate
  File "lib/fontObjects/doodleLayer.pyc", line 296, in generate
  File "/Applications/RoboFont3.app/Contents/Resources/lib/python3.6/fontCompiler/compiler.py", line 146, in generateFont
  File "/Applications/RoboFont3.app/Contents/Resources/lib/python3.6/fontCompiler/baseCompiler.py", line 333, in compile
  File "/Applications/RoboFont3.app/Contents/Resources/lib/python3.6/ufo2fdk/makeotfParts.py", line 111, in compile
  File "/Applications/RoboFont3.app/Contents/Resources/lib/python3.6/ufo2fdk/makeotfParts.py", line 282, in setupFile_features
  File "/Applications/RoboFont3.app/Contents/Resources/lib/python3.6/ufo2fdk/makeotfParts.py", line 809, in extractFeaturesAndTables
RuntimeError: dictionary changed size during iteration

******************************
</code></pre>
<p dir="auto">Browsing around Google, it seems like this might be a problem that some code runs into with Python 3.6 <a href="https://cito.github.io/blog/never-iterate-a-changing-dict/" rel="nofollow">when handling a dictionary without making it a list</a>. Therefore, I think it might have to do with the interaction of <code>ufo2fdk</code> and my feature code?</p>
<p dir="auto">If you know of anything that might help, please let me know!</p>
<p dir="auto">Robfont Version 3.0 (built 1803062007)<br />
Batch Version 1.9.8, downloaded fresh from GitHub today (June 26, 2018)</p>
]]></description><link>https://forum.robofont.com/post/1652</link><guid isPermaLink="true">https://forum.robofont.com/post/1652</guid><dc:creator><![CDATA[StephenNixon]]></dc:creator><pubDate>Wed, 11 Jul 2018 12:28:57 GMT</pubDate></item><item><title><![CDATA[Reply to Batch extension failing to generate OTFs from UFOs on Wed, 27 Jun 2018 13:58:28 GMT]]></title><description><![CDATA[<p dir="auto">this has already been solved in the beta...</p>
<p dir="auto">release is coming...</p>
]]></description><link>https://forum.robofont.com/post/1653</link><guid isPermaLink="true">https://forum.robofont.com/post/1653</guid><dc:creator><![CDATA[frederik]]></dc:creator><pubDate>Wed, 27 Jun 2018 13:58:28 GMT</pubDate></item><item><title><![CDATA[Reply to Batch extension failing to generate OTFs from UFOs on Thu, 28 Jun 2018 11:10:16 GMT]]></title><description><![CDATA[<p dir="auto">Awesome! (Is there any way I might be able to test the beta early, to generate fresh instances before I print materials for my graduation project?)</p>
]]></description><link>https://forum.robofont.com/post/1654</link><guid isPermaLink="true">https://forum.robofont.com/post/1654</guid><dc:creator><![CDATA[StephenNixon]]></dc:creator><pubDate>Thu, 28 Jun 2018 11:10:16 GMT</pubDate></item><item><title><![CDATA[Reply to Batch extension failing to generate OTFs from UFOs on Wed, 11 Jul 2018 12:32:08 GMT]]></title><description><![CDATA[<p dir="auto"><a href="http://forum.robofont.com/topic/490/robofont-3-1" rel="nofollow">RoboFont 3.1 is out</a> – from now on all betas will be public!</p>
]]></description><link>https://forum.robofont.com/post/1669</link><guid isPermaLink="true">https://forum.robofont.com/post/1669</guid><dc:creator><![CDATA[gferreira]]></dc:creator><pubDate>Wed, 11 Jul 2018 12:32:08 GMT</pubDate></item></channel></rss>