When the Python flavor is "Debian Python", the test file access checker
now tolerates loaded files under system library paths (/usr/lib, /lib,
/usr/lib64, /lib64) since Debian's Python relies on system-packaged libraries.
* Reference the runtime exception everywhere as that is expected
to be done, not just generally.
* Proper link to the correct version of the license file on the
web.
* The module attribute bytecode expects "__file__" to live in the
same location even for different modules with Python 3.11 which
is a horrible bug we need to work around.
* The work around is to avoid adding "__compiled__" for modules early,
but keep doing it for package, that way they are in the same offset
in the dictionaries, and the CPython bytecode can work with it.
* Adding a decided node to do it at module runtime, and this was sort
of missing anyway, and will be a pre-cursor for compile time
optimization of this values attributes and existance.
* Also data dirs and raw data dirs now accept expressions
* Added a test coverage for raw directory configuration
* Now we allow to be passed a path argument to our "find_spec"
* This is mostly a cleanup, to make the report not say "not-found" when
in fact it will be found at runtime.
* Also using more namedtuples and other cleanups so importing code
becomes more readable.
* Fix the uncompiled throw() bridge for coroutines that catch the
injected exception and return a value.
* Advance "f_lasti" using Python 3.10 instruction-index semantics,
instead of the older _Py_CODEUNIT-sized offset logic.
* Restore completed coroutine results via StopIteration.value rather
than exposing them as ordinary return values to the outer await
chain.
* Add a regression test for the coroutine throw return value
case that previously raised "cannot reuse already awaited coroutine".
---------
Co-authored-by: Kay Hayen <kay.hayen@gmail.com>
* Some tests also were never executed due to confusing min and max version suffixes
* Moved 3.6 specific classes test for super() to dedicated test.
* Merge Classes32 and Classes34 test, as the versions are now the same to us.
* The "pefile" experimental support didn't consider delay
load DLLs and was not recursive like "depends.exe" is.
* Started experimental support for "windepends" which is
better maintained, but needs more work and evaluation
before we can consider it for use.
* Cleaned up the structure for the alternatives on Windows.
* On ARM we cannot due runtime DLL tracing because "depends.exe"
is not available there.
* Also detect architecture of Windows for ARM in the test runner
properly.
* Also big cleanup for the compile_extension_modules test which
was not checking if runtime tracing was available and had lots
code complexity issues to solve.
* Python3.12+: Fix BUILTIN_SUM1 float summation accuracy
* Python3.14 compatibility needs more changes
* Also some speed-ups for sum built-in code in general.
---------
Co-authored-by: Kay Hayen <kay.hayen@gmail.com>
* Fix missing flet_desktop app assets in standalone mode
- add a Windows package configuration entry for the bundled app directory
- preserve the packaged flet.exe and sidecar DLLs in standalone output
- add a Windows standalone regression test for the flet_desktop runtime layout
* Avoid using raw_dir, not good long term
---------
Co-authored-by: Kay Hayen <kay.hayen@gmail.com>
* This adds support for using forkserver, which previously caused errors and even earlier fork-bombs.
---------
Co-authored-by: Kay Hayen <kay.hayen@gmail.com>
* Starred arguments were not working as type variables.
---------
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
Co-authored-by: Kay Hayen <kay.hayen@gmail.com>