Title: QuantConnect Update by C-SELLERS · Pull Request #1385 · pythonnet/pythonnet · GitHub
Open Graph Title: QuantConnect Update by C-SELLERS · Pull Request #1385 · pythonnet/pythonnet
X Title: QuantConnect Update by C-SELLERS · Pull Request #1385 · pythonnet/pythonnet
Description: What does this implement/fix? Explain your changes. This PR seeks to bring QuantConnect/PythonNet 's changes to the root repo. Since QuantConnect's fork was so distant from the root repo it required that I reapply all the needed changes in order to keep desired functionality. To denote this in the commits I referenced the PR I was trying to replicate. Please be aware that Github will link these to the root #n PR but they are all referencing QuantConnect/PythonNet PRs Any other comments? QuantConnect Changes Reflected (Reference QuantConnect/PythonNet for original PR): Support decimal, timespan, datetime, implicit, and nullable conversions (QuantConnect#1, QuantConnect#8, QuantConnect#10, QuantConnect#14, QuantConnect#15, QuantConnect#25) Use Float in Python for Decimal conversion (Performance improvement QuantConnect#19) Some logging on boot up (QuantConnect#34) Support List conversion (QuantConnect#37) AssemblyManager Cache (Performance improvement QuantConnect#38) Generic Util race condition fix (QuantConnect#38) Support KeyValuePairEnumerable Objects (QuantConnect#42) Patches to address failures in Lean: MethodBinder changes to allow implicit conversion. This one was particularly tricky and seemed impossible to patch together with the MethodBinder.cs in the root. Unfortunately it involved tearing apart a lot of it and rebuilding only what was needed. It may be possible to refactor this to look more like the root and still pass our tests. ( 58d5df0 , 44e089a , 108eacf , 6379568 , 9f2796a ) Revert PythonNet PR #1240 ; this PR broke fetching interface derived classes data members that weren't defined in the interface. ( ed6ab18 ) Converting PyObject to Int fix; this reflects the way PythonNet used to convert values to Int32, 64, unsigned etc, with PyNumber_Long but still keeps the use of Runtime.PyLong_AsSignedSize_t to finish the conversion. The bug that discovered this was trying to convert a Python float to int, this used to work but was failing until this refactor. Reference the added test in bd94e49. ( d87584b ) Tests added: TimeDelta and DateTime Conversion Tests ( 508db2e ) List Conversion tests ( 5839d21 ) Dictionary Tests ( 101624e ) MethodBinder Tests ( bf1755d ) OperatorInequality Test ( b0aca5c ) PrimitiveIntConversion Test ( bd94e49 ) Interface Classes Test ( cd06d10 ) Some tests had to be adjusted for behavior changes caused by our commits. I have adjusted enough to have all PythonNet embedded tests passing, but there are still some issues with PyTests that need to be addressed/resolved. I'm aware this a huge collection of changes, so I don't expect this to be easy but would hope maybe there is a way to bring our branches together so we can help improve PythonNet in the future. Also note this branch is also a pending PR to QuantConnect/PythonNet . Reference this PR at QuantConnect#47 Checklist Check all those that are applicable and complete. Make sure to include one or more tests for your change If an enhancement PR, please create docs and at best an example Add yourself to AUTHORS Updated the CHANGELOG
Open Graph Description: What does this implement/fix? Explain your changes. This PR seeks to bring QuantConnect/PythonNet 's changes to the root repo. Since QuantConnect's fork was so distant from the root repo it...
X Description: What does this implement/fix? Explain your changes. This PR seeks to bring QuantConnect/PythonNet 's changes to the root repo. Since QuantConnect's fork was so distant from the root...
Opengraph URL: https://github.com/pythonnet/pythonnet/pull/1385
X: @github
Domain: github.com
| route-pattern | /:user_id/:repository/pull/:id/checks(.:format) |
| route-controller | pull_requests |
| route-action | checks |
| fetch-nonce | v2:ac5dd691-13f0-35cc-73ea-66772bcc2f90 |
| current-catalog-service-hash | 87dc3bc62d9b466312751bfd5f889726f4f1337bdff4e8be7da7c93d6c00a25a |
| request-id | CD84:12B7E9:413B75D:5AE63B6:69713D87 |
| html-safe-nonce | cff4751bba700d03daf24ce565180d97021c51cc1493363d090c2236d107efd2 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDRDg0OjEyQjdFOTo0MTNCNzVEOjVBRTYzQjY6Njk3MTNEODciLCJ2aXNpdG9yX2lkIjoiMjI2MDIxNzU0MzMzMjU0Mzg3OSIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | bc19025d52856c790f526c723e6fbe2f12723fb40e392c379dabaf0b02857b0a |
| hovercard-subject-tag | pull_request:573843490 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,checks,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/pythonnet/pythonnet/pull/1385/checks |
| twitter:image | https://avatars.githubusercontent.com/u/41277998?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/41277998?s=400&v=4 |
| og:image:alt | What does this implement/fix? Explain your changes. This PR seeks to bring QuantConnect/PythonNet 's changes to the root repo. Since QuantConnect's fork was so distant from the root repo it... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | 7899979feb505886f0f29e8086a739254f3a850fd3dbc9fb63ce4ec27831b1fb |
| turbo-cache-control | no-preview |
| go-import | github.com/pythonnet/pythonnet git https://github.com/pythonnet/pythonnet.git |
| octolytics-dimension-user_id | 6050430 |
| octolytics-dimension-user_login | pythonnet |
| octolytics-dimension-repository_id | 14748123 |
| octolytics-dimension-repository_nwo | pythonnet/pythonnet |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 14748123 |
| octolytics-dimension-repository_network_root_nwo | pythonnet/pythonnet |
| turbo-body-classes | logged-out env-production page-responsive full-width full-width-p-0 |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 998d3ef09faa982f8d83ad111166244ae4625572 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width