Comments (6)
I may use e.g. pyenv
to set up multiple Python environments and locally run the new tox.ini
to determine the floor of backwards compatibility. Later we may want a workflow that uses tox
output/results in some way but that can be a separate issue once clearer.
from menelaus.
Yeah, I think just establishing the floor is enough for now. That'll let us update the README and add
[options]
python_requires = >= 3.7
or similar to the setup.cfg.
The tox.ini is a holdover from a repo template -- if we just use pyenv and run the unit tests on a couple of versions, instead of using tox, then it can be removed, unless you found that it was easy to set up. Just realized that you had done this already. Nevermind!
from menelaus.
Yes, tox.ini
can just be an effect-less addition after we update the repository. Later we can add something to use it to programmatically determine the bounds of Python versions that work.
from menelaus.
Ok, pyenv
doesn't actually seem to work for Windows, I'll try the fork mentioned in the repository.
from menelaus.
Seems to me that our floor is python 3.8
. Prior to that, we may get e.g.:
py37 create: /home/asrivastava/menelaus/.tox/py37
py37 installdeps: pytest, pytest-cov
py37 inst: /home/asrivastava/menelaus/.tox/.tmp/package/1/menelaus-0.1.1.zip
ERROR: invocation failed (exit code 1), logfile: /home/asrivastava/menelaus/.tox/py37/log/py37-2.log
=================================================================== log start ====================================================================
Processing ./.tox/.tmp/package/1/menelaus-0.1.1.zip
Preparing metadata (setup.py): started
Preparing metadata (setup.py): finished with status 'done'
Collecting pandas
Downloading pandas-1.3.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.3 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.3/11.3 MB 59.4 MB/s eta 0:00:00
ERROR: Ignored the following versions that require a different python version: 1.22.0 Requires-Python >=3.8; 1.22.0rc1 Requires-Python >=3.8; 1.22.0rc2 Requires-Python >=3.8; 1.22.0rc3 Requires-Python >=3.8; 1.22.1 Requires-Python >=3.8; 1.22.2 Requires-Python >=3.8; 1.22.3 Requires-Python >=3.8; 1.22.4 Requires-Python >=3.8; 1.23.0 Requires-Python >=3.8; 1.23.0rc1 Requires-Python >=3.8; 1.23.0rc2 Requires-Python >=3.8; 1.23.0rc3 Requires-Python >=3.8; 1.4.0 Requires-Python >=3.8; 1.4.0rc0 Requires-Python >=3.8; 1.4.1 Requires-Python >=3.8; 1.4.2 Requires-Python >=3.8; 1.4.3 Requires-Python >=3.8
ERROR: Could not find a version that satisfies the requirement numpy>=1.22.0 (from menelaus) (from versions: 1.3.0, 1.4.1, 1.5.0, 1.5.1, 1.6.0, 1.6.1, 1.6.2, 1.7.0, 1.7.1, 1.7.2, 1.8.0, 1.8.1, 1.8.2, 1.9.0, 1.9.1, 1.9.2, 1.9.3, 1.10.0.post2, 1.10.1, 1.10.2, 1.10.4, 1.11.0, 1.11.1, 1.11.2, 1.11.3, 1.12.0, 1.12.1, 1.13.0rc1, 1.13.0rc2, 1.13.0, 1.13.1, 1.13.3, 1.14.0rc1, 1.14.0, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.14.5, 1.14.6, 1.15.0rc1, 1.15.0rc2, 1.15.0, 1.15.1, 1.15.2, 1.15.3, 1.15.4, 1.16.0rc1, 1.16.0rc2, 1.16.0, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.16.6, 1.17.0rc1, 1.17.0rc2, 1.17.0, 1.17.1, 1.17.2, 1.17.3, 1.17.4, 1.17.5, 1.18.0rc1, 1.18.0, 1.18.1, 1.18.2, 1.18.3, 1.18.4, 1.18.5, 1.19.0rc1, 1.19.0rc2, 1.19.0, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.19.5, 1.20.0rc1, 1.20.0rc2, 1.20.0, 1.20.1, 1.20.2, 1.20.3, 1.21.0rc1, 1.21.0rc2, 1.21.0, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6)
ERROR: No matching distribution found for numpy>=1.22.0
from menelaus.
I did some testing on my end, too -- seems that if we switch to the deprecated form for np.quantile
, we can drop the numpy > 1.22 requirement, which is the only reason we need Python 3.8 or higher.
switching L317 in kdq_tree from
return np.quantile(critical_distances, 1 - self.alpha, method="nearest")
to
return np.quantile(critical_distances, 1 - self.alpha, interpolation="nearest")
lets us be compatible back to 3.5.
I'll add a comment in the setup.cfg to this effect, but it's probably not worth it in the long-term to do anything more.
from menelaus.
Related Issues (20)
- `flake8` command hanging? HOT 1
- Add Fundamental Feature Manipulation `Injector`s
- Placeholder Generalization Issue for Automators HOT 1
- Fix __version__ attribute HOT 1
- Fix drift labels in make_example_batch_data (?)
- Fix Typo in README
- Label Dirichlet Injector Issue
- DL Drift Detector
- Select data for benchmarking HOT 1
- Design `nlp` submodule and skeleton of drift detection methods HOT 5
- Add [specific] NLP Drift Detection algorithm
- Add example notebook for NLP drift detector(s) HOT 1
- Fix sphinx build for wilds notebook
- Freeze and/or exclude notebooks from sphinx build
- Consistent parameterization w.r.t. updating reference windows
- Add PSI detector
- Improve Documentation of NLP Example
- Add tests for NLP example
- Release experimental NLP code
- Add detectors for typical statistical tests/divergences
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from menelaus.