-
-
Notifications
You must be signed in to change notification settings - Fork 491
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
Migrate gitpod to conda #33739
Comments
Branch pushed to git repo; I updated commit sha1. New commits:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
Dependencies: #33740 |
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
|
comment:7
This is now using the latest version of #33740, so ready for review again. |
comment:8
I don't know if it's a good idea to make this change because it means that gitpod can no longer be used for trying out package updates in the Sage distribution. Too bad that Gitpod has decided that a project can only have one Gitpod configuration - an obvious design limitation |
comment:9
Can you not install the updated package manually using I think its also not a good idea to optimize gitpod for package update tickets, they should only be a small subset of all tickets. And for those the conda-based gitpod works more reliable and has shorter startup times. |
comment:10
Replying to @tobiasdiez:
As the documentation says - |
comment:11
I think the way forward could be to work on the devcontainer ticket (#33671). There can be multiple devcontainers (we could have them for all the platforms that we generate Docker images for). This would be a good replacement for what gitpod right now offers in terms of testing package upgrades. When done, I agree that switching gitpod to conda is a good idea. Also consider that both the conda stuff and the gitpod stuff are new -- for onboarding current developers, right now I think it's better if gitpod shows them something that is more familiar. |
comment:12
Replying to @mkoeppe:
How would devcontainer help here? Gitpod doesn't support them yet and its not clear yet when they will and in which form; the linked github issue reads more like that the are considering this as a alternative syntax for their gitpod.yml file and not that they would offer prebuilds for all defined devcontainers. |
comment:13
Replying to @mkoeppe:
I just run |
comment:14
Replying to @tobiasdiez:
If done right, it would make working on package upgrades almost as convenient as using gitpod. Sure, using local compilation (unless we orchestrate devcontainer prebuild), but convenient |
comment:15
Replying to @mkoeppe:
Even with a conda-based gitpod, you can simply deactivate the conda environment and run |
comment:16
Replying to @tobiasdiez:
That's true, of course
Well no, because it wouldn't even have a SAGE_LOCAL. So it offers nothing over just building the whole thing locally |
comment:17
The advantage would be that you can run whatever commands you want without worrying how it affects the rest of your system / the main installation of sage. Anyway, I still think that package updates are only a small subset of all tickets and making them temporarily slightly less convenient to test with gitpod is a price worth paying if gitpod gets more useful for the rest of the tickets. Moreover, as you mention, gitpod support is new so developers can easily go back to whatever they were using before to test package updates until further improvements like #33671 are implemented. It would be nice if this ticket could be merged before the sagedays so that I don't have to wait 5mins during my talk until the workspace started. |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:19
Is it really starting up faster? |
comment:20
Regression: The SageMath jupyter kernel cannot be selected (Command Palette - Create: New Jupyter Notebook, then "Select Kernel" in the upper right corner) |
comment:29
Let's add it in #33855. |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:32
Of course by itself #33855 doesn't fix it -- the same line in spkg-install needs to be run manually... |
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
|
comment:34
Rolled back the merge and merged the new version of #33855. |
comment:35
Now the kernel is available |
Reviewer: Matthias Koeppe |
comment:37
I haven't tested it thoroughly, but it looks like a nice improvement. It does start faster than the previous solution using our huge prebuilt Docker images. |
comment:38
Thanks! |
comment:39
Merge failure on top of: 054e8ed8d9 Trac #33316: Drop support for GCC < 6.3 in Sage 9.7 fa3b529 Trac #25833: Upgrade to MathJax 3 and configure Sage e2ebf44 Trac #33825: Use pytest-xdist to run pytest in parallel b400962 Trac #33824: make gens and orbits of PermutationGroup immutable af23627 Trac #33809: some pathlib in combinat and groups 955b5d9 Trac #33803: Fixes for the distributions sagemath-objects, sagemath-categories 3e6b41f Trac #33799: Replace SAGE_TMP in doctests of sage.misc.{persist,ostools}, sage.doctest, sage.repl a3fd718 Trac #33797: sage.misc.temporary_file: Remove use of SAGE_TMP 2ca0530 Trac #33794: modules/fp_graded/morphism.py test failure 7037fba Trac #33793: sage.misc.cython: Replace use of SPYX_TMP by a new cached function in sage.misc.temporary_file d115270 Trac #33787: Installation manual: Update section "system-wide install" 0ae5565 Trac #33782: ci-cygwin: Update python version 833f53d Trac #33779: Remove use of SAGE_TMP in sage.interfaces.latte b376a8d Trac #33771: SSLContext needs an argument df168c8 Trac #33763: Refactor src/sage/docs 9597eaf Trac #33748: make accessing coefficients of finite-field elements easier f02236f Trac #33744: Compute bases/circuits in MatroidUnion 8943dc0 Trac #33743: Faster random tree generator 773ec37 Trac #33740: Add conda dev environment 5e65c16 Trac #33734: variety() for polynomial systems over ℚ using msolve 8e7dcca Trac #33733: allow to use flint for Stirling numbers 6f4efb0 Updated SageMath version to 9.7.beta0 merge was not clean: conflicts in .github/workflows/tox.yml |
Branch pushed to git repo; I updated commit sha1. New commits:
|
Changed branch from public/build/conda_gitpod to |
The current solution to prebuild the gitpod docker image using github actions does not work nicely, since prebuilds triggered shortly after a new release still use the old gitpod image (and it may take up to a few days until the new image is available). This is especially notable for the
develop
branch, which is the default entry point if you want to start a new branch on gitpod.In this ticket, we migrate the gitpod config to use the conda environment, which is now generally stable enough for serious development (e.g. almost all tests pass). As a positive side effect, the gitpod config simplifies and startup times are considerably reduced.
Depends on #33740
Depends on #33855
CC: @mkoeppe @dimpase @isuruf
Component: build
Author: Tobias Diez
Branch/Commit:
5748c21
Reviewer: Matthias Koeppe
Issue created by migration from https://trac.sagemath.org/ticket/33739
The text was updated successfully, but these errors were encountered: