On Sun, Jan 4, 2015 at 12:01 AM, Joachim Durchholz <[email protected]> wrote:
> Am 03.01.2015 um 22:59 schrieb Ondřej Čertík:
>>
>> On Sat, Jan 3, 2015 at 1:27 PM, Joachim Durchholz <[email protected]>
>> wrote:
>>>
>>> Am 03.01.2015 um 13:02 schrieb Sergey B Kirpichev:
>>>>
>>>>
>>>> On Sat, Jan 03, 2015 at 12:27:41PM +0100, Joachim Durchholz wrote:
>>>>>>
>>>>>>
>>>>>> Lets hope that mpmath will not break backward compatibility.
>>>>>
>>>>>
>>>>> I wouldn't want to rely on hope.
>>>>
>>>>
>>>> In fact, this is a sane assumption about library development.
>>>
>>>
>>> I strongly disagree about this being a sane assumption.
>>>
>>> It may be sane for libraries that already have a varied set of consumers,
>>> which is proof that they have committed to a stable API. Even there, I
>>> have
>>> seen libraries make horrifying decisions.
>>
>>
>> Fredrik said that he will try to keep the API stable, so it will work out
>> fine.
>
>
> I still see risks, though there's a limit to which discussing failure
> scenarios makes sense. After a while, the probability of overlooking a
> failure scenario becomes higher than the probability of each individual
> failure scenario.
>
> However, even if the risk is small, I wouldn't want to promote using SymPy
> together with an mpmath version that it wasn't tested against.
>
>> I think we can solve technical problems like testing on Travis.
>
>
> That's going to be a combinatorial explosion.
>
>> I agree with you that pip is a horrible way to install and maintain
>> software,
>
>
> What are the problems with that?
> Right now I'm aware of that versioning issue, which I think can be worked
> around though I'm not 100% sure yet.
>
>> but fortunately there are now pretty good package source
>>
>> managers like Conda or Hashdist,
>
>
> How are they better than pip?
> I'm not opposed to any of these actually, I just don't know what the
> differences are.

pip wasn't even able to uninstall packages, see e.g. the second link
in Google for "pip uninstall":
http://stackoverflow.com/questions/6625597/installing-uninstalling-my-module-with-pip

But I think they fixed it now:
https://pip.pypa.io/en/latest/reference/pip_uninstall.html

For my particular use case, I need to be able to install non-python
packages, multiple versions of the same package, use various platforms
(Linux, Mac, Windows, clusters), handle package dependencies, work
without root access, etc. That's my use case, there are other as well.

In the past, various packages managers satisfied some of my use cases,
but not others, e.g. Debian works great, except that it requires a
root access and only works on Linux in fact, it is Linux. Also it is
heavy weight, if you want to quickly add and change packages, i.e.
virtual environments. Virtualenv has virtual environments but it is
tied to Python. pip can install (and now uninstall) packages, but only
Python packages. And so on. Only Conda and Hashdist fix all the
problems. Neither of them are perfect, but are improving. There are
also more package managers popping up all the time lately, but these
two seem to have the largest community.

>
> I'm generally much in favor of unbundling, I'm just extremely cautious about
> avoiding reliability or bugfixing problems. What I wouldn't want is if SymPy
> got cluttered with code that used different workarounds depending on what
> version of a dependency is installed - such things are reliability and
> productivity killers (been there, done that, didn't like it).

It's definitely a concern, and as you know, I used to be firmly
opposed to it. But I think with more projects now that handle source
package management on multiple platforms, things can be managed for
almost all use cases (and things are improving). And we just need to
use good judgement to make sure things work reasonably well with SymPy
and dependencies. If you'll see something that is broken, definitely
bring it up.

Ondrej

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CADDwiVCM7rekONbzwjZqpWZ6h7p349Uny1Xdg45CgntM%2BSfrMw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to