{"action":"closed","number":41,"pull_request":{"url":"https://api.github.com/repos/bopo/mooquant/pulls/41","id":229976099,"node_id":"MDExOlB1bGxSZXF1ZXN0MjI5OTc2MDk5","html_url":"https://github.com/bopo/mooquant/pull/41","diff_url":"https://github.com/bopo/mooquant/pull/41.diff","patch_url":"https://github.com/bopo/mooquant/pull/41.patch","issue_url":"https://api.github.com/repos/bopo/mooquant/issues/41","number":41,"state":"closed","locked":false,"title":"Update pytest to 3.10.1","user":{"login":"pyup-bot","id":16239342,"node_id":"MDQ6VXNlcjE2MjM5MzQy","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":"\nThis PR updates [pytest](https://pypi.org/project/pytest) from **3.8.1** to **3.10.1**.\n\n\n\n<details>\n  <summary>Changelog</summary>\n  \n  \n   ### 3.10.1\n   ```\n   ==========================\n\nBug Fixes\n---------\n\n- `4287 &lt;https://github.com/pytest-dev/pytest/issues/4287&gt;`_: Fix nested usage of debugging plugin (pdb), e.g. with pytester&#39;s ``testdir.runpytest``.\n\n\n- `4304 &lt;https://github.com/pytest-dev/pytest/issues/4304&gt;`_: Block the ``stepwise`` plugin if ``cacheprovider`` is also blocked, as one depends on the other.\n\n\n- `4306 &lt;https://github.com/pytest-dev/pytest/issues/4306&gt;`_: Parse ``minversion`` as an actual version and not as dot-separated strings.\n\n\n- `4310 &lt;https://github.com/pytest-dev/pytest/issues/4310&gt;`_: Fix duplicate collection due to multiple args matching the same packages.\n\n\n- `4321 &lt;https://github.com/pytest-dev/pytest/issues/4321&gt;`_: Fix ``item.nodeid`` with resolved symlinks.\n\n\n- `4325 &lt;https://github.com/pytest-dev/pytest/issues/4325&gt;`_: Fix collection of direct symlinked files, where the target does not match ``python_files``.\n\n\n- `4329 &lt;https://github.com/pytest-dev/pytest/issues/4329&gt;`_: Fix TypeError in report_collect with _collect_report_last_write.\n\n\n\nTrivial/Internal Changes\n------------------------\n\n- `4305 &lt;https://github.com/pytest-dev/pytest/issues/4305&gt;`_: Replace byte/unicode helpers in test_capture with python level syntax.\n   ```\n   \n  \n  \n   ### 3.10.0\n   ```\n   ==========================\n\nFeatures\n--------\n\n- `2619 &lt;https://github.com/pytest-dev/pytest/issues/2619&gt;`_: Resume capturing output after ``continue`` with ``__import__(&quot;pdb&quot;).set_trace()``.\n\n  This also adds a new ``pytest_leave_pdb`` hook, and passes in ``pdb`` to the\n  existing ``pytest_enter_pdb`` hook.\n\n\n- `4147 &lt;https://github.com/pytest-dev/pytest/issues/4147&gt;`_: Add ``--sw``, ``--stepwise`` as an alternative to ``--lf -x`` for stopping at the first failure, but starting the next test invocation from that test.  See `the documentation &lt;https://docs.pytest.org/en/latest/cache.htmlstepwise&gt;`__ for more info.\n\n\n- `4188 &lt;https://github.com/pytest-dev/pytest/issues/4188&gt;`_: Make ``--color`` emit colorful dots when not running in verbose mode. Earlier, it would only colorize the test-by-test output if ``--verbose`` was also passed.\n\n\n- `4225 &lt;https://github.com/pytest-dev/pytest/issues/4225&gt;`_: Improve performance with collection reporting in non-quiet mode with terminals.\n\n  The &quot;collecting …&quot; message is only printed/updated every 0.5s.\n\n\n\nBug Fixes\n---------\n\n- `2701 &lt;https://github.com/pytest-dev/pytest/issues/2701&gt;`_: Fix false ``RemovedInPytest4Warning: usage of Session... is deprecated, please use pytest`` warnings.\n\n\n- `4046 &lt;https://github.com/pytest-dev/pytest/issues/4046&gt;`_: Fix problems with running tests in package ``__init__.py`` files.\n\n\n- `4260 &lt;https://github.com/pytest-dev/pytest/issues/4260&gt;`_: Swallow warnings during anonymous compilation of source.\n\n\n- `4262 &lt;https://github.com/pytest-dev/pytest/issues/4262&gt;`_: Fix access denied error when deleting stale directories created by ``tmpdir`` / ``tmp_path``.\n\n\n- `611 &lt;https://github.com/pytest-dev/pytest/issues/611&gt;`_: Naming a fixture ``request`` will now raise a warning: the ``request`` fixture is internal and\n  should not be overwritten as it will lead to internal errors.\n\n- `4266 &lt;https://github.com/pytest-dev/pytest/issues/4266&gt;`_: Handle (ignore) exceptions raised during collection, e.g. with Django&#39;s LazySettings proxy class.\n\n\n\nImproved Documentation\n----------------------\n\n- `4255 &lt;https://github.com/pytest-dev/pytest/issues/4255&gt;`_: Added missing documentation about the fact that module names passed to filter warnings are not regex-escaped.\n\n\n\nTrivial/Internal Changes\n------------------------\n\n- `4272 &lt;https://github.com/pytest-dev/pytest/issues/4272&gt;`_: Display cachedir also in non-verbose mode if non-default.\n\n\n- `4277 &lt;https://github.com/pytest-dev/pytest/issues/4277&gt;`_: pdb: improve message about output capturing with ``set_trace``.\n\n  Do not display &quot;IO-capturing turned off/on&quot; when ``-s`` is used to avoid\n  confusion.\n\n\n- `4279 &lt;https://github.com/pytest-dev/pytest/issues/4279&gt;`_: Improve message and stack level of warnings issued by ``monkeypatch.setenv`` when the value of the environment variable is not a ``str``.\n   ```\n   \n  \n  \n   ### 3.9.3\n   ```\n   =========================\n\nBug Fixes\n---------\n\n- `4174 &lt;https://github.com/pytest-dev/pytest/issues/4174&gt;`_: Fix &quot;ValueError: Plugin already registered&quot; with conftest plugins via symlink.\n\n\n- `4181 &lt;https://github.com/pytest-dev/pytest/issues/4181&gt;`_: Handle race condition between creation and deletion of temporary folders.\n\n\n- `4221 &lt;https://github.com/pytest-dev/pytest/issues/4221&gt;`_: Fix bug where the warning summary at the end of the test session was not showing the test where the warning was originated.\n\n\n- `4243 &lt;https://github.com/pytest-dev/pytest/issues/4243&gt;`_: Fix regression when ``stacklevel`` for warnings was passed as positional argument on python2.\n\n\n\nImproved Documentation\n----------------------\n\n- `3851 &lt;https://github.com/pytest-dev/pytest/issues/3851&gt;`_: Add reference to ``empty_parameter_set_mark`` ini option in documentation of ``pytest.mark.parametrize``\n\n\n\nTrivial/Internal Changes\n------------------------\n\n- `4028 &lt;https://github.com/pytest-dev/pytest/issues/4028&gt;`_: Revert patching of ``sys.breakpointhook`` since it appears to do nothing.\n\n\n- `4233 &lt;https://github.com/pytest-dev/pytest/issues/4233&gt;`_: Apply an import sorter (``reorder-python-imports``) to the codebase.\n\n\n- `4248 &lt;https://github.com/pytest-dev/pytest/issues/4248&gt;`_: Remove use of unnecessary compat shim, six.binary_type\n   ```\n   \n  \n  \n   ### 3.9.2\n   ```\n   =========================\n\nBug Fixes\n---------\n\n- `2909 &lt;https://github.com/pytest-dev/pytest/issues/2909&gt;`_: Improve error message when a recursive dependency between fixtures is detected.\n\n\n- `3340 &lt;https://github.com/pytest-dev/pytest/issues/3340&gt;`_: Fix logging messages not shown in hooks ``pytest_sessionstart()`` and ``pytest_sessionfinish()``.\n\n\n- `3533 &lt;https://github.com/pytest-dev/pytest/issues/3533&gt;`_: Fix unescaped XML raw objects in JUnit report for skipped tests\n\n\n- `3691 &lt;https://github.com/pytest-dev/pytest/issues/3691&gt;`_: Python 2: safely format warning message about passing unicode strings to ``warnings.warn``, which may cause\n  surprising ``MemoryError`` exception when monkey patching ``warnings.warn`` itself.\n\n\n- `4026 &lt;https://github.com/pytest-dev/pytest/issues/4026&gt;`_: Improve error message when it is not possible to determine a function&#39;s signature.\n\n\n- `4177 &lt;https://github.com/pytest-dev/pytest/issues/4177&gt;`_: Pin ``setuptools&gt;=40.0`` to support ``py_modules`` in ``setup.cfg``\n\n\n- `4179 &lt;https://github.com/pytest-dev/pytest/issues/4179&gt;`_: Restore the tmpdir behaviour of symlinking the current test run.\n\n\n- `4192 &lt;https://github.com/pytest-dev/pytest/issues/4192&gt;`_: Fix filename reported by ``warnings.warn`` when using ``recwarn`` under python2.\n   ```\n   \n  \n  \n   ### 3.9.1\n   ```\n   =========================\n\nFeatures\n--------\n\n- `4159 &lt;https://github.com/pytest-dev/pytest/issues/4159&gt;`_: For test-suites containing test classes, the information about the subclassed\n  module is now output only if a higher verbosity level is specified (at least\n  &quot;-vv&quot;).\n   ```\n   \n  \n  \n   ### 3.9.0\n   ```\n   =========================================================================\n\nDeprecations\n------------\n\n- `3616 &lt;https://github.com/pytest-dev/pytest/issues/3616&gt;`_: The following accesses have been documented as deprecated for years, but are now actually emitting deprecation warnings.\n\n  * Access of ``Module``, ``Function``, ``Class``, ``Instance``, ``File`` and ``Item`` through ``Node`` instances. Now\n    users will this warning::\n\n          usage of Function.Module is deprecated, please use pytest.Module instead\n\n    Users should just ``import pytest`` and access those objects using the ``pytest`` module.\n\n  * ``request.cached_setup``, this was the precursor of the setup/teardown mechanism available to fixtures. You can\n    consult `funcarg comparison section in the docs &lt;https://docs.pytest.org/en/latest/funcarg_compare.html&gt;`_.\n\n  * Using objects named ``&quot;Class&quot;`` as a way to customize the type of nodes that are collected in ``Collector``\n    subclasses has been deprecated. Users instead should use ``pytest_collect_make_item`` to customize node types during\n    collection.\n\n    This issue should affect only advanced plugins who create new collection types, so if you see this warning\n    message please contact the authors so they can change the code.\n\n  * The warning that produces the message below has changed to ``RemovedInPytest4Warning``::\n\n          getfuncargvalue is deprecated, use getfixturevalue\n\n\n- `3988 &lt;https://github.com/pytest-dev/pytest/issues/3988&gt;`_: Add a Deprecation warning for pytest.ensuretemp as it was deprecated since a while.\n\n\n\nFeatures\n--------\n\n- `2293 &lt;https://github.com/pytest-dev/pytest/issues/2293&gt;`_: Improve usage errors messages by hiding internal details which can be distracting and noisy.\n\n  This has the side effect that some error conditions that previously raised generic errors (such as\n  ``ValueError`` for unregistered marks) are now raising ``Failed`` exceptions.\n\n\n- `3332 &lt;https://github.com/pytest-dev/pytest/issues/3332&gt;`_: Improve the error displayed when a ``conftest.py`` file could not be imported.\n\n  In order to implement this, a new ``chain`` parameter was added to ``ExceptionInfo.getrepr``\n  to show or hide chained tracebacks in Python 3 (defaults to ``True``).\n\n\n- `3849 &lt;https://github.com/pytest-dev/pytest/issues/3849&gt;`_: Add ``empty_parameter_set_mark=fail_at_collect`` ini option for raising an exception when parametrize collects an empty set.\n\n\n- `3964 &lt;https://github.com/pytest-dev/pytest/issues/3964&gt;`_: Log messages generated in the collection phase are shown when\n  live-logging is enabled and/or when they are logged to a file.\n\n\n- `3985 &lt;https://github.com/pytest-dev/pytest/issues/3985&gt;`_: Introduce ``tmp_path`` as a fixture providing a Path object.\n\n\n- `4013 &lt;https://github.com/pytest-dev/pytest/issues/4013&gt;`_: Deprecation warnings are now shown even if you customize the warnings filters yourself. In the previous version\n  any customization would override pytest&#39;s filters and deprecation warnings would fall back to being hidden by default.\n\n\n- `4073 &lt;https://github.com/pytest-dev/pytest/issues/4073&gt;`_: Allow specification of timeout for ``Testdir.runpytest_subprocess()`` and ``Testdir.run()``.\n\n\n- `4098 &lt;https://github.com/pytest-dev/pytest/issues/4098&gt;`_: Add returncode argument to pytest.exit() to exit pytest with a specific return code.\n\n\n- `4102 &lt;https://github.com/pytest-dev/pytest/issues/4102&gt;`_: Reimplement ``pytest.deprecated_call`` using ``pytest.warns`` so it supports the ``match=&#39;...&#39;`` keyword argument.\n\n  This has the side effect that ``pytest.deprecated_call`` now raises ``pytest.fail.Exception`` instead\n  of ``AssertionError``.\n\n\n- `4149 &lt;https://github.com/pytest-dev/pytest/issues/4149&gt;`_: Require setuptools&gt;=30.3 and move most of the metadata to ``setup.cfg``.\n\n\n\nBug Fixes\n---------\n\n- `2535 &lt;https://github.com/pytest-dev/pytest/issues/2535&gt;`_: Improve error message when test functions of ``unittest.TestCase`` subclasses use a parametrized fixture.\n\n\n- `3057 &lt;https://github.com/pytest-dev/pytest/issues/3057&gt;`_: ``request.fixturenames`` now correctly returns the name of fixtures created by ``request.getfixturevalue()``.\n\n\n- `3946 &lt;https://github.com/pytest-dev/pytest/issues/3946&gt;`_: Warning filters passed as command line options using ``-W`` now take precedence over filters defined in ``ini``\n  configuration files.\n\n\n- `4066 &lt;https://github.com/pytest-dev/pytest/issues/4066&gt;`_: Fix source reindenting by using ``textwrap.dedent`` directly.\n\n\n- `4102 &lt;https://github.com/pytest-dev/pytest/issues/4102&gt;`_: ``pytest.warn`` will capture previously-warned warnings in Python 2. Previously they were never raised.\n\n\n- `4108 &lt;https://github.com/pytest-dev/pytest/issues/4108&gt;`_: Resolve symbolic links for args.\n\n  This fixes running ``pytest tests/test_foo.py::test_bar``, where ``tests``\n  is a symlink to ``project/app/tests``:\n  previously ``project/app/conftest.py`` would be ignored for fixtures then.\n\n\n- `4132 &lt;https://github.com/pytest-dev/pytest/issues/4132&gt;`_: Fix duplicate printing of internal errors when using ``--pdb``.\n\n\n- `4135 &lt;https://github.com/pytest-dev/pytest/issues/4135&gt;`_: pathlib based tmpdir cleanup now correctly handles symlinks in the folder.\n\n\n- `4152 &lt;https://github.com/pytest-dev/pytest/issues/4152&gt;`_: Display the filename when encountering ``SyntaxWarning``.\n\n\n\nImproved Documentation\n----------------------\n\n- `3713 &lt;https://github.com/pytest-dev/pytest/issues/3713&gt;`_: Update usefixtures documentation to clarify that it can&#39;t be used with fixture functions.\n\n\n- `4058 &lt;https://github.com/pytest-dev/pytest/issues/4058&gt;`_: Update fixture documentation to specify that a fixture can be invoked twice in the scope it&#39;s defined for.\n\n\n- `4064 &lt;https://github.com/pytest-dev/pytest/issues/4064&gt;`_: According to unittest.rst, setUpModule and tearDownModule were not implemented, but it turns out they are. So updated the documentation for unittest.\n\n\n- `4151 &lt;https://github.com/pytest-dev/pytest/issues/4151&gt;`_: Add tempir testing example to CONTRIBUTING.rst guide\n\n\n\nTrivial/Internal Changes\n------------------------\n\n- `2293 &lt;https://github.com/pytest-dev/pytest/issues/2293&gt;`_: The internal ``MarkerError`` exception has been removed.\n\n\n- `3988 &lt;https://github.com/pytest-dev/pytest/issues/3988&gt;`_: Port the implementation of tmpdir to pathlib.\n\n\n- `4063 &lt;https://github.com/pytest-dev/pytest/issues/4063&gt;`_: Exclude 0.00 second entries from ``--duration`` output unless ``-vv`` is passed on the command-line.\n\n\n- `4093 &lt;https://github.com/pytest-dev/pytest/issues/4093&gt;`_: Fixed formatting of string literals in internal tests.\n   ```\n   \n  \n  \n   ### 3.8.2\n   ```\n   =========================\n\nDeprecations and Removals\n-------------------------\n\n- `4036 &lt;https://github.com/pytest-dev/pytest/issues/4036&gt;`_: The ``item`` parameter of ``pytest_warning_captured`` hook is now documented as deprecated. We realized only after\n  the ``3.8`` release that this parameter is incompatible with ``pytest-xdist``.\n\n  Our policy is to not deprecate features during bugfix releases, but in this case we believe it makes sense as we are\n  only documenting it as deprecated, without issuing warnings which might potentially break test suites. This will get\n  the word out that hook implementers should not use this parameter at all.\n\n  In a future release ``item`` will always be ``None`` and will emit a proper warning when a hook implementation\n  makes use of it.\n\n\n\nBug Fixes\n---------\n\n- `3539 &lt;https://github.com/pytest-dev/pytest/issues/3539&gt;`_: Fix reload on assertion rewritten modules.\n\n\n- `4034 &lt;https://github.com/pytest-dev/pytest/issues/4034&gt;`_: The ``.user_properties`` attribute of ``TestReport`` objects is a list\n  of (name, value) tuples, but could sometimes be instantiated as a tuple\n  of tuples.  It is now always a list.\n\n\n- `4039 &lt;https://github.com/pytest-dev/pytest/issues/4039&gt;`_: No longer issue warnings about using ``pytest_plugins`` in non-top-level directories when using ``--pyargs``: the\n  current ``--pyargs`` mechanism is not reliable and might give false negatives.\n\n\n- `4040 &lt;https://github.com/pytest-dev/pytest/issues/4040&gt;`_: Exclude empty reports for passed tests when ``-rP`` option is used.\n\n\n- `4051 &lt;https://github.com/pytest-dev/pytest/issues/4051&gt;`_: Improve error message when an invalid Python expression is passed to the ``-m`` option.\n\n\n- `4056 &lt;https://github.com/pytest-dev/pytest/issues/4056&gt;`_: ``MonkeyPatch.setenv`` and ``MonkeyPatch.delenv`` issue a warning if the environment variable name is not ``str`` on Python 2.\n\n  In Python 2, adding ``unicode`` keys to ``os.environ`` causes problems with ``subprocess`` (and possible other modules),\n  making this a subtle bug specially susceptible when used with ``from __future__ import unicode_literals``.\n\n\n\nImproved Documentation\n----------------------\n\n- `3928 &lt;https://github.com/pytest-dev/pytest/issues/3928&gt;`_: Add possible values for fixture scope to docs.\n   ```\n   \n  \n</details>\n\n\n \n\n<details>\n  <summary>Links</summary>\n  \n  - PyPI: https://pypi.org/project/pytest\n  - Changelog: https://pyup.io/changelogs/pytest/\n  - Homepage: https://docs.pytest.org/en/latest/\n</details>\n\n","created_at":"2018-11-11T20:31:43Z","updated_at":"2018-11-14T19:59:54Z","closed_at":"2018-11-14T19:59:54Z","merged_at":null,"merge_commit_sha":"c0a009495dea10039f6236fcb1e0da12c0e418c2","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/bopo/mooquant/pulls/41/commits","review_comments_url":"https://api.github.com/repos/bopo/mooquant/pulls/41/comments","review_comment_url":"https://api.github.com/repos/bopo/mooquant/pulls/comments{/number}","comments_url":"https://api.github.com/repos/bopo/mooquant/issues/41/comments","statuses_url":"https://api.github.com/repos/bopo/mooquant/statuses/49ae6e7c27ff165db5c4fd579ed1b2a93253b5ea","head":{"label":"bopo:pyup-update-pytest-3.8.1-to-3.10.1","ref":"pyup-update-pytest-3.8.1-to-3.10.1","sha":"49ae6e7c27ff165db5c4fd579ed1b2a93253b5ea","user":{"login":"bopo","id":77651,"node_id":"MDQ6VXNlcjc3NjUx","avatar_url":"https://avatars3.githubusercontent.com/u/77651?v=4","gravatar_id":"","url":"https://api.github.com/users/bopo","html_url":"https://github.com/bopo","followers_url":"https://api.github.com/users/bopo/followers","following_url":"https://api.github.com/users/bopo/following{/other_user}","gists_url":"https://api.github.com/users/bopo/gists{/gist_id}","starred_url":"https://api.github.com/users/bopo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bopo/subscriptions","organizations_url":"https://api.github.com/users/bopo/orgs","repos_url":"https://api.github.com/users/bopo/repos","events_url":"https://api.github.com/users/bopo/events{/privacy}","received_events_url":"https://api.github.com/users/bopo/received_events","type":"User","site_admin":false},"repo":{"id":102758201,"node_id":"MDEwOlJlcG9zaXRvcnkxMDI3NTgyMDE=","name":"mooquant","full_name":"bopo/mooquant","private":false,"owner":{"login":"bopo","id":77651,"node_id":"MDQ6VXNlcjc3NjUx","avatar_url":"https://avatars3.githubusercontent.com/u/77651?v=4","gravatar_id":"","url":"https://api.github.com/users/bopo","html_url":"https://github.com/bopo","followers_url":"https://api.github.com/users/bopo/followers","following_url":"https://api.github.com/users/bopo/following{/other_user}","gists_url":"https://api.github.com/users/bopo/gists{/gist_id}","starred_url":"https://api.github.com/users/bopo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bopo/subscriptions","organizations_url":"https://api.github.com/users/bopo/orgs","repos_url":"https://api.github.com/users/bopo/repos","events_url":"https://api.github.com/users/bopo/events{/privacy}","received_events_url":"https://api.github.com/users/bopo/received_events","type":"User","site_admin":false},"html_url":"https://github.com/bopo/mooquant","description":"MooQuant 是一个基于 pyalgotrade 衍生而来的支持 python3 的支持国内A股的量化交易框架。","fork":false,"url":"https://api.github.com/repos/bopo/mooquant","forks_url":"https://api.github.com/repos/bopo/mooquant/forks","keys_url":"https://api.github.com/repos/bopo/mooquant/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bopo/mooquant/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bopo/mooquant/teams","hooks_url":"https://api.github.com/repos/bopo/mooquant/hooks","issue_events_url":"https://api.github.com/repos/bopo/mooquant/issues/events{/number}","events_url":"https://api.github.com/repos/bopo/mooquant/events","assignees_url":"https://api.github.com/repos/bopo/mooquant/assignees{/user}","branches_url":"https://api.github.com/repos/bopo/mooquant/branches{/branch}","tags_url":"https://api.github.com/repos/bopo/mooquant/tags","blobs_url":"https://api.github.com/repos/bopo/mooquant/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bopo/mooquant/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bopo/mooquant/git/refs{/sha}","trees_url":"https://api.github.com/repos/bopo/mooquant/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bopo/mooquant/statuses/{sha}","languages_url":"https://api.github.com/repos/bopo/mooquant/languages","stargazers_url":"https://api.github.com/repos/bopo/mooquant/stargazers","contributors_url":"https://api.github.com/repos/bopo/mooquant/contributors","subscribers_url":"https://api.github.com/repos/bopo/mooquant/subscribers","subscription_url":"https://api.github.com/repos/bopo/mooquant/subscription","commits_url":"https://api.github.com/repos/bopo/mooquant/commits{/sha}","git_commits_url":"https://api.github.com/repos/bopo/mooquant/git/commits{/sha}","comments_url":"https://api.github.com/repos/bopo/mooquant/comments{/number}","issue_comment_url":"https://api.github.com/repos/bopo/mooquant/issues/comments{/number}","contents_url":"https://api.github.com/repos/bopo/mooquant/contents/{+path}","compare_url":"https://api.github.com/repos/bopo/mooquant/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bopo/mooquant/merges","archive_url":"https://api.github.com/repos/bopo/mooquant/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bopo/mooquant/downloads","issues_url":"https://api.github.com/repos/bopo/mooquant/issues{/number}","pulls_url":"https://api.github.com/repos/bopo/mooquant/pulls{/number}","milestones_url":"https://api.github.com/repos/bopo/mooquant/milestones{/number}","notifications_url":"https://api.github.com/repos/bopo/mooquant/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bopo/mooquant/labels{/name}","releases_url":"https://api.github.com/repos/bopo/mooquant/releases{/id}","deployments_url":"https://api.github.com/repos/bopo/mooquant/deployments","created_at":"2017-09-07T16:04:56Z","updated_at":"2018-11-06T03:06:27Z","pushed_at":"2018-11-14T19:59:51Z","git_url":"git://github.com/bopo/mooquant.git","ssh_url":"git@github.com:bopo/mooquant.git","clone_url":"https://github.com/bopo/mooquant.git","svn_url":"https://github.com/bopo/mooquant","homepage":"http://www.mooquant.com","size":21210,"stargazers_count":3,"watchers_count":3,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":21,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":21,"watchers":3,"default_branch":"master"}},"base":{"label":"bopo:master","ref":"master","sha":"244a87d4cd8b4d918eec4f16905e0921c3b39f50","user":{"login":"bopo","id":77651,"node_id":"MDQ6VXNlcjc3NjUx","avatar_url":"https://avatars3.githubusercontent.com/u/77651?v=4","gravatar_id":"","url":"https://api.github.com/users/bopo","html_url":"https://github.com/bopo","followers_url":"https://api.github.com/users/bopo/followers","following_url":"https://api.github.com/users/bopo/following{/other_user}","gists_url":"https://api.github.com/users/bopo/gists{/gist_id}","starred_url":"https://api.github.com/users/bopo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bopo/subscriptions","organizations_url":"https://api.github.com/users/bopo/orgs","repos_url":"https://api.github.com/users/bopo/repos","events_url":"https://api.github.com/users/bopo/events{/privacy}","received_events_url":"https://api.github.com/users/bopo/received_events","type":"User","site_admin":false},"repo":{"id":102758201,"node_id":"MDEwOlJlcG9zaXRvcnkxMDI3NTgyMDE=","name":"mooquant","full_name":"bopo/mooquant","private":false,"owner":{"login":"bopo","id":77651,"node_id":"MDQ6VXNlcjc3NjUx","avatar_url":"https://avatars3.githubusercontent.com/u/77651?v=4","gravatar_id":"","url":"https://api.github.com/users/bopo","html_url":"https://github.com/bopo","followers_url":"https://api.github.com/users/bopo/followers","following_url":"https://api.github.com/users/bopo/following{/other_user}","gists_url":"https://api.github.com/users/bopo/gists{/gist_id}","starred_url":"https://api.github.com/users/bopo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bopo/subscriptions","organizations_url":"https://api.github.com/users/bopo/orgs","repos_url":"https://api.github.com/users/bopo/repos","events_url":"https://api.github.com/users/bopo/events{/privacy}","received_events_url":"https://api.github.com/users/bopo/received_events","type":"User","site_admin":false},"html_url":"https://github.com/bopo/mooquant","description":"MooQuant 是一个基于 pyalgotrade 衍生而来的支持 python3 的支持国内A股的量化交易框架。","fork":false,"url":"https://api.github.com/repos/bopo/mooquant","forks_url":"https://api.github.com/repos/bopo/mooquant/forks","keys_url":"https://api.github.com/repos/bopo/mooquant/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bopo/mooquant/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bopo/mooquant/teams","hooks_url":"https://api.github.com/repos/bopo/mooquant/hooks","issue_events_url":"https://api.github.com/repos/bopo/mooquant/issues/events{/number}","events_url":"https://api.github.com/repos/bopo/mooquant/events","assignees_url":"https://api.github.com/repos/bopo/mooquant/assignees{/user}","branches_url":"https://api.github.com/repos/bopo/mooquant/branches{/branch}","tags_url":"https://api.github.com/repos/bopo/mooquant/tags","blobs_url":"https://api.github.com/repos/bopo/mooquant/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bopo/mooquant/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bopo/mooquant/git/refs{/sha}","trees_url":"https://api.github.com/repos/bopo/mooquant/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bopo/mooquant/statuses/{sha}","languages_url":"https://api.github.com/repos/bopo/mooquant/languages","stargazers_url":"https://api.github.com/repos/bopo/mooquant/stargazers","contributors_url":"https://api.github.com/repos/bopo/mooquant/contributors","subscribers_url":"https://api.github.com/repos/bopo/mooquant/subscribers","subscription_url":"https://api.github.com/repos/bopo/mooquant/subscription","commits_url":"https://api.github.com/repos/bopo/mooquant/commits{/sha}","git_commits_url":"https://api.github.com/repos/bopo/mooquant/git/commits{/sha}","comments_url":"https://api.github.com/repos/bopo/mooquant/comments{/number}","issue_comment_url":"https://api.github.com/repos/bopo/mooquant/issues/comments{/number}","contents_url":"https://api.github.com/repos/bopo/mooquant/contents/{+path}","compare_url":"https://api.github.com/repos/bopo/mooquant/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bopo/mooquant/merges","archive_url":"https://api.github.com/repos/bopo/mooquant/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bopo/mooquant/downloads","issues_url":"https://api.github.com/repos/bopo/mooquant/issues{/number}","pulls_url":"https://api.github.com/repos/bopo/mooquant/pulls{/number}","milestones_url":"https://api.github.com/repos/bopo/mooquant/milestones{/number}","notifications_url":"https://api.github.com/repos/bopo/mooquant/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bopo/mooquant/labels{/name}","releases_url":"https://api.github.com/repos/bopo/mooquant/releases{/id}","deployments_url":"https://api.github.com/repos/bopo/mooquant/deployments","created_at":"2017-09-07T16:04:56Z","updated_at":"2018-11-06T03:06:27Z","pushed_at":"2018-11-14T19:59:51Z","git_url":"git://github.com/bopo/mooquant.git","ssh_url":"git@github.com:bopo/mooquant.git","clone_url":"https://github.com/bopo/mooquant.git","svn_url":"https://github.com/bopo/mooquant","homepage":"http://www.mooquant.com","size":21210,"stargazers_count":3,"watchers_count":3,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":21,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":21,"watchers":3,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/bopo/mooquant/pulls/41"},"html":{"href":"https://github.com/bopo/mooquant/pull/41"},"issue":{"href":"https://api.github.com/repos/bopo/mooquant/issues/41"},"comments":{"href":"https://api.github.com/repos/bopo/mooquant/issues/41/comments"},"review_comments":{"href":"https://api.github.com/repos/bopo/mooquant/pulls/41/comments"},"review_comment":{"href":"https://api.github.com/repos/bopo/mooquant/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/bopo/mooquant/pulls/41/commits"},"statuses":{"href":"https://api.github.com/repos/bopo/mooquant/statuses/49ae6e7c27ff165db5c4fd579ed1b2a93253b5ea"}},"author_association":"COLLABORATOR","merged":false,"mergeable":true,"rebaseable":true,"mergeable_state":"unstable","merged_by":null,"comments":1,"review_comments":0,"maintainer_can_modify":false,"commits":2,"additions":2,"deletions":2,"changed_files":2}}
{"actor":{"display_login":"pyup-bot"}}