Joseph Richardson
2018-10-23 21:31:21 UTC
I'm involved in a large software project that uses conda as a general
package manager -- that is, it uses it for more than managing an Anaconda
distribution; it installs various non-python packages for use by a
non-python software application. This takes place primarily on Windows --
currently Windows 7, if that has any bearing, through there are plans to
upgrade to Windows 10.
Among the many types of files conda is installing in this case are XML
configuration files and other files that tend to change after the packages
are installed. I've realized, both by observation and by the many SHA256
mismatch errors that occur when a package is removed and re-installed, that
when such a configuration file is changed in the install location, it is
also changed in the package cache.
I understand that conda by default attempts to install files by linking
them from the cache to the install location, so I assumed that was the
explanation for this behavior. I understand how file linking works on
Linux, but am a little in the dark about how it works on Windows, or how it
is even possible. This doesn't appear to be the usual Windows "linking" via
mklink, which creates a "shortcut".
Further -- in an attempt to avoid these SHA256 mismatch errors, I added a
no-link directive for all these XML configuration files to the package
recipes, and sure enough, when installed, the packages have an info/no_link
list containing the appropriate files. By appearances, these files ought
not to be being linking -- but still, I see the behavior of files in the
cache being changed when an installed file is changed, and still I see the
SHA256 errors.
Can anybody shed some light on what is going on here?
package manager -- that is, it uses it for more than managing an Anaconda
distribution; it installs various non-python packages for use by a
non-python software application. This takes place primarily on Windows --
currently Windows 7, if that has any bearing, through there are plans to
upgrade to Windows 10.
Among the many types of files conda is installing in this case are XML
configuration files and other files that tend to change after the packages
are installed. I've realized, both by observation and by the many SHA256
mismatch errors that occur when a package is removed and re-installed, that
when such a configuration file is changed in the install location, it is
also changed in the package cache.
I understand that conda by default attempts to install files by linking
them from the cache to the install location, so I assumed that was the
explanation for this behavior. I understand how file linking works on
Linux, but am a little in the dark about how it works on Windows, or how it
is even possible. This doesn't appear to be the usual Windows "linking" via
mklink, which creates a "shortcut".
Further -- in an attempt to avoid these SHA256 mismatch errors, I added a
no-link directive for all these XML configuration files to the package
recipes, and sure enough, when installed, the packages have an info/no_link
list containing the appropriate files. By appearances, these files ought
not to be being linking -- but still, I see the behavior of files in the
cache being changed when an installed file is changed, and still I see the
SHA256 errors.
Can anybody shed some light on what is going on here?
--
You received this message because you are subscribed to the Google Groups "conda - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to conda+***@continuum.io.
To post to this group, send email to ***@continuum.io.
Visit this group at https://groups.google.com/a/continuum.io/group/conda/.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/conda/c61a1683-9faa-4d1f-952e-bdd5e80f8398%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.
You received this message because you are subscribed to the Google Groups "conda - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to conda+***@continuum.io.
To post to this group, send email to ***@continuum.io.
Visit this group at https://groups.google.com/a/continuum.io/group/conda/.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/conda/c61a1683-9faa-4d1f-952e-bdd5e80f8398%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.