Skip to content

Commit 03c9e6a

Browse files
committed
locked python to 3.13 and got rid of dumb build support
1 parent fd95d3b commit 03c9e6a

2 files changed

Lines changed: 6 additions & 9 deletions

File tree

.github/workflows/test.yml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,9 @@ jobs:
1313
fetch-depth: 0 # important for Coveralls to read commit history
1414
- uses: actions/setup-python@v5
1515
with:
16-
python-version: '3.x'
16+
python-version: '3.13' # because cvxopt binaries for 3.14 don't yet exist, and building is terrible
1717
- name: tests and coverage
18-
run: | # lines before pip install are for building cvxopt from source, which is recently necessary for Python 3.14, too new for prebuilt wheel
19-
sudo apt-get install -y libblas-dev liblapack-dev libsuitesparse-dev libglpk-dev
20-
export CVXOPT_GLPK=True
21-
export CVXOPT_GLPK_INC=/usr/include
22-
export CVXOPT_GLPK_LIB=/usr/lib/x86_64-linux-gnu
18+
run: |
2319
pip install -e .[advanced,dev] coveralls
2420
coverage run --source=pynumdiff --omit='pynumdiff/_version.py,pynumdiff/tests/*,pynumdiff/utils/old_pi_cruise_control.py' -m pytest -s
2521
coverage xml

pynumdiff/optimize/_optimize.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,11 +90,12 @@
9090
robustdiff: ({'order': {1, 2, 3}, # warning: order 1 hacks the loss function when tvgamma is used, tends to win but is usually suboptimal choice in terms of true RMSE
9191
'q': [1e-1, 1e1, 1e4, 1e8, 1e12],
9292
'r': [1e-1, 1e1, 1e4, 1e8, 1e12],
93-
'proc_huberM': {0, 1, 1.345, 2, 6}, # 0 is l1 norm, 1.345 is Huber 95% "efficiency", 2 assumes about 5% outliers,
94-
'meas_huberM': {0, 1, 1.345, 2, 6}}, # and 6 assumes basically no outliers -> l2 norm. Try (1 - norm.cdf(M))*2 to see outlier portion
93+
'proc_huberM': [0., 2, 6], # 0 is l1 norm, 1.345 is Huber 95% "efficiency", 2 assumes about 5% outliers,
94+
'meas_huberM': [0., 2, 6]}, # and 6 assumes basically no outliers -> l2 norm. Try (1 - norm.cdf(M))*2 to see outlier portion
9595
{'q': (1e-1, 1e18),
9696
'r': (1e-5, 1e18),
97-
'huberM': (0, 5)}), # really only want to use l2 norm when nearby
97+
'proc_huberM': (0, 6),
98+
'meas_huberM': (0, 6)}),
9899
lineardiff: ({'kernel': 'gaussian',
99100
'order': 3,
100101
'gamma': [1e-1, 1, 10, 100],

0 commit comments

Comments
 (0)