-
-
Notifications
You must be signed in to change notification settings - Fork 17
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
Create spyder-base package that does not depend on pyqt #203
Conversation
@conda-forge-admin, please rerender |
Hi! This is the friendly automated conda-forge-linting service. I wanted to let you know that I linted all conda-recipes in your PR ( Here's what I've got... For recipe/meta.yaml:
|
@conda-forge-admin, please rerender. |
Hi! This is the friendly automated conda-forge-linting service. I just wanted to let you know that I linted all conda-recipes in your PR ( |
Hi! This is the friendly automated conda-forge-webservice. I tried to rerender for you, but it looks like there was nothing to do. This message was generated by GitHub actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/11900049814. |
Hi! This is the friendly automated conda-forge-linting service. I just wanted to let you know that I linted all conda-recipes in your PR ( I do have some suggestions for making it better though... For recipe/meta.yaml:
This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/11977420079. Examine the logs at this URL for more detail. |
@conda-forge-admin , please rerender |
@conda-forge-admin please rerender |
Hi! This is the friendly automated conda-forge-linting service. I wanted to let you know that I linted all conda-recipes in your PR ( Here's what I've got... For recipe/meta.yaml:
For recipe/meta.yaml:
This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/11980556058. Examine the logs at this URL for more detail. |
Hi! This is the friendly automated conda-forge-linting service. I just wanted to let you know that I linted all conda-recipes in your PR ( I do have some suggestions for making it better though... For recipe/meta.yaml:
This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/11980594022. Examine the logs at this URL for more detail. |
I tried to move the
|
@hmaarrfk, do you have a recommendation to satisfy |
bca9e10
to
a2a9e57
Compare
f6bbfaf
to
6cc32fd
Compare
0785ae2
to
998a299
Compare
Can you help me understand the goal of keeping this updated? Is the intention of the Spyder Team to make Spyder Compatible with qt backends other than PyQt5? |
Use jinja variable for build number and bump. Remove reference to python version in tests to ensure that spyder package has same hash regardless of runner.
…onda-forge-pinning 2024.12.11.09.08.10
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
again, my question remains, does spyder actually support any backend other than Qt5 for now? |
I'm going to say no. But I'll let @ccordoba12 give a more precise answer. |
so why merge this? |
I would say no right now but in the future we most probably will move to Qt6 (after all Qt5 EOL is coming soon). For more info about future Qt6 support the discussion is being done over spyder-ide/spyder#20201 |
i guess i've been following the general Spyder+Qt testing history. Generally it has been "approach with caution and ultimately not supported outside of PyQt5". I'm wondering whether or not it was the right time to merge this so quickly. Ultimately, ccordoba12 has been very active in maintaining this feedstock. He has also asked quite nicely that other downstream packagers don't rush a release of spyder + qt6. Maybe there was a conversation that happened outside of this PR that I missed, but I would have liked to hear his thoughts on this before we merged... I was mostly helping get the syntax correct for the recipe... |
Yes, it works with PyQt6 too. There is an minor, annoying bug with it, but we plan to fix that in our next version (6.0.5). I know PyQt6 is not available in Conda-forge yet, but we plan to change that soon (perhaps you could give us a hand with it?)
Several reasons:
|
Ok as long as you were ok with it! |
Checklist
0
(if the version changed)conda-smithy
(Use the phrase@conda-forge-admin, please rerender
in a comment in this PR for automated rerendering)Fixes #175
Fixes #178
This PR's workflows will fail until the changes in spyder-ide/spyder#23141 are propagated to PyPi.
spyder-ide/spyder#23141 can be merged anytime, since it should only impact installer builds for PRs. This PR should be merged some time after spyder-ide/spyder#23141 is merged, but immediately following upload of the PyPi package prior to a release or release candidate. Once this PR is merged, the remaining release steps can proceed.
Summary
This PR intends to create two packages from one feedstock.
spyder-base
: contains thespyder
source code and specifies all ofspyder
's dependencies except any direct or indirect dependence onpyqt
.spyder
: only specifiesspyder
's direct and indirect dependencies onpyqt
.The intention is to provide a way for users to use
pyside6
rather thanpyqt
, e.g.Installing
spyder
in the standard fashion will still yield apyqt
-based install.Notes
spyder-base
was chosen as the "parent" package andspyder
as the "subpackage" because the post-link scripts will only be included with the parent package and not the subpackage. Spyder's shortcut (viamenuinst
) is customized conditioned on the install environment, not target platform, and therefore can only use the post-link mechanism to achieve this.spyder-base
must run the post-link scripts at install time, notspyder
, in order to provide the shortcut in the case of usingpyside6
rather thanpyqt
. If the Spyder shortcut did not require the post-link mechanism, then we could makespyder
the parent package andspyder-base
the subpackage.python {{ python_min }} # [unix]
was removed and other selectors were merged in the test environment(s) because it appears that they are not needed. Thepython
spec is not needed for the tests to pass on macOS or Linux and cannot be present on Windows, else the tests fail (the test environment cannot be solved). Removingpython
and merging selectors in thespyder
noarch package also helps ensure the build hash is the same across all platforms.Concerns
I do not know which application Anaconda Navigator will provide:
spyder-base
,spyder
, or both. Theapp
section is not allowed in an item of theoutputs
section, i.e. thespyder
package, so we cannot explicitly use it for the subpackage and remove it from the parent package. I suspect that Anaconda Navigator will recognize both packages as applications because theapp
header appears in the renderedmeta.yaml
for both packages, and this could be confusing. It may also be possible that Anaconda Navigator will only recognize the parent package as an application (i.e.spyder-base
), which would be the worst outcome since this would not run without explicitly installing the remaining dependencies.