diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index b190932ae..ba544a528 100755 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -16,6 +16,11 @@ jobs: # "make doctest" on MS Windows fails without showing much of a # trace of where things went wrong on Python before 3.11. python-version: ['3.14'] + + # Setting the environment variable globally for all steps in this job + env: + MATHICS_CHARACTER_ENCODING: "ASCII" + steps: - uses: actions/checkout@v6 - name: Set up Python ${{ matrix.python-version }} @@ -32,6 +37,8 @@ jobs: # choco install --force llvm # choco install tesseract set LLVM_DIR="C:\Program Files\LLVM" + - name: Install GNU Make + run: choco install make - name: Install Mathics3 with Python dependencies run: | pip install pyocr # from full @@ -42,20 +49,19 @@ jobs: # bash -x admin-tools/make-JSON-tables.sh # cd .. python -m pip install setuptools wheel - - name: Install Mathics3 with full dependencies - run: | - make develop-full - - name: Test Mathics3 - # Limit pip install to a basic install *without* full dependencies. - # Here is why: - # * Windows is the slowest CI build, this speeds up testing by about - # 3 minutes - # * Other CI tests on other (faster) OS's full dependencies and - # we needs some CI that tests running when packages aren't available - # So "dev" only below, not "dev,full". + - name: Install Mathics3 run: | - # The below pytest is hanging (not failing) on Windows. This is probably. - # So remove for now - # make pytest gstest - make doctest DOCTEST_OPTIONS="--exclude WordCloud" - # make check + make develop + # - name: Test Mathics3 + # # Limit pip install to a basic install *without* full dependencies. + # # Here is why: + # # * Windows is the slowest CI build, this speeds up testing by about + # # 3 minutes + # # * Other CI tests on other (faster) OS's full dependencies and + # # we needs some CI that tests running when packages aren't available + # # So "dev" only below, not "dev,full". + # shell: bash + # run: | + # make pytest gstest + # make doctest DOCTEST_OPTIONS="--exclude WordCloud" + # # make check diff --git a/mathics/builtin/recurrence.py b/mathics/builtin/recurrence.py index fe282e623..484e354ca 100644 --- a/mathics/builtin/recurrence.py +++ b/mathics/builtin/recurrence.py @@ -5,6 +5,7 @@ """ import sympy +import mathics.eval.tracing as tracing from mathics.core.atoms import IntegerM1 from mathics.core.attributes import A_CONSTANT from mathics.core.builtin import Builtin @@ -153,9 +154,11 @@ def is_relation(eqn): # Sympy raises error when given empty conditions. Fixed in # upcoming sympy release. if sym_conds != {}: - sym_result = sympy.rsolve(sym_eq, sym_func, sym_conds) + sym_result = tracing.run_sympy( + sympy.rsolve, sym_eq, sym_func, sym_conds + ) else: - sym_result = sympy.rsolve(sym_eq, sym_func) + sym_result = tracing.run_sympy(sympy.rsolve, sym_eq, sym_func) if not isinstance(sym_result, list): sym_result = [sym_result]