Skip to content

Conversation

@juju4
Copy link
Collaborator

@juju4 juju4 commented Mar 30, 2025

@review-notebook-app
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@juju4
Copy link
Collaborator Author

juju4 commented Mar 30, 2025

most lint stuff seems unrelated to PR. pytest part as said still WIP.
Input welcomed

@juju4
Copy link
Collaborator Author

juju4 commented Apr 21, 2025

pytest fixed but a new external error on tests/test_pkg_imports.py::test_conda_reqs
https://github.com/microsoft/msticpy/actions/runs/14564764340/job/40852428655?pr=839#step:10:129

@ianhelle
Copy link
Contributor

pytest fixed but a new external error on tests/test_pkg_imports.py::test_conda_reqs https://github.com/microsoft/msticpy/actions/runs/14564764340/job/40852428655?pr=839#step:10:129

@juju4
Fix should be very simple - just add this requirement to the /conda/conda-pip-reqs.txt

This test is just designed to keep the requirements/setup packages aligned so it's saying that there is something in requirements/setup that's not reflected in the /conda requirements files.
Since this isn't going to be downloadable from Conda or Conda-forge, it should go in the conda-reqs-pip.txt (which is packages that cannot be installed by conda install and have to be installed using pip)

@juju4
Copy link
Collaborator Author

juju4 commented Apr 27, 2025

seems conda package can't be a commit. hope to have a pypi release next week-end

@juju4
Copy link
Collaborator Author

juju4 commented May 4, 2025

Current pylint errors not related to PR
https://github.com/microsoft/msticpy/actions/runs/14824892002/job/41616735671?pr=839#step:9:13

ImportError: cannot import name 'UTC' from 'datetime' is a difference between python 3.9 and 3.10. is replacing code by following ok or other preference depending on 3.9 support plan?

from datetime import datetime, timedelta, timezone
UTC = timezone.utc

done that for now.

3.8 fails with /home/runner/work/_temp/960b5084-0bdd-4156-9364-2d9478b37221.sh: line 1: jupyter: command not found
https://github.com/microsoft/msticpy/actions/runs/14825003555/job/41616982508?pr=839#step:10:18

@juju4
Copy link
Collaborator Author

juju4 commented May 25, 2025

Only python 3.8 ci is failing and seems unrelated to PR
https://github.com/microsoft/msticpy/actions/runs/15232868365/job/42842868008?pr=839#step:7:278

Collecting cryptography>=43.0.1 (from -r requirements-all.txt (line 19))
  Downloading cryptography-45.0.1-cp37-abi3-manylinux_2_34_x86_64.whl.metadata (5.7 kB)
  Using cached cryptography-44.0.3-cp37-abi3-manylinux_2_34_x86_64.whl.metadata (5.7 kB)
ERROR: Exception:
Traceback (most recent call last):
  File "/opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages/pip/_internal/cli/base_command.py", line 106, in _run_wrapper
    status = _inner_run()
  File "/opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages/pip/_internal/cli/base_command.py", line 97, in _inner_run
    return self.run(options, args)
  File "/opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages/pip/_internal/cli/req_command.py", line 67, in wrapper
    return func(self, options, args)
  File "/opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages/pip/_internal/commands/install.py", line 386, in run
    requirement_set = resolver.resolve(
  File "/opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 95, in resolve
    result = self._result = resolver.resolve(
  File "/opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages/pip/_vendor/resolvelib/resolvers.py", line 546, in resolve
    state = resolution.resolve(requirements, max_rounds=max_rounds)
  File "/opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages/pip/_vendor/resolvelib/resolvers.py", line 457, in resolve
    raise ResolutionTooDeep(max_rounds)
pip._vendor.resolvelib.resolvers.ResolutionTooDeep: 200000
Error: Process completed with exit code 2.

@juju4
Copy link
Collaborator Author

juju4 commented Dec 7, 2025

@ianhelle How to get this PR move forward?
python_openobserve requires python>=3.10. not sure if a way to exclude tests of lower version or plan to up minimal msticpy python.

lint failing on external conditions for installing dependencies

× Dependency resolution exceeded maximum depth
╰─> Pip cannot resolve the current dependencies as the dependency graph is too complex for pip to solve efficiently.

@ianhelle
Copy link
Contributor

ianhelle commented Dec 8, 2025

Hey Julien,
I'm thinking of dropping Python <=10 anyway - also want to add Py 3.13 and maybe Py 3.14.
In the short term you can do with a combo of the following:

Add OpenObserve as an Extra in setup.py (follow the examples in here)
In there add a constraint for the python version like this one.

ipython >= 7.23.1; python_version >= "3.8"

Also add that to the requirements_all.txt and the conda files.

You will also need to guard the import of open observe - I've added comments to that file with an example.
Finally, you can skip the tests using pytest.mark.skipif - I've also added an example in a comment in the test module.

@juju4
Copy link
Collaborator Author

juju4 commented Dec 14, 2025

still blocked on installing dependencies.
added the python constraint in requirements-all.
I believe openobserve part is already set as an extra. missing link for examples.
Thanks

@ianhelle
Copy link
Contributor

I fixed the extra - it needs to have a python_version in the extra declaration as well as the requirements.
I will check out the PR and have a look to see if I can see what's breaking.

@ianhelle
Copy link
Contributor

I added some changes to the requirements/setup.py for python-openobserve.
Also pytest skips if the package is not installed.
This will continue to fail until openobserve is fixed - I opened a PR to do this here JustinGuese/python-openobserve#64.
When this PR is completed it should still work.
We might want to merge this into the msticpy 3.0 release (which drops support for Python 3.8 and 3.9) - depending on when the openobserve PR is completed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants