14 Commits

Author SHA1 Message Date
Jhonathan Abreu cf6ad512cb Keep pythonnet overloads hint in NoMethodMatchPythonExceptionInterpreter message (#9594)
The interpreter replaced the original pythonnet binding-failure message
with a friendly one built from the parsed method name, discarding the
candidate-signatures hint pythonnet 2.0.57+ appends ("The expected
signature is:" / "The following overloads are available:" followed by
the signatures). That hint is what lets users see which parameter
didn't match, so extract it from the original message and append it to
the interpreted one.

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 16:17:02 -04:00
Jhonathan Abreu c88955b91a Update QuantConnect.pythonnet to 2.0.57 (#9584)
Syntax Tests / build (push) Has been cancelled
API Tests / build (push) Has been cancelled
Benchmarks / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
Report Generator Tests / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
* Update QuantConnect.pythonnet to 2.0.57

* Update NoMethodMatch interpreter tests for pythonnet 2.0.57 snake_case method names

pythonnet 2.0.57 renders the method name in the 'No method matches given
arguments' TypeError in snake_case (e.g. 'for set_cash:' / 'for rsi:'),
matching the name Python callers use. The interpreter extracts it correctly;
only the tests' hardcoded PascalCase expectations (SetCash, RSI) were stale.
Assert the snake_case names the API now emits.
2026-07-06 17:07:35 -04:00
Jhonathan Abreu feec818951 Fix method name parsing in NoMethodMatchPythonExceptionInterpreter (#9573)
The interpreter extracted the method name with LastIndexOf(" "), which
returned the last space-delimited token of the pythonnet message (a
fragment of the argument type list, e.g. "'QuantConnect.Resolution'>)")
instead of the actual method name. Parse the name from between the
"for " keyword and the following ":" instead.
2026-07-01 11:23:05 -04:00
Martin-Molinero 89f3968eef Fix performance degradation on expirying assets (#9065)
API Tests / build (push) Has been cancelled
Benchmarks / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
Report Generator Tests / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Syntax Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
* Fix performance degradation on expirying assets

- Options would expire and get removed, when the universe removed the
  security it would never be reseted on universe selection, causing
  leaks
- Minor improvement for composer assembly loading
- Minor improvement for loading exception interepreters, so it uses
  composer

* Minor regression test fix

* Add new benchmark algorithm
2025-10-27 18:17:53 -03:00
Jhonathan Abreu 6bfe45dbcf PEP8 algorithms conversion (#7962)
* PEP8 algorithms conversion

* PEP8 unit tests algorithms conversion

* Minor fixes
2024-04-22 13:59:50 -03:00
Colton Sellers 834d4a4d58 QC PythonNet 2.0 (#5376)
* Update to new QC PythonNet

* Update readme

* Remove Python.Runtime config, replaced by env var

* Allow local packages testing in repo

* Address Review

* Add the LocalPackages readme

* Update Jupyter Image

* Update Research ReadMe
2021-03-09 18:25:31 -03:00
Martin Molinero 886e5e6445 Test fixes and updates 2020-04-23 09:59:31 -03:00
Leonardo-Ferreira 951c973d5b Adjusted the OneTimeSetup attribute usage 2020-04-22 18:19:08 -03:00
Leonardo-Ferreira 37b1906022 Updated to OneTimeSetUp 2020-04-22 18:16:58 -03:00
Stefano Raggi fadda32e08 Enable ignored/excluded Python unit tests 2018-08-09 11:51:53 +02:00
AlexCatarino 58603b1035 Fix method call name in python script 2018-08-07 19:31:22 +01:00
AlexCatarino cc1c643a78 Fixes NoMethodMatchPythonExceptionInterpreterTests
Changes the method call that should fail to `AddCash(String)`.
2018-08-07 19:22:41 +01:00
AlexCatarino 331438d2df Improves Tests for PythonException interpreters
Adds a test to verify whether the message contains the stacktrace information
2018-03-12 22:35:27 +00:00
AlexCatarino 7fc8886803 Implements NoMethodMatchPythonExceptionInterpreter
Users often use the wrong type of method paramenters, for instance, a float instead of an integer.
2018-03-06 12:10:16 +00:00