Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update advanced user install instructions for specific Pyomo version #184

Open
Tracked by #819
adowling2 opened this issue Jan 28, 2021 · 2 comments
Open
Tracked by #819
Assignees
Labels
documentation Documentations comments and requests Priority:Low Low Priority Issue or PR

Comments

@adowling2
Copy link
Contributor

adowling2 commented Jan 28, 2021

In the current instructions (https://idaes-pse.readthedocs.io/en/stable/advanced_user_guide/advanced_install/index.html), an advanced user installs the idaes dependencies including pyomo using pip install . (or a similar command).

What if you want to test out an alternative branch of Pyomo (e.g., main branch)?

Follow the same instructions as linked above. If you already ran pip install, we need to remove pyomo and pyutlib:

pip uninstall pyomo pyutilib

Be sure to run this is the conda environment you created as part of the advanced installation instructions! Then in the conda environment, run:

git clone https://github.com/Pyutilib/pyutilib
cd pyutilib
pip install -e .
git clone https://github.com/Pyomo/pyomo
cd pyomo
pip install -e .

Tip: Do NOT put these pyutlib and pyomo folders inside your idaes-pse folder. All three of these folders are git repositories. It is a really bad idea to checkout a git repository inside a git repository; unexpected things can happen.

Note: pyutlib is no longer needed with Pyomo 6.0 (to be released in a few months).

Inside the pyomo folder, you can use git to switch between different branches and remotes.

@adowling2
Copy link
Contributor Author

@jsiirola @lbianchi-lbl @eslickj Please edit my post above with suggestions or other tips.

@ksbeattie
Copy link
Member

I think a better way to use a different version of Pyomo, PyUtiLib (or any other idaes-pse requirement) would be to edit the requirements-dev.txt, requirements.txt (or even the setup.py) to grab the package/version they desire and then install idaes-pse from clone of idaes-pse as already instructed (i.e. pip install -r requirement-dev.txt).

That is better, IMO, than cloning the repo of an alternate requirement, assuming such an advanced user is only using and not developing that alternate requirement. If they are making changes to it, say in the case of Pyomo, then they are a Pyomo developer and should follow Pyomo's developer's instructions.

We could still improve these advanced developer docs, I'd just like to keep it clear that "users install" and "developers clone".

@lbianchi-lbl lbianchi-lbl added the Priority:Low Low Priority Issue or PR label Jan 28, 2021
@ksbeattie ksbeattie self-assigned this Apr 1, 2021
@ksbeattie ksbeattie added the documentation Documentations comments and requests label Oct 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Documentations comments and requests Priority:Low Low Priority Issue or PR
Projects
None yet
Development

No branches or pull requests

4 participants