{"action":"opened","number":88,"pull_request":{"url":"https://api.github.com/repos/quanted/qed/pulls/88","id":132267292,"html_url":"https://github.com/quanted/qed/pull/88","diff_url":"https://github.com/quanted/qed/pull/88.diff","patch_url":"https://github.com/quanted/qed/pull/88.patch","issue_url":"https://api.github.com/repos/quanted/qed/issues/88","number":88,"state":"open","locked":false,"title":"Scheduled daily dependency update on tuesday","user":{"login":"pyup-bot","id":16239342,"avatar_url":"https://avatars0.githubusercontent.com/u/16239342?v=4","gravatar_id":"","url":"https://api.github.com/users/pyup-bot","html_url":"https://github.com/pyup-bot","followers_url":"https://api.github.com/users/pyup-bot/followers","following_url":"https://api.github.com/users/pyup-bot/following{/other_user}","gists_url":"https://api.github.com/users/pyup-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/pyup-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pyup-bot/subscriptions","organizations_url":"https://api.github.com/users/pyup-bot/orgs","repos_url":"https://api.github.com/users/pyup-bot/repos","events_url":"https://api.github.com/users/pyup-bot/events{/privacy}","received_events_url":"https://api.github.com/users/pyup-bot/received_events","type":"User","site_admin":false},"body":"\n\n\n## Updates\nHere's a list of all the updates bundled in this pull request. I've added some links to make it easier for you to find all the information you need.\n<table align=\"center\">\n\n<tr>\n<td><b>celery</b></td>\n<td align=\"center\">4.0.2</td>\n<td align=\"center\">&raquo;</td>\n<td align=\"center\">4.1.0</td>\n<td>\n     <a href=\"https://pypi.python.org/pypi/celery\">PyPI</a> | <a href=\"https://pyup.io/changelogs/celery/\">Changelog</a> | <a href=\"http://celeryproject.org\">Homepage</a> | <a href=\"http://pythonhosted.org/celery/\">Docs</a> \n\n</td>\n\n<tr>\n<td><b>earthengine-api</b></td>\n<td align=\"center\">0.1.117</td>\n<td align=\"center\">&raquo;</td>\n<td align=\"center\">0.1.119</td>\n<td>\n     <a href=\"https://pypi.python.org/pypi/earthengine-api\">PyPI</a> | <a href=\"https://pyup.io/changelogs/earthengine-api/\">Changelog</a> | <a href=\"http://code.google.com/p/earthengine-api/\">Homepage</a> \n\n</td>\n\n<tr>\n<td><b>numba</b></td>\n<td align=\"center\">0.34.0</td>\n<td align=\"center\">&raquo;</td>\n<td align=\"center\">0.34.0</td>\n<td>\n     <a href=\"https://pypi.python.org/pypi/numba\">PyPI</a> | <a href=\"https://pyup.io/changelogs/numba/\">Changelog</a> | <a href=\"http://numba.github.com\">Repo</a> \n\n</td>\n\n<tr>\n<td><b>psycopg2</b></td>\n<td align=\"center\">2.7.1</td>\n<td align=\"center\">&raquo;</td>\n<td align=\"center\">2.7.3</td>\n<td>\n     <a href=\"https://pypi.python.org/pypi/psycopg2\">PyPI</a> | <a href=\"https://pyup.io/changelogs/psycopg2/\">Changelog</a> | <a href=\"http://initd.org/psycopg/\">Homepage</a> | <a href=\"http://pythonhosted.org/psycopg2/\">Docs</a> \n\n</td>\n\n</tr>\n</table>\n\n\n\n## Changelogs\n\n\n### celery 4.0.2 -> 4.1.0\n\n>### 4.1.0\n\n>=====\n>:release-date: 2017-07-25 00:00 PM PST\n>:release-by: Omer Katz\n\n\n>- **Configuration**: CELERY_SEND_EVENTS instead of CELERYD_SEND_EVENTS for 3.1.x compatibility (3997)\n\n> Contributed by **abhinav nilaratna**.\n\n>- **App**: Restore behavior so Broadcast queues work. (3934)\n\n> Contributed by **Patrick Cloke**.\n\n>- **Sphinx**: Make appstr use standard format (4134) (4139)\n\n> Contributed by **Preston Moore**.\n\n>- **App**: Make id, name always accessible from logging.Formatter via extra (3994)\n\n> Contributed by **Yoichi NAKAYAMA**.\n\n>- **Worker**: Add worker_shutting_down signal (3998)\n\n> Contributed by **Daniel Huang**.\n\n>- **PyPy**: Support PyPy version 5.8.0 (4128)\n\n> Contributed by **Omer Katz**.\n\n>- **Results**: Elasticsearch: Fix serializing keys (3924)\n\n> Contributed by :github_user:`staticfox`.\n\n>- **Canvas**: Deserialize all tasks in a chain (4015)\n\n> Contributed by :github_user:`fcoelho`.\n\n>- **Systemd**: Recover loglevel for ExecStart in systemd config (4023)\n\n> Contributed by **Yoichi NAKAYAMA**.\n\n>- **Sphinx**: Use the Sphinx add_directive_to_domain API. (4037)\n\n> Contributed by **Patrick Cloke**.\n\n>- **App**: Pass properties to before_task_publish signal (4035)\n\n> Contributed by **Javier Domingo Cansino**.\n\n>- **Results**: Add SSL option for Redis backends (3831)\n\n> Contributed by **Chris Kuehl**.\n\n>- **Beat**: celery.schedule.crontab: fix reduce (3826) (3827)\n\n> Contributed by **Taylor C. Richberger**.\n\n>- **State**: Fix celery issues when using flower REST API\n\n> Contributed by **Thierry RAMORASOAVINA**.\n\n>- **Results**: Elasticsearch: Fix serializing document id.\n\n> Contributed by **Acey9**.\n\n>- **Beat**: Make shallow copy of schedules dictionary\n\n> Contributed by **Brian May**.\n\n>- **Beat**: Populate heap when periodic tasks are changed\n\n> Contributed by **Wojciech Żywno**.\n\n>- **Task**: Allow class methods to define tasks (3952)\n\n> Contributed by **georgepsarakis**.\n\n>- **Platforms**: Always return boolean value when checking if signal is supported (3962).\n\n> Contributed by **Jian Yu**.\n\n>- **Canvas**: Avoid duplicating chains in chords (3779)\n\n> Contributed by **Ryan Hiebert**.\n\n>- **Canvas**: Lookup task only if list has items (3847)\n\n> Contributed by **Marc Gibbons**.\n\n>- **Results**: Allow unicode message for exception raised in task (3903)\n\n> Contributed by **George Psarakis**.\n\n>- **Python3**: Support for Python 3.6 (3904, 3903, 3736)\n\n> Contributed by **Jon Dufresne**, **George Psarakis**, **Asif Saifuddin Auvi**, **Omer Katz**.\n\n>- **App**: Fix retried tasks with expirations (3790)\n\n> Contributed by **Brendan MacDonell**.\n\n>- * Fixes items format route in docs (3875)\n\n> Contributed by **Slam**.\n\n>- **Utils**: Fix maybe_make_aware (3850)\n\n> Contributed by **Taylor C. Richberger**.\n\n>- **Task**: Fix task ETA issues when timezone is defined in configuration (3867)\n\n> Contributed by **George Psarakis**.\n\n>- **Concurrency**: Consumer does not shutdown properly when embedded in gevent application (3746)\n\n> Contributed by **Arcadiy Ivanov**.\n\n>- **Canvas**: Fix 3725: Task replaced with group does not complete (3731)\n\n> Contributed by **Morgan Doocy**.\n\n>- **Task**: Correct order in chains with replaced tasks (3730)\n\n> Contributed by **Morgan Doocy**.\n\n>- **Result**: Enable synchronous execution of sub-tasks (3696)\n\n> Contributed by **shalev67**.\n\n>- **Task**: Fix request context for blocking task apply (added hostname) (3716)\n\n> Contributed by **Marat Sharafutdinov**.\n\n>- **Utils**: Fix task argument handling (3678) (3693)\n\n> Contributed by **Roman Sichny**.\n\n>- **Beat**: Provide a transparent method to update the Scheduler heap (3721)\n\n> Contributed by **Alejandro Pernin**.\n\n>- **Beat**: Specify default value for pidfile option of celery beat. (3722)\n\n> Contributed by **Arnaud Rocher**.\n\n>- **Results**: Elasticsearch: Stop generating a new field every time when a new result is being put (3708)\n\n> Contributed by **Mike Chen**.\n\n>- **Requirements**\n\n>    - Now depends on :ref:`Kombu 4.1.0 &lt;kombu:version-4.1.0&gt;`.\n\n>- **Results**: Elasticsearch now reuses fields when new results are added.\n\n>    Contributed by **Mike Chen**.\n\n>- **Results**: Fixed MongoDB integration when using binary encodings\n>  (Issue 3575).\n\n>    Contributed by **Andrew de Quincey**.\n\n>- **Worker**: Making missing ``*args`` and ``**kwargs`` in Task protocol 1\n>return empty value in protocol 2 (Issue 3687).\n\n>    Contributed by **Roman Sichny**.\n\n>- **App**: Fixed :exc:`TypeError` in AMQP when using deprecated signal\n>  (Issue 3707).\n\n>    Contributed by :github_user:`michael-k`.\n\n>- **Beat**: Added a transparent method to update the scheduler heap.\n\n>    Contributed by **Alejandro Pernin**.\n\n>- **Task**: Fixed handling of tasks with keyword arguments on Python 3\n>  (Issue 3657).\n\n>    Contributed by **Roman Sichny**.\n\n>- **Task**: Fixed request context for blocking task apply by adding missing\n>  hostname attribute.\n\n>    Contributed by **Marat Sharafutdinov**.\n\n>- **Task**: Added option to run subtasks synchronously with\n>  ``disable_sync_subtasks`` argument.\n\n>    Contributed by :github_user:`shalev67`.\n\n>- **App**: Fixed chaining of replaced tasks (Issue 3726).\n\n>    Contributed by **Morgan Doocy**.\n\n>- **Canvas**: Fixed bug where replaced tasks with groups were not completing\n>  (Issue 3725).\n\n>    Contributed by **Morgan Doocy**.\n\n>- **Worker**: Fixed problem where consumer does not shutdown properly when\n>  embedded in a gevent application (Issue 3745).\n\n>    Contributed by **Arcadiy Ivanov**.\n\n>- **Results**: Added support for using AWS DynamoDB as a result backend (3736).\n\n>    Contributed by **George Psarakis**.\n\n>- **Testing**: Added caching on pip installs.\n\n>    Contributed by :github_user:`orf`.\n\n>- **Worker**: Prevent consuming queue before ready on startup (Issue 3620).\n\n>    Contributed by **Alan Hamlett**.\n\n>- **App**: Fixed task ETA issues when timezone is defined in configuration\n>  (Issue 3753).\n\n>    Contributed by **George Psarakis**.\n\n>- **Utils**: ``maybe_make_aware`` should not modify datetime when it is\n>  already timezone-aware (Issue 3849).\n\n>    Contributed by **Taylor C. Richberger**.\n\n>- **App**: Fixed retrying tasks with expirations (Issue 3734).\n\n>    Contributed by **Brendan MacDonell**.\n\n>- **Results**: Allow unicode message for exceptions raised in task\n>  (Issue 3858).\n\n>    Contributed by :github_user:`staticfox`.\n\n>- **Canvas**: Fixed :exc:`IndexError` raised when chord has an empty header.\n\n>    Contributed by **Marc Gibbons**.\n\n>- **Canvas**: Avoid duplicating chains in chords (Issue 3771).\n\n>    Contributed by **Ryan Hiebert** and **George Psarakis**.\n\n>- **Utils**: Allow class methods to define tasks (Issue 3863).\n\n>    Contributed by **George Psarakis**.\n\n>- **Beat**: Populate heap when periodic tasks are changed.\n\n>    Contributed by :github_user:`wzywno` and **Brian May**.\n\n>- **Results**: Added support for Elasticsearch backend options settings.\n\n>    Contributed by :github_user:`Acey9`.\n\n>- **Events**: Ensure ``Task.as_dict()`` works when not all information about\n>  task is available.\n\n>    Contributed by :github_user:`tramora`.\n\n>- **Schedules**: Fixed pickled crontab schedules to restore properly (Issue 3826).\n\n>    Contributed by **Taylor C. Richberger**.\n\n>- **Results**: Added SSL option for redis backends (Issue 3830).\n\n>    Contributed by **Chris Kuehl**.\n\n>- Documentation and examples improvements by:\n\n>    - **Bruno Alla**\n>    - **Jamie Alessio**\n>    - **Vivek Anand**\n>    - **Peter Bittner**\n>    - **Kalle Bronsen**\n>    - **Jon Dufresne**\n>    - **James Michael DuPont**\n>    - **Sergey Fursov**\n>    - **Samuel Dion-Girardeau**\n>    - **Daniel Hahler**\n>    - **Mike Helmick**\n>    - **Marc Hörsken**\n>    - **Christopher Hoskin**\n>    - **Daniel Huang**\n>    - **Primož Kerin**\n>    - **Michal Kuffa**\n>    - **Simon Legner**\n>    - **Anthony Lukach**\n>    - **Ed Morley**\n>    - **Jay McGrath**\n>    - **Rico Moorman**\n>    - **Viraj Navkal**\n>    - **Ross Patterson**\n>    - **Dmytro Petruk**\n>    - **Luke Plant**\n>    - **Eric Poelke**\n>    - **Salvatore Rinchiera**\n>    - **Arnaud Rocher**\n>    - **Kirill Romanov**\n>    - **Simon Schmidt**\n>    - **Tamer Sherif**\n>    - **YuLun Shih**\n>    - **Ask Solem**\n>    - **Tom &#39;Biwaa&#39; Riat**\n>    - **Arthur Vigil**\n>    - **Joey Wilhelm**\n>    - **Jian Yu**\n>    - **YuLun Shih**\n>    - **Arthur Vigil**\n>    - **Joey Wilhelm**\n>    - :github_user:`baixuexue123`\n>    - :github_user:`bronsen`\n>    - :github_user:`michael-k`\n>    - :github_user:`orf`\n>    - :github_user:`3lnc`\n\n\n\n\n\n\n### numba  -> 0.34.0\n\n>### 0.34.0\n\n>--------------\n\n>This release adds a significant set of new features arising from combined work\n>with Intel on ParallelAccelerator technology. It also adds list comprehension\n>and closure support, support for Numpy 1.13 and a new, faster, CUDA reduction\n>algorithm. For Linux users this release is the first to be built on Centos 6,\n>which will be the new base platform for future releases. Finally a number of\n>thread-safety, type inference and other smaller enhancements and bugs have been\n>fixed.\n\n\n>ParallelAccelerator features:\n\n>NOTE: The ParallelAccelerator technology is under active development and should\n>be considered experimental.\n\n>The ParallelAccelerator technology is accessed via a new &quot;nopython&quot; mode option\n>&quot;parallel&quot;. The ParallelAccelerator technology attempts to identify operations\n>which have parallel semantics (for instance adding a scalar to a vector), fuse\n>together adjacent such operations, and then parallelize their execution across\n>a number of CPU cores. This is essentially auto-parallelization.\n\n>In addition to the auto-parallelization feature, explicit loop based\n>parallelism is made available through the use of `prange` in place of `range`\n>as a loop iterator.\n\n>More information and examples on both auto-parallelization and `prange` are\n>available in the documentation and examples directory respectively.\n\n>As part of the necessary work for ParallelAccelerator, support for closures\n>and list comprehensions is added:\n\n>* PR 2318: Transfer ParallelAccelerator technology to Numba\n>* PR 2379: ParallelAccelerator Core Improvements\n>* PR 2367: Add support for len(range(...))\n>* PR 2369: List comprehension\n>* PR 2391: Explicit Parallel Loop Support (prange)\n\n>The ParallelAccelerator features are available on all supported platforms and\n>Python versions with the exceptions of (with view of supporting in a future\n>release):\n\n>* The combination of Windows operating systems with Python 2.7.\n>* Systems running 32 bit Python.\n\n\n>CUDA support enhancements:\n\n>* PR 2377: New GPU reduction algorithm \n\n\n>CUDA support fixes:\n\n>* PR 2397: Fix 2393, always set alignment of cuda static memory regions \n\n\n>Misc Fixes:\n\n>* PR 2373, Issue 2372: 32-bit compatibility fix for parfor related code\n>* PR 2376: Fix 2375 missing stdint.h for py2.7 vc9\n>* PR 2378: Fix deadlock in parallel gufunc when kernel acquires the GIL. \n>* PR 2382: Forbid unsafe casting in bitwise operation \n>* PR 2385: docs: fix Sphinx errors \n>* PR 2396: Use 64-bit RHS operand for shift \n>* PR 2404: Fix threadsafety logic issue in ufunc compilation cache.  \n>* PR 2424: Ensure consistent iteration order of blocks for type inference.\n>* PR 2425: Guard code to prevent the use of &#39;parallel&#39; on win32 + py27\n>* PR 2426: Basic test for Enum member type recovery.\n>* PR 2433: Fix up the parfors tests with respect to windows py2.7\n>* PR 2442: Skip tests that need BLAS/LAPACK if scipy is not available.\n>* PR 2444: Add test for invalid array setitem\n>* PR 2449: Make the runtime initialiser threadsafe\n>* PR 2452: Skip CFG test on 64bit windows\n\n\n>Misc Enhancements:\n\n>* PR 2366: Improvements to IR utils\n>* PR 2388: Update README.rst to indicate the proper version of LLVM \n>* PR 2394: Upgrade to llvmlite 0.19.* \n>* PR 2395: Update llvmlite version to 0.19\n>* PR 2406: Expose environment object to ufuncs \n>* PR 2407: Expose environment object to target-context inside lowerer \n>* PR 2413: Add flags to pass through to conda build for buildbot  \n>* PR 2414: Add cross compile flags to local recipe\n>* PR 2415: A few cleanups for rewrites\n>* PR 2418: Add getitem support for Enum classes\n>* PR 2419: Add support for returning enums in vectorize \n>* PR 2421: Add copyright notice for Intel contributed files.\n>* PR 2422: Patch code base to work with np 1.13 release\n>* PR 2448: Adds in warning message when using &#39;parallel&#39; if cache=True\n>* PR 2450: Add test for keyword arg on .sum-like and .cumsum-like array\n>  methods\n\n\n\n\n>### 0.33.0\n\n>--------------\n\n>This release resolved several performance issues caused by atomic\n>reference counting operations inside loop bodies.  New optimization\n>passes have been added to reduce the impact of these operations.  We\n>observe speed improvements between 2x-10x in affected programs due to\n>the removal of unnecessary reference counting operations.\n\n>There are also several enhancements to the CUDA GPU support:\n\n>* A GPU random number generator based on `xoroshiro128+ algorithm &lt;http://xoroshiro.di.unimi.it/&gt;`_ is added.\n>  See details and examples in :ref:`documentation &lt;cuda-random&gt;`.\n>* ``cuda.jit`` CUDA kernels can now call ``jit`` and ``njit``\n>  CPU functions and they will automatically be compiled as CUDA device\n>  functions.\n>* CUDA IPC memory API is exposed for sharing memory between proceses.\n>  See usage details in :ref:`documentation &lt;cuda-ipc-memory&gt;`.\n\n>Reference counting enhancements:\n\n>* PR 2346, Issue 2345, 2248: Add extra refcount pruning after inlining\n>* PR 2349: Fix refct pruning not removing refct op with tail call.\n>* PR 2352, Issue 2350: Add refcount pruning pass for function that does not need refcount\n\n>CUDA support enhancements:\n\n>* PR 2023: Supports CUDA IPC for device array\n>* PR 2343, Issue 2335: Allow CPU jit decorated function to be used as cuda device function\n>* PR 2347: Add random number generator support for CUDA device code\n>* PR 2361: Update autotune table for CC: 5.3, 6.0, 6.1, 6.2\n\n>Misc fixes:\n\n>* PR 2362: Avoid test failure due to typing to int32 on 32-bit platforms\n>* PR 2359: Fixed nogil example that threw a TypeError when executed.\n>* PR 2357, Issue 2356: Fix fragile test that depends on how the script is executed.\n>* PR 2355: Fix cpu dispatcher referenced as attribute of another module\n>* PR 2354: Fixes an issue with caching when function needs NRT and refcount pruning\n>* PR 2342, Issue 2339: Add warnings to inspection when it is used on unserialized cached code\n>* PR 2329, Issue 2250: Better handling of missing op codes\n\n>Misc enhancements:\n\n>* PR 2360: Adds missing values in error mesasge interp.\n>* PR 2353: Handle when get_host_cpu_features() raises RuntimeError\n>* PR 2351: Enable SVML for erf/erfc/gamma/lgamma/log2\n>* PR 2344: Expose error_model setting in jit decorator\n>* PR 2337: Align blocking terminate support for fork() with new TBB version\n>* PR 2336: Bump llvmlite version to 0.18\n>* PR 2330: Core changes in PR 2318\n\n\n\n\n>### 0.32.0\n\n>--------------\n\n>In this release, we are upgrading to LLVM 4.0.  A lot of work has been done\n>to fix many race-condition issues inside LLVM when the compiler is\n>used concurrently, which is likely when Numba is used with Dask.\n\n>Improvements:\n\n>* PR 2322: Suppress test error due to unknown but consistent error with tgamma\n>* PR 2320: Update llvmlite dependency to 0.17\n>* PR 2308: Add details to error message on why cuda support is disabled.\n>* PR 2302: Add os x to travis\n>* PR 2294: Disable remove_module on MCJIT due to memory leak inside LLVM\n>* PR 2291: Split parallel tests and recycle workers to tame memory usage\n>* PR 2253: Remove the pointer-stuffing hack for storing meminfos in lists\n\n>Fixes:\n\n>* PR 2331: Fix a bug in the GPU array indexing\n>* PR 2326: Fix 2321 docs referring to non-existing function.\n>* PR 2316: Fixing more race-condition problems\n>* PR 2315: Fix 2314.  Relax strict type check to allow optional type.\n>* PR 2310: Fix race condition due to concurrent compilation and cache loading\n>* PR 2304: Fix intrinsic 1st arg not a typing.Context as stated by the docs.\n>* PR 2287: Fix int64 atomic min-max\n>* PR 2286: Fix 2285 `overload_method` not linking dependent libs\n>* PR 2303: Missing import statements to interval-example.rst\n\n\n\n\n>### 0.31.0\n\n>--------------\n\n>In this release, we added preliminary support for debugging with GDB\n>version &gt;= 7.0. The feature is enabled by setting the ``debug=True`` compiler\n>option, which causes GDB compatible debug info to be generated.\n>The CUDA backend also gained limited debugging support so that source locations\n>are showed in memory-checking and profiling tools.\n>For details, see :ref:`numba-troubleshooting`.\n\n>Also, we added the ``fastmath=True`` compiler option to enable unsafe\n>floating-point transformations, which allows LLVM to auto-vectorize more code.\n\n>Other important changes include upgrading to LLVM 3.9.1 and adding support for\n>Numpy 1.12.\n\n>Improvements:\n\n>* PR 2281: Update for numpy1.12\n>* PR 2278: Add CUDA atomic.{max, min, compare_and_swap}\n>* PR 2277: Add about section to conda recipies to identify license and other\n>  metadata in Anaconda Cloud\n>* PR 2271: Adopt itanium C++-style mangling for CPU and CUDA targets\n>* PR 2267: Add fastmath flags\n>* PR 2261: Support dtype.type\n>* PR 2249: Changes for llvm3.9\n>* PR 2234: Bump llvmlite requirement to 0.16 and add install_name_tool_fixer to\n>  mviewbuf for OS X\n>* PR 2230: Add python3.6 to TravisCi\n>* PR 2227: Enable caching for gufunc wrapper\n>* PR 2170: Add debugging support\n>* PR 2037: inspect_cfg() for easier visualization of the function operation\n\n>Fixes:\n\n>* PR 2274: Fix nvvm ir patch in mishandling &quot;load&quot;\n>* PR 2272: Fix breakage to cuda7.5\n>* PR 2269: Fix caching of copy_strides kernel in cuda.reduce\n>* PR 2265: Fix 2263: error when linking two modules with dynamic globals\n>* PR 2252: Fix path separator in test\n>* PR 2246: Fix overuse of memory in some system with fork\n>* PR 2241: Fix 2240: __module__ in dynamically created function not a str\n>* PR 2239: Fix fingerprint computation failure preventing fallback\n\n\n\n\n>### 0.30.1\n\n>--------------\n\n>This is a bug-fix release to enable Python 3.6 support.  In addition,\n>there is now early Intel TBB support for parallel ufuncs when building from\n>source with TBBROOT defined.  The TBB feature is not enabled in our official\n>builds.\n\n>Fixes:\n\n>* PR 2232: Fix name clashes with _Py_hashtable_xxx in Python 3.6.\n\n>Improvements:\n\n>* PR 2217: Add Intel TBB threadpool implementation for parallel ufunc.\n\n\n\n\n>### 0.30.0\n\n>--------------\n\n>This release adds preliminary support for Python 3.6, but no official build is\n>available yet.  A new system reporting tool (``numba --sysinfo``) is added to\n>provide system information to help core developers in replication and debugging.\n>See below for other improvements and bug fixes.\n\n>Improvements:\n\n>* PR 2209: Support Python 3.6.\n>* PR 2175: Support ``np.trace()``, ``np.outer()`` and ``np.kron()``.\n>* PR 2197: Support ``np.nanprod()``.\n>* PR 2190: Support caching for ufunc.\n>* PR 2186: Add system reporting tool.\n\n>Fixes:\n\n>* PR 2214, Issue 2212: Fix memory error with ndenumerate and flat iterators.\n>* PR 2206, Issue 2163: Fix ``zip()`` consuming extra elements in early\n>  exhaustion.\n>* PR 2185, Issue 2159, 2169: Fix rewrite pass affecting objmode fallback.\n>* PR 2204, Issue 2178: Fix annotation for liftedloop.\n>* PR 2203: Fix Appveyor segfault with Python 3.5.\n>* PR 2202, Issue 2198: Fix target context not initialized when loading from\n>  ufunc cache.\n>* PR 2172, Issue 2171: Fix optional type unpacking.\n>* PR 2189, Issue 2188: Disable freezing of big (&gt;1MB) global arrays.\n>* PR 2180, Issue 2179: Fix invalid variable version in looplifting.\n>* PR 2156, Issue 2155: Fix divmod, floordiv segfault on CUDA.\n\n\n\n\n>### 0.29.0\n\n>--------------\n\n>This release extends the support of recursive functions to include direct and\n>indirect recursion without explicit function type annotations.  See new example\n>in `examples/mergesort.py`.  Newly supported numpy features include array\n>stacking functions, np.linalg.eig* functions, np.linalg.matrix_power, np.roots\n>and array to array broadcasting in assignments.\n\n>This release depends on llvmlite 0.14.0 and supports CUDA 8 but it is not\n>required.\n\n>Improvements:\n\n>* PR 2130, 2137: Add type-inferred recursion with docs and examples.\n>* PR 2134: Add ``np.linalg.matrix_power``.\n>* PR 2125: Add ``np.roots``.\n>* PR 2129: Add ``np.linalg.{eigvals,eigh,eigvalsh}``.\n>* PR 2126: Add array-to-array broadcasting.\n>* PR 2069: Add hstack and related functions.\n>* PR 2128: Allow for vectorizing a jitted function. (thanks to dhirschfeld)\n>* PR 2117: Update examples and make them test-able.\n>* PR 2127: Refactor interpreter class and its results.\n\n>Fixes:\n\n>* PR 2149: Workaround MSVC9.0 SP1 fmod bug kb982107.\n>* PR 2145, Issue 2009: Fixes kwargs for jitclass ``__init__`` method.\n>* PR 2150: Fix slowdown in objmode fallback.\n>* PR 2050, Issue 1259: Fix liveness problem with some generator loops.\n>* PR 2072, Issue 1995: Right shift of unsigned LHS should be logical.\n>* PR 2115, Issue 1466: Fix inspect_types() error due to mangled variable name.\n>* PR 2119, Issue 2118: Fix array type created from record-dtype.\n>* PR 2122, Issue 1808: Fix returning a generator due to datamodel error.\n\n\n\n\n>### 0.28.1\n\n>--------------\n\n>This is a bug-fix release to resolve packaging issues with setuptools\n>dependency.\n\n\n\n\n>### 0.28.0\n\n>--------------\n\n>Amongst other improvements, this version improves again the level of\n>support for linear algebra -- functions from the :mod:`numpy.linalg`\n>module.  Also, our random generator is now guaranteed to be thread-safe\n>and fork-safe.\n\n>Improvements:\n\n>* PR 2019: Add the ``intrinsic`` decorator to define low-level\n>  subroutines callable from JIT functions (this is considered\n>  a private API for now).\n>* PR 2059: Implement ``np.concatenate`` and ``np.stack``.\n>* PR 2048: Make random generation fork-safe and thread-safe, producing\n>  independent streams of random numbers for each thread or process.\n>* PR 2031: Add documentation of floating-point pitfalls.\n>* Issue 2053: Avoid polling in parallel CPU target (fixes severe performance\n>  regression on Windows).\n>* Issue 2029: Make default arguments fast.\n>* PR 2052: Add logging to the CUDA driver.\n>* PR 2049: Implement the built-in ``divmod()`` function.\n>* PR 2036: Implement the ``argsort()`` method on arrays.\n>* PR 2046: Improving CUDA memory management by deferring deallocations\n>  until certain thresholds are reached, so as to avoid breaking asynchronous\n>  execution.\n>* PR 2040: Switch the CUDA driver implementation to use CUDA&#39;s\n>  &quot;primary context&quot; API.\n>* PR 2017: Allow ``min(tuple)`` and ``max(tuple)``.\n>* PR 2039: Reduce fork() detection overhead in CUDA.\n>* PR 2021: Handle structured dtypes with titles.\n>* PR 1996: Rewrite looplifting as a transformation on Numba IR.\n>* PR 2014: Implement ``np.linalg.matrix_rank``.\n>* PR 2012: Implement ``np.linalg.cond``.\n>* PR 1985: Rewrite even trivial array expressions, which opens the door\n>  for other optimizations (for example, ``array ** 2`` can be converted\n>  into ``array * array``).\n>* PR 1950: Have ``typeof()`` always raise ValueError on failure.\n>  Previously, it would either raise or return None, depending on the input.\n>* PR 1994: Implement ``np.linalg.norm``.\n>* PR 1987: Implement ``np.linalg.det`` and ``np.linalg.slogdet``.\n>* Issue 1979: Document integer width inference and how to workaround.\n>* PR 1938: Numba is now compatible with LLVM 3.8.\n>* PR 1967: Restrict ``np.linalg`` functions to homogenous dtypes.  Users\n>  wanting to pass mixed-typed inputs have to convert explicitly, which\n>  makes the performance implications more obvious.\n\n>Fixes:\n\n>* PR 2006: ``array(float32) ** int`` should return ``array(float32)``.\n>* PR 2044: Allow reshaping empty arrays.\n>* Issue 2051: Fix refcounting issue when concatenating tuples.\n>* Issue 2000: Make Numpy optional for setup.py, to allow ``pip install``\n>  to work without Numpy pre-installed.\n>* PR 1989: Fix assertion in ``Dispatcher.disable_compile()``.\n>* Issue 2028: Ignore filesystem errors when caching from multiple processes.\n>* Issue 2003: Allow unicode variable and function names (on Python 3).\n>* Issue 1998: Fix deadlock in parallel ufuncs that reacquire the GIL.\n>* PR 1997: Fix random crashes when AOT compiling on certain Windows platforms.\n>* Issue 1988: Propagate jitclass docstring.\n>* Issue 1933: Ensure array constants are emitted with the right alignment.\n\n\n\n\n>### 0.27.0\n\n>--------------\n\n>Improvements:\n\n>* Issue 1976: improve error message when non-integral dimensions are given\n>  to a CUDA kernel.\n>* PR 1970: Optimize the power operator with a static exponent.\n>* PR 1710: Improve contextual information for compiler errors.\n>* PR 1961: Support printing constant strings.\n>* PR 1959: Support more types in the print() function.\n>* PR 1823: Support ``compute_50`` in CUDA backend.\n>* PR 1955: Support ``np.linalg.pinv``.\n>* PR 1896: Improve the ``SmartArray`` API.\n>* PR 1947: Support ``np.linalg.solve``.\n>* Issue 1943: Improve error message when an argument fails typing.4\n>* PR 1927: Support ``np.linalg.lstsq``.\n>* PR 1934: Use system functions for hypot() where possible, instead of our\n>  own implementation.\n>* PR 1929: Add cffi support to ``cfunc`` objects.\n>* PR 1932: Add user-controllable thread pool limits for parallel CPU target.\n>* PR 1928: Support self-recursion when the signature is explicit.\n>* PR 1890: List all lowering implementations in the developer docs.\n>* Issue 1884: Support ``np.lib.stride_tricks.as_strided()``.\n\n>Fixes:\n\n>* Issue 1960: Fix sliced assignment when source and destination areas are\n>  overlapping.\n>* PR 1963: Make CUDA print() atomic.\n>* PR 1956: Allow 0d array constants.\n>* Issue 1945: Allow using Numpy ufuncs in AOT compiled code.\n>* Issue 1916: Fix documentation example for ``generated_jit``.\n>* Issue 1926: Fix regression when caching functions in an IPython session.\n>* Issue 1923: Allow non-intp integer arguments to carray() and farray().\n>* Issue 1908: Accept non-ASCII unicode docstrings on Python 2.\n>* Issue 1874: Allow ``del container[key]`` in object mode.\n>* Issue 1913: Fix set insertion bug when the lookup chain contains deleted\n>  entries.\n>* Issue 1911: Allow function annotations on jitclass methods.\n\n\n\n\n>### 0.26.0\n\n>--------------\n\n>This release adds support for ``cfunc`` decorator for exporting numba jitted\n>functions to 3rd party API that takes C callbacks.  Most of the overhead of\n>using jitclasses inside the interpreter are eliminated.  Support for\n>decompositions in ``numpy.linalg`` are added.  Finally, Numpy 1.11 is\n>supported.\n\n>Improvements:\n\n>* PR 1889: Export BLAS and LAPACK wrappers for pycc.\n>* PR 1888: Faster array power.\n>* Issue 1867: Allow &quot;out&quot; keyword arg for dufuncs.\n>* PR 1871: ``carray()`` and ``farray()`` for creating arrays from pointers.\n>* PR 1855: ``cfunc`` decorator for exporting as ctypes function.\n>* PR 1862: Add support for ``numpy.linalg.qr``.\n>* PR 1851: jitclass support for &#39;_&#39; and &#39;__&#39; prefixed attributes.\n>* PR 1842: Optimize jitclass in Python interpreter.\n>* Issue 1837: Fix CUDA simulator issues with device function.\n>* PR 1839: Add support for decompositions from ``numpy.linalg``.\n>* PR 1829: Support Python enums.\n>* PR 1828: Add support for ``numpy.random.rand()``` and\n>  ``numpy.random.randn()``\n>* Issue 1825: Use of 0-darray in place of scalar index.\n>* Issue 1824: Scalar arguments to object mode gufuncs.\n>* Issue 1813: Let bitwise bool operators return booleans, not integers.\n>* Issue 1760: Optional arguments in generators.\n>* PR 1780: Numpy 1.11 support.\n\n\n\n\n>### 0.25.0\n\n>--------------\n\n>This release adds support for ``set`` objects in nopython mode.  It also\n>adds support for many missing Numpy features and functions.  It improves\n>Numba&#39;s compatibility and performance when using a distributed execution\n>framework such as dask, distributed or Spark.  Finally, it removes\n>compatibility with Python 2.6, Python 3.3 and Numpy 1.6.\n\n>Improvements:\n\n>* Issue 1800: Add erf(), erfc(), gamma() and lgamma() to CUDA targets.\n>* PR 1793: Implement more Numpy functions: np.bincount(), np.diff(),\n>  np.digitize(), np.histogram(), np.searchsorted() as well as NaN-aware\n>  reduction functions (np.nansum(), np.nanmedian(), etc.)\n>* PR 1789: Optimize some reduction functions such as np.sum(), np.prod(),\n>  np.median(), etc.\n>* PR 1752: Make CUDA features work in dask, distributed and Spark.\n>* PR 1787: Support np.nditer() for fast multi-array indexing with\n>  broadcasting.\n>* PR 1799: Report JIT-compiled functions as regular Python functions\n>  when profiling (allowing to see the filename and line number where a\n>  function is defined).\n>* PR 1782: Support np.any() and np.all().\n>* Issue 1788: Support the iter() and next() built-in functions.\n>* PR 1778: Support array.astype().\n>* Issue 1775: Allow the user to set the target CPU model for AOT compilation.\n>* PR 1758: Support creating random arrays using the ``size`` parameter\n>  to the np.random APIs.\n>* PR 1757: Support len() on array.flat objects.\n>* PR 1749: Remove Numpy 1.6 compatibility.\n>* PR 1748: Remove Python 2.6 and 3.3 compatibility.\n>* PR 1735: Support the ``not in`` operator as well as operator.contains().\n>* PR 1724: Support homogenous sets in nopython mode.\n>* Issue 875: make compilation of array constants faster.\n\n>Fixes:\n\n>* PR 1795: Fix a massive performance issue when calling Numba functions\n>  with distributed, Spark or a similar mechanism using serialization.\n>* Issue 1784: Make jitclasses usable with NUMBA_DISABLE_JIT=1.\n>* Issue 1786: Allow using linear algebra functions when profiling.\n>* Issue 1796: Fix np.dot() memory leak on non-contiguous inputs.\n>* PR 1792: Fix static negative indexing of tuples.\n>* Issue 1771: Use fallback cache directory when __pycache__ isn&#39;t writable,\n>  such as when user code is installed in a system location.\n>* Issue 1223: Use Numpy error model in array expressions (e.g. division\n>  by zero returns ``inf`` or ``nan`` instead of raising an error).\n>* Issue 1640: Fix np.random.binomial() for large n values.\n>* Issue 1643: Improve error reporting when passing an invalid spec to\n>  ``jitclass``.\n>* PR 1756: Fix slicing with a negative step and an omitted start.\n\n\n\n\n>### 0.24.0\n\n>--------------\n\n>This release introduces several major changes, including the ``generated_jit``\n>decorator for flexible specializations as with Julia&#39;s &quot;``generated``&quot; macro,\n>or the SmartArray array wrapper type that allows seamless transfer of array\n>data between the CPU and the GPU.\n\n>This will be the last version to support Python 2.6, Python 3.3 and Numpy 1.6.\n\n>Improvements:\n\n>* PR 1723: Improve compatibility of JIT functions with the Python profiler.\n>* PR 1509: Support array.ravel() and array.flatten().\n>* PR 1676: Add SmartArray type to support transparent data management in\n>  multiple address spaces (host &amp; GPU).\n>* PR 1689: Reduce startup overhead of importing Numba.\n>* PR 1705: Support registration of CFFI types as corresponding to known\n>  Numba types.\n>* PR 1686: Document the extension API.\n>* PR 1698: Improve warnings raised during type inference.\n>* PR 1697: Support np.dot() and friends on non-contiguous arrays.\n>* PR 1692: cffi.from_buffer() improvements (allow more pointer types,\n>  allow non-Numpy buffer objects).\n>* PR 1648: Add the ``generated_jit`` decorator.\n>* PR 1651: Implementation of np.linalg.inv using LAPACK.  Thanks to\n>  Matthieu Dartiailh.\n>* PR 1674: Support np.diag().\n>* PR 1673: Improve error message when looking up an attribute on an\n>  unknown global.\n>* Issue 1569: Implement runtime check for the LLVM locale bug.\n>* PR 1612: Switch to LLVM 3.7 in sync with llvmlite.\n>* PR 1624: Allow slice assignment of sequence to array.\n>* PR 1622: Support slicing tuples with a constant slice.\n\n>Fixes:\n\n>* Issue 1722: Fix returning an optional boolean (bool or None).\n>* Issue 1734: NRT decref bug when variable is del&#39;ed before being defined,\n>  leading to a possible memory leak.\n>* PR 1732: Fix tuple getitem regression for CUDA target.\n>* PR 1718: Mishandling of optional to optional casting.\n>* PR 1714: Fix .compile() on a JIT function not respecting ._can_compile.\n>* Issue 1667: Fix np.angle() on arrays.\n>* Issue 1690: Fix slicing with an omitted stop and a negative step value.\n>* PR 1693: Fix gufunc bug in handling scalar formal arg with non-scalar\n>  input value.\n>* PR 1683: Fix parallel testing under Windows.\n>* Issue 1616: Use system-provided versions of C99 math where possible.\n>* Issue 1652: Reductions of bool arrays (e.g. sum() or mean()) should\n>  return integers or floats, not bools.\n>* Issue 1664: Fix regression when indexing a record array with a constant\n>  index.\n>* PR 1661: Disable AVX on old Linux kernels.\n>* Issue 1636: Allow raising an exception looked up on a module.\n\n\n\n\n>### 0.23.1\n\n>--------------\n\n>This is a bug-fix release to address several regressions introduced\n>in the 0.23.0 release, and a couple other issues.\n\n>Fixes:\n\n>* Issue 1645: CUDA ufuncs were broken in 0.23.0.\n>* Issue 1638: Check tuple sizes when passing a list of tuples.\n>* Issue 1630: Parallel ufunc would keep eating CPU even after finishing\n>  under Windows.\n>* Issue 1628: Fix ctypes and cffi tests under Windows with Python 3.5.\n>* Issue 1627: Fix xrange() support.\n>* PR 1611: Rewrite variable liveness analysis.\n>* Issue 1610: Allow nested calls between explicitly-typed ufuncs.\n>* Issue 1593: Fix `*args` in object mode.\n\n\n\n\n>### 0.23.0\n\n>--------------\n\n>This release introduces JIT classes using the new ``jitclass`` decorator,\n>allowing user-defined structures for nopython mode.  Other improvements\n>and bug fixes are listed below.\n\n>Improvements:\n\n>* PR 1609: Speed up some simple math functions by inlining them\n>  in their caller\n>* PR 1571: Implement JIT classes\n>* PR 1584: Improve typing of array indexing\n>* PR 1583: Allow printing booleans\n>* PR 1542: Allow negative values in np.reshape()\n>* PR 1560: Support vector and matrix dot product, including ``np.dot()``\n>  and the ```` operator in Python 3.5\n>* PR 1546: Support field lookup on record arrays and scalars (i.e.\n>  ``array[&#39;field&#39;]`` in addition to ``array.field``)\n>* PR 1440: Support the HSA wavebarrier() and activelanepermute_wavewidth()\n>  intrinsics\n>* PR 1540: Support np.angle()\n>* PR 1543: Implement CPU multithreaded gufuncs (target=&quot;parallel&quot;)\n>* PR 1551: Allow scalar arguments in np.where(), np.empty_like().\n>* PR 1516: Add some more examples from NumbaPro\n>* PR 1517: Support np.sinc()\n\n>Fixes:\n\n>* Issue 1603: Fix calling a non-cached function from a cached function\n>* Issue 1594: Ensure a list is homogenous when unboxing\n>* Issue 1595: Replace deprecated use of get_pointer_to_function()\n>* Issue 1586: Allow tests to be run by different users on the same machine\n>* Issue 1587: Make CudaAPIError picklable\n>* Issue 1568: Fix using Numba from inside Visual Studio 2015\n>* Issue 1559: Fix serializing a jit function referring a renamed module\n>* PR 1508: Let reshape() accept integer argument(s), not just a tuple\n>* Issue 1545: Improve error checking when unboxing list objects\n>* Issue 1538: Fix array broadcasting in CUDA gufuncs\n>* Issue 1526: Fix a reference count handling bug\n\n\n\n\n>### 0.22.1\n\n>--------------\n\n>This is a bug-fix release to resolve some packaging issues and other\n>problems found in the 0.22.0 release.\n\n>Fixes:\n\n>* PR 1515: Include MANIFEST.in in MANIFEST.in so that sdist still works from\n>  source tar files.\n>* PR 1518: Fix reference counting bug caused by hidden alias\n>* PR 1519: Fix erroneous assert when passing nopython=True to guvectorize.\n>* PR 1521: Fix cuda.test()\n\n\n\n>### 0.22.0\n\n>--------------\n\n>This release features several highlights: Python 3.5 support, Numpy 1.10\n>support, Ahead-of-Time compilation of extension modules, additional\n>vectorization features that were previously only available with the\n>proprietary extension NumbaPro, improvements in array indexing.\n\n>Improvements:\n\n>* PR 1497: Allow scalar input type instead of size-1 array to guvectorize\n>* PR 1480: Add distutils support for AOT compilation\n>* PR 1460: Create a new API for Ahead-of-Time (AOT) compilation\n>* PR 1451: Allow passing Python lists to JIT-compiled functions, and\n>  reflect mutations on function return\n>* PR 1387: Numpy 1.10 support\n>* PR 1464: Support cffi.FFI.from_buffer()\n>* PR 1437: Propagate errors raised from Numba-compiled ufuncs; also,\n>  let &quot;division by zero&quot; and other math errors produce a warning instead\n>  of exiting the function early\n>* PR 1445: Support a subset of fancy indexing\n>* PR 1454: Support &quot;out-of-line&quot; CFFI modules\n>* PR 1442: Improve array indexing to support more kinds of basic slicing\n>* PR 1409: Support explicit CUDA memory fences\n>* PR 1435: Add support for vectorize() and guvectorize() with HSA\n>* PR 1432: Implement numpy.nonzero() and numpy.where()\n>* PR 1416: Add support for vectorize() and guvectorize() with CUDA,\n>  as originally provided in NumbaPro\n>* PR 1424: Support in-place array operators\n>* PR 1414: Python 3.5 support\n>* PR 1404: Add the parallel ufunc functionality originally provided in\n>  NumbaPro\n>* PR 1393: Implement sorting on arrays and lists\n>* PR 1415: Add functions to estimate the occupancy of a CUDA kernel\n>* PR 1360: The JIT cache now stores the compiled object code, yielding\n>  even larger speedups.\n>* PR 1402: Fixes for the ARMv7 (armv7l) architecture under Linux\n>* PR 1400: Add the cuda.reduce() decorator originally provided in NumbaPro\n\n>Fixes:\n\n>* PR 1483: Allow np.empty_like() and friends on non-contiguous arrays\n>* Issue 1471: Allow caching JIT functions defined in IPython\n>* PR 1457: Fix flat indexing of boolean arrays\n>* PR 1421: Allow calling Numpy ufuncs, without an explicit output, on\n>  non-contiguous arrays\n>* Issue 1411: Fix crash when unpacking a tuple containing a Numba-allocated array\n>* Issue 1394: Allow unifying range_state32 and range_state64\n>* Issue 1373: Fix code generation error on lists of bools\n\n\n\n\n>### 0.21.0\n\n>--------------\n\n>This release introduces support for AMD&#39;s Heterogeneous System Architecture,\n>which allows memory to be shared directly between the CPU and the GPU.\n>Other major enhancements are support for lists and the introduction of\n>an opt-in compilation cache.\n\n>Improvements:\n\n>* PR 1391: Implement print() for CUDA code\n>* PR 1366: Implement integer typing enhancement proposal (NBEP 1)\n>* PR 1380: Support the one-argument type() builtin\n>* PR 1375: Allow boolean evaluation of lists and tuples\n>* PR 1371: Support array.view() in CUDA mode\n>* PR 1369: Support named tuples in nopython mode\n>* PR 1250: Implement numpy.median().\n>* PR 1289: Make dispatching faster when calling a JIT-compiled function\n>  from regular Python\n>* Issue 1226: Improve performance of integer power\n>* PR 1321: Document features supported with CUDA\n>* PR 1345: HSA support\n>* PR 1343: Support lists in nopython mode\n>* PR 1356: Make Numba-allocated memory visible to tracemalloc\n>* PR 1363: Add an environment variable NUMBA_DEBUG_TYPEINFER\n>* PR 1051: Add an opt-in, per-function compilation cache\n\n>Fixes:\n\n>* Issue 1372: Some array expressions would fail rewriting when involved\n>  the same variable more than once, or a unary operator\n>* Issue 1385: Allow CUDA local arrays to be declared anywhere in a function\n>* Issue 1285: Support datetime64 and timedelta64 in Numpy reduction functions\n>* Issue 1332: Handle the EXTENDED_ARG opcode.\n>* PR 1329: Handle the ``in`` operator in object mode\n>* Issue 1322: Fix augmented slice assignment on Python 2\n>* PR 1357: Fix slicing with some negative bounds or step values.\n\n\n\n\n>### 0.20.0\n\n>--------------\n\n>This release updates Numba to use LLVM 3.6 and CUDA 7 for CUDA support.\n>Following the platform deprecation in CUDA 7, Numba&#39;s CUDA feature is no\n>longer supported on 32-bit platforms.  The oldest supported version of\n>Windows is Windows 7.\n\n>Improvements:\n\n>* Issue 1203: Support indexing ndarray.flat\n>* PR 1200: Migrate cgutils to llvmlite\n>* PR 1190: Support more array methods: .transpose(), .T, .copy(), .reshape(), .view()\n>* PR 1214: Simplify setup.py and avoid manual maintenance\n>* PR 1217: Support datetime64 and timedelta64 constants\n>* PR 1236: Reload environment variables when compiling\n>* PR 1225: Various speed improvements in generated code\n>* PR 1252: Support cmath module in CUDA\n>* PR 1238: Use 32-byte aligned allocator to optimize for AVX\n>* PR 1258: Support numpy.frombuffer()\n>* PR 1274: Use TravisCI container infrastructure for lower wait time\n>* PR 1279: Micro-optimize overload resolution in call dispatch\n>* Issue 1248: Improve error message when return type unification fails\n\n>Fixes:\n\n>* Issue 1131: Handling of negative zeros in np.conjugate() and np.arccos()\n>* Issue 1188: Fix slow array return\n>* Issue 1164: Avoid warnings from CUDA context at shutdown\n>* Issue 1229: Respect the writeable flag in arrays\n>* Issue 1244: Fix bug in refcount pruning pass\n>* Issue 1251: Fix partial left-indexing of Fortran contiguous array\n>* Issue 1264: Fix compilation error in array expression\n>* Issue 1254: Fix error when yielding array objects\n>* Issue 1276: Fix nested generator use\n\n\n\n\n>### 0.19.2\n\n>--------------\n\n>This release fixes the source distribution on pypi.  The only change is in the\n>setup.py file.  We do not plan to provide a conda package as this release is\n>essentially the same as 0.19.1 for conda users.\n\n\n\n\n>### 0.19.1\n\n>--------------\n\n>* Issue 1196:\n\n>  * fix double-free segfault due to redundant variable deletion in the\n>    Numba IR (1195)\n>  * fix use-after-delete in array expression rewrite pass\n\n\n\n\n>### 0.19.0\n\n>--------------\n\n>This version introduces memory management in the Numba runtime, allowing to\n>allocate new arrays inside Numba-compiled functions.  There is also a rework\n>of the ufunc infrastructure, and an optimization pass to collapse cascading\n>array operations into a single efficient loop.\n\n>.. warning::\n>   Support for Windows XP and Vista with all compiler targets and support\n>   for 32-bit platforms (Win/Mac/Linux) with the CUDA compiler target are\n>   deprecated.  In the next release of Numba, the oldest version of Windows\n>   supported will be Windows 7.  CPU compilation will remain supported\n>   on 32-bit Linux and Windows platforms.\n\n>Known issues:\n\n>* There are some performance regressions in very short running ``nopython``\n>  functions due to the additional overhead incurred by memory management.\n>  We will work to reduce this overhead in future releases.\n\n>Features:\n\n>* Issue 1181: Add a Frequently Asked Questions section to the documentation.\n>* Issue 1162: Support the ``cumsum()`` and ``cumprod()`` methods on Numpy\n>  arrays.\n>* Issue 1152: Support the ``*args`` argument-passing style.\n>* Issue 1147: Allow passing character sequences as arguments to\n>  JIT-compiled functions.\n>* Issue 1110: Shortcut deforestation and loop fusion for array expressions.\n>* Issue 1136: Support various Numpy array constructors, for example\n>  numpy.zeros() and numpy.zeros_like().\n>* Issue 1127: Add a CUDA simulator running on the CPU, enabled with the\n>  NUMBA_ENABLE_CUDASIM environment variable.\n>* Issue 1086: Allow calling standard Numpy ufuncs without an explicit\n>  output array from ``nopython`` functions.\n>* Issue 1113: Support keyword arguments when calling numpy.empty()\n>  and related functions.\n>* Issue 1108: Support the ``ctypes.data`` attribute of Numpy arrays.\n>* Issue 1077: Memory management for array allocations in ``nopython`` mode.\n>* Issue 1105: Support calling a ctypes function that takes ctypes.py_object\n>  parameters.\n>* Issue 1084: Environment variable NUMBA_DISABLE_JIT disables compilation\n>  of ``jit`` functions, instead calling into the Python interpreter\n>  when called.  This allows easier debugging of multiple jitted functions.\n>* Issue 927: Allow gufuncs with no output array.\n>* Issue 1097: Support comparisons between tuples.\n>* Issue 1075: Numba-generated ufuncs can now be called from ``nopython``\n>  functions.\n>* Issue 1062: ``vectorize`` now allows omitting the signatures, and will\n>  compile the required specializations on the fly (like ``jit`` does).\n>* Issue 1027: Support numpy.round().\n>* Issue 1085: Allow returning a character sequence (as fetched from a\n>  structured array) from a JIT-compiled function.\n\n>Fixes:\n\n>* Issue 1170: Ensure ``ndindex()``, ``ndenumerate()`` and ``ndarray.flat``\n>  work properly inside generators.\n>* Issue 1151: Disallow unpacking of tuples with the wrong size.\n>* Issue 1141: Specify install dependencies in setup.py.\n>* Issue 1106: Loop-lifting would fail when the lifted loop does not\n>  produce any output values for the function tail.\n>* Issue 1103: Fix mishandling of some inputs when a JIT-compiled function\n>  is called with multiple array layouts.\n>* Issue 1089: Fix range() with large unsigned integers.\n>* Issue 1088: Install entry-point scripts (numba, pycc) from the conda\n>  build recipe.\n>* Issue 1081: Constant structured scalars now work properly.\n>* Issue 1080: Fix automatic promotion of booleans to integers.\n\n\n\n\n>### 0.18.2\n\n>--------------\n\n>Bug fixes:\n\n>* Issue 1073: Fixes missing template file for HTML annotation\n>* Issue 1074: Fixes CUDA support on Windows machine due to NVVM API mismatch\n\n\n\n\n>### 0.18.1\n\n>--------------\n\n>Version 0.18.0 is not officially released.\n\n>This version removes the old deprecated and undocumented ``argtypes`` and\n>``restype`` arguments to the ``jit`` decorator.  Function signatures\n>should always be passed as the first argument to ``jit``.\n\n>Features:\n\n>* Issue 960: Add inspect_llvm() and inspect_asm() methods to JIT-compiled\n>  functions: they output the LLVM IR and the native assembler source of the\n>  compiled function, respectively.\n>* Issue 990: Allow passing tuples as arguments to JIT-compiled functions\n>  in ``nopython`` mode.\n>* Issue 774: Support two-argument round() in ``nopython`` mode.\n>* Issue 987: Support missing functions from the math module in nopython\n>  mode: frexp(), ldexp(), gamma(), lgamma(), erf(), erfc().\n>* Issue 995: Improve code generation for round() on Python 3.\n>* Issue 981: Support functions from the random and numpy.random modules\n>  in ``nopython`` mode.\n>* Issue 979: Add cuda.atomic.max().\n>* Issue 1006: Improve exception raising and reporting.  It is now allowed\n>  to raise an exception with an error message in ``nopython`` mode.\n>* Issue 821: Allow ctypes- and cffi-defined functions as arguments to\n>  ``nopython`` functions.\n>* Issue 901: Allow multiple explicit signatures with ``jit``.  The\n>  signatures must be passed in a list, as with ``vectorize``.\n>* Issue 884: Better error message when a JIT-compiled function is called\n>  with the wrong types.\n>* Issue 1010: Simpler and faster CUDA argument marshalling thanks to a\n>  refactoring of the data model.\n>* Issue 1018: Support arrays of scalars inside Numpy structured types.\n>* Issue 808: Reduce Numba import time by half.\n>* Issue 1021: Support the buffer protocol in ``nopython`` mode.\n>  Buffer-providing objects, such as ``bytearray``, ``array.array`` or\n>  ``memoryview`` support array-like operations such as indexing and iterating.\n>  Furthermore, some standard attributes on the ``memoryview`` object are\n>  supported.\n>* Issue 1030: Support nested arrays in Numpy structured arrays.\n>* Issue 1033: Implement the inspect_types(), inspect_llvm() and inspect_asm()\n>  methods for CUDA kernels.\n>* Issue 1029: Support Numpy structured arrays with CUDA as well.\n>* Issue 1034: Support for generators in nopython and object mode.\n>* Issue 1044: Support default argument values when calling Numba-compiled\n>  functions.\n>* Issue 1048: Allow calling Numpy scalar constructors from CUDA functions.\n>* Issue 1047: Allow indexing a multi-dimensional array with a single integer,\n>  to take a view.\n>* Issue 1050: Support len() on tuples.\n>* Issue 1011: Revive HTML annotation.\n\n>Fixes:\n\n>* Issue 977: Assignment optimization was too aggressive.\n>* Issue 561: One-argument round() now returns an int on Python 3.\n>* Issue 1001: Fix an unlikely bug where two closures with the same name\n>  and id() would compile to the same LLVM function name, despite different\n>  closure values.\n>* Issue 1006: Fix reference leak when a JIT-compiled function is disposed of.\n>* Issue 1017: Update instructions for CUDA in the README.\n>* Issue 1008: Generate shorter LLVM type names to avoid segfaults with CUDA.\n>* Issue 1005: Properly clean up references when raising an exception from\n>  object mode.\n>* Issue 1041: Fix incompatibility between Numba and the third-party\n>  library &quot;future&quot;.\n>* Issue 1053: Fix the size attribute of CUDA shared arrays.\n\n\n\n\n>### 0.18.0\n\n>-------\n\n>This is a minor release that fixes several issues (263, 262, 258, 237) with\n>the wheel build.  In addition, we have minor fixes for running on PPC64LE\n>platforms (261).  And, we added CI testing against PyPy (253).\n\n\n\n\n>### 0.17.1\n\n>-------\n\n>This is a bugfix release that addresses issue 258 that our LLVM\n>binding shared library is missing from the wheel builds.\n\n\n\n\n>### 0.17.0\n\n>--------------\n\n>The major focus in this release has been a rewrite of the documentation.\n>The new documentation is better structured and has more detailed coverage\n>of Numba features and APIs.  It can be found online at\n>http://numba.pydata.org/numba-doc/dev/index.html\n\n>Features:\n\n>* Issue 895: LLVM can now inline nested function calls in ``nopython`` mode.\n>* Issue 863: CUDA kernels can now infer the types of their arguments\n>  (&quot;autojit&quot;-like).\n>* Issue 833: Support numpy.{min,max,argmin,argmax,sum,mean,var,std}\n>  in ``nopython`` mode.\n>* Issue 905: Add a ``nogil`` argument to the ``jit`` decorator, to\n>  release the GIL in ``nopython`` mode.\n>* Issue 829: Add a ``identity`` argument to ``vectorize`` and\n>  ``guvectorize``, to set the identity value of the ufunc.\n>* Issue 843: Allow indexing 0-d arrays with the empty tuple.\n>* Issue 933: Allow named arguments, not only positional arguments, when\n>  calling a Numba-compiled function.\n>* Issue 902: Support numpy.ndenumerate() in ``nopython`` mode.\n>* Issue 950: AVX is now enabled by default except on Sandy Bridge and\n>  Ivy Bridge CPUs, where it can produce slower code than SSE.\n>* Issue 956: Support constant arrays of structured type.\n>* Issue 959: Indexing arrays with floating-point numbers isn&#39;t allowed\n>  anymore.\n>* Issue 955: Add support for 3D CUDA grids and thread blocks.\n>* Issue 902: Support numpy.ndindex() in ``nopython`` mode.\n>* Issue 951: Numpy number types (``numpy.int8``, etc.) can be used as\n>  constructors for type conversion in ``nopython`` mode.\n\n>Fixes:\n\n>* Issue 889: Fix ``NUMBA_DUMP_ASSEMBLY`` for the CUDA backend.\n>* Issue 903: Fix calling of stdcall functions with ctypes under Windows.\n>* Issue 908: Allow lazy-compiling from several threads at once.\n>* Issue 868: Wrong error message when multiplying a scalar by a non-scalar.\n>* Issue 917: Allow vectorizing with datetime64 and timedelta64 in the\n>  signature (only with unit-less values, though, because of a Numpy limitation).\n>* Issue 431: Allow overloading of cuda device function.\n>* Issue 917: Print out errors occurred in object mode ufuncs.\n>* Issue 923: Numba-compiled ufuncs now inherit the name and doc of the\n>  original Python function.\n>* Issue 928: Fix boolean return value in nested calls.\n>* Issue 915: ``jit`` called with an explicit signature with a mismatching\n>  type of arguments now raises an error.\n>* Issue 784: Fix the truth value of NaNs.\n>* Issue 953: Fix using shared memory in more than one function (kernel or\n>  device).\n>* Issue 970: Fix an uncommon double to uint64 conversion bug on CentOS5\n>  32-bit (C compiler issue).\n\n\n\n\n>### 0.16.0\n\n>--------------\n\n>This release contains a major refactor to switch from llvmpy to `llvmlite &lt;https://github.com/numba/llvmlite&gt;`_\n>as our code generation backend.  The switch is necessary to reconcile\n>different compiler requirements for LLVM 3.5 (needs C++11) and Python\n>extensions (need specific compiler versions on Windows). As a bonus, we have\n>found the use of llvmlite speeds up compilation by a factor of 2!\n\n>Other Major Changes:\n\n>* Faster dispatch for numpy structured arrays\n>* Optimized array.flat()\n>* Improved CPU feature selection\n>* Fix constant tuple regression in macro expansion code\n\n>Known Issues:\n\n>* AVX code generation is still disabled by default due to performance\n>  regressions when operating on misaligned NumPy arrays.  We hope to have a\n>  workaround in the future.\n>* In *extremely* rare circumstances, a `known issue with LLVM 3.5 &lt;http://llvm.org/bugs/show_bug.cgi?id=21423&gt;`_\n>  code generation can cause an ELF relocation error on 64-bit Linux systems.\n\n\n\n\n>### 0.15.1\n\n>--------------\n\n>(This was a bug-fix release that superceded version 0.15 before it was\n>announced.)\n\n>Fixes:\n\n>* Workaround for missing __ftol2 on Windows XP.\n>* Do not lift loops for compilation that contain break statements.\n>* Fix a bug in loop-lifting when multiple values need to be returned to\n>  the enclosing scope.\n>* Handle the loop-lifting case where an accumulator needs to be updated when\n>  the loop count is zero.\n\n\n\n>### 0.15\n\n>------------\n\n>Features:\n\n>* Support for the Python ``cmath`` module.  (NumPy complex functions were\n>  already supported.)\n>* Support for ``.real``, ``.imag``, and `.conjugate()`` on non-complex\n>  numbers.\n>* Add support for ``math.isfinite()`` and ``math.copysign()``.\n>* Compatibility mode: If enabled (off by default), a failure to compile in\n>  object mode will fall back to using the pure Python implementation of the\n>  function.\n>* *Experimental* support for serializing JIT functions with cloudpickle.\n>* Loop-jitting in object mode now works with loops that modify scalars that\n>  are accessed after the loop, such as accumulators.\n>* ``vectorize`` functions can be compiled in object mode.\n>* Numba can now be built using the `Visual C++ Compiler for Python 2.7 &lt;http://aka.ms/vcpython27&gt;`_\n>  on Windows platforms.\n>* CUDA JIT functions can be returned by factory functions with variables in\n>  the closure frozen as constants.\n>* Support for &quot;optional&quot; types in nopython mode, which allow ``None`` to be a\n>  valid value.\n\n>Fixes:\n\n>* If nopython mode compilation fails for any reason, automatically fall back\n>  to object mode (unless nopython=True is passed to jit) rather than raise\n>  an exeception.\n>* Allow function objects to be returned from a function compiled in object\n>  mode.\n>* Fix a linking problem that caused slower platform math functions (such as\n>  ``exp()``) to be used on Windows, leading to performance regressions against\n>  NumPy.\n>* ``min()`` and ``max()`` no longer accept scalars arguments in nopython mode.\n>* Fix handling of ambigous type promotion among several compiled versions of a\n>  JIT function.  The dispatcher will now compile a new version to resolve the\n>  problem.  (issue 776)\n>* Fix float32 to uint64 casting bug on 32-bit Linux.\n>* Fix type inference to allow forced casting of return types.\n>* Allow the shape of a 1D ``cuda.shared.array`` and ``cuda.local.array`` to be\n>  a one-element tuple.\n>* More correct handling of signed zeros.\n>* Add custom implementation of ``atan2()`` on Windows to handle special cases\n>  properly.\n>* Eliminated race condition in the handling of the pagelocked staging area\n>  used when transferring CUDA arrays.\n>* Fix non-deterministic type unification leading to varying performance.\n>  (issue 797)\n\n\n\n\n>### 0.15.0\n\n>-------\n\n>Enhancements:\n\n>* PR 213: Add partial LLVM bindings for ObjectFile.\n>* PR 215: Add inline assembly helpers in the builder.\n>* PR 216: Allow specifying alignment in alloca instructions.\n>* PR 219: Remove unnecessary verify in module linkage.\n\n>Fixes:\n\n>* PR 209, Issue 208: Fix overly restrictive test for library filenames.\n\n\n\n\n>### 0.14\n\n>------------\n\n>Features:\n\n>* Support for nearly all the Numpy math functions (including comparison,\n>  logical, bitwise and some previously missing float functions) in nopython mode.\n>* The Numpy datetime64 and timedelta64 dtypes are supported in nopython mode\n>  with Numpy 1.7 and later.\n>* Support for Numpy math functions on complex numbers in nopython mode.\n>* ndarray.sum() is supported in nopython mode.\n>* Better error messages when unsupported types are used in Numpy math functions.\n>* Set NUMBA_WARNINGS=1 in the environment to see which functions are compiled\n>  in object mode vs. nopython mode.\n>* Add support for the two-argument pow() builtin function in nopython mode.\n>* New developer documentation describing how Numba works, and how to\n>  add new types.\n>* Support for Numpy record arrays on the GPU. (Note: Improper alignment of dtype\n>  fields will cause an exception to be raised.)\n>* Slices on GPU device arrays.\n>* GPU objects can be used as Python context managers to select the active\n>  device in a block.\n>* GPU device arrays can be bound to a CUDA stream.  All subsequent operations\n>  (such as memory copies) will be queued on that stream instead of the default.\n>  This can prevent unnecessary synchronization with other streams.\n\n>Fixes:\n\n>* Generation of AVX instructions has been disabled to avoid performance bugs\n>  when calling external math functions that may use SSE instructions,\n>  especially on OS X.\n>* JIT functions can be removed by the garbage collector when they are no\n>  longer accessible.\n>* Various other reference counting fixes to prevent memory leaks.\n>* Fixed handling of exception when input argument is out of range.\n>* Prevent autojit functions from making unsafe numeric conversions when\n>  called with different numeric types.\n>* Fix a compilation error when an unhashable global value is accessed.\n>* Gracefully handle failure to enable faulthandler in the IPython Notebook.\n>* Fix a bug that caused loop lifting to fail if the loop was inside an\n>  ``else`` block.\n>* Fixed a problem with selecting CUDA devices in multithreaded programs on\n>  Linux.\n>* The ``pow()`` function (and ``**`` operation) applied to two integers now\n>  returns an integer rather than a float.\n>* Numpy arrays using the object dtype no longer cause an exception in the\n>  autojit.\n>* Attempts to write to a global array will cause compilation to fall back\n>  to object mode, rather than attempt and fail at nopython mode.\n>* ``range()`` works with all negative arguments (ex: ``range(-10, -12, -1)``)\n\n\n\n>### 0.14.0\n\n>-------\n\n>Enhancements:\n\n>* PR 104: Add binding to get and view function control-flow graph.\n>* PR 210: Improve llvmdev recipe.\n>* PR 212: Add initializer for the native assembly parser.\n\n\n\n\n>### 0.13.4\n\n>--------------\n\n>Features:\n\n>* Setting and deleting attributes in object mode\n>* Added documentation of supported and currently unsupported numpy ufuncs\n>* Assignment to 1-D numpy array slices\n>* Closure variables and functions can be used in object mode\n>* All numeric global values in modules can be used as constants in JIT\n>  compiled code\n>* Support for the start argument in enumerate()\n>* Inplace arithmetic operations (+=, -=, etc.)\n>* Direct iteration over a 1D numpy array (e.g. &quot;for x in array: ...&quot;)\n>  in nopython mode\n\n>Fixes:\n\n>* Support for NVIDIA compute capability 5.0 devices (such as the GTX 750)\n>* Vectorize no longer crashes/gives an error when bool\\_ is used as return type\n>* Return the correct dictionary when globals() is used in JIT functions\n>* Fix crash bug when creating dictionary literals in object\n>* Report more informative error message on import if llvmpy is too old\n>* Temporarily disable pycc --header, which generates incorrect function\n>  signatures.\n\n\n\n>### 0.13.3\n\n>--------------\n\n>Features:\n\n>* Support for enumerate() and zip() in nopython mode\n>* Increased LLVM optimization of JIT functions to -O1, enabling automatic\n>  vectorization of compiled code in some cases\n>* Iteration over tuples and unpacking of tuples in nopython mode\n>* Support for dict and set (Python &gt;= 2.7) literals in object mode\n\n>Fixes:\n\n>* JIT functions have the same __name__ and __doc__ as the original function.\n>* Numerous improvements to better match the data types and behavior of Python\n>  math functions in JIT compiled code on different platforms.\n>* Importing Numba will no longer throw an exception if the CUDA driver is\n>  present, but cannot be initialized.\n>* guvectorize now properly supports functions with scalar arguments.\n>* CUDA driver is lazily initialized\n\n\n\n>### 0.13.2\n\n>--------------\n\n>Features:\n\n>* vectorize ufunc now can generate SIMD fast path for unit strided array\n>* Added cuda.gridsize\n>* Added preliminary exception handling (raise exception class)\n\n>Fixes:\n\n>* UNARY_POSITIVE\n>* Handling of closures and dynamically generated functions\n>* Global None value\n\n\n\n>### 0.13.1\n\n>--------------\n\n>Features:\n\n>* Initial support for CUDA array slicing\n\n>Fixes:\n\n>* Indirectly fixes numbapro when the system has a incompatible CUDA driver\n>* Fix numba.cuda.detect\n>* Export numba.intp and numba.intc\n\n\n\n>### 0.13\n\n>------------\n\n>Features:\n\n>* Opensourcing NumbaPro CUDA python support in `numba.cuda`\n>* Add support for ufunc array broadcasting\n>* Add support for mixed input types for ufuncs\n>* Add support for returning tuple from jitted function\n\n>Fixes:\n\n>* Fix store slice bytecode handling for Python2\n>* Fix inplace subtract\n>* Fix pycc so that correct header is emitted\n>* Allow vectorize to work on functions with jit decorator\n\n\n\n\n>### 0.13.0\n\n>-------\n\n>Enhancements:\n\n>* PR 176: Switch from LLVM 3.7 to LLVM 3.8.\n>* PR 191: Allow setting the alignment of a global variable.\n>* PR 198: Add missing function attributes.\n>* PR 160: Escape the contents of metadata strings, to allow embedding\n>  any characters.\n>* PR 162: Add support for creating debug information nodes.\n>* PR 200: Improve the usability of metadata emission APIs.\n>* PR 200: Allow calling functions with metadata arguments\n>  (such as ``llvm.dbg.declare``).\n\n>Fixes:\n\n>* PR 190: Suppress optimization remarks printed out in some cases by LLVM.\n>* PR 200: Allow attaching metadata to a ``ret`` instruction.\n\n\n\n\n>### 0.12.2\n\n>--------------\n\n>Fixes:\n\n>* Improved NumPy ufunc support in nopython mode\n>* Misc bug fixes\n\n\n\n\n>### 0.12.1\n\n>--------------\n\n>This version fixed many regressions reported by user for the 0.12 release.\n>This release contains a new loop-lifting mechanism that specializes certains\n>loop patterns for nopython mode compilation.  This avoid direct support\n>for heap-allocating and other very dynamic operations.\n\n>Improvements:\n\n>* Add loop-lifting--jit-ing loops in nopython for object mode code. This allows\n>  functions to allocate NumPy arrays and use Python objects, while the tight\n>  loops in the function can still be compiled in nopython mode. Any arrays that\n>  the tight loop uses should be created before the loop is entered.\n\n>Fixes:\n\n>* Add support for majority of &quot;math&quot; module functions\n>* Fix for...else handling\n>* Add support for builtin round()\n>* Fix tenary if...else support\n>* Revive &quot;numba&quot; script\n>* Fix problems with some boolean expressions\n>* Add support for more NumPy ufuncs\n\n\n\n\n>### 0.12\n\n>this refactor was to simplify the code base to create a better foundation for\n>further work. A secondary objective was to improve the worst case performance\n>to ensure that compiled functions in object mode never run slower than pure\n>Python code (this was a problem in several cases with the old code base). This\n>refactor is still a work in progress and further testing is needed.\n\n>Main improvements:\n\n>* Major refactor of compiler for performance and maintenance reasons\n>* Better fallback to object mode when native mode fails\n>* Improved worst case performance in object mode\n\n>The public interface of numba","created_at":"2017-07-25T12:19:10Z","updated_at":"2017-07-25T12:19:10Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/quanted/qed/pulls/88/commits","review_comments_url":"https://api.github.com/repos/quanted/qed/pulls/88/comments","review_comment_url":"https://api.github.com/repos/quanted/qed/pulls/comments{/number}","comments_url":"https://api.github.com/repos/quanted/qed/issues/88/comments","statuses_url":"https://api.github.com/repos/quanted/qed/statuses/3dc0699d41bdcaf484e6d25f38e1a1a5343cfe2b","head":{"label":"quanted:pyup-scheduled-update-07-25-2017","ref":"pyup-scheduled-update-07-25-2017","sha":"3dc0699d41bdcaf484e6d25f38e1a1a5343cfe2b","user":{"login":"quanted","id":16341712,"avatar_url":"https://avatars2.githubusercontent.com/u/16341712?v=4","gravatar_id":"","url":"https://api.github.com/users/quanted","html_url":"https://github.com/quanted","followers_url":"https://api.github.com/users/quanted/followers","following_url":"https://api.github.com/users/quanted/following{/other_user}","gists_url":"https://api.github.com/users/quanted/gists{/gist_id}","starred_url":"https://api.github.com/users/quanted/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quanted/subscriptions","organizations_url":"https://api.github.com/users/quanted/orgs","repos_url":"https://api.github.com/users/quanted/repos","events_url":"https://api.github.com/users/quanted/events{/privacy}","received_events_url":"https://api.github.com/users/quanted/received_events","type":"Organization","site_admin":false},"repo":{"id":7659428,"name":"qed","full_name":"quanted/qed","owner":{"login":"quanted","id":16341712,"avatar_url":"https://avatars2.githubusercontent.com/u/16341712?v=4","gravatar_id":"","url":"https://api.github.com/users/quanted","html_url":"https://github.com/quanted","followers_url":"https://api.github.com/users/quanted/followers","following_url":"https://api.github.com/users/quanted/following{/other_user}","gists_url":"https://api.github.com/users/quanted/gists{/gist_id}","starred_url":"https://api.github.com/users/quanted/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quanted/subscriptions","organizations_url":"https://api.github.com/users/quanted/orgs","repos_url":"https://api.github.com/users/quanted/repos","events_url":"https://api.github.com/users/quanted/events{/privacy}","received_events_url":"https://api.github.com/users/quanted/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/quanted/qed","description":"Python, JavaScript and Fortran code for hosting EPA web applications and data/model services.","fork":false,"url":"https://api.github.com/repos/quanted/qed","forks_url":"https://api.github.com/repos/quanted/qed/forks","keys_url":"https://api.github.com/repos/quanted/qed/keys{/key_id}","collaborators_url":"https://api.github.com/repos/quanted/qed/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/quanted/qed/teams","hooks_url":"https://api.github.com/repos/quanted/qed/hooks","issue_events_url":"https://api.github.com/repos/quanted/qed/issues/events{/number}","events_url":"https://api.github.com/repos/quanted/qed/events","assignees_url":"https://api.github.com/repos/quanted/qed/assignees{/user}","branches_url":"https://api.github.com/repos/quanted/qed/branches{/branch}","tags_url":"https://api.github.com/repos/quanted/qed/tags","blobs_url":"https://api.github.com/repos/quanted/qed/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/quanted/qed/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/quanted/qed/git/refs{/sha}","trees_url":"https://api.github.com/repos/quanted/qed/git/trees{/sha}","statuses_url":"https://api.github.com/repos/quanted/qed/statuses/{sha}","languages_url":"https://api.github.com/repos/quanted/qed/languages","stargazers_url":"https://api.github.com/repos/quanted/qed/stargazers","contributors_url":"https://api.github.com/repos/quanted/qed/contributors","subscribers_url":"https://api.github.com/repos/quanted/qed/subscribers","subscription_url":"https://api.github.com/repos/quanted/qed/subscription","commits_url":"https://api.github.com/repos/quanted/qed/commits{/sha}","git_commits_url":"https://api.github.com/repos/quanted/qed/git/commits{/sha}","comments_url":"https://api.github.com/repos/quanted/qed/comments{/number}","issue_comment_url":"https://api.github.com/repos/quanted/qed/issues/comments{/number}","contents_url":"https://api.github.com/repos/quanted/qed/contents/{+path}","compare_url":"https://api.github.com/repos/quanted/qed/compare/{base}...{head}","merges_url":"https://api.github.com/repos/quanted/qed/merges","archive_url":"https://api.github.com/repos/quanted/qed/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/quanted/qed/downloads","issues_url":"https://api.github.com/repos/quanted/qed/issues{/number}","pulls_url":"https://api.github.com/repos/quanted/qed/pulls{/number}","milestones_url":"https://api.github.com/repos/quanted/qed/milestones{/number}","notifications_url":"https://api.github.com/repos/quanted/qed/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/quanted/qed/labels{/name}","releases_url":"https://api.github.com/repos/quanted/qed/releases{/id}","deployments_url":"https://api.github.com/repos/quanted/qed/deployments","created_at":"2013-01-17T03:59:18Z","updated_at":"2017-07-21T15:36:10Z","pushed_at":"2017-07-25T12:19:09Z","git_url":"git://github.com/quanted/qed.git","ssh_url":"git@github.com:quanted/qed.git","clone_url":"https://github.com/quanted/qed.git","svn_url":"https://github.com/quanted/qed","homepage":"http://qedinternal.epa.gov","size":203301,"stargazers_count":7,"watchers_count":7,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":15,"forks":1,"open_issues":15,"watchers":7,"default_branch":"master"}},"base":{"label":"quanted:dev","ref":"dev","sha":"27699aabc401f067f9f5feb906dd3f8a81ab4da5","user":{"login":"quanted","id":16341712,"avatar_url":"https://avatars2.githubusercontent.com/u/16341712?v=4","gravatar_id":"","url":"https://api.github.com/users/quanted","html_url":"https://github.com/quanted","followers_url":"https://api.github.com/users/quanted/followers","following_url":"https://api.github.com/users/quanted/following{/other_user}","gists_url":"https://api.github.com/users/quanted/gists{/gist_id}","starred_url":"https://api.github.com/users/quanted/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quanted/subscriptions","organizations_url":"https://api.github.com/users/quanted/orgs","repos_url":"https://api.github.com/users/quanted/repos","events_url":"https://api.github.com/users/quanted/events{/privacy}","received_events_url":"https://api.github.com/users/quanted/received_events","type":"Organization","site_admin":false},"repo":{"id":7659428,"name":"qed","full_name":"quanted/qed","owner":{"login":"quanted","id":16341712,"avatar_url":"https://avatars2.githubusercontent.com/u/16341712?v=4","gravatar_id":"","url":"https://api.github.com/users/quanted","html_url":"https://github.com/quanted","followers_url":"https://api.github.com/users/quanted/followers","following_url":"https://api.github.com/users/quanted/following{/other_user}","gists_url":"https://api.github.com/users/quanted/gists{/gist_id}","starred_url":"https://api.github.com/users/quanted/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quanted/subscriptions","organizations_url":"https://api.github.com/users/quanted/orgs","repos_url":"https://api.github.com/users/quanted/repos","events_url":"https://api.github.com/users/quanted/events{/privacy}","received_events_url":"https://api.github.com/users/quanted/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/quanted/qed","description":"Python, JavaScript and Fortran code for hosting EPA web applications and data/model services.","fork":false,"url":"https://api.github.com/repos/quanted/qed","forks_url":"https://api.github.com/repos/quanted/qed/forks","keys_url":"https://api.github.com/repos/quanted/qed/keys{/key_id}","collaborators_url":"https://api.github.com/repos/quanted/qed/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/quanted/qed/teams","hooks_url":"https://api.github.com/repos/quanted/qed/hooks","issue_events_url":"https://api.github.com/repos/quanted/qed/issues/events{/number}","events_url":"https://api.github.com/repos/quanted/qed/events","assignees_url":"https://api.github.com/repos/quanted/qed/assignees{/user}","branches_url":"https://api.github.com/repos/quanted/qed/branches{/branch}","tags_url":"https://api.github.com/repos/quanted/qed/tags","blobs_url":"https://api.github.com/repos/quanted/qed/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/quanted/qed/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/quanted/qed/git/refs{/sha}","trees_url":"https://api.github.com/repos/quanted/qed/git/trees{/sha}","statuses_url":"https://api.github.com/repos/quanted/qed/statuses/{sha}","languages_url":"https://api.github.com/repos/quanted/qed/languages","stargazers_url":"https://api.github.com/repos/quanted/qed/stargazers","contributors_url":"https://api.github.com/repos/quanted/qed/contributors","subscribers_url":"https://api.github.com/repos/quanted/qed/subscribers","subscription_url":"https://api.github.com/repos/quanted/qed/subscription","commits_url":"https://api.github.com/repos/quanted/qed/commits{/sha}","git_commits_url":"https://api.github.com/repos/quanted/qed/git/commits{/sha}","comments_url":"https://api.github.com/repos/quanted/qed/comments{/number}","issue_comment_url":"https://api.github.com/repos/quanted/qed/issues/comments{/number}","contents_url":"https://api.github.com/repos/quanted/qed/contents/{+path}","compare_url":"https://api.github.com/repos/quanted/qed/compare/{base}...{head}","merges_url":"https://api.github.com/repos/quanted/qed/merges","archive_url":"https://api.github.com/repos/quanted/qed/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/quanted/qed/downloads","issues_url":"https://api.github.com/repos/quanted/qed/issues{/number}","pulls_url":"https://api.github.com/repos/quanted/qed/pulls{/number}","milestones_url":"https://api.github.com/repos/quanted/qed/milestones{/number}","notifications_url":"https://api.github.com/repos/quanted/qed/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/quanted/qed/labels{/name}","releases_url":"https://api.github.com/repos/quanted/qed/releases{/id}","deployments_url":"https://api.github.com/repos/quanted/qed/deployments","created_at":"2013-01-17T03:59:18Z","updated_at":"2017-07-21T15:36:10Z","pushed_at":"2017-07-25T12:19:09Z","git_url":"git://github.com/quanted/qed.git","ssh_url":"git@github.com:quanted/qed.git","clone_url":"https://github.com/quanted/qed.git","svn_url":"https://github.com/quanted/qed","homepage":"http://qedinternal.epa.gov","size":203301,"stargazers_count":7,"watchers_count":7,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":15,"forks":1,"open_issues":15,"watchers":7,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/quanted/qed/pulls/88"},"html":{"href":"https://github.com/quanted/qed/pull/88"},"issue":{"href":"https://api.github.com/repos/quanted/qed/issues/88"},"comments":{"href":"https://api.github.com/repos/quanted/qed/issues/88/comments"},"review_comments":{"href":"https://api.github.com/repos/quanted/qed/pulls/88/comments"},"review_comment":{"href":"https://api.github.com/repos/quanted/qed/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/quanted/qed/pulls/88/commits"},"statuses":{"href":"https://api.github.com/repos/quanted/qed/statuses/3dc0699d41bdcaf484e6d25f38e1a1a5343cfe2b"}},"merged":false,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"maintainer_can_modify":false,"commits":4,"additions":4,"deletions":4,"changed_files":1}}
{"actor":{"display_login":"pyup-bot"}}