Skip to content

Instantly share code, notes, and snippets.

@gnestor
Last active February 9, 2022 00:25
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save gnestor/ae2449547e35dc779f36dfb322ca6ca0 to your computer and use it in GitHub Desktop.
Save gnestor/ae2449547e35dc779f36dfb322ca6ca0 to your computer and use it in GitHub Desktop.
A notebook for generating a Jupyter Notebook release changelog and credits
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"metadata": {},
"cell_type": "markdown",
"source": "# Github API\n\nRequires [requests](https://github.com/kennethreitz/requests) and [pandas](https://github.com/pandas-dev/pandas)"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Setup\n\nFirst, define some helper functions for querying Github, such as recursive query functions to paginate through all of the results."
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "import requests\nimport pandas as pd\nfrom pandas.io.json import json_normalize\nfrom IPython.display import Markdown, display\n\n# pd.options.display.html.table_schema = True\n\naccess_token = 'COPY AND PASTE YOUR PERSON GITHUB ACCESS TOKEN HERE'\n\ndef queryAll(resource, query, items = [], page = 1):\n r = requests.get('https://api.github.com/search/{0}?q={1}&page={2}&access_token={3}'.format(resource, query, page, access_token))\n r.raise_for_status()\n body = r.json()\n items = items + body['items']\n if len(items) < body['total_count']:\n return queryAll(resource, query, items, page + 1)\n return json_normalize(items)\n\ndef querySome(resource, query, items = [], first = 1, last=10):\n r = requests.get('https://api.github.com/search/{0}?q={1}&page={2}&access_token={3}'.format(resource, query, first, access_token))\n r.raise_for_status()\n body = r.json()\n items = items + body['items']\n if first < last:\n return queryAll(resource, query, _items, first + 1, last)\n return json_normalize(items)\n\ndef get(resource, id):\n r = requests.get('https://api.github.com/{0}/{1}?access_token={2}'.format(resource, id, access_token))\n r.raise_for_status()\n body = r.json()\n return body",
"execution_count": 1,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Get all Jupyter repos\n\nAn example to get all repos within Project Jupyter"
},
{
"metadata": {
"scrolled": true,
"trusted": true
},
"cell_type": "code",
"source": "repos = queryAll('repositories', 'user:jupyter+user:jupyterlab+user:jupyterhub+user:jupyter-widgets+user:ipython')\nrepos['full_name']",
"execution_count": 47,
"outputs": [
{
"metadata": {},
"data": {
"text/plain": "\n0 ipython/ipython\n1 jupyter/notebook\n2 jupyterhub/jupyterhub\n3 jupyterlab/jupyterlab\n4 jupyter/docker-stacks\n5 jupyter/jupyter\n6 jupyter/nbviewer\n7 jupyter-widgets/ipywidgets\n8 jupyter/colaboratory\n9 ipython/ipyparallel\n10 ipython/ipython-in-depth\n11 jupyter/tmpnb\n12 jupyter/dashboards\n13 ipython/xkcd-font\n14 jupyter/nbgrader\n15 jupyter/nbdime\n16 jupyter/jupyter-drive\n17 jupyter/atom-notebook\n18 jupyter/nbconvert\n19 ipython/traitlets\n20 jupyterhub/dockerspawner\n21 ipython/ipykernel\n22 jupyter-widgets/declarativewidgets\n23 jupyter/kernel_gateway\n24 jupyter/help\n25 jupyterhub/oauthenticator\n26 jupyterhub/jupyterhub-deploy-docker\n27 jupyter/nbconvert-examples\n28 jupyter/qtconsole\n29 jupyter/docker-demo-images\n ... \n82 jupyter/kernels\n83 jupyter/try.jupyter.org\n84 jupyter-widgets/traittypes\n85 jupyterhub/jupyterhub-example-kerberos\n86 jupyterlab/extension-cookiecutter-js\n87 jupyter/echo_kernel\n88 jupyter/jupyter-sprints\n89 jupyterhub/wrapspawner\n90 jupyter/jvm-repr\n91 jupyterlab/mimerender-cookiecutter\n92 jupyter/ops-handbook\n93 jupyter/jupyter-packaging\n94 jupyter/lbnl-jupyterday\n95 jupyter/project-mgt\n96 ipython/mozfest2014\n97 jupyter/scipy-2015-advanced-topics\n98 ipython/sloan-2013-reports\n99 jupyter/cdn.jupyter.org\n100 jupyter/experiments\n101 jupyterlab/extension-cookiecutter-ts\n102 ipython/ipython_genutils\n103 ipython/rlipython\n104 jupyter/sphinxcontrib_github_alt\n105 jupyterhub/nbserverproxy\n106 jupyterhub/nbrsessionproxy\n107 jupyter/jupyter-blog-theme\n108 jupyter/jupyter_logger\n109 jupyterhub/s2i-builders\n110 ipython/ipython-sec\n111 ipython/usersurveys\nName: full_name, dtype: object"
},
"output_type": "display_data"
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Get all PRs for a milestone on a repo\n\nAn example to get all PRs for a milestone on a repo (\"5.3\" on \"jupyter/notebook\")"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "prs = queryAll('issues', 'user:jupyter+repo:notebook+type:pr+milestone:5.3')\nprs",
"execution_count": 2,
"outputs": [
{
"metadata": {},
"data": {
"text/plain": "\n assignee assignees author_association \\\n0 None [] CONTRIBUTOR \n1 None [] MEMBER \n2 None [] CONTRIBUTOR \n3 None [] CONTRIBUTOR \n4 None [] OWNER \n5 None [] OWNER \n6 None [] CONTRIBUTOR \n7 None [] OWNER \n8 None [] OWNER \n9 None [] CONTRIBUTOR \n10 None [] CONTRIBUTOR \n11 None [] MEMBER \n12 None [] NONE \n13 None [] CONTRIBUTOR \n14 None [] OWNER \n15 None [] OWNER \n16 None [] CONTRIBUTOR \n17 None [] CONTRIBUTOR \n18 None [] CONTRIBUTOR \n19 None [] CONTRIBUTOR \n20 None [] CONTRIBUTOR \n21 None [] CONTRIBUTOR \n22 None [] MEMBER \n23 None [] OWNER \n24 None [] OWNER \n25 None [] CONTRIBUTOR \n26 None [] MEMBER \n27 None [] CONTRIBUTOR \n28 None [] CONTRIBUTOR \n29 None [] OWNER \n.. ... ... ... \n42 None [] OWNER \n43 None [] CONTRIBUTOR \n44 None [] OWNER \n45 None [] CONTRIBUTOR \n46 None [] OWNER \n47 None [] MEMBER \n48 None [] CONTRIBUTOR \n49 None [] CONTRIBUTOR \n50 None [] OWNER \n51 None [] OWNER \n52 None [] MEMBER \n53 None [] MEMBER \n54 None [] OWNER \n55 None [] MEMBER \n56 None [] OWNER \n57 None [] OWNER \n58 None [] OWNER \n59 None [] MEMBER \n60 None [] MEMBER \n61 None [] MEMBER \n62 None [] MEMBER \n63 None [] MEMBER \n64 None [] MEMBER \n65 None [] MEMBER \n66 None [] MEMBER \n67 None [] CONTRIBUTOR \n68 None [] MEMBER \n69 None [] OWNER \n70 None [] MEMBER \n71 None [] OWNER \n\n body closed_at \\\n0 Signed-off-by: noxdafox <noxdafox@gmail.com> 2018-01-04T09:31:00Z \n1 Closes https://github.com/jupyter/notebook/iss... 2018-01-05T11:42:22Z \n2 As per IPython console implementation.\\r\\n\\r\\n... 2018-01-03T09:59:31Z \n3 warn_bad_name in get_name should use the local... 2017-12-22T08:40:54Z \n4 we use zmq.eventloop, which generally requires... 2017-12-19T15:15:27Z \n5 fixes hover on upload button leaking over New ... 2017-12-19T14:55:27Z \n6 fix the Shutdown trans lost 2017-12-19T10:08:58Z \n7 Using `find_kernel_specs()` followed by `get_k... 2017-12-19T20:52:03Z \n8 Closes gh-3074 2017-12-14T11:53:43Z \n9 Original was in https://github.com/ipython/tra... 2018-01-05T14:54:04Z \n10 Fixes #2760 2017-12-05T14:27:15Z \n11 Closes https://github.com/jupyter/notebook/iss... 2017-12-14T23:03:04Z \n12 Backport PR #2959: set cookie on base_url 2017-11-28T18:33:33Z \n13 Trying to close #2975.\\r\\n\\r\\n@takluyver I did... 2017-12-01T12:46:42Z \n14 2017-12-01T05:33:50Z \n15 Lead to bug when trying to setup a new passwor... 2017-11-22T10:15:43Z \n16 Add translated files to folder(docs-translatio... 2018-01-05T11:41:50Z \n17 Fix broken blog post links in README.md 2017-11-20T21:42:38Z \n18 Send a new PR, including any changes to other ... 2017-11-20T17:14:01Z \n19 2017-11-20T12:58:44Z \n20 2017-11-20T11:20:59Z \n21 Here's my PR to solve the reported problems :)... 2017-11-19T16:54:39Z \n22 As discussed in https://github.com/jupyter/not... 2017-12-01T05:39:42Z \n23 when updating to traitlets API in #1527, requi... 2017-11-17T10:53:24Z \n24 Closes gh-2953\\r\\n\\r\\nI'm not quite sure how t... 2017-11-16T17:23:32Z \n25 2017-11-16T12:21:31Z \n26 This is throwing errors like\\r\\n\\r\\n```\\r\\nUnc... 2017-11-16T17:48:30Z \n27 2017-11-13T15:41:16Z \n28 2017-11-13T13:11:04Z \n29 PCs are always run with the current eventloop,... 2017-11-13T13:39:58Z \n.. ... ... \n42 avoids clobbering cookies when multiple notebo... 2017-10-20T08:49:39Z \n43 During the deprecation/removal of the `@json_e... 2017-11-01T09:43:48Z \n44 we already apply this logic in our server-side... 2017-10-20T08:55:44Z \n45 I ran into a situation where it'd be nice to b... 2017-11-01T09:44:57Z \n46 Closes gh-140 None \n47 I'm going to just merge this but I do want it ... 2017-08-31T22:12:08Z \n48 Added \\r\\n```python\\r\\nfrom nbconvert.preproce... 2017-08-26T19:14:21Z \n49 2017-08-27T01:52:59Z \n50 I just did the 5.2 release using this:\\r\\n\\r\\n... 2017-08-21T10:53:47Z \n51 checks for base64 the lazy way, by trying to d... 2017-08-20T23:08:18Z \n52 This PR will break not pass on travis until ht... 2017-08-21T09:44:13Z \n53 This introduces a new step in between Preproce... 2017-08-21T09:39:30Z \n54 Closes gh-641\\r\\n\\r\\nThis is needed for UsageE... 2017-08-07T16:39:40Z \n55 This PR implements tag based element filtering... 2017-08-08T07:48:25Z \n56 This should make issues like ipython/ipython#1... 2017-08-07T00:28:24Z \n57 Allowing for non-ascii home directory on Windo... 2017-08-07T14:42:24Z \n58 The hashes have changed in IPython master, whi... 2017-07-27T10:28:11Z \n59 mistune fixed a bug in html parsing (specifica... 2017-07-25T11:22:18Z \n60 Talking with @fperez and @rjleveque today poin... 2017-07-20T07:27:29Z \n61 This closes #614. \\r\\n\\r\\nI took some of the d... 2017-07-25T10:53:55Z \n62 This addresses issues related to how we proces... 2017-07-12T13:03:48Z \n63 Closes #615. \\r\\n\\r\\nThis enables RegexRemoveP... 2017-07-11T08:49:03Z \n64 This is substantially less complicated in term... 2017-08-08T15:49:44Z \n65 Closes #544. 2017-07-27T10:28:03Z \n66 …er's deploy state.\\r\\n\\r\\nTiny change that I ... 2017-07-20T07:51:53Z \n67 Tests for actual presence of correctly formatt... 2017-06-26T17:22:01Z \n68 This is in part a test improvement and in part... 2017-06-02T19:42:16Z \n69 * Better per-slide scrolling (defaulting to Fa... 2017-06-05T20:49:37Z \n70 closes #592. \\r\\n\\r\\nFinally, without any `nos... 2017-05-26T16:06:19Z \n71 This adds a config option, defaulting to use t... 2017-10-20T09:41:26Z \n\n comments comments_url \\\n0 1 https://api.github.com/repos/jupyter/jupyter_c... \n1 0 https://api.github.com/repos/jupyter/notebook/... \n2 0 https://api.github.com/repos/jupyter/jupyter_c... \n3 1 https://api.github.com/repos/jupyter/notebook/... \n4 1 https://api.github.com/repos/jupyter/jupyter_c... \n5 0 https://api.github.com/repos/jupyter/notebook/... \n6 1 https://api.github.com/repos/jupyter/notebook/... \n7 5 https://api.github.com/repos/jupyter/notebook/... \n8 0 https://api.github.com/repos/jupyter/notebook/... \n9 34 https://api.github.com/repos/jupyter/notebook/... \n10 5 https://api.github.com/repos/jupyter/notebook/... \n11 5 https://api.github.com/repos/jupyter/notebook/... \n12 0 https://api.github.com/repos/jupyter/notebook/... \n13 7 https://api.github.com/repos/jupyter/notebook/... \n14 8 https://api.github.com/repos/jupyter/notebook/... \n15 0 https://api.github.com/repos/jupyter/notebook/... \n16 1 https://api.github.com/repos/jupyter/notebook/... \n17 1 https://api.github.com/repos/jupyter/notebook/... \n18 0 https://api.github.com/repos/jupyter/notebook/... \n19 2 https://api.github.com/repos/jupyter/notebook/... \n20 1 https://api.github.com/repos/jupyter/notebook/... \n21 4 https://api.github.com/repos/jupyter/notebook/... \n22 1 https://api.github.com/repos/jupyter/notebook/... \n23 0 https://api.github.com/repos/jupyter/notebook/... \n24 2 https://api.github.com/repos/jupyter/notebook/... \n25 1 https://api.github.com/repos/jupyter/notebook/... \n26 4 https://api.github.com/repos/jupyter/notebook/... \n27 1 https://api.github.com/repos/jupyter/notebook/... \n28 1 https://api.github.com/repos/jupyter/notebook/... \n29 0 https://api.github.com/repos/jupyter/notebook/... \n.. ... ... \n42 9 https://api.github.com/repos/jupyter/notebook/... \n43 3 https://api.github.com/repos/jupyter/notebook/... \n44 3 https://api.github.com/repos/jupyter/notebook/... \n45 15 https://api.github.com/repos/jupyter/notebook/... \n46 1 https://api.github.com/repos/jupyter/jupyter_c... \n47 0 https://api.github.com/repos/jupyter/nbconvert... \n48 2 https://api.github.com/repos/jupyter/nbconvert... \n49 3 https://api.github.com/repos/jupyter/nbconvert... \n50 0 https://api.github.com/repos/jupyter/jupyter_c... \n51 4 https://api.github.com/repos/jupyter/nbconvert... \n52 2 https://api.github.com/repos/jupyter/nbconvert... \n53 28 https://api.github.com/repos/jupyter/nbconvert... \n54 1 https://api.github.com/repos/jupyter/nbconvert... \n55 5 https://api.github.com/repos/jupyter/nbconvert... \n56 2 https://api.github.com/repos/jupyter/nbconvert... \n57 4 https://api.github.com/repos/jupyter/nbconvert... \n58 1 https://api.github.com/repos/jupyter/nbconvert... \n59 0 https://api.github.com/repos/jupyter/nbconvert... \n60 2 https://api.github.com/repos/jupyter/nbconvert... \n61 3 https://api.github.com/repos/jupyter/nbconvert... \n62 1 https://api.github.com/repos/jupyter/nbconvert... \n63 0 https://api.github.com/repos/jupyter/nbconvert... \n64 3 https://api.github.com/repos/jupyter/nbconvert... \n65 4 https://api.github.com/repos/jupyter/nbconvert... \n66 0 https://api.github.com/repos/jupyter/nbconvert... \n67 14 https://api.github.com/repos/jupyter/nbconvert... \n68 0 https://api.github.com/repos/jupyter/nbconvert... \n69 5 https://api.github.com/repos/jupyter/nbconvert... \n70 1 https://api.github.com/repos/jupyter/nbconvert... \n71 29 https://api.github.com/repos/jupyter/notebook/... \n\n created_at events_url \\\n0 2018-01-03T21:32:19Z https://api.github.com/repos/jupyter/jupyter_c... \n1 2018-01-03T02:21:05Z https://api.github.com/repos/jupyter/notebook/... \n2 2018-01-02T23:03:51Z https://api.github.com/repos/jupyter/jupyter_c... \n3 2017-12-21T23:44:00Z https://api.github.com/repos/jupyter/notebook/... \n4 2017-12-19T14:53:51Z https://api.github.com/repos/jupyter/jupyter_c... \n5 2017-12-19T13:55:05Z https://api.github.com/repos/jupyter/notebook/... \n6 2017-12-19T08:37:59Z https://api.github.com/repos/jupyter/notebook/... \n7 2017-12-15T11:36:38Z https://api.github.com/repos/jupyter/notebook/... \n8 2017-12-11T16:46:51Z https://api.github.com/repos/jupyter/notebook/... \n9 2017-12-08T13:16:10Z https://api.github.com/repos/jupyter/notebook/... \n10 2017-12-04T22:45:33Z https://api.github.com/repos/jupyter/notebook/... \n11 2017-11-30T19:51:30Z https://api.github.com/repos/jupyter/notebook/... \n12 2017-11-28T18:31:11Z https://api.github.com/repos/jupyter/notebook/... \n13 2017-11-27T14:55:16Z https://api.github.com/repos/jupyter/notebook/... \n14 2017-11-27T12:54:43Z https://api.github.com/repos/jupyter/notebook/... \n15 2017-11-21T18:50:49Z https://api.github.com/repos/jupyter/notebook/... \n16 2017-11-21T04:25:21Z https://api.github.com/repos/jupyter/notebook/... \n17 2017-11-20T20:04:48Z https://api.github.com/repos/jupyter/notebook/... \n18 2017-11-20T14:02:20Z https://api.github.com/repos/jupyter/notebook/... \n19 2017-11-19T15:50:37Z https://api.github.com/repos/jupyter/notebook/... \n20 2017-11-19T05:23:47Z https://api.github.com/repos/jupyter/notebook/... \n21 2017-11-18T01:22:14Z https://api.github.com/repos/jupyter/notebook/... \n22 2017-11-17T15:45:25Z https://api.github.com/repos/jupyter/notebook/... \n23 2017-11-17T09:31:27Z https://api.github.com/repos/jupyter/notebook/... \n24 2017-11-16T12:03:44Z https://api.github.com/repos/jupyter/notebook/... \n25 2017-11-16T03:28:12Z https://api.github.com/repos/jupyter/notebook/... \n26 2017-11-16T01:25:21Z https://api.github.com/repos/jupyter/notebook/... \n27 2017-11-13T14:48:17Z https://api.github.com/repos/jupyter/notebook/... \n28 2017-11-13T05:09:27Z https://api.github.com/repos/jupyter/notebook/... \n29 2017-11-10T13:29:24Z https://api.github.com/repos/jupyter/notebook/... \n.. ... ... \n42 2017-10-19T15:44:54Z https://api.github.com/repos/jupyter/notebook/... \n43 2017-10-19T15:08:13Z https://api.github.com/repos/jupyter/notebook/... \n44 2017-10-10T15:03:03Z https://api.github.com/repos/jupyter/notebook/... \n45 2017-10-09T18:13:04Z https://api.github.com/repos/jupyter/notebook/... \n46 2017-10-06T19:46:06Z https://api.github.com/repos/jupyter/jupyter_c... \n47 2017-08-31T22:01:31Z https://api.github.com/repos/jupyter/nbconvert... \n48 2017-08-26T18:51:37Z https://api.github.com/repos/jupyter/nbconvert... \n49 2017-08-26T14:03:17Z https://api.github.com/repos/jupyter/nbconvert... \n50 2017-08-21T10:49:39Z https://api.github.com/repos/jupyter/jupyter_c... \n51 2017-08-18T20:00:40Z https://api.github.com/repos/jupyter/nbconvert... \n52 2017-08-10T00:00:04Z https://api.github.com/repos/jupyter/nbconvert... \n53 2017-08-07T22:47:41Z https://api.github.com/repos/jupyter/nbconvert... \n54 2017-08-07T15:35:44Z https://api.github.com/repos/jupyter/nbconvert... \n55 2017-08-07T05:10:52Z https://api.github.com/repos/jupyter/nbconvert... \n56 2017-08-05T09:33:32Z https://api.github.com/repos/jupyter/nbconvert... \n57 2017-08-03T13:00:56Z https://api.github.com/repos/jupyter/nbconvert... \n58 2017-07-25T17:40:03Z https://api.github.com/repos/jupyter/nbconvert... \n59 2017-07-25T02:43:50Z https://api.github.com/repos/jupyter/nbconvert... \n60 2017-07-01T01:44:50Z https://api.github.com/repos/jupyter/nbconvert... \n61 2017-06-29T21:13:46Z https://api.github.com/repos/jupyter/nbconvert... \n62 2017-06-29T19:23:08Z https://api.github.com/repos/jupyter/nbconvert... \n63 2017-06-28T20:28:31Z https://api.github.com/repos/jupyter/nbconvert... \n64 2017-06-23T23:51:34Z https://api.github.com/repos/jupyter/nbconvert... \n65 2017-06-23T18:52:26Z https://api.github.com/repos/jupyter/nbconvert... \n66 2017-06-22T21:33:32Z https://api.github.com/repos/jupyter/nbconvert... \n67 2017-06-05T20:52:10Z https://api.github.com/repos/jupyter/nbconvert... \n68 2017-06-01T22:41:51Z https://api.github.com/repos/jupyter/nbconvert... \n69 2017-05-31T20:51:08Z https://api.github.com/repos/jupyter/nbconvert... \n70 2017-05-26T09:16:01Z https://api.github.com/repos/jupyter/nbconvert... \n71 2016-12-12T16:11:16Z https://api.github.com/repos/jupyter/notebook/... \n\n html_url \\\n0 https://github.com/jupyter/jupyter_console/pul... \n1 https://github.com/jupyter/notebook/pull/3176 \n2 https://github.com/jupyter/jupyter_console/pul... \n3 https://github.com/jupyter/notebook/pull/3160 \n4 https://github.com/jupyter/jupyter_client/pull... \n5 https://github.com/jupyter/notebook/pull/3148 \n6 https://github.com/jupyter/notebook/pull/3147 \n7 https://github.com/jupyter/notebook/pull/3136 \n8 https://github.com/jupyter/notebook/pull/3122 \n9 https://github.com/jupyter/notebook/pull/3116 \n10 https://github.com/jupyter/notebook/pull/3108 \n11 https://github.com/jupyter/notebook/pull/3097 \n12 https://github.com/jupyter/notebook/pull/3090 \n13 https://github.com/jupyter/notebook/pull/3088 \n14 https://github.com/jupyter/notebook/pull/3087 \n15 https://github.com/jupyter/notebook/pull/3067 \n16 https://github.com/jupyter/notebook/pull/3065 \n17 https://github.com/jupyter/notebook/pull/3064 \n18 https://github.com/jupyter/notebook/pull/3063 \n19 https://github.com/jupyter/notebook/pull/3061 \n20 https://github.com/jupyter/notebook/pull/3059 \n21 https://github.com/jupyter/notebook/pull/3058 \n22 https://github.com/jupyter/notebook/pull/3055 \n23 https://github.com/jupyter/notebook/pull/3053 \n24 https://github.com/jupyter/notebook/pull/3051 \n25 https://github.com/jupyter/notebook/pull/3049 \n26 https://github.com/jupyter/notebook/pull/3048 \n27 https://github.com/jupyter/notebook/pull/3043 \n28 https://github.com/jupyter/notebook/pull/3042 \n29 https://github.com/jupyter/notebook/pull/3034 \n.. ... \n42 https://github.com/jupyter/notebook/pull/2959 \n43 https://github.com/jupyter/notebook/pull/2958 \n44 https://github.com/jupyter/notebook/pull/2920 \n45 https://github.com/jupyter/notebook/pull/2910 \n46 https://github.com/jupyter/jupyter_console/pul... \n47 https://github.com/jupyter/nbconvert/pull/660 \n48 https://github.com/jupyter/nbconvert/pull/656 \n49 https://github.com/jupyter/nbconvert/pull/654 \n50 https://github.com/jupyter/jupyter_console/pul... \n51 https://github.com/jupyter/nbconvert/pull/650 \n52 https://github.com/jupyter/nbconvert/pull/645 \n53 https://github.com/jupyter/nbconvert/pull/643 \n54 https://github.com/jupyter/nbconvert/pull/642 \n55 https://github.com/jupyter/nbconvert/pull/640 \n56 https://github.com/jupyter/nbconvert/pull/639 \n57 https://github.com/jupyter/nbconvert/pull/638 \n58 https://github.com/jupyter/nbconvert/pull/631 \n59 https://github.com/jupyter/nbconvert/pull/630 \n60 https://github.com/jupyter/nbconvert/pull/619 \n61 https://github.com/jupyter/nbconvert/pull/618 \n62 https://github.com/jupyter/nbconvert/pull/617 \n63 https://github.com/jupyter/nbconvert/pull/616 \n64 https://github.com/jupyter/nbconvert/pull/611 \n65 https://github.com/jupyter/nbconvert/pull/609 \n66 https://github.com/jupyter/nbconvert/pull/608 \n67 https://github.com/jupyter/nbconvert/pull/602 \n68 https://github.com/jupyter/nbconvert/pull/601 \n69 https://github.com/jupyter/nbconvert/pull/600 \n70 https://github.com/jupyter/nbconvert/pull/595 \n71 https://github.com/jupyter/notebook/pull/1968 \n\n ... user.id \\\n0 ... 4214888 \n1 ... 512354 \n2 ... 4214888 \n3 ... 359625 \n4 ... 151929 \n5 ... 151929 \n6 ... 8939700 \n7 ... 327925 \n8 ... 327925 \n9 ... 1765949 \n10 ... 8190572 \n11 ... 512354 \n12 ... 24485218 \n13 ... 9015820 \n14 ... 2096628 \n15 ... 335567 \n16 ... 32505470 \n17 ... 3104454 \n18 ... 29744486 \n19 ... 29744486 \n20 ... 33171667 \n21 ... 8852116 \n22 ... 5630710 \n23 ... 151929 \n24 ... 327925 \n25 ... 29744486 \n26 ... 5630710 \n27 ... 33171667 \n28 ... 33275221 \n29 ... 151929 \n.. ... ... \n42 ... 151929 \n43 ... 22599560 \n44 ... 151929 \n45 ... 181744 \n46 ... 327925 \n47 ... 2482408 \n48 ... 4383024 \n49 ... 11459865 \n50 ... 327925 \n51 ... 151929 \n52 ... 2482408 \n53 ... 2482408 \n54 ... 327925 \n55 ... 2482408 \n56 ... 327925 \n57 ... 327925 \n58 ... 327925 \n59 ... 2482408 \n60 ... 2482408 \n61 ... 2482408 \n62 ... 2482408 \n63 ... 2482408 \n64 ... 2482408 \n65 ... 2482408 \n66 ... 2482408 \n67 ... 3521479 \n68 ... 2482408 \n69 ... 1640669 \n70 ... 2482408 \n71 ... 327925 \n\n user.login user.organizations_url \\\n0 noxdafox https://api.github.com/users/noxdafox/orgs \n1 gnestor https://api.github.com/users/gnestor/orgs \n2 noxdafox https://api.github.com/users/noxdafox/orgs \n3 Sukneet https://api.github.com/users/Sukneet/orgs \n4 minrk https://api.github.com/users/minrk/orgs \n5 minrk https://api.github.com/users/minrk/orgs \n6 forbxy https://api.github.com/users/forbxy/orgs \n7 takluyver https://api.github.com/users/takluyver/orgs \n8 takluyver https://api.github.com/users/takluyver/orgs \n9 maartenbreddels https://api.github.com/users/maartenbreddels/orgs \n10 kirit93 https://api.github.com/users/kirit93/orgs \n11 gnestor https://api.github.com/users/gnestor/orgs \n12 meeseeksdev[bot] https://api.github.com/users/meeseeksdev%5Bbot... \n13 Madhu94 https://api.github.com/users/Madhu94/orgs \n14 blink1073 https://api.github.com/users/blink1073/orgs \n15 Carreau https://api.github.com/users/Carreau/orgs \n16 ChungJooHo https://api.github.com/users/ChungJooHo/orgs \n17 karthikb351 https://api.github.com/users/karthikb351/orgs \n18 bacboc https://api.github.com/users/bacboc/orgs \n19 bacboc https://api.github.com/users/bacboc/orgs \n20 PHaeJin https://api.github.com/users/PHaeJin/orgs \n21 ferdas https://api.github.com/users/ferdas/orgs \n22 jcb91 https://api.github.com/users/jcb91/orgs \n23 minrk https://api.github.com/users/minrk/orgs \n24 takluyver https://api.github.com/users/takluyver/orgs \n25 bacboc https://api.github.com/users/bacboc/orgs \n26 jcb91 https://api.github.com/users/jcb91/orgs \n27 PHaeJin https://api.github.com/users/PHaeJin/orgs \n28 edida https://api.github.com/users/edida/orgs \n29 minrk https://api.github.com/users/minrk/orgs \n.. ... ... \n42 minrk https://api.github.com/users/minrk/orgs \n43 kevin-bates https://api.github.com/users/kevin-bates/orgs \n44 minrk https://api.github.com/users/minrk/orgs \n45 mheilman https://api.github.com/users/mheilman/orgs \n46 takluyver https://api.github.com/users/takluyver/orgs \n47 mpacer https://api.github.com/users/mpacer/orgs \n48 pxhanus https://api.github.com/users/pxhanus/orgs \n49 tdalseide https://api.github.com/users/tdalseide/orgs \n50 takluyver https://api.github.com/users/takluyver/orgs \n51 minrk https://api.github.com/users/minrk/orgs \n52 mpacer https://api.github.com/users/mpacer/orgs \n53 mpacer https://api.github.com/users/mpacer/orgs \n54 takluyver https://api.github.com/users/takluyver/orgs \n55 mpacer https://api.github.com/users/mpacer/orgs \n56 takluyver https://api.github.com/users/takluyver/orgs \n57 takluyver https://api.github.com/users/takluyver/orgs \n58 takluyver https://api.github.com/users/takluyver/orgs \n59 mpacer https://api.github.com/users/mpacer/orgs \n60 mpacer https://api.github.com/users/mpacer/orgs \n61 mpacer https://api.github.com/users/mpacer/orgs \n62 mpacer https://api.github.com/users/mpacer/orgs \n63 mpacer https://api.github.com/users/mpacer/orgs \n64 mpacer https://api.github.com/users/mpacer/orgs \n65 mpacer https://api.github.com/users/mpacer/orgs \n66 mpacer https://api.github.com/users/mpacer/orgs \n67 mscuthbert https://api.github.com/users/mscuthbert/orgs \n68 mpacer https://api.github.com/users/mpacer/orgs \n69 damianavila https://api.github.com/users/damianavila/orgs \n70 mpacer https://api.github.com/users/mpacer/orgs \n71 takluyver https://api.github.com/users/takluyver/orgs \n\n user.received_events_url \\\n0 https://api.github.com/users/noxdafox/received... \n1 https://api.github.com/users/gnestor/received_... \n2 https://api.github.com/users/noxdafox/received... \n3 https://api.github.com/users/Sukneet/received_... \n4 https://api.github.com/users/minrk/received_ev... \n5 https://api.github.com/users/minrk/received_ev... \n6 https://api.github.com/users/forbxy/received_e... \n7 https://api.github.com/users/takluyver/receive... \n8 https://api.github.com/users/takluyver/receive... \n9 https://api.github.com/users/maartenbreddels/r... \n10 https://api.github.com/users/kirit93/received_... \n11 https://api.github.com/users/gnestor/received_... \n12 https://api.github.com/users/meeseeksdev%5Bbot... \n13 https://api.github.com/users/Madhu94/received_... \n14 https://api.github.com/users/blink1073/receive... \n15 https://api.github.com/users/Carreau/received_... \n16 https://api.github.com/users/ChungJooHo/receiv... \n17 https://api.github.com/users/karthikb351/recei... \n18 https://api.github.com/users/bacboc/received_e... \n19 https://api.github.com/users/bacboc/received_e... \n20 https://api.github.com/users/PHaeJin/received_... \n21 https://api.github.com/users/ferdas/received_e... \n22 https://api.github.com/users/jcb91/received_ev... \n23 https://api.github.com/users/minrk/received_ev... \n24 https://api.github.com/users/takluyver/receive... \n25 https://api.github.com/users/bacboc/received_e... \n26 https://api.github.com/users/jcb91/received_ev... \n27 https://api.github.com/users/PHaeJin/received_... \n28 https://api.github.com/users/edida/received_ev... \n29 https://api.github.com/users/minrk/received_ev... \n.. ... \n42 https://api.github.com/users/minrk/received_ev... \n43 https://api.github.com/users/kevin-bates/recei... \n44 https://api.github.com/users/minrk/received_ev... \n45 https://api.github.com/users/mheilman/received... \n46 https://api.github.com/users/takluyver/receive... \n47 https://api.github.com/users/mpacer/received_e... \n48 https://api.github.com/users/pxhanus/received_... \n49 https://api.github.com/users/tdalseide/receive... \n50 https://api.github.com/users/takluyver/receive... \n51 https://api.github.com/users/minrk/received_ev... \n52 https://api.github.com/users/mpacer/received_e... \n53 https://api.github.com/users/mpacer/received_e... \n54 https://api.github.com/users/takluyver/receive... \n55 https://api.github.com/users/mpacer/received_e... \n56 https://api.github.com/users/takluyver/receive... \n57 https://api.github.com/users/takluyver/receive... \n58 https://api.github.com/users/takluyver/receive... \n59 https://api.github.com/users/mpacer/received_e... \n60 https://api.github.com/users/mpacer/received_e... \n61 https://api.github.com/users/mpacer/received_e... \n62 https://api.github.com/users/mpacer/received_e... \n63 https://api.github.com/users/mpacer/received_e... \n64 https://api.github.com/users/mpacer/received_e... \n65 https://api.github.com/users/mpacer/received_e... \n66 https://api.github.com/users/mpacer/received_e... \n67 https://api.github.com/users/mscuthbert/receiv... \n68 https://api.github.com/users/mpacer/received_e... \n69 https://api.github.com/users/damianavila/recei... \n70 https://api.github.com/users/mpacer/received_e... \n71 https://api.github.com/users/takluyver/receive... \n\n user.repos_url user.site_admin \\\n0 https://api.github.com/users/noxdafox/repos False \n1 https://api.github.com/users/gnestor/repos False \n2 https://api.github.com/users/noxdafox/repos False \n3 https://api.github.com/users/Sukneet/repos False \n4 https://api.github.com/users/minrk/repos False \n5 https://api.github.com/users/minrk/repos False \n6 https://api.github.com/users/forbxy/repos False \n7 https://api.github.com/users/takluyver/repos False \n8 https://api.github.com/users/takluyver/repos False \n9 https://api.github.com/users/maartenbreddels/r... False \n10 https://api.github.com/users/kirit93/repos False \n11 https://api.github.com/users/gnestor/repos False \n12 https://api.github.com/users/meeseeksdev%5Bbot... False \n13 https://api.github.com/users/Madhu94/repos False \n14 https://api.github.com/users/blink1073/repos False \n15 https://api.github.com/users/Carreau/repos False \n16 https://api.github.com/users/ChungJooHo/repos False \n17 https://api.github.com/users/karthikb351/repos False \n18 https://api.github.com/users/bacboc/repos False \n19 https://api.github.com/users/bacboc/repos False \n20 https://api.github.com/users/PHaeJin/repos False \n21 https://api.github.com/users/ferdas/repos False \n22 https://api.github.com/users/jcb91/repos False \n23 https://api.github.com/users/minrk/repos False \n24 https://api.github.com/users/takluyver/repos False \n25 https://api.github.com/users/bacboc/repos False \n26 https://api.github.com/users/jcb91/repos False \n27 https://api.github.com/users/PHaeJin/repos False \n28 https://api.github.com/users/edida/repos False \n29 https://api.github.com/users/minrk/repos False \n.. ... ... \n42 https://api.github.com/users/minrk/repos False \n43 https://api.github.com/users/kevin-bates/repos False \n44 https://api.github.com/users/minrk/repos False \n45 https://api.github.com/users/mheilman/repos False \n46 https://api.github.com/users/takluyver/repos False \n47 https://api.github.com/users/mpacer/repos False \n48 https://api.github.com/users/pxhanus/repos False \n49 https://api.github.com/users/tdalseide/repos False \n50 https://api.github.com/users/takluyver/repos False \n51 https://api.github.com/users/minrk/repos False \n52 https://api.github.com/users/mpacer/repos False \n53 https://api.github.com/users/mpacer/repos False \n54 https://api.github.com/users/takluyver/repos False \n55 https://api.github.com/users/mpacer/repos False \n56 https://api.github.com/users/takluyver/repos False \n57 https://api.github.com/users/takluyver/repos False \n58 https://api.github.com/users/takluyver/repos False \n59 https://api.github.com/users/mpacer/repos False \n60 https://api.github.com/users/mpacer/repos False \n61 https://api.github.com/users/mpacer/repos False \n62 https://api.github.com/users/mpacer/repos False \n63 https://api.github.com/users/mpacer/repos False \n64 https://api.github.com/users/mpacer/repos False \n65 https://api.github.com/users/mpacer/repos False \n66 https://api.github.com/users/mpacer/repos False \n67 https://api.github.com/users/mscuthbert/repos False \n68 https://api.github.com/users/mpacer/repos False \n69 https://api.github.com/users/damianavila/repos False \n70 https://api.github.com/users/mpacer/repos False \n71 https://api.github.com/users/takluyver/repos False \n\n user.starred_url \\\n0 https://api.github.com/users/noxdafox/starred{... \n1 https://api.github.com/users/gnestor/starred{/... \n2 https://api.github.com/users/noxdafox/starred{... \n3 https://api.github.com/users/Sukneet/starred{/... \n4 https://api.github.com/users/minrk/starred{/ow... \n5 https://api.github.com/users/minrk/starred{/ow... \n6 https://api.github.com/users/forbxy/starred{/o... \n7 https://api.github.com/users/takluyver/starred... \n8 https://api.github.com/users/takluyver/starred... \n9 https://api.github.com/users/maartenbreddels/s... \n10 https://api.github.com/users/kirit93/starred{/... \n11 https://api.github.com/users/gnestor/starred{/... \n12 https://api.github.com/users/meeseeksdev%5Bbot... \n13 https://api.github.com/users/Madhu94/starred{/... \n14 https://api.github.com/users/blink1073/starred... \n15 https://api.github.com/users/Carreau/starred{/... \n16 https://api.github.com/users/ChungJooHo/starre... \n17 https://api.github.com/users/karthikb351/starr... \n18 https://api.github.com/users/bacboc/starred{/o... \n19 https://api.github.com/users/bacboc/starred{/o... \n20 https://api.github.com/users/PHaeJin/starred{/... \n21 https://api.github.com/users/ferdas/starred{/o... \n22 https://api.github.com/users/jcb91/starred{/ow... \n23 https://api.github.com/users/minrk/starred{/ow... \n24 https://api.github.com/users/takluyver/starred... \n25 https://api.github.com/users/bacboc/starred{/o... \n26 https://api.github.com/users/jcb91/starred{/ow... \n27 https://api.github.com/users/PHaeJin/starred{/... \n28 https://api.github.com/users/edida/starred{/ow... \n29 https://api.github.com/users/minrk/starred{/ow... \n.. ... \n42 https://api.github.com/users/minrk/starred{/ow... \n43 https://api.github.com/users/kevin-bates/starr... \n44 https://api.github.com/users/minrk/starred{/ow... \n45 https://api.github.com/users/mheilman/starred{... \n46 https://api.github.com/users/takluyver/starred... \n47 https://api.github.com/users/mpacer/starred{/o... \n48 https://api.github.com/users/pxhanus/starred{/... \n49 https://api.github.com/users/tdalseide/starred... \n50 https://api.github.com/users/takluyver/starred... \n51 https://api.github.com/users/minrk/starred{/ow... \n52 https://api.github.com/users/mpacer/starred{/o... \n53 https://api.github.com/users/mpacer/starred{/o... \n54 https://api.github.com/users/takluyver/starred... \n55 https://api.github.com/users/mpacer/starred{/o... \n56 https://api.github.com/users/takluyver/starred... \n57 https://api.github.com/users/takluyver/starred... \n58 https://api.github.com/users/takluyver/starred... \n59 https://api.github.com/users/mpacer/starred{/o... \n60 https://api.github.com/users/mpacer/starred{/o... \n61 https://api.github.com/users/mpacer/starred{/o... \n62 https://api.github.com/users/mpacer/starred{/o... \n63 https://api.github.com/users/mpacer/starred{/o... \n64 https://api.github.com/users/mpacer/starred{/o... \n65 https://api.github.com/users/mpacer/starred{/o... \n66 https://api.github.com/users/mpacer/starred{/o... \n67 https://api.github.com/users/mscuthbert/starre... \n68 https://api.github.com/users/mpacer/starred{/o... \n69 https://api.github.com/users/damianavila/starr... \n70 https://api.github.com/users/mpacer/starred{/o... \n71 https://api.github.com/users/takluyver/starred... \n\n user.subscriptions_url user.type \\\n0 https://api.github.com/users/noxdafox/subscrip... User \n1 https://api.github.com/users/gnestor/subscript... User \n2 https://api.github.com/users/noxdafox/subscrip... User \n3 https://api.github.com/users/Sukneet/subscript... User \n4 https://api.github.com/users/minrk/subscriptions User \n5 https://api.github.com/users/minrk/subscriptions User \n6 https://api.github.com/users/forbxy/subscriptions User \n7 https://api.github.com/users/takluyver/subscri... User \n8 https://api.github.com/users/takluyver/subscri... User \n9 https://api.github.com/users/maartenbreddels/s... User \n10 https://api.github.com/users/kirit93/subscript... User \n11 https://api.github.com/users/gnestor/subscript... User \n12 https://api.github.com/users/meeseeksdev%5Bbot... Bot \n13 https://api.github.com/users/Madhu94/subscript... User \n14 https://api.github.com/users/blink1073/subscri... User \n15 https://api.github.com/users/Carreau/subscript... User \n16 https://api.github.com/users/ChungJooHo/subscr... User \n17 https://api.github.com/users/karthikb351/subsc... User \n18 https://api.github.com/users/bacboc/subscriptions User \n19 https://api.github.com/users/bacboc/subscriptions User \n20 https://api.github.com/users/PHaeJin/subscript... User \n21 https://api.github.com/users/ferdas/subscriptions User \n22 https://api.github.com/users/jcb91/subscriptions User \n23 https://api.github.com/users/minrk/subscriptions User \n24 https://api.github.com/users/takluyver/subscri... User \n25 https://api.github.com/users/bacboc/subscriptions User \n26 https://api.github.com/users/jcb91/subscriptions User \n27 https://api.github.com/users/PHaeJin/subscript... User \n28 https://api.github.com/users/edida/subscriptions User \n29 https://api.github.com/users/minrk/subscriptions User \n.. ... ... \n42 https://api.github.com/users/minrk/subscriptions User \n43 https://api.github.com/users/kevin-bates/subsc... User \n44 https://api.github.com/users/minrk/subscriptions User \n45 https://api.github.com/users/mheilman/subscrip... User \n46 https://api.github.com/users/takluyver/subscri... User \n47 https://api.github.com/users/mpacer/subscriptions User \n48 https://api.github.com/users/pxhanus/subscript... User \n49 https://api.github.com/users/tdalseide/subscri... User \n50 https://api.github.com/users/takluyver/subscri... User \n51 https://api.github.com/users/minrk/subscriptions User \n52 https://api.github.com/users/mpacer/subscriptions User \n53 https://api.github.com/users/mpacer/subscriptions User \n54 https://api.github.com/users/takluyver/subscri... User \n55 https://api.github.com/users/mpacer/subscriptions User \n56 https://api.github.com/users/takluyver/subscri... User \n57 https://api.github.com/users/takluyver/subscri... User \n58 https://api.github.com/users/takluyver/subscri... User \n59 https://api.github.com/users/mpacer/subscriptions User \n60 https://api.github.com/users/mpacer/subscriptions User \n61 https://api.github.com/users/mpacer/subscriptions User \n62 https://api.github.com/users/mpacer/subscriptions User \n63 https://api.github.com/users/mpacer/subscriptions User \n64 https://api.github.com/users/mpacer/subscriptions User \n65 https://api.github.com/users/mpacer/subscriptions User \n66 https://api.github.com/users/mpacer/subscriptions User \n67 https://api.github.com/users/mscuthbert/subscr... User \n68 https://api.github.com/users/mpacer/subscriptions User \n69 https://api.github.com/users/damianavila/subsc... User \n70 https://api.github.com/users/mpacer/subscriptions User \n71 https://api.github.com/users/takluyver/subscri... User \n\n user.url \n0 https://api.github.com/users/noxdafox \n1 https://api.github.com/users/gnestor \n2 https://api.github.com/users/noxdafox \n3 https://api.github.com/users/Sukneet \n4 https://api.github.com/users/minrk \n5 https://api.github.com/users/minrk \n6 https://api.github.com/users/forbxy \n7 https://api.github.com/users/takluyver \n8 https://api.github.com/users/takluyver \n9 https://api.github.com/users/maartenbreddels \n10 https://api.github.com/users/kirit93 \n11 https://api.github.com/users/gnestor \n12 https://api.github.com/users/meeseeksdev%5Bbot%5D \n13 https://api.github.com/users/Madhu94 \n14 https://api.github.com/users/blink1073 \n15 https://api.github.com/users/Carreau \n16 https://api.github.com/users/ChungJooHo \n17 https://api.github.com/users/karthikb351 \n18 https://api.github.com/users/bacboc \n19 https://api.github.com/users/bacboc \n20 https://api.github.com/users/PHaeJin \n21 https://api.github.com/users/ferdas \n22 https://api.github.com/users/jcb91 \n23 https://api.github.com/users/minrk \n24 https://api.github.com/users/takluyver \n25 https://api.github.com/users/bacboc \n26 https://api.github.com/users/jcb91 \n27 https://api.github.com/users/PHaeJin \n28 https://api.github.com/users/edida \n29 https://api.github.com/users/minrk \n.. ... \n42 https://api.github.com/users/minrk \n43 https://api.github.com/users/kevin-bates \n44 https://api.github.com/users/minrk \n45 https://api.github.com/users/mheilman \n46 https://api.github.com/users/takluyver \n47 https://api.github.com/users/mpacer \n48 https://api.github.com/users/pxhanus \n49 https://api.github.com/users/tdalseide \n50 https://api.github.com/users/takluyver \n51 https://api.github.com/users/minrk \n52 https://api.github.com/users/mpacer \n53 https://api.github.com/users/mpacer \n54 https://api.github.com/users/takluyver \n55 https://api.github.com/users/mpacer \n56 https://api.github.com/users/takluyver \n57 https://api.github.com/users/takluyver \n58 https://api.github.com/users/takluyver \n59 https://api.github.com/users/mpacer \n60 https://api.github.com/users/mpacer \n61 https://api.github.com/users/mpacer \n62 https://api.github.com/users/mpacer \n63 https://api.github.com/users/mpacer \n64 https://api.github.com/users/mpacer \n65 https://api.github.com/users/mpacer \n66 https://api.github.com/users/mpacer \n67 https://api.github.com/users/mscuthbert \n68 https://api.github.com/users/mpacer \n69 https://api.github.com/users/damianavila \n70 https://api.github.com/users/mpacer \n71 https://api.github.com/users/takluyver \n\n[72 rows x 73 columns]",
"text/html": "<div>\n<table border=\"1\" class=\"dataframe\">\n <thead>\n <tr style=\"text-align: right;\">\n <th></th>\n <th>assignee</th>\n <th>assignees</th>\n <th>author_association</th>\n <th>body</th>\n <th>closed_at</th>\n <th>comments</th>\n <th>comments_url</th>\n <th>created_at</th>\n <th>events_url</th>\n <th>html_url</th>\n <th>...</th>\n <th>user.id</th>\n <th>user.login</th>\n <th>user.organizations_url</th>\n <th>user.received_events_url</th>\n <th>user.repos_url</th>\n <th>user.site_admin</th>\n <th>user.starred_url</th>\n <th>user.subscriptions_url</th>\n <th>user.type</th>\n <th>user.url</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>0</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>Signed-off-by: noxdafox &lt;noxdafox@gmail.com&gt;</td>\n <td>2018-01-04T09:31:00Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/jupyter_c...</td>\n <td>2018-01-03T21:32:19Z</td>\n <td>https://api.github.com/repos/jupyter/jupyter_c...</td>\n <td>https://github.com/jupyter/jupyter_console/pul...</td>\n <td>...</td>\n <td>4214888</td>\n <td>noxdafox</td>\n <td>https://api.github.com/users/noxdafox/orgs</td>\n <td>https://api.github.com/users/noxdafox/received...</td>\n <td>https://api.github.com/users/noxdafox/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/noxdafox/starred{...</td>\n <td>https://api.github.com/users/noxdafox/subscrip...</td>\n <td>User</td>\n <td>https://api.github.com/users/noxdafox</td>\n </tr>\n <tr>\n <th>1</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>Closes https://github.com/jupyter/notebook/iss...</td>\n <td>2018-01-05T11:42:22Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2018-01-03T02:21:05Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3176</td>\n <td>...</td>\n <td>512354</td>\n <td>gnestor</td>\n <td>https://api.github.com/users/gnestor/orgs</td>\n <td>https://api.github.com/users/gnestor/received_...</td>\n <td>https://api.github.com/users/gnestor/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/gnestor/starred{/...</td>\n <td>https://api.github.com/users/gnestor/subscript...</td>\n <td>User</td>\n <td>https://api.github.com/users/gnestor</td>\n </tr>\n <tr>\n <th>2</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>As per IPython console implementation.\\r\\n\\r\\n...</td>\n <td>2018-01-03T09:59:31Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/jupyter_c...</td>\n <td>2018-01-02T23:03:51Z</td>\n <td>https://api.github.com/repos/jupyter/jupyter_c...</td>\n <td>https://github.com/jupyter/jupyter_console/pul...</td>\n <td>...</td>\n <td>4214888</td>\n <td>noxdafox</td>\n <td>https://api.github.com/users/noxdafox/orgs</td>\n <td>https://api.github.com/users/noxdafox/received...</td>\n <td>https://api.github.com/users/noxdafox/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/noxdafox/starred{...</td>\n <td>https://api.github.com/users/noxdafox/subscrip...</td>\n <td>User</td>\n <td>https://api.github.com/users/noxdafox</td>\n </tr>\n <tr>\n <th>3</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>warn_bad_name in get_name should use the local...</td>\n <td>2017-12-22T08:40:54Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-12-21T23:44:00Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3160</td>\n <td>...</td>\n <td>359625</td>\n <td>Sukneet</td>\n <td>https://api.github.com/users/Sukneet/orgs</td>\n <td>https://api.github.com/users/Sukneet/received_...</td>\n <td>https://api.github.com/users/Sukneet/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/Sukneet/starred{/...</td>\n <td>https://api.github.com/users/Sukneet/subscript...</td>\n <td>User</td>\n <td>https://api.github.com/users/Sukneet</td>\n </tr>\n <tr>\n <th>4</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>we use zmq.eventloop, which generally requires...</td>\n <td>2017-12-19T15:15:27Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/jupyter_c...</td>\n <td>2017-12-19T14:53:51Z</td>\n <td>https://api.github.com/repos/jupyter/jupyter_c...</td>\n <td>https://github.com/jupyter/jupyter_client/pull...</td>\n <td>...</td>\n <td>151929</td>\n <td>minrk</td>\n <td>https://api.github.com/users/minrk/orgs</td>\n <td>https://api.github.com/users/minrk/received_ev...</td>\n <td>https://api.github.com/users/minrk/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/minrk/starred{/ow...</td>\n <td>https://api.github.com/users/minrk/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/minrk</td>\n </tr>\n <tr>\n <th>5</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>fixes hover on upload button leaking over New ...</td>\n <td>2017-12-19T14:55:27Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-12-19T13:55:05Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3148</td>\n <td>...</td>\n <td>151929</td>\n <td>minrk</td>\n <td>https://api.github.com/users/minrk/orgs</td>\n <td>https://api.github.com/users/minrk/received_ev...</td>\n <td>https://api.github.com/users/minrk/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/minrk/starred{/ow...</td>\n <td>https://api.github.com/users/minrk/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/minrk</td>\n </tr>\n <tr>\n <th>6</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>fix the Shutdown trans lost</td>\n <td>2017-12-19T10:08:58Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-12-19T08:37:59Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3147</td>\n <td>...</td>\n <td>8939700</td>\n <td>forbxy</td>\n <td>https://api.github.com/users/forbxy/orgs</td>\n <td>https://api.github.com/users/forbxy/received_e...</td>\n <td>https://api.github.com/users/forbxy/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/forbxy/starred{/o...</td>\n <td>https://api.github.com/users/forbxy/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/forbxy</td>\n </tr>\n <tr>\n <th>7</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>Using `find_kernel_specs()` followed by `get_k...</td>\n <td>2017-12-19T20:52:03Z</td>\n <td>5</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-12-15T11:36:38Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3136</td>\n <td>...</td>\n <td>327925</td>\n <td>takluyver</td>\n <td>https://api.github.com/users/takluyver/orgs</td>\n <td>https://api.github.com/users/takluyver/receive...</td>\n <td>https://api.github.com/users/takluyver/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/takluyver/starred...</td>\n <td>https://api.github.com/users/takluyver/subscri...</td>\n <td>User</td>\n <td>https://api.github.com/users/takluyver</td>\n </tr>\n <tr>\n <th>8</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>Closes gh-3074</td>\n <td>2017-12-14T11:53:43Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-12-11T16:46:51Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3122</td>\n <td>...</td>\n <td>327925</td>\n <td>takluyver</td>\n <td>https://api.github.com/users/takluyver/orgs</td>\n <td>https://api.github.com/users/takluyver/receive...</td>\n <td>https://api.github.com/users/takluyver/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/takluyver/starred...</td>\n <td>https://api.github.com/users/takluyver/subscri...</td>\n <td>User</td>\n <td>https://api.github.com/users/takluyver</td>\n </tr>\n <tr>\n <th>9</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>Original was in https://github.com/ipython/tra...</td>\n <td>2018-01-05T14:54:04Z</td>\n <td>34</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-12-08T13:16:10Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3116</td>\n <td>...</td>\n <td>1765949</td>\n <td>maartenbreddels</td>\n <td>https://api.github.com/users/maartenbreddels/orgs</td>\n <td>https://api.github.com/users/maartenbreddels/r...</td>\n <td>https://api.github.com/users/maartenbreddels/r...</td>\n <td>False</td>\n <td>https://api.github.com/users/maartenbreddels/s...</td>\n <td>https://api.github.com/users/maartenbreddels/s...</td>\n <td>User</td>\n <td>https://api.github.com/users/maartenbreddels</td>\n </tr>\n <tr>\n <th>10</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>Fixes #2760</td>\n <td>2017-12-05T14:27:15Z</td>\n <td>5</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-12-04T22:45:33Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3108</td>\n <td>...</td>\n <td>8190572</td>\n <td>kirit93</td>\n <td>https://api.github.com/users/kirit93/orgs</td>\n <td>https://api.github.com/users/kirit93/received_...</td>\n <td>https://api.github.com/users/kirit93/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/kirit93/starred{/...</td>\n <td>https://api.github.com/users/kirit93/subscript...</td>\n <td>User</td>\n <td>https://api.github.com/users/kirit93</td>\n </tr>\n <tr>\n <th>11</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>Closes https://github.com/jupyter/notebook/iss...</td>\n <td>2017-12-14T23:03:04Z</td>\n <td>5</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-30T19:51:30Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3097</td>\n <td>...</td>\n <td>512354</td>\n <td>gnestor</td>\n <td>https://api.github.com/users/gnestor/orgs</td>\n <td>https://api.github.com/users/gnestor/received_...</td>\n <td>https://api.github.com/users/gnestor/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/gnestor/starred{/...</td>\n <td>https://api.github.com/users/gnestor/subscript...</td>\n <td>User</td>\n <td>https://api.github.com/users/gnestor</td>\n </tr>\n <tr>\n <th>12</th>\n <td>None</td>\n <td>[]</td>\n <td>NONE</td>\n <td>Backport PR #2959: set cookie on base_url</td>\n <td>2017-11-28T18:33:33Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-28T18:31:11Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3090</td>\n <td>...</td>\n <td>24485218</td>\n <td>meeseeksdev[bot]</td>\n <td>https://api.github.com/users/meeseeksdev%5Bbot...</td>\n <td>https://api.github.com/users/meeseeksdev%5Bbot...</td>\n <td>https://api.github.com/users/meeseeksdev%5Bbot...</td>\n <td>False</td>\n <td>https://api.github.com/users/meeseeksdev%5Bbot...</td>\n <td>https://api.github.com/users/meeseeksdev%5Bbot...</td>\n <td>Bot</td>\n <td>https://api.github.com/users/meeseeksdev%5Bbot%5D</td>\n </tr>\n <tr>\n <th>13</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>Trying to close #2975.\\r\\n\\r\\n@takluyver I did...</td>\n <td>2017-12-01T12:46:42Z</td>\n <td>7</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-27T14:55:16Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3088</td>\n <td>...</td>\n <td>9015820</td>\n <td>Madhu94</td>\n <td>https://api.github.com/users/Madhu94/orgs</td>\n <td>https://api.github.com/users/Madhu94/received_...</td>\n <td>https://api.github.com/users/Madhu94/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/Madhu94/starred{/...</td>\n <td>https://api.github.com/users/Madhu94/subscript...</td>\n <td>User</td>\n <td>https://api.github.com/users/Madhu94</td>\n </tr>\n <tr>\n <th>14</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td></td>\n <td>2017-12-01T05:33:50Z</td>\n <td>8</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-27T12:54:43Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3087</td>\n <td>...</td>\n <td>2096628</td>\n <td>blink1073</td>\n <td>https://api.github.com/users/blink1073/orgs</td>\n <td>https://api.github.com/users/blink1073/receive...</td>\n <td>https://api.github.com/users/blink1073/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/blink1073/starred...</td>\n <td>https://api.github.com/users/blink1073/subscri...</td>\n <td>User</td>\n <td>https://api.github.com/users/blink1073</td>\n </tr>\n <tr>\n <th>15</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>Lead to bug when trying to setup a new passwor...</td>\n <td>2017-11-22T10:15:43Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-21T18:50:49Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3067</td>\n <td>...</td>\n <td>335567</td>\n <td>Carreau</td>\n <td>https://api.github.com/users/Carreau/orgs</td>\n <td>https://api.github.com/users/Carreau/received_...</td>\n <td>https://api.github.com/users/Carreau/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/Carreau/starred{/...</td>\n <td>https://api.github.com/users/Carreau/subscript...</td>\n <td>User</td>\n <td>https://api.github.com/users/Carreau</td>\n </tr>\n <tr>\n <th>16</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>Add translated files to folder(docs-translatio...</td>\n <td>2018-01-05T11:41:50Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-21T04:25:21Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3065</td>\n <td>...</td>\n <td>32505470</td>\n <td>ChungJooHo</td>\n <td>https://api.github.com/users/ChungJooHo/orgs</td>\n <td>https://api.github.com/users/ChungJooHo/receiv...</td>\n <td>https://api.github.com/users/ChungJooHo/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/ChungJooHo/starre...</td>\n <td>https://api.github.com/users/ChungJooHo/subscr...</td>\n <td>User</td>\n <td>https://api.github.com/users/ChungJooHo</td>\n </tr>\n <tr>\n <th>17</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>Fix broken blog post links in README.md</td>\n <td>2017-11-20T21:42:38Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-20T20:04:48Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3064</td>\n <td>...</td>\n <td>3104454</td>\n <td>karthikb351</td>\n <td>https://api.github.com/users/karthikb351/orgs</td>\n <td>https://api.github.com/users/karthikb351/recei...</td>\n <td>https://api.github.com/users/karthikb351/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/karthikb351/starr...</td>\n <td>https://api.github.com/users/karthikb351/subsc...</td>\n <td>User</td>\n <td>https://api.github.com/users/karthikb351</td>\n </tr>\n <tr>\n <th>18</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>Send a new PR, including any changes to other ...</td>\n <td>2017-11-20T17:14:01Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-20T14:02:20Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3063</td>\n <td>...</td>\n <td>29744486</td>\n <td>bacboc</td>\n <td>https://api.github.com/users/bacboc/orgs</td>\n <td>https://api.github.com/users/bacboc/received_e...</td>\n <td>https://api.github.com/users/bacboc/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/bacboc/starred{/o...</td>\n <td>https://api.github.com/users/bacboc/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/bacboc</td>\n </tr>\n <tr>\n <th>19</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td></td>\n <td>2017-11-20T12:58:44Z</td>\n <td>2</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-19T15:50:37Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3061</td>\n <td>...</td>\n <td>29744486</td>\n <td>bacboc</td>\n <td>https://api.github.com/users/bacboc/orgs</td>\n <td>https://api.github.com/users/bacboc/received_e...</td>\n <td>https://api.github.com/users/bacboc/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/bacboc/starred{/o...</td>\n <td>https://api.github.com/users/bacboc/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/bacboc</td>\n </tr>\n <tr>\n <th>20</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td></td>\n <td>2017-11-20T11:20:59Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-19T05:23:47Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3059</td>\n <td>...</td>\n <td>33171667</td>\n <td>PHaeJin</td>\n <td>https://api.github.com/users/PHaeJin/orgs</td>\n <td>https://api.github.com/users/PHaeJin/received_...</td>\n <td>https://api.github.com/users/PHaeJin/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/PHaeJin/starred{/...</td>\n <td>https://api.github.com/users/PHaeJin/subscript...</td>\n <td>User</td>\n <td>https://api.github.com/users/PHaeJin</td>\n </tr>\n <tr>\n <th>21</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>Here's my PR to solve the reported problems :)...</td>\n <td>2017-11-19T16:54:39Z</td>\n <td>4</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-18T01:22:14Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3058</td>\n <td>...</td>\n <td>8852116</td>\n <td>ferdas</td>\n <td>https://api.github.com/users/ferdas/orgs</td>\n <td>https://api.github.com/users/ferdas/received_e...</td>\n <td>https://api.github.com/users/ferdas/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/ferdas/starred{/o...</td>\n <td>https://api.github.com/users/ferdas/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/ferdas</td>\n </tr>\n <tr>\n <th>22</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>As discussed in https://github.com/jupyter/not...</td>\n <td>2017-12-01T05:39:42Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-17T15:45:25Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3055</td>\n <td>...</td>\n <td>5630710</td>\n <td>jcb91</td>\n <td>https://api.github.com/users/jcb91/orgs</td>\n <td>https://api.github.com/users/jcb91/received_ev...</td>\n <td>https://api.github.com/users/jcb91/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/jcb91/starred{/ow...</td>\n <td>https://api.github.com/users/jcb91/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/jcb91</td>\n </tr>\n <tr>\n <th>23</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>when updating to traitlets API in #1527, requi...</td>\n <td>2017-11-17T10:53:24Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-17T09:31:27Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3053</td>\n <td>...</td>\n <td>151929</td>\n <td>minrk</td>\n <td>https://api.github.com/users/minrk/orgs</td>\n <td>https://api.github.com/users/minrk/received_ev...</td>\n <td>https://api.github.com/users/minrk/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/minrk/starred{/ow...</td>\n <td>https://api.github.com/users/minrk/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/minrk</td>\n </tr>\n <tr>\n <th>24</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>Closes gh-2953\\r\\n\\r\\nI'm not quite sure how t...</td>\n <td>2017-11-16T17:23:32Z</td>\n <td>2</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-16T12:03:44Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3051</td>\n <td>...</td>\n <td>327925</td>\n <td>takluyver</td>\n <td>https://api.github.com/users/takluyver/orgs</td>\n <td>https://api.github.com/users/takluyver/receive...</td>\n <td>https://api.github.com/users/takluyver/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/takluyver/starred...</td>\n <td>https://api.github.com/users/takluyver/subscri...</td>\n <td>User</td>\n <td>https://api.github.com/users/takluyver</td>\n </tr>\n <tr>\n <th>25</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td></td>\n <td>2017-11-16T12:21:31Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-16T03:28:12Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3049</td>\n <td>...</td>\n <td>29744486</td>\n <td>bacboc</td>\n <td>https://api.github.com/users/bacboc/orgs</td>\n <td>https://api.github.com/users/bacboc/received_e...</td>\n <td>https://api.github.com/users/bacboc/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/bacboc/starred{/o...</td>\n <td>https://api.github.com/users/bacboc/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/bacboc</td>\n </tr>\n <tr>\n <th>26</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>This is throwing errors like\\r\\n\\r\\n```\\r\\nUnc...</td>\n <td>2017-11-16T17:48:30Z</td>\n <td>4</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-16T01:25:21Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3048</td>\n <td>...</td>\n <td>5630710</td>\n <td>jcb91</td>\n <td>https://api.github.com/users/jcb91/orgs</td>\n <td>https://api.github.com/users/jcb91/received_ev...</td>\n <td>https://api.github.com/users/jcb91/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/jcb91/starred{/ow...</td>\n <td>https://api.github.com/users/jcb91/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/jcb91</td>\n </tr>\n <tr>\n <th>27</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td></td>\n <td>2017-11-13T15:41:16Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-13T14:48:17Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3043</td>\n <td>...</td>\n <td>33171667</td>\n <td>PHaeJin</td>\n <td>https://api.github.com/users/PHaeJin/orgs</td>\n <td>https://api.github.com/users/PHaeJin/received_...</td>\n <td>https://api.github.com/users/PHaeJin/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/PHaeJin/starred{/...</td>\n <td>https://api.github.com/users/PHaeJin/subscript...</td>\n <td>User</td>\n <td>https://api.github.com/users/PHaeJin</td>\n </tr>\n <tr>\n <th>28</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td></td>\n <td>2017-11-13T13:11:04Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-13T05:09:27Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3042</td>\n <td>...</td>\n <td>33275221</td>\n <td>edida</td>\n <td>https://api.github.com/users/edida/orgs</td>\n <td>https://api.github.com/users/edida/received_ev...</td>\n <td>https://api.github.com/users/edida/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/edida/starred{/ow...</td>\n <td>https://api.github.com/users/edida/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/edida</td>\n </tr>\n <tr>\n <th>29</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>PCs are always run with the current eventloop,...</td>\n <td>2017-11-13T13:39:58Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-11-10T13:29:24Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/3034</td>\n <td>...</td>\n <td>151929</td>\n <td>minrk</td>\n <td>https://api.github.com/users/minrk/orgs</td>\n <td>https://api.github.com/users/minrk/received_ev...</td>\n <td>https://api.github.com/users/minrk/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/minrk/starred{/ow...</td>\n <td>https://api.github.com/users/minrk/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/minrk</td>\n </tr>\n <tr>\n <th>...</th>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n <td>...</td>\n </tr>\n <tr>\n <th>42</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>avoids clobbering cookies when multiple notebo...</td>\n <td>2017-10-20T08:49:39Z</td>\n <td>9</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-10-19T15:44:54Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/2959</td>\n <td>...</td>\n <td>151929</td>\n <td>minrk</td>\n <td>https://api.github.com/users/minrk/orgs</td>\n <td>https://api.github.com/users/minrk/received_ev...</td>\n <td>https://api.github.com/users/minrk/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/minrk/starred{/ow...</td>\n <td>https://api.github.com/users/minrk/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/minrk</td>\n </tr>\n <tr>\n <th>43</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>During the deprecation/removal of the `@json_e...</td>\n <td>2017-11-01T09:43:48Z</td>\n <td>3</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-10-19T15:08:13Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/2958</td>\n <td>...</td>\n <td>22599560</td>\n <td>kevin-bates</td>\n <td>https://api.github.com/users/kevin-bates/orgs</td>\n <td>https://api.github.com/users/kevin-bates/recei...</td>\n <td>https://api.github.com/users/kevin-bates/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/kevin-bates/starr...</td>\n <td>https://api.github.com/users/kevin-bates/subsc...</td>\n <td>User</td>\n <td>https://api.github.com/users/kevin-bates</td>\n </tr>\n <tr>\n <th>44</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>we already apply this logic in our server-side...</td>\n <td>2017-10-20T08:55:44Z</td>\n <td>3</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-10-10T15:03:03Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/2920</td>\n <td>...</td>\n <td>151929</td>\n <td>minrk</td>\n <td>https://api.github.com/users/minrk/orgs</td>\n <td>https://api.github.com/users/minrk/received_ev...</td>\n <td>https://api.github.com/users/minrk/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/minrk/starred{/ow...</td>\n <td>https://api.github.com/users/minrk/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/minrk</td>\n </tr>\n <tr>\n <th>45</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>I ran into a situation where it'd be nice to b...</td>\n <td>2017-11-01T09:44:57Z</td>\n <td>15</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2017-10-09T18:13:04Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/2910</td>\n <td>...</td>\n <td>181744</td>\n <td>mheilman</td>\n <td>https://api.github.com/users/mheilman/orgs</td>\n <td>https://api.github.com/users/mheilman/received...</td>\n <td>https://api.github.com/users/mheilman/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mheilman/starred{...</td>\n <td>https://api.github.com/users/mheilman/subscrip...</td>\n <td>User</td>\n <td>https://api.github.com/users/mheilman</td>\n </tr>\n <tr>\n <th>46</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>Closes gh-140</td>\n <td>None</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/jupyter_c...</td>\n <td>2017-10-06T19:46:06Z</td>\n <td>https://api.github.com/repos/jupyter/jupyter_c...</td>\n <td>https://github.com/jupyter/jupyter_console/pul...</td>\n <td>...</td>\n <td>327925</td>\n <td>takluyver</td>\n <td>https://api.github.com/users/takluyver/orgs</td>\n <td>https://api.github.com/users/takluyver/receive...</td>\n <td>https://api.github.com/users/takluyver/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/takluyver/starred...</td>\n <td>https://api.github.com/users/takluyver/subscri...</td>\n <td>User</td>\n <td>https://api.github.com/users/takluyver</td>\n </tr>\n <tr>\n <th>47</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>I'm going to just merge this but I do want it ...</td>\n <td>2017-08-31T22:12:08Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-08-31T22:01:31Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/660</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>48</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>Added \\r\\n```python\\r\\nfrom nbconvert.preproce...</td>\n <td>2017-08-26T19:14:21Z</td>\n <td>2</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-08-26T18:51:37Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/656</td>\n <td>...</td>\n <td>4383024</td>\n <td>pxhanus</td>\n <td>https://api.github.com/users/pxhanus/orgs</td>\n <td>https://api.github.com/users/pxhanus/received_...</td>\n <td>https://api.github.com/users/pxhanus/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/pxhanus/starred{/...</td>\n <td>https://api.github.com/users/pxhanus/subscript...</td>\n <td>User</td>\n <td>https://api.github.com/users/pxhanus</td>\n </tr>\n <tr>\n <th>49</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td></td>\n <td>2017-08-27T01:52:59Z</td>\n <td>3</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-08-26T14:03:17Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/654</td>\n <td>...</td>\n <td>11459865</td>\n <td>tdalseide</td>\n <td>https://api.github.com/users/tdalseide/orgs</td>\n <td>https://api.github.com/users/tdalseide/receive...</td>\n <td>https://api.github.com/users/tdalseide/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/tdalseide/starred...</td>\n <td>https://api.github.com/users/tdalseide/subscri...</td>\n <td>User</td>\n <td>https://api.github.com/users/tdalseide</td>\n </tr>\n <tr>\n <th>50</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>I just did the 5.2 release using this:\\r\\n\\r\\n...</td>\n <td>2017-08-21T10:53:47Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/jupyter_c...</td>\n <td>2017-08-21T10:49:39Z</td>\n <td>https://api.github.com/repos/jupyter/jupyter_c...</td>\n <td>https://github.com/jupyter/jupyter_console/pul...</td>\n <td>...</td>\n <td>327925</td>\n <td>takluyver</td>\n <td>https://api.github.com/users/takluyver/orgs</td>\n <td>https://api.github.com/users/takluyver/receive...</td>\n <td>https://api.github.com/users/takluyver/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/takluyver/starred...</td>\n <td>https://api.github.com/users/takluyver/subscri...</td>\n <td>User</td>\n <td>https://api.github.com/users/takluyver</td>\n </tr>\n <tr>\n <th>51</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>checks for base64 the lazy way, by trying to d...</td>\n <td>2017-08-20T23:08:18Z</td>\n <td>4</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-08-18T20:00:40Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/650</td>\n <td>...</td>\n <td>151929</td>\n <td>minrk</td>\n <td>https://api.github.com/users/minrk/orgs</td>\n <td>https://api.github.com/users/minrk/received_ev...</td>\n <td>https://api.github.com/users/minrk/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/minrk/starred{/ow...</td>\n <td>https://api.github.com/users/minrk/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/minrk</td>\n </tr>\n <tr>\n <th>52</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>This PR will break not pass on travis until ht...</td>\n <td>2017-08-21T09:44:13Z</td>\n <td>2</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-08-10T00:00:04Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/645</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>53</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>This introduces a new step in between Preproce...</td>\n <td>2017-08-21T09:39:30Z</td>\n <td>28</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-08-07T22:47:41Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/643</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>54</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>Closes gh-641\\r\\n\\r\\nThis is needed for UsageE...</td>\n <td>2017-08-07T16:39:40Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-08-07T15:35:44Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/642</td>\n <td>...</td>\n <td>327925</td>\n <td>takluyver</td>\n <td>https://api.github.com/users/takluyver/orgs</td>\n <td>https://api.github.com/users/takluyver/receive...</td>\n <td>https://api.github.com/users/takluyver/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/takluyver/starred...</td>\n <td>https://api.github.com/users/takluyver/subscri...</td>\n <td>User</td>\n <td>https://api.github.com/users/takluyver</td>\n </tr>\n <tr>\n <th>55</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>This PR implements tag based element filtering...</td>\n <td>2017-08-08T07:48:25Z</td>\n <td>5</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-08-07T05:10:52Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/640</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>56</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>This should make issues like ipython/ipython#1...</td>\n <td>2017-08-07T00:28:24Z</td>\n <td>2</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-08-05T09:33:32Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/639</td>\n <td>...</td>\n <td>327925</td>\n <td>takluyver</td>\n <td>https://api.github.com/users/takluyver/orgs</td>\n <td>https://api.github.com/users/takluyver/receive...</td>\n <td>https://api.github.com/users/takluyver/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/takluyver/starred...</td>\n <td>https://api.github.com/users/takluyver/subscri...</td>\n <td>User</td>\n <td>https://api.github.com/users/takluyver</td>\n </tr>\n <tr>\n <th>57</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>Allowing for non-ascii home directory on Windo...</td>\n <td>2017-08-07T14:42:24Z</td>\n <td>4</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-08-03T13:00:56Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/638</td>\n <td>...</td>\n <td>327925</td>\n <td>takluyver</td>\n <td>https://api.github.com/users/takluyver/orgs</td>\n <td>https://api.github.com/users/takluyver/receive...</td>\n <td>https://api.github.com/users/takluyver/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/takluyver/starred...</td>\n <td>https://api.github.com/users/takluyver/subscri...</td>\n <td>User</td>\n <td>https://api.github.com/users/takluyver</td>\n </tr>\n <tr>\n <th>58</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>The hashes have changed in IPython master, whi...</td>\n <td>2017-07-27T10:28:11Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-07-25T17:40:03Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/631</td>\n <td>...</td>\n <td>327925</td>\n <td>takluyver</td>\n <td>https://api.github.com/users/takluyver/orgs</td>\n <td>https://api.github.com/users/takluyver/receive...</td>\n <td>https://api.github.com/users/takluyver/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/takluyver/starred...</td>\n <td>https://api.github.com/users/takluyver/subscri...</td>\n <td>User</td>\n <td>https://api.github.com/users/takluyver</td>\n </tr>\n <tr>\n <th>59</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>mistune fixed a bug in html parsing (specifica...</td>\n <td>2017-07-25T11:22:18Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-07-25T02:43:50Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/630</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>60</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>Talking with @fperez and @rjleveque today poin...</td>\n <td>2017-07-20T07:27:29Z</td>\n <td>2</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-07-01T01:44:50Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/619</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>61</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>This closes #614. \\r\\n\\r\\nI took some of the d...</td>\n <td>2017-07-25T10:53:55Z</td>\n <td>3</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-06-29T21:13:46Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/618</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>62</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>This addresses issues related to how we proces...</td>\n <td>2017-07-12T13:03:48Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-06-29T19:23:08Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/617</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>63</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>Closes #615. \\r\\n\\r\\nThis enables RegexRemoveP...</td>\n <td>2017-07-11T08:49:03Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-06-28T20:28:31Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/616</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>64</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>This is substantially less complicated in term...</td>\n <td>2017-08-08T15:49:44Z</td>\n <td>3</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-06-23T23:51:34Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/611</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>65</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>Closes #544.</td>\n <td>2017-07-27T10:28:03Z</td>\n <td>4</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-06-23T18:52:26Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/609</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>66</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>…er's deploy state.\\r\\n\\r\\nTiny change that I ...</td>\n <td>2017-07-20T07:51:53Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-06-22T21:33:32Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/608</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>67</th>\n <td>None</td>\n <td>[]</td>\n <td>CONTRIBUTOR</td>\n <td>Tests for actual presence of correctly formatt...</td>\n <td>2017-06-26T17:22:01Z</td>\n <td>14</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-06-05T20:52:10Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/602</td>\n <td>...</td>\n <td>3521479</td>\n <td>mscuthbert</td>\n <td>https://api.github.com/users/mscuthbert/orgs</td>\n <td>https://api.github.com/users/mscuthbert/receiv...</td>\n <td>https://api.github.com/users/mscuthbert/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mscuthbert/starre...</td>\n <td>https://api.github.com/users/mscuthbert/subscr...</td>\n <td>User</td>\n <td>https://api.github.com/users/mscuthbert</td>\n </tr>\n <tr>\n <th>68</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>This is in part a test improvement and in part...</td>\n <td>2017-06-02T19:42:16Z</td>\n <td>0</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-06-01T22:41:51Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/601</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>69</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>* Better per-slide scrolling (defaulting to Fa...</td>\n <td>2017-06-05T20:49:37Z</td>\n <td>5</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-05-31T20:51:08Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/600</td>\n <td>...</td>\n <td>1640669</td>\n <td>damianavila</td>\n <td>https://api.github.com/users/damianavila/orgs</td>\n <td>https://api.github.com/users/damianavila/recei...</td>\n <td>https://api.github.com/users/damianavila/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/damianavila/starr...</td>\n <td>https://api.github.com/users/damianavila/subsc...</td>\n <td>User</td>\n <td>https://api.github.com/users/damianavila</td>\n </tr>\n <tr>\n <th>70</th>\n <td>None</td>\n <td>[]</td>\n <td>MEMBER</td>\n <td>closes #592. \\r\\n\\r\\nFinally, without any `nos...</td>\n <td>2017-05-26T16:06:19Z</td>\n <td>1</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>2017-05-26T09:16:01Z</td>\n <td>https://api.github.com/repos/jupyter/nbconvert...</td>\n <td>https://github.com/jupyter/nbconvert/pull/595</td>\n <td>...</td>\n <td>2482408</td>\n <td>mpacer</td>\n <td>https://api.github.com/users/mpacer/orgs</td>\n <td>https://api.github.com/users/mpacer/received_e...</td>\n <td>https://api.github.com/users/mpacer/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/mpacer/starred{/o...</td>\n <td>https://api.github.com/users/mpacer/subscriptions</td>\n <td>User</td>\n <td>https://api.github.com/users/mpacer</td>\n </tr>\n <tr>\n <th>71</th>\n <td>None</td>\n <td>[]</td>\n <td>OWNER</td>\n <td>This adds a config option, defaulting to use t...</td>\n <td>2017-10-20T09:41:26Z</td>\n <td>29</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>2016-12-12T16:11:16Z</td>\n <td>https://api.github.com/repos/jupyter/notebook/...</td>\n <td>https://github.com/jupyter/notebook/pull/1968</td>\n <td>...</td>\n <td>327925</td>\n <td>takluyver</td>\n <td>https://api.github.com/users/takluyver/orgs</td>\n <td>https://api.github.com/users/takluyver/receive...</td>\n <td>https://api.github.com/users/takluyver/repos</td>\n <td>False</td>\n <td>https://api.github.com/users/takluyver/starred...</td>\n <td>https://api.github.com/users/takluyver/subscri...</td>\n <td>User</td>\n <td>https://api.github.com/users/takluyver</td>\n </tr>\n </tbody>\n</table>\n<p>72 rows × 73 columns</p>\n</div>"
},
"output_type": "display_data"
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Filter out PRs that do not belong to `jupyter/notebook` (not sure why Github is returning PRs from other repos 🤔)"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "prs = prs[prs['html_url'].str.contains('https://github.com/jupyter/notebook/pull/')]\nprs['html_url']",
"execution_count": 3,
"outputs": [
{
"metadata": {},
"data": {
"text/plain": "\n1 https://github.com/jupyter/notebook/pull/3176\n3 https://github.com/jupyter/notebook/pull/3160\n5 https://github.com/jupyter/notebook/pull/3148\n6 https://github.com/jupyter/notebook/pull/3147\n7 https://github.com/jupyter/notebook/pull/3136\n8 https://github.com/jupyter/notebook/pull/3122\n9 https://github.com/jupyter/notebook/pull/3116\n10 https://github.com/jupyter/notebook/pull/3108\n11 https://github.com/jupyter/notebook/pull/3097\n12 https://github.com/jupyter/notebook/pull/3090\n13 https://github.com/jupyter/notebook/pull/3088\n14 https://github.com/jupyter/notebook/pull/3087\n15 https://github.com/jupyter/notebook/pull/3067\n16 https://github.com/jupyter/notebook/pull/3065\n17 https://github.com/jupyter/notebook/pull/3064\n18 https://github.com/jupyter/notebook/pull/3063\n19 https://github.com/jupyter/notebook/pull/3061\n20 https://github.com/jupyter/notebook/pull/3059\n21 https://github.com/jupyter/notebook/pull/3058\n22 https://github.com/jupyter/notebook/pull/3055\n23 https://github.com/jupyter/notebook/pull/3053\n24 https://github.com/jupyter/notebook/pull/3051\n25 https://github.com/jupyter/notebook/pull/3049\n26 https://github.com/jupyter/notebook/pull/3048\n27 https://github.com/jupyter/notebook/pull/3043\n28 https://github.com/jupyter/notebook/pull/3042\n29 https://github.com/jupyter/notebook/pull/3034\n30 https://github.com/jupyter/notebook/pull/3032\n31 https://github.com/jupyter/notebook/pull/3031\n32 https://github.com/jupyter/notebook/pull/3022\n33 https://github.com/jupyter/notebook/pull/3015\n34 https://github.com/jupyter/notebook/pull/3008\n35 https://github.com/jupyter/notebook/pull/3002\n36 https://github.com/jupyter/notebook/pull/3000\n37 https://github.com/jupyter/notebook/pull/2969\n38 https://github.com/jupyter/notebook/pull/2967\n39 https://github.com/jupyter/notebook/pull/2964\n40 https://github.com/jupyter/notebook/pull/2963\n41 https://github.com/jupyter/notebook/pull/2962\n42 https://github.com/jupyter/notebook/pull/2959\n43 https://github.com/jupyter/notebook/pull/2958\n44 https://github.com/jupyter/notebook/pull/2920\n45 https://github.com/jupyter/notebook/pull/2910\n71 https://github.com/jupyter/notebook/pull/1968\nName: html_url, dtype: object"
},
"output_type": "display_data"
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Create changelog markdown for list of PRs"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "changelog = {\n 'rst': '',\n 'markdown': ''\n}\nfor index, row in prs.iterrows():\n [_, id] = row['html_url'].split('https://github.com/jupyter/notebook/pull/')\n if id:\n pr = get('repos/jupyter/notebook/pulls', id)\n changelog['rst'] += '- {0} (:ghpull:`{1}`). \\n'.format(pr['title'].capitalize(), pr['number'])\n changelog['markdown'] += '* {0} ([#{1}]({2})). \\n'.format(pr['title'].capitalize(), pr['number'], pr['html_url'])\n# changelog['rst'] += '* {0} (:ghpull:`{1}`) by `{2} <{3}>`__. \\n'.format(pr['title'].capitalize(), pr['number'], pr['user']['login'], pr['user']['html_url'])\n# changelog['markdown'] += '* {0} (#{1}) by [{2}]({3}). \\n'.format(pr['title'].capitalize(), pr['number'], pr['user']['login'], pr['user']['html_url'])\nchangelog",
"execution_count": 4,
"outputs": [
{
"metadata": {},
"execution_count": 4,
"data": {
"text/plain": "{'markdown': '* Display a \"close\" button on load notebook error ([#3176](https://github.com/jupyter/notebook/pull/3176)). \\n* Warn_bad_name should not use global name ([#3160](https://github.com/jupyter/notebook/pull/3160)). \\n* Avoid overflow of hidden form ([#3148](https://github.com/jupyter/notebook/pull/3148)). \\n* Fix shutdown trans loss ([#3147](https://github.com/jupyter/notebook/pull/3147)). \\n* Find available kernelspecs more efficiently ([#3136](https://github.com/jupyter/notebook/pull/3136)). \\n* Don\\'t try to translate missing help strings ([#3122](https://github.com/jupyter/notebook/pull/3122)). \\n* Frontend/extension-config: allow default json files in a .d directory ([#3116](https://github.com/jupyter/notebook/pull/3116)). \\n* Allowing non empty dirs to be deleted ([#3108](https://github.com/jupyter/notebook/pull/3108)). \\n* [wip] use `requirejs` vs. `require` ([#3097](https://github.com/jupyter/notebook/pull/3097)). \\n* Backport pr #2959 on branch 5.2.2 ([#3090](https://github.com/jupyter/notebook/pull/3090)). \\n* Allow programmatic copy to clipboard ([#3088](https://github.com/jupyter/notebook/pull/3088)). \\n* Add support for terminals on windows ([#3087](https://github.com/jupyter/notebook/pull/3087)). \\n* Remove extra self ([#3067](https://github.com/jupyter/notebook/pull/3067)). \\n* Add translated files to folder(docs-translations) ([#3065](https://github.com/jupyter/notebook/pull/3065)). \\n* Fix broken blog post links in readme.md ([#3064](https://github.com/jupyter/notebook/pull/3064)). \\n* Fix broken link ([#3063](https://github.com/jupyter/notebook/pull/3063)). \\n* Fix broken link ([#3061](https://github.com/jupyter/notebook/pull/3061)). \\n* Fix some broken links ([#3059](https://github.com/jupyter/notebook/pull/3059)). \\n* Fixes some ui bugs in firefox #3044 ([#3058](https://github.com/jupyter/notebook/pull/3058)). \\n* Compare non-specific language code when choosing to use arabic numerals ([#3055](https://github.com/jupyter/notebook/pull/3055)). \\n* Fix save-script deprecation ([#3053](https://github.com/jupyter/notebook/pull/3053)). \\n* Include moment locales in package_data ([#3051](https://github.com/jupyter/notebook/pull/3051)). \\n* Fix broken link ([#3049](https://github.com/jupyter/notebook/pull/3049)). \\n* fix moment locale loading in bidi support ([#3048](https://github.com/jupyter/notebook/pull/3048)). \\n* Fix a typo ([#3043](https://github.com/jupyter/notebook/pull/3043)). \\n* Fix broken links ([#3042](https://github.com/jupyter/notebook/pull/3042)). \\n* Tornado 5: periodiccallback loop arg will be removed ([#3034](https://github.com/jupyter/notebook/pull/3034)). \\n* Typo fix ([#3032](https://github.com/jupyter/notebook/pull/3032)). \\n* Use `/files` prefix for pdf-like files ([#3031](https://github.com/jupyter/notebook/pull/3031)). \\n* Add folder for document translation ([#3022](https://github.com/jupyter/notebook/pull/3022)). \\n* Typo fix ([#3015](https://github.com/jupyter/notebook/pull/3015)). \\n* When login-in via token, let a chance for user to set the password ([#3008](https://github.com/jupyter/notebook/pull/3008)). \\n* Switch to jupyter_core implementation of ensure_dir_exists ([#3002](https://github.com/jupyter/notebook/pull/3002)). \\n* Send http shutdown request on \\'stop\\' subcommand ([#3000](https://github.com/jupyter/notebook/pull/3000)). \\n* Work on loading ui translations ([#2969](https://github.com/jupyter/notebook/pull/2969)). \\n* Fix ansi inverse ([#2967](https://github.com/jupyter/notebook/pull/2967)). \\n* Add send2trash to requirements for building docs ([#2964](https://github.com/jupyter/notebook/pull/2964)). \\n* Config option to shut down server after n seconds with no kernels ([#2963](https://github.com/jupyter/notebook/pull/2963)). \\n* I18n readme.md improvement ([#2962](https://github.com/jupyter/notebook/pull/2962)). \\n* Set cookie on base_url ([#2959](https://github.com/jupyter/notebook/pull/2959)). \\n* Add \\'reason\\' field to json error responses ([#2958](https://github.com/jupyter/notebook/pull/2958)). \\n* Allow token-authenticated requests cross-origin by default ([#2920](https://github.com/jupyter/notebook/pull/2920)). \\n* Change cull_idle_timeout_minimum to 1 from 300 ([#2910](https://github.com/jupyter/notebook/pull/2910)). \\n* Send files to os trash mechanism on delete ([#1968](https://github.com/jupyter/notebook/pull/1968)). \\n',\n 'rst': '- Display a \"close\" button on load notebook error (:ghpull:`3176`). \\n- Warn_bad_name should not use global name (:ghpull:`3160`). \\n- Avoid overflow of hidden form (:ghpull:`3148`). \\n- Fix shutdown trans loss (:ghpull:`3147`). \\n- Find available kernelspecs more efficiently (:ghpull:`3136`). \\n- Don\\'t try to translate missing help strings (:ghpull:`3122`). \\n- Frontend/extension-config: allow default json files in a .d directory (:ghpull:`3116`). \\n- Allowing non empty dirs to be deleted (:ghpull:`3108`). \\n- [wip] use `requirejs` vs. `require` (:ghpull:`3097`). \\n- Backport pr #2959 on branch 5.2.2 (:ghpull:`3090`). \\n- Allow programmatic copy to clipboard (:ghpull:`3088`). \\n- Add support for terminals on windows (:ghpull:`3087`). \\n- Remove extra self (:ghpull:`3067`). \\n- Add translated files to folder(docs-translations) (:ghpull:`3065`). \\n- Fix broken blog post links in readme.md (:ghpull:`3064`). \\n- Fix broken link (:ghpull:`3063`). \\n- Fix broken link (:ghpull:`3061`). \\n- Fix some broken links (:ghpull:`3059`). \\n- Fixes some ui bugs in firefox #3044 (:ghpull:`3058`). \\n- Compare non-specific language code when choosing to use arabic numerals (:ghpull:`3055`). \\n- Fix save-script deprecation (:ghpull:`3053`). \\n- Include moment locales in package_data (:ghpull:`3051`). \\n- Fix broken link (:ghpull:`3049`). \\n- fix moment locale loading in bidi support (:ghpull:`3048`). \\n- Fix a typo (:ghpull:`3043`). \\n- Fix broken links (:ghpull:`3042`). \\n- Tornado 5: periodiccallback loop arg will be removed (:ghpull:`3034`). \\n- Typo fix (:ghpull:`3032`). \\n- Use `/files` prefix for pdf-like files (:ghpull:`3031`). \\n- Add folder for document translation (:ghpull:`3022`). \\n- Typo fix (:ghpull:`3015`). \\n- When login-in via token, let a chance for user to set the password (:ghpull:`3008`). \\n- Switch to jupyter_core implementation of ensure_dir_exists (:ghpull:`3002`). \\n- Send http shutdown request on \\'stop\\' subcommand (:ghpull:`3000`). \\n- Work on loading ui translations (:ghpull:`2969`). \\n- Fix ansi inverse (:ghpull:`2967`). \\n- Add send2trash to requirements for building docs (:ghpull:`2964`). \\n- Config option to shut down server after n seconds with no kernels (:ghpull:`2963`). \\n- I18n readme.md improvement (:ghpull:`2962`). \\n- Set cookie on base_url (:ghpull:`2959`). \\n- Add \\'reason\\' field to json error responses (:ghpull:`2958`). \\n- Allow token-authenticated requests cross-origin by default (:ghpull:`2920`). \\n- Change cull_idle_timeout_minimum to 1 from 300 (:ghpull:`2910`). \\n- Send files to os trash mechanism on delete (:ghpull:`1968`). \\n'}"
},
"output_type": "execute_result"
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "Markdown(changelog['markdown'])",
"execution_count": 5,
"outputs": [
{
"metadata": {},
"execution_count": 5,
"data": {
"text/plain": "<IPython.core.display.Markdown object>",
"text/markdown": "* Display a \"close\" button on load notebook error ([#3176](https://github.com/jupyter/notebook/pull/3176)). \n* Warn_bad_name should not use global name ([#3160](https://github.com/jupyter/notebook/pull/3160)). \n* Avoid overflow of hidden form ([#3148](https://github.com/jupyter/notebook/pull/3148)). \n* Fix shutdown trans loss ([#3147](https://github.com/jupyter/notebook/pull/3147)). \n* Find available kernelspecs more efficiently ([#3136](https://github.com/jupyter/notebook/pull/3136)). \n* Don't try to translate missing help strings ([#3122](https://github.com/jupyter/notebook/pull/3122)). \n* Frontend/extension-config: allow default json files in a .d directory ([#3116](https://github.com/jupyter/notebook/pull/3116)). \n* Allowing non empty dirs to be deleted ([#3108](https://github.com/jupyter/notebook/pull/3108)). \n* [wip] use `requirejs` vs. `require` ([#3097](https://github.com/jupyter/notebook/pull/3097)). \n* Backport pr #2959 on branch 5.2.2 ([#3090](https://github.com/jupyter/notebook/pull/3090)). \n* Allow programmatic copy to clipboard ([#3088](https://github.com/jupyter/notebook/pull/3088)). \n* Add support for terminals on windows ([#3087](https://github.com/jupyter/notebook/pull/3087)). \n* Remove extra self ([#3067](https://github.com/jupyter/notebook/pull/3067)). \n* Add translated files to folder(docs-translations) ([#3065](https://github.com/jupyter/notebook/pull/3065)). \n* Fix broken blog post links in readme.md ([#3064](https://github.com/jupyter/notebook/pull/3064)). \n* Fix broken link ([#3063](https://github.com/jupyter/notebook/pull/3063)). \n* Fix broken link ([#3061](https://github.com/jupyter/notebook/pull/3061)). \n* Fix some broken links ([#3059](https://github.com/jupyter/notebook/pull/3059)). \n* Fixes some ui bugs in firefox #3044 ([#3058](https://github.com/jupyter/notebook/pull/3058)). \n* Compare non-specific language code when choosing to use arabic numerals ([#3055](https://github.com/jupyter/notebook/pull/3055)). \n* Fix save-script deprecation ([#3053](https://github.com/jupyter/notebook/pull/3053)). \n* Include moment locales in package_data ([#3051](https://github.com/jupyter/notebook/pull/3051)). \n* Fix broken link ([#3049](https://github.com/jupyter/notebook/pull/3049)). \n* fix moment locale loading in bidi support ([#3048](https://github.com/jupyter/notebook/pull/3048)). \n* Fix a typo ([#3043](https://github.com/jupyter/notebook/pull/3043)). \n* Fix broken links ([#3042](https://github.com/jupyter/notebook/pull/3042)). \n* Tornado 5: periodiccallback loop arg will be removed ([#3034](https://github.com/jupyter/notebook/pull/3034)). \n* Typo fix ([#3032](https://github.com/jupyter/notebook/pull/3032)). \n* Use `/files` prefix for pdf-like files ([#3031](https://github.com/jupyter/notebook/pull/3031)). \n* Add folder for document translation ([#3022](https://github.com/jupyter/notebook/pull/3022)). \n* Typo fix ([#3015](https://github.com/jupyter/notebook/pull/3015)). \n* When login-in via token, let a chance for user to set the password ([#3008](https://github.com/jupyter/notebook/pull/3008)). \n* Switch to jupyter_core implementation of ensure_dir_exists ([#3002](https://github.com/jupyter/notebook/pull/3002)). \n* Send http shutdown request on 'stop' subcommand ([#3000](https://github.com/jupyter/notebook/pull/3000)). \n* Work on loading ui translations ([#2969](https://github.com/jupyter/notebook/pull/2969)). \n* Fix ansi inverse ([#2967](https://github.com/jupyter/notebook/pull/2967)). \n* Add send2trash to requirements for building docs ([#2964](https://github.com/jupyter/notebook/pull/2964)). \n* Config option to shut down server after n seconds with no kernels ([#2963](https://github.com/jupyter/notebook/pull/2963)). \n* I18n readme.md improvement ([#2962](https://github.com/jupyter/notebook/pull/2962)). \n* Set cookie on base_url ([#2959](https://github.com/jupyter/notebook/pull/2959)). \n* Add 'reason' field to json error responses ([#2958](https://github.com/jupyter/notebook/pull/2958)). \n* Allow token-authenticated requests cross-origin by default ([#2920](https://github.com/jupyter/notebook/pull/2920)). \n* Change cull_idle_timeout_minimum to 1 from 300 ([#2910](https://github.com/jupyter/notebook/pull/2910)). \n* Send files to os trash mechanism on delete ([#1968](https://github.com/jupyter/notebook/pull/1968)). \n"
},
"output_type": "execute_result"
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Get a unique list of contributors from PRs"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# contributors = prs.groupby('user.login').size().sort_values(ascending=False)\ncontributors = sorted(prs['user.login'].unique(), key=str.lower)\ncontributors",
"execution_count": 6,
"outputs": [
{
"metadata": {},
"execution_count": 6,
"data": {
"text/plain": "['bacboc',\n 'blink1073',\n 'Carreau',\n 'ChungJooHo',\n 'edida',\n 'ferdas',\n 'forbxy',\n 'gnestor',\n 'jcb91',\n 'JocelynDelalande',\n 'karthikb351',\n 'kevin-bates',\n 'kirit93',\n 'maartenbreddels',\n 'Madhu94',\n 'meeseeksdev[bot]',\n 'mgeier',\n 'mheilman',\n 'minrk',\n 'PHaeJin',\n 'Sukneet',\n 'takluyver']"
},
"output_type": "execute_result"
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Create credits markdown from list of contributors"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "credits = {\n 'rst': '',\n 'markdown': ''\n}\nfor contributor in contributors:\n user = get('users', contributor)\n credits['rst'] += '- {0} (`{1} <{2}>`__)\\n'.format(user['name'] or user['login'], user['login'], user['html_url'])\n credits['markdown'] += '* {0} ([{1}]({2}))\\n'.format(user['name'] or user['login'], user['login'], user['html_url'])\ncredits",
"execution_count": 7,
"outputs": [
{
"metadata": {},
"execution_count": 7,
"data": {
"text/plain": "{'markdown': '* bacboc ([bacboc](https://github.com/bacboc))\\n* Steven Silvester ([blink1073](https://github.com/blink1073))\\n* Matthias Bussonnier ([Carreau](https://github.com/Carreau))\\n* ChungJooHo ([ChungJooHo](https://github.com/ChungJooHo))\\n* edida ([edida](https://github.com/edida))\\n* Francesco Franchina ([ferdas](https://github.com/ferdas))\\n* forbxy ([forbxy](https://github.com/forbxy))\\n* Grant Nestor ([gnestor](https://github.com/gnestor))\\n* Josh Barnes ([jcb91](https://github.com/jcb91))\\n* JocelynDelalande ([JocelynDelalande](https://github.com/JocelynDelalande))\\n* Karthik Balakrishnan ([karthikb351](https://github.com/karthikb351))\\n* Kevin Bates ([kevin-bates](https://github.com/kevin-bates))\\n* Kirit Thadaka ([kirit93](https://github.com/kirit93))\\n* Maarten Breddels ([maartenbreddels](https://github.com/maartenbreddels))\\n* Madhu94 ([Madhu94](https://github.com/Madhu94))\\n* meeseeksdev[bot] ([meeseeksdev[bot]](https://github.com/apps/meeseeksdev))\\n* Matthias Geier ([mgeier](https://github.com/mgeier))\\n* Michael Heilman ([mheilman](https://github.com/mheilman))\\n* Min RK ([minrk](https://github.com/minrk))\\n* PHaeJin ([PHaeJin](https://github.com/PHaeJin))\\n* Sukneet ([Sukneet](https://github.com/Sukneet))\\n* Thomas Kluyver ([takluyver](https://github.com/takluyver))\\n',\n 'rst': '- bacboc (`bacboc <https://github.com/bacboc>`__)\\n- Steven Silvester (`blink1073 <https://github.com/blink1073>`__)\\n- Matthias Bussonnier (`Carreau <https://github.com/Carreau>`__)\\n- ChungJooHo (`ChungJooHo <https://github.com/ChungJooHo>`__)\\n- edida (`edida <https://github.com/edida>`__)\\n- Francesco Franchina (`ferdas <https://github.com/ferdas>`__)\\n- forbxy (`forbxy <https://github.com/forbxy>`__)\\n- Grant Nestor (`gnestor <https://github.com/gnestor>`__)\\n- Josh Barnes (`jcb91 <https://github.com/jcb91>`__)\\n- JocelynDelalande (`JocelynDelalande <https://github.com/JocelynDelalande>`__)\\n- Karthik Balakrishnan (`karthikb351 <https://github.com/karthikb351>`__)\\n- Kevin Bates (`kevin-bates <https://github.com/kevin-bates>`__)\\n- Kirit Thadaka (`kirit93 <https://github.com/kirit93>`__)\\n- Maarten Breddels (`maartenbreddels <https://github.com/maartenbreddels>`__)\\n- Madhu94 (`Madhu94 <https://github.com/Madhu94>`__)\\n- meeseeksdev[bot] (`meeseeksdev[bot] <https://github.com/apps/meeseeksdev>`__)\\n- Matthias Geier (`mgeier <https://github.com/mgeier>`__)\\n- Michael Heilman (`mheilman <https://github.com/mheilman>`__)\\n- Min RK (`minrk <https://github.com/minrk>`__)\\n- PHaeJin (`PHaeJin <https://github.com/PHaeJin>`__)\\n- Sukneet (`Sukneet <https://github.com/Sukneet>`__)\\n- Thomas Kluyver (`takluyver <https://github.com/takluyver>`__)\\n'}"
},
"output_type": "execute_result"
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "Markdown(credits['markdown'])",
"execution_count": 8,
"outputs": [
{
"metadata": {},
"execution_count": 8,
"data": {
"text/plain": "<IPython.core.display.Markdown object>",
"text/markdown": "* bacboc ([bacboc](https://github.com/bacboc))\n* Steven Silvester ([blink1073](https://github.com/blink1073))\n* Matthias Bussonnier ([Carreau](https://github.com/Carreau))\n* ChungJooHo ([ChungJooHo](https://github.com/ChungJooHo))\n* edida ([edida](https://github.com/edida))\n* Francesco Franchina ([ferdas](https://github.com/ferdas))\n* forbxy ([forbxy](https://github.com/forbxy))\n* Grant Nestor ([gnestor](https://github.com/gnestor))\n* Josh Barnes ([jcb91](https://github.com/jcb91))\n* JocelynDelalande ([JocelynDelalande](https://github.com/JocelynDelalande))\n* Karthik Balakrishnan ([karthikb351](https://github.com/karthikb351))\n* Kevin Bates ([kevin-bates](https://github.com/kevin-bates))\n* Kirit Thadaka ([kirit93](https://github.com/kirit93))\n* Maarten Breddels ([maartenbreddels](https://github.com/maartenbreddels))\n* Madhu94 ([Madhu94](https://github.com/Madhu94))\n* meeseeksdev[bot] ([meeseeksdev[bot]](https://github.com/apps/meeseeksdev))\n* Matthias Geier ([mgeier](https://github.com/mgeier))\n* Michael Heilman ([mheilman](https://github.com/mheilman))\n* Min RK ([minrk](https://github.com/minrk))\n* PHaeJin ([PHaeJin](https://github.com/PHaeJin))\n* Sukneet ([Sukneet](https://github.com/Sukneet))\n* Thomas Kluyver ([takluyver](https://github.com/takluyver))\n"
},
"output_type": "execute_result"
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "",
"execution_count": null,
"outputs": []
}
],
"metadata": {
"language_info": {
"version": "3.5.4",
"mimetype": "text/x-python",
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"pygments_lexer": "ipython3",
"nbconvert_exporter": "python",
"name": "python"
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3",
"language": "python"
},
"gist": {
"id": "",
"data": {
"description": "github-py.ipynb",
"public": true
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment