Skip to content

Commit

Permalink
Invalid notebooks may cause a warning, but not a fatal error
Browse files Browse the repository at this point in the history
Fixes #234
  • Loading branch information
mwouts committed Jun 4, 2019
1 parent c1aad22 commit c7fc47c
Show file tree
Hide file tree
Showing 14 changed files with 188 additions and 6 deletions.
9 changes: 9 additions & 0 deletions HISTORY.rst
Expand Up @@ -3,6 +3,15 @@
Release History
---------------

1.1.4 (2019-05-25)
++++++++++++++++++++++

**Improvements**

**BugFixes**
- Invalid notebooks may cause a warning, but not a fatal error (#234)


1.1.3 (2019-05-22)
++++++++++++++++++++++

Expand Down
20 changes: 17 additions & 3 deletions jupytext/jupytext.py
Expand Up @@ -104,10 +104,19 @@ def writes(self, nb, metadata=None, **kwargs):
else:
cells.append(NotebookNode(source=cell.source, metadata=cell_metadata, cell_type=cell.cell_type))

return notebook_to_md(new_notebook(metadata=metadata, cells=cells))
return notebook_to_md(NotebookNode(
nbformat=nb.nbformat,
nbformat_minor=nb.nbformat_minor,
metadata=metadata,
cells=cells))

# Copy the notebook, in order to be sure we do not modify the original notebook
nb = new_notebook(cells=nb.cells, metadata=deepcopy(metadata or nb.metadata))
nb = NotebookNode(
nbformat=nb.nbformat,
nbformat_minor=nb.nbformat_minor,
metadata=deepcopy(metadata or nb.metadata),
cells=nb.cells)

metadata = nb.metadata
default_language = default_language_from_metadata_and_ext(metadata, self.implementation.extension)
self.update_fmt_with_notebook_options(nb.metadata)
Expand Down Expand Up @@ -250,7 +259,12 @@ def writes(notebook, fmt, version=nbformat.NO_CONVERT, **kwargs):
jupytext_metadata.pop('text_representation', {})
if not jupytext_metadata:
metadata.pop('jupytext', {})
return nbformat.writes(new_notebook(cells=notebook.cells, metadata=metadata), version, **kwargs)
return nbformat.writes(
NotebookNode(
nbformat=notebook.nbformat,
nbformat_minor=notebook.nbformat_minor,
metadata=metadata,
cells=notebook.cells), version, **kwargs)

if not format_name:
format_name = format_name_for_ext(metadata, ext, explicit_default=False)
Expand Down
55 changes: 55 additions & 0 deletions tests/notebooks/ipynb_R/R notebook with invalid cell keys.ipynb
@@ -0,0 +1,55 @@
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This notebook was created with IRKernel 0.8.12, and is not completely valid, as the code cell below contains an unexpected 'source' entry. This did cause https://github.com/mwouts/jupytext/issues/234. Note that the problem is solved when one upgrades to IRKernel 1.0.0."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"data": {},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAMAAADKOT/pAAAC2VBMVEUAAAABAQECAgIDAwME\nBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0PDw8QEBARERETExMUFBQVFRUWFhYXFxcY\nGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJycoKCgpKSkq\nKiorKyssLCwtLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ4ODg5OTk6Ojo8PDw9PT0/Pz9AQEBB\nQUFCQkJDQ0NERERGRkZHR0dISEhJSUlLS0tMTExNTU1OTk5PT09QUFBRUVFSUlJTU1NUVFRV\nVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1eXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZn\nZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29wcHBxcXFycnJzc3N0dHR1dXV2dnZ3d3d4eHh5\neXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGCgoKDg4OEhISFhYWGhoaHh4eIiIiJiYmKioqL\ni4uMjIyNjY2Ojo6Pj4+RkZGSkpKTk5OUlJSVlZWWlpaXl5eYmJiZmZmampqbm5ucnJydnZ2e\nnp6fn5+goKChoaGioqKjo6OkpKSlpaWmpqanp6eoqKipqamqqqqrq6usrKytra2urq6vr6+w\nsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4uLi5ubm6urq7u7u8vLy9vb2+vr6/v7/AwMDBwcHC\nwsLExMTFxcXGxsbHx8fJycnKysrLy8vMzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU1NTV1dXW\n1tbX19fY2NjZ2dna2trb29vc3Nzd3d3e3t7f39/g4ODh4eHi4uLj4+Pk5OTl5eXm5ubn5+fp\n6enq6urr6+vs7Ozt7e3u7u7v7+/w8PDx8fHy8vLz8/P09PT19fX29vb39/f4+Pj5+fn6+vr7\n+/v8/Pz9/f3+/v7///9MRAjrAAAACXBIWXMAABJ0AAASdAHeZh94AAAgAElEQVR4nO3d/b+c\ndX3n8Qvcpdab4q5rt+hSbbtu79Tds3ZZNlvs1h0CHNI2KaEEJQptj7KbkJWYWlCz8YYKARqB\nFGkOpRoCjaZZMQQhxwrZKmA5G41HotIGhNzn3M7M9RfszJyTOedMrjPv95z5nMzMOa/XD5OZ\nK4c3X4Y8H2fOYKdJSkRNl7T6AETzISARBQQkooCARBQQkIgCAhJRQEAiCghIRAGFQTqU1dHC\nYOb1xjsRNlQ4HrQ0GDU0VDgStDQSNTSaDxo6NBY1VBgJGjo6HDVU+tMdD+knWR1OBzOvN97x\nk1FD6bGgpcGjQUND6aGgpbFXooaKQUM/KUQNpaNBQ4dHgoaOlP50A6n5gOQEJCCJgOQEJCCJ\ngOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJ\ngOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJ\ngOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEJCCJgOQEpFN9d/37crdN\nPtzbc9mK+4tT7wCpyYDk1PGQnrn38ZWTkPYt3nRgd/eWKXeA1GxAcup4SKV6JiGtv65007tk\nePIOkJoNSE7zDNLye0o3/bn+yTtAajYgOc0vSMXcttLtwVxf9U7p9okvfOELf30iq8F0NPN6\n442EDaXDQUujUUNj6WDQUuFk1FAaNHSiGDWU5oOGBt2h73/i5rp9fMMnbw2FtLarq+siZ4eo\ng/pYIntb9YsjXtp9/8knn/z7I1kdT4czrzfeYNhQejJoaThqaCQ9FrSUDxsqBg0dCRtKx4KG\njrtDq5Kb/6ZeX96186uzhsSbDdX4Gcmpg39Guj7ZVvf3G/wZaWRg4IPrB36Qpn03nBx/1/ux\nU29/P8bb3xEByanjIQ3kyi1O0+25o6WHT/VcelVvceodIDUZkJw6HpJZ9pmBZAQkJyCFBCQn\nIBkBKWYISM4QkIAkhoDkDAEJSGIISM4QkIAkhoDkDAEJSGIISM4QkIAkhoDkDAEJSGIISM4Q\nkIAkhoDkDAEJSGIISM4QkIAkhoDkDAEJSGIISM4QkIAkhoDkDAEJSGIISM4QkIAkhoDkDAEJ\nSGIISM7QfIX03E3rPvbJdV4XAKneEJCcofkKqUd/MtCU/k/dLSDFBCSnNoP0weTGe/9qs9mX\n6m8BKSYgObUdpJ38v3WJGQKSMwQkHZBiApITkIAkApITkIAkApITkIAkApITkIAkApITkIAk\nApITkIAkApITkIAkApITkIAkApITkIAkApITkIAkApITkIAkApITkIAkApITkIAkApITkIAk\nApITkIAkApITkIAkApITkIAkApLTXEB68fO3zLYLgRQ1BCRnqK0h/U1DHwVU09eBFDMEJGeo\nrSF9MXnPrL8l9fofEKkCUkxAcpobSKubGAJSzBCQnCEg6YAUE5CcgAQkEZCcgAQkEZCcgAQk\nEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQk\nEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQk\nEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQk\nEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQk\nEZDqt3VzuS9uDupLD1Tvfng+Q8pnVUiLmdcbrxA2lBaClophQ9lP3myWwoaaP9JjyRz28SYO\nFvhHqTgaDykbP9+RjObnd6T7k0XrSv3vdUFt+OTk/T/d18TB2vw7UvaZgWQ0XyF9pPzLXPyM\n1FxAihkCkjMEJB2QYgJS3YAEJC8g1Q1IQPICUt2ABCQvINUNSEDyAlLdgAQkLyDVDUhA8gJS\n3YAEJC8g1Q1IQPICUt2ABCQvINUNSEDyAlLdgAQkLyDVDUhA8gJS3YAEJC8g1Q1IQPICUt2A\nBCQvINUNSEDyAlLdgAQkrwUL6eD2B40+AiQgWS1YSLeYH/WzrvzFQAKSaMFC+pPkvT1Ga54r\nfzGQgCRawJDu9ZeABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyA\nBCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyA\nBCQRkJyABCQRkJyABCTR/IH04uOP1vTk3torU7oGSJWAFNP8gXSH+bFA1bb420ACkmj+QPpE\n8t9qPgFo9Zp6nw+0+oC/DSQgieYTpLtqh5r/pNWJgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCc\ngAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCc\ngAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkUTtD6qvzIUCndx2QZhOQYmpjSPc2\n+rFAm2uHgKQDUkxtDOlTyQVXNtLK/bVDQNIBKaa2hnR7k0NA0gEpJiA5AQlIIiA5AQlIIiA5\nAQlIIiA5AQlIIiA5AQlIIiA5AQlIIiA5AQlIIiA5AQlIIiA5AQlIIiA5AQlIIiA5AQlIIiA5\nAQlIIiA5AQlIIiA5AQlIIiA5Aana3p7LVtxfnHhwfa7cxYPpjsqdp4HUfEBy6nhI+xZvOrC7\ne8vEoxcGSq28KU13LCvfGwJS8wHJqeMhrb+udNO7ZHjyyv7c3hKk5dO/LPvMQDICklPHQ1p+\nT+mmP9c/eeXW95de6O24ZPnS1X2Vx6+88MIL/3Qoq2PpcOb1xjs5GDWUnghaGjoeNDSSHg1a\nyh8e//UzyZ1NDhWbP8x4haihdCxo6Oho0NCxdOgVH1Ixt610ezDXV71yvPvB0u0zj+x7dmNu\ne/nC2q6uroskSDpz3ZHc1+ojLIzy1XuzgPTwZUdO3d1wZfn2gTVr1tw8nNVoms+83nhjYUPp\nWNBSfjRqKB0JWipODN2abG5yKG3+MBNLUUNpIWhoNGwozU++R9D4S7viyluqv7c9N3bqbvbL\nUX5GMuJnJKeO/xmp9s2Gv5/y49KGyXccss8MJCMgOXU8pPLb34+V3/7uu+Fk+fHH/7hy+fbd\n/U/flnsISM0HJKeOh5Q+1XPpVb3F8uu4o6VHLy3eWbl618rupav2TH5V9pmBZAQkp86H5JV9\nZiAZAckJSCEByQlIRkCKGQKSMwQkHZBiApITkIAkApITkIAkApITkIAkApITkIAkApITkIAk\nApITkIAkApITkIAkApITkIAkApITkIAkApITkIAkApITkIAkApITkIAkag2k7++v00sD47/+\nKZBmDkgxQ50N6abE687mjgQkIyDF1BJI70suvHjmLl986s53mjsSkIyAFFOLID1a53dP/YzU\ndEAyAlJMQHICEpBEQHICEpBEQHICEpBEQHICEpBEQHICEpBEQHICEpBEQHICEpBEQHICEpBE\nQHICEpBEQHICEpBEQHICEpBEQHICEpBEQHICEpBEQHICEpBEQHICEpBEQHICEpBEQHICEpBE\nQHICEpBELYD0/P7fB1KzASlmqIMh3X5WkiS763wBkIyAFDPUwZCuT95x4aU/qvMFQDICUsxQ\nR0PaVv8LgGQEpJghIBkByQhIMQHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhA\nEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhA\nEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhA\nEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhA\nEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUgNNpjVcDqWeb3xRqKG\nRtORoKWxqKF8OjTzb+4779xqr07+tv5Soc5QQxWy/33OomLUUFoIGhrORw2lYyfiIR3PajAd\nzbzeeMMjUUPpUNDSaNhQenLm3/xK8rP/vtoFP6i/lD8RdKRCMWjoeNhQmg8aOhk1VPrTfSwe\nUvZ3UV7aGdV9abctud5f4qWdUZu/tMs+M5CMgOQEpJCA5AQkIyDFDAHJGQKSDkgxAckJSEAS\nAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEAS\nAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEAS\nAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEAS\nAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEASAckJSEAS\nAckJSEASNQvpa790/nhvfdvPnz9jbwLSeEAKaR5CWp+85tzx3nBunX72fn8SSEZAihlqI0ib\nxu/UfWnXUEAyAlLMEJCcISDpgBQTkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyA\nBCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyA\nBCQRkJyABCQRkJyABCQRkJyABCRRw5D+6T3vnNp5QGokIIU0HyA9k5wz7fOB/tXj49eB5ASk\nkOYHpFzmdSA5ASkkIDkByQhIMUNAcoaApANSTEByAhKQREByAhKQREByAhKQREByAhKQREBy\nAhKQREByAhKQREByAhKQREByAhKQREByAhKQREByAhKQREByAhKQREByAhKQREByWpCQfpxJ\nZG/PZSvuL0482JEr93TtZSAZAamZOgnSq/77l/OnOdq3eNOB3d1bTkFaNlBqqPYykIyA1Eyd\nBGn5Tydv/pMf1kBaf13ppnfJ8ASk5ZmXgWQEpGbqJEjp4Y3vSM7+7YfHpum6p3TTn+ufgHTJ\n8qWr+067DCQjIDVTR0Eq9eT7X5f83Nrnq4+LuW2l24O5vvGHzzyy79mNue3TLt9xxRVXXDuW\nVT4tZF5vvELYUJqPWmp06PmkO3so7EjFoJ2xYhq1FDcU9Q+XDxtKCyMzQ0rTY1cmpW9LfdmQ\nKm24ctrltV1dXRedvkM1/Ti5vNVHoNgm31I4DdJLn/13yWtWfOC1Z31+4kLta7hS23NjvLTj\npZ3VwnxpV3jk8n+e/NrGI2l66L+8ZeJa7bsKpTYs580GIHktSEg3nZ+8+oqJ13D3nTVxsfw+\n92Pl97n7bjiZprfv7n/6ttxDUy4DyQ1IzdRJkJK33/LKqfvf/p+n7j3Vc+lVvcXyC7qjaXrX\nyu6lq/ZMvQwkNyA1UydB+no6+7LPDKQpAamZOglSM2WfGUhTAlIzASkkIDkByQhIMUNAcoaA\npANSTEByAhKQREByAhKQREByAhKQREByAhKQREByAhKQREByAhKQREByAhKQREByAhKQREBy\nAhKQREByAhKQREByAhKQREByAhKQRAakP7twau8GUhMBKaTOhPQfkun9j8yvApITkELqUEhn\n75/ageyvApITkELqVEjOEJCcgBQSkJyAZASkmCEgOUNA0gEpJiA5AQlIIiA5AQlIIiA5AQlI\nIiA5AQlIIiA5AQlIIiA5AQlIIiA5AQlIIiA5AQlIIiA5AQlIIiA5AQlIIiA5AQlIIiA5AQlI\nIiA5AQlIIiA5AQlIIiA5AQlIIiA5AQlIotMgfav74preACQgAUl0GqRbktP6eWcISE5ACqkT\nIH0m+dT+mv7RGQKSE5BC6gxIG2c1BCQnIIUEJCcgGQEpZghIzhCQdECKCUhOQAKSCEhOQAKS\nCEhOQAKSCEhOQAKSCEhOQAKSCEhOQAKSCEhOQAKSCEhOQAKSCEhOQAKSCEhOQAKSCEhOQAKS\nCEhOQAKSCEhOQAKSCEhOQAKSCEhOQAKSCEhOQAKS6BSkF66e+MygdwDp9IAEJNEpSLuqnxl0\n1oOzGgKSE5BCamNIjyS/93/H+87shoDkBKSQ2hrSNc0NAckJSCEByQlIRkCKGQKSMwQkHZBi\nApITkIAkApITkIAkApITkIAkApITkIAkApITkIAkApITkIAkApITkIAkApITkIAkApITkIAk\nApITkIAkApITkIAkApITkIAkApITkIAkApITkIAkApITkIAkApITkBrsUFbH0uHM6413Yiho\n6GR6oumNTX9Q7n0rKr/8wXuTDzQ3N5IebfpI440dCRrKF4OGDhWihtKxoKGjo0FDx9KhV+Ih\njWY1lhYyrzdePmwozTe98eZkejc3N1dIx5o+0njFsKHsf5+zWYoaSqOWxsKG0sJwPKTs76Lz\n86Xdv37jo6W+8cSj4+15sbk5Xto5LZSXdtlnnqeQzivfnvZJq7MNSE5ACglITkAyAlLMEJCc\nISDpgNRsQPIDEpBmDEh+QALSjAHJD0hAmjEg+QEJSDMGJD8gAWnGgOQHJCDNGJD8gASkGQOS\nH5CANGNA8gMSkGYMSH5AAtKMAckPSECaMSD5AQlIMwYkPyABacaA5AckIM0YkPyABKQZA5If\nkBY6pAOre2bqdUCyA9JCh9SbzNyvlb8ASE5AWuiQvpC8/9GZ+m75C4DkBCQgrav/BUByAhKQ\ngBQQkIAEpICABCQgBQQkIAEpICABCUgBAQlIQAoISEACUkBAAhKQAgISkIAUEJCABKSAgAQk\nIAUEJCABKSAgAQlIAQEJSEAKCEhAAlJAQAISkAICEpCAFBCQgASkgIC0wCDdV/tRQe8FUkRA\nWmCQ/sXpnxX02fpLQHIC0gKDdO7PPVjT9oP1l4DkBKSFBukXG10CkhOQgCQCkhOQgCQCkhOQ\ngCQCkhOQgCQCkhOQgCQCkhOQgCQCkhOQgCQCkhOQgCQCkhOQgCQCkhOQgCQCkhOQgCQCkhOQ\ngCQCkhOQgCQCkhOQgCQCkhOQgCQCkhOQgCQCkhOQgCQCkhOQgCQCkhOQFgakx9dN9GogTR0C\nkg5IU1pU/cygdzW6BCQnIC0MSP85uXNzpb/4dqNLQHIC0kKB9KPZLgHJCUhAEgHJCUhAEgHJ\nCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJ\nCUhAEgHJCUhAEgHJCUhAEgHJCUjV9vZctuL+4sSDXR+9YsmHvla6syNX7mkgNR+QnDoe0r7F\nmw7s7t4y8egjvXufuzu3swRp2UCpISA1H5CcOh7S+utKN71LhqdcunFtCdLy6V+WfWYgGQHJ\nqeMhLb+ndNOf659yadWnS5AuWb50dR+QAgKSU6dDKua2lW4P5qaY2XXJ99L0mUf2Pbsxt738\n+Klt27btOJ7VYDqaeb3xhkeihtKh0u3zG28b75eSF2e7NDoUdKTR9GTQUuFE1FAxaOh42FCa\nDxo6ORY0VPrTfawZSHu6nzh1d8OV5du1XV1dF6md9urG6ocHnTPa6rNQ55av3mv8pd3O7m9W\nf297bqx0+51du3Y9cSyrk+lI5vXGGxoOGip9Ryrd9iRr7xvv67NeGhkMOtJoeiJoKX88aKhQ\nDBo6FjaU5oOGTowFDZX+dB9tAFLNmw0PLJl8yzvdMPmOQ/bL0Xb9GekPkx1NL/EzkhM/I52q\n/Pb3Y+W3v/tuOJmmd12yc2Bg4Edpevvu/qdvyz0EpOYDklPHQ0qf6rn0qt5i+XVc6RvZssp/\nh72mJGpl99JVeya/KvvMQDICklPnQ/LKPjOQjIDkBKSQgOQEJCMgxQwByRkCkg5IQJJDQNIB\nCUhyCEg6IAFJDgFJByQgySEg6YAEJDkEJB2QgCSHgKQDEpDkEJB0QAKSHAKSDkhAkkNA0gEJ\nSHIISDogAUkOAUkHJCDJISDpgAQkOQQkHZCAJIeApAMSkOQQkHRAApIcApIOSECSQ0DSAQlI\ncghIOiABSQ4BSQckIMkhIOmABCQ5BCQdkIAkh4CkAxKQ5BCQdEACkhwCkg5IQJJDQNIBCUhy\nCEg6IAFJDgFJByQgySEg6YAEJDkEJB2QgCSHgKQDEpDkEJB0QAKSHAKSDkhAkkNA0gEJSHII\nSDogAUkOAUm3sCG98vB9mzdv/i0g1R8Ckm5hQ/rzZLyvNb0EJCcgzVNIn02615Xa+FLTS0By\nAtK8hXR30BKQnIAEJBGQnIAEJBGQnIAEJBGQnIAEJBGQnIAEJBGQnIAEJBGQnIAEJBGQnIAE\nJBGQnIAEJBGQnIAEJBGQnIAEJBGQnIAEJBGQnIAEJBGQnIAEJBGQnIAEJBGQnIAEJBGQnIAE\nJBGQnIAEJBGQnIA0zyB9ZfN4y4HkDAFJtyAh7Umq3RtzIiBZAWl+QdqZvHtdpZs/92LMiYBk\nBaT5BunaiaHKJ61GBCQnIAFJBCQnIAFJBCQnIAFJBCQnIAFJBCQnIAFJBCQnIAFJBCQnIAFJ\nBCQnIAFJBCQnIAFJBCQnIAFJBCQnIAFJBCQnIAFJBCQnIAFJBCQnIAFJBCQnIAFJBCQnIAFJ\nBCQnIAFJBCQnIAFJBCQnIM0DSN96sNp6IDU0BCTd3EAayyqfFjKvN15hNkNvSqa0amIozUcd\nKWwo7EjFoJ2xYva/z1kUNxT1D5cPG0oLI/GQXs7qSDqUeb3xjg/O4i8654091T78rfFrJ9Lj\nQUcaOhY0NJweDloaOxQ0lC8GDb1ciBpKR4OGDo8EDZX/dMdDyv4u2tqXduf8esYQL+2cIV7a\n6RbOz0hAmvUQkHRAiglITkACkghITkACkghITkACkghITkACkghITkACkghITkACkghITkAC\nkghITkACkghITkACkghITkACkghITkACkghITkACkghITkACkghITkACkghITkACkghITkAC\nkghITkDqDEh9j9YJSLMeApJuPkF6OKnbuzKGgOQMAUk3nyBtTv7jlTN31RczhoDkDAFJN78g\n3dToEJCcISDpgBQTkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQR\nkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQRkJyABCQR\nkJyABCQRkJyAFA6p7gf+qPZk/9XrgDQ1IBl1OqRb63/gz2z7RIP/9ECyhoCkaxGktcmiOh/4\no1pxdfb1q7/d4D89kKwhIOlaBmlLE4ee1SetZg4ByRkCkg5IMQHJCUhAEgHJCUhAEgHJCUhA\nEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhA\nEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhA\nEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhA\nEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUhAEgHJCUjV9vZctuL+4mmPpl8G\n0uwDklPHQ9q3eNOB3d1bah9NvwykJgKSU8dDWn9d6aZ3yXDNo+mXgdREQHLqeEjL7ynd9Of6\nax5NuTx4tNT3szpw6GD1/qqk9+XZd2Kwib942lB6PGhp6FjQ0HB6OGhp7FDQUL4YNPRyIWoo\nHQ0aOjISNZQOvexDKua2lW4P5vqmP5p6eW1XV9d/TXRflmiJOqp89V4EpL+49tprP/ybmV00\n5f7lB0dnXz7fxF88bSiNWiqMRQ2lUUvFoJ3RYhq2FDWURi2NFaKG0kL1J5uQl3aVsl+OTvkZ\nqbn4GcmJn5GMOv3NhuYCkhOQjFr59vdj5fe5+244OeVR9Q6Qmg1ITh0PKX2q59Kreotpuj13\ndMqjyTtAajIgOXU+JK/sMwPJCEhOQAoJSE5AMgJSzBCQnCEg6YAUE5CcgAQkEZCcgAQkEZCc\ngAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCc\ngAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCc\ngAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgAQkEZCcgBTRc4tun9P9WfTwoq+1+gi1\nfWrRD1t9hNqu/u1Wn6C20UUfavURavuHRXdMPphbSM923TKn+7Poi11/2+oj1HZT1w9afYTa\nfveCVp+gttGua1p9hNqe6fqzyQdAan1AMgJSmwUkJyAZnUFIP1zz5Tndn0XfWPOtVh+hti+t\nebHVR6jtc+tafYLa8ms2tfoItR1Ys2PywdxCIlogAYkoICARBTRXkL67/n252yr39vZctuL+\n4hz9bRqoeqIduXJPt/o8pXZ99IolH6r8Z612eZImj9Q+z9KeVUsvu+YvR9M2epaqR5p8luYK\n0jP3Pr6y8sd23+JNB3Z3b5mjv00DVU+0Y9lAqaFWn6fUR3r3Pnd3bmcbPUmTR2qfZ+kbX312\n344lt7fTs1Q90uSzNIcv7Xoqf2zXX1e66V0yPHd/H7/xE+1Y3upzTOvGte31JKXjR2qzZ+mO\nD7Tds1Q+0uSzNOeQlt9TuunP9c/d38dvAtIly5eu7mv1Waqt+nR7PUnp+JHa6lkqDFxzZ5s9\nS+NHmnyW5hpSMbetdHsw1xb/SsYhPfPIvmc35ra3+t4aP4YAAAMmSURBVDAT7brke+31JI0f\nqZ2epdHFF+c25tvqWZo40pRnaQFCqrThyhaeY0p7up9osydp/EjjtcezVDywf+ey+9rqWZo4\n0niVZ2kBvrSrtD031sKDVNvZ/c3yL+30JE0cqVKbPEulvnrx8bZ6ltLxI1WqPEsL8M2GShva\n4mfpB5aMv7/cRk/SqSNVao9nqdyO3OF2epbKlY9UqfIszRWkkYGBD64f+MH4e5aPtcN7ltUT\n3b67/+nbcg+1+jyl7rpk58DAwI/a6EmaPFL7PEuf/3r/Pzz0Oze107NUPdLkszRXkAYq/6Vq\nceneUz2XXtXbBv8VrXqiu1Z2L121p9XHKbescqTy/6q5XZ6kySO1z7N033WX/84fbS1/H2qb\nZ6l6pMlnif+JEFFAQCIKCEhEAQGJKCAgEQUEJKKAgEQUEJCIAgISUUBAIgoISEQBAYkoICAR\nBQSkzmpr8vAd//anfvnBdP/ic1+/9HDlygM3nn/OL36u8tv/+PvnvvbCv+v+qdYeciEGpM5q\na/Kf3vax9W85e9ubln9uWbKscuW8i/f+vzXJ/yrdP/oLZ1971x+9/leAdMYDUme1NTn/aJp+\nJznrz0sPFp/9k/KVt5b/78F/7+z9abouuat09y8TIJ3xgNRZbU02lH954+sKpdtbk2+Wr9xU\nvrI7+Uya/vq/zJfuFt8MpDMekDqrrcnW8i9v/9Xy7ZZkR/lKb/n+88kH0/S176580W8C6YwH\npM5qa/Jw+Ze3v7N8uyX5SvnK5vL9fcm1JUi/UfkiIJ35gNRZZUG6vnz/wSkv7d4CpDMekDqr\nLEjnHkzT0d8463tp+tHkntLlXt5sOPMBqbPKgtT1b9bf9u5kdenCkbe+6g/v/uPX/8qrW3rG\nBRmQOqssSNs+/bZzfuGWysdUvbD0Z15zQd973tDKIy7MgNTpTdCa2lvf1YqDLOyA1OlNg1T5\nfwz218maVh1m4QakTm8apEVX33n3Na8676XWHWehBqRObxqkT7/zZ/7ZeVf/uHWnWbABiSgg\nIBEFBCSigIBEFBCQiAICElFAQCIKCEhEAQGJKCAgEQX0/wGzfpX+X7ybXAAAAABJRU5ErkJg\ngg==",
"text/plain": [
"plot without title"
]
},
"metadata": {},
"output_type": "display_data",
"source": "R display func"
}
],
"source": [
"library(\"ggplot2\")\n",
"ggplot(mtcars, aes(mpg)) + stat_ecdf()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "R",
"language": "R",
"name": "ir"
},
"language_info": {
"codemirror_mode": "r",
"file_extension": ".r",
"mimetype": "text/x-r-source",
"name": "R",
"pygments_lexer": "r",
"version": "3.5.1"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
@@ -0,0 +1,14 @@
---
jupyter:
kernelspec:
display_name: R
language: R
name: ir
---

This notebook was created with IRKernel 0.8.12, and is not completely valid, as the code cell below contains an unexpected 'source' entry. This did cause https://github.com/mwouts/jupytext/issues/234. Note that the problem is solved when one upgrades to IRKernel 1.0.0.

```{r}
library("ggplot2")
ggplot(mtcars, aes(mpg)) + stat_ecdf()
```
@@ -0,0 +1,14 @@
---
jupyter:
kernelspec:
display_name: R
language: R
name: ir
---

This notebook was created with IRKernel 0.8.12, and is not completely valid, as the code cell below contains an unexpected 'source' entry. This did cause https://github.com/mwouts/jupytext/issues/234. Note that the problem is solved when one upgrades to IRKernel 1.0.0.

```R
library("ggplot2")
ggplot(mtcars, aes(mpg)) + stat_ecdf()
```
Expand Up @@ -5,7 +5,7 @@ jupyter:
language: python
name: python3
nbformat: 4
nbformat_minor: 2
nbformat_minor: 1
---

::: {.cell .code}
Expand Down
@@ -0,0 +1,14 @@
# ---
# jupyter:
# kernelspec:
# display_name: R
# language: R
# name: ir
# ---

# %% [markdown]
# This notebook was created with IRKernel 0.8.12, and is not completely valid, as the code cell below contains an unexpected 'source' entry. This did cause https://github.com/mwouts/jupytext/issues/234. Note that the problem is solved when one upgrades to IRKernel 1.0.0.

# %%
library("ggplot2")
ggplot(mtcars, aes(mpg)) + stat_ecdf()
@@ -0,0 +1,14 @@
# ---
# jupyter:
# kernelspec:
# display_name: R
# language: R
# name: ir
# ---

# %% [markdown]
# This notebook was created with IRKernel 0.8.12, and is not completely valid, as the code cell below contains an unexpected 'source' entry. This did cause https://github.com/mwouts/jupytext/issues/234. Note that the problem is solved when one upgrades to IRKernel 1.0.0.

# %%
library("ggplot2")
ggplot(mtcars, aes(mpg)) + stat_ecdf()
@@ -0,0 +1,12 @@
# ---
# jupyter:
# kernelspec:
# display_name: R
# language: R
# name: ir
# ---

# This notebook was created with IRKernel 0.8.12, and is not completely valid, as the code cell below contains an unexpected 'source' entry. This did cause https://github.com/mwouts/jupytext/issues/234. Note that the problem is solved when one upgrades to IRKernel 1.0.0.

library("ggplot2")
ggplot(mtcars, aes(mpg)) + stat_ecdf()
@@ -0,0 +1,12 @@
# ---
# jupyter:
# kernelspec:
# display_name: R
# language: R
# name: ir
# ---

# This notebook was created with IRKernel 0.8.12, and is not completely valid, as the code cell below contains an unexpected 'source' entry. This did cause https://github.com/mwouts/jupytext/issues/234. Note that the problem is solved when one upgrades to IRKernel 1.0.0.

library("ggplot2")
ggplot(mtcars, aes(mpg)) + stat_ecdf()
@@ -0,0 +1,12 @@
# ---
# jupyter:
# kernelspec:
# display_name: R
# language: R
# name: ir
# ---

# This notebook was created with IRKernel 0.8.12, and is not completely valid, as the code cell below contains an unexpected 'source' entry. This did cause https://github.com/mwouts/jupytext/issues/234. Note that the problem is solved when one upgrades to IRKernel 1.0.0.

library("ggplot2")
ggplot(mtcars, aes(mpg)) + stat_ecdf()

0 comments on commit c7fc47c

Please sign in to comment.