Opened 2 years ago

Last modified 10 months ago

#27744 new enhancement

Make pynormaliz a Feature

Reported by: jipilab Owned by:
Priority: major Milestone:
Component: geometry Keywords: polytopes, normaliz
Cc: Winfried, jipilab, gh-sebasguts, mkoeppe, vdelecroix, gh-kliem Merged in:
Authors: Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: #30647 Stopgaps:

Status badges

Description (last modified by mkoeppe)

As mentioned here: https://trac.sagemath.org/ticket/25091#comment:69

The package pynormaliz should become a feature.

Change History (6)

comment:1 follow-up: Changed 2 years ago by mkoeppe

You can just write

from sage.features import PythonModule
if PythonModule("PyNormaliz").is_present() ....

comment:2 in reply to: ↑ 1 Changed 2 years ago by jipilab

Replying to mkoeppe:

You can just write

from sage.features import PythonModule
if PythonModule("PyNormaliz").is_present() ....

Yes, that solves it for now. I thought, a long term goal is to do as was done for latte_int. Or I am mistaken?

comment:3 Changed 2 years ago by embray

  • Milestone sage-8.8 deleted

As the Sage-8.8 release milestone is pending, we should delete the sage-8.8 milestone for tickets that are not actively being worked on or that still require significant work to move forward. If you feel that this ticket should be included in the next Sage release at the soonest please set its milestone to the next release milestone (sage-8.9).

comment:4 Changed 10 months ago by mkoeppe

  • Dependencies set to #30647

comment:5 Changed 10 months ago by mkoeppe

  • Cc gh-kliem added
  • Description modified (diff)

See #30647 for a new idiom - lazy_import with feature - that could replace code like this:

        PythonModule("PyNormaliz", spkg="pynormaliz").require()
        import PyNormaliz

throughout backend_normaliz.py.

comment:6 Changed 10 months ago by gh-kliem

I do understand what is the goal of this ticket.

Do we want to make pynormaliz a standard package?

Or is this this new lazy import idiom better for python package that can also be installed via other sources (e.g. a pip install)?

Note: See TracTickets for help on using tickets.