-
Notifications
You must be signed in to change notification settings - Fork 4
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
One more pass through the recipes, plus work toward the metapackages #19
Conversation
Sorry... Part of the original driver for moving to pip was to allow installation of packages into an existing conda environment in a way that conda could manage and be aware of. When we were talking about pip for building packages, I had a vague feeling that it isn't quite right for that purpose. It looks like there is a standard template they recommend that works for non-namespace packages: For namespace packages I think that just dropping the options ( |
OK. I had run into the problem that testr wasn't working on at least one conda package in navigating the tree when installed via setup.py install, but worked if the conda package was made with pip install. I'll find that error again if it persists and we can decide if we want to modify the package or the install process. |
Ok I didn't realize there was an actual problem somewhere. If you haven't already done it we can leave this as an issue for cleanup or investigation later. |
Right, and I didn't look hard at the issue or document the error I saw previously when I had that text from you that gave me the impression that you thought pip was the way to go. And yes, I figured later I'd switch all the packages to the recommended "setup.py" build string, install into a clean environment, and compare ska_testr results. |
… name not repo name)
f4711c2
to
e9b959b
Compare
I'm hoping this helps to make an env that can be installed in non-root bash-4.1$ conda create -n ska3 ska3-flight Fetching package metadata ............. Solving package specifications: . InstallError: Error: the following specs depend on 'conda' and can only be installed into the root environment: ska3-flight
Thanks, I'm happier reverting. Remember this tool is not going to be run by non-experts, and in all likelihood only you or me. And my intent is to have a detailed process description that we are following, so this doesn't really need to be bulletproof. |
I was thinking more along the lines of:
Note the possibility of installing directly from github using a particular tag or branch:
|
OK. I thought using '--force- might be bad form for this because you end up with an environment with explicitly unmet dependencies. If not clear, uninstalling ska3-flight didn't uninstall all the packages it brought with it, it just uninstalled the metapackage itself (and I thought that was actually fine. I was no longer in a ska3-flight environment so the metapackage didn't belong). |
Ah yes, that wasn't clear. But uninstalling e.g. kadi will also uninstall anything that kadi depends on. So I thought the |
Right, but in my test environment I'd just uninstalled ska3-flight and upgraded kadi, cmd_states, xija. Since we don't have package versions on the rest of the dependencies, that was fine and no dependencies were unmet (though I can see the merits to the pip plan as well. I just don't know if we should do integration testing with conda packages if they will be dead easy to make anyway). |
What was the "upgrade" process? Just pip install over the conda package? If that works, then that would be fine. |
Sorry, I meant that... because my brand new ska3_builder test had, "accidentally" made conda packages of the 3 dev packages in question, I just conda installed the test packages after uninstalling ska3-flight. So not what you wanted to do for pip install testing. ska3-flight. So
|
It looks like "pip install over the conda package" does not work. I ended up with two kadi packages according to "conda list", which seems not maintainable. So for pip installs of dev packages, your method of force uninstalling the conda packages and then pip installing seems exactly right. |
I updated the process Wiki accordingly. |
About ska_version for ska_testr with dev package(s), I see the issue there and don't have a great solution. One possibility is somehow in the build process getting the version of ska3-flight into an installed file e.g. $PREFIX/SKA_VERSION. (This might make ska3-flight not really a meta-package if done directly there). Then |
The only problem with that plan to use ska3-flight to make a file, is that if you uninstall ska3-flight the version file would go away. If you follow your suggested convention to just force remove other packages as needed packages while leaving ska3-flight in place, I guess that would be fine. |
BTW, I don't see the ska_version stuff as a lien on this PR. As long as ska_testr is getting through to the end with some version, whatever it might be, that is good enough for here. |
@jeanconn - is this ready to merge? I.e. no major problems as far as you know? |
Given that we have no dependence on master yet and I think we've discussed all the issues in this PR well in the context of this PR, yes, fine to merge. We can handle other issues in other PRs. I have just been re-tagging along this branch with the temporary tag "0.1.0" as part of the build/test process, but I don't know if we want a more official tag at this point and then have other changes be as PRs on master and new bumps to the release/tag. |
🎉 Fantastic! |
OK. I just did a clean build on presto (centos 5) of our packages at current versions and updated the linux-64 and noarch channels with those builds. I'll rebuild build on osx soon. I moved the old stuff in the ska3-conda channel to a subdirectory; but from here forward I think we'll just be updating as we actually update packages. Also, right now the metapackage all have dummy versions, which we'll want to replace with the date style versions you've suggested. Also, I rebuilt on centos 5 mostly for the practice. Build system shouldn't make a difference because we shouldnt' be doing much against the system libraries, especially for the noarch packages. This may not be as true as I go back to finishing up the Perl pacakges. |
One more pass through the recipes, plus work toward the metapackages .
OK so a lot of things are working but there are still some todo items here:
Closes #16.