Re: WebClient-Core port to Pharo 1.1 final

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
79 messages Options
1234
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Schwab,Wilhelm K
Levente,

I stand by the analogy of GPL's history and the more emotional undertones of the current discussion.  Dismissing it won't make it go away.

Bill



________________________________________
From: [hidden email] [[hidden email]] On Behalf Of Levente Uzonyi [[hidden email]]
Sent: Monday, August 30, 2010 6:47 PM
To: [hidden email]
Subject: Re: [Pharo-project] WebClient-Core port to Pharo 1.1 final

On Mon, 30 Aug 2010, Schwab,Wilhelm K wrote:

> GPL is designed to hold people (mostly commercial interests) hostage.  Some of what is going on here sounds the same: it's open but not really.  A web client is not so terribly difficult to write that we should compromise on licensing in order to use one.  I have a *terribly* simple one that I can port if there is interest.  IIRC, I used it to download some large files, but don't expect much.

GPL was just an example for an open source license with restrictions, it
has nothing to do with WebClient. Btw WebClient is far from simple (it's
also a server, handles redirects, special responses, can support SSL,
etc).


Levente

>
>
>
> ________________________________________
> From: [hidden email] [[hidden email]] On Behalf Of Levente Uzonyi [[hidden email]]
> Sent: Monday, August 30, 2010 6:25 PM
> To: [hidden email]
> Subject: Re: [Pharo-project] WebClient-Core port to Pharo 1.1 final
>
> On Mon, 30 Aug 2010, Friedrich Dominicus wrote:
>
>> Levente Uzonyi <[hidden email]> writes:
>
>> On Mon, 30 Aug 2010, Stéphane Ducasse wrote:
>>
>>>>>
>>>>> I suggest that the people that want and know, group together and build an open-source one.
>>>>
>>>> Why do you have to have your "own" library?
>>>
>>> Did I say "pharo library"? reread carefully I said an "open-source one".
>>
>> What I get from Andreas' words is that he's willing to make it open
>> source if it won't be forked.
> Hm I think this is impossible. If it's OS it's up to whomever get its
> hand on it. Or am I mistaken?
>
>
> Just think about GPL, it's open source, but you can't fork the code if you
> don't release your changes as GPL too.
>
>
> Levente
>
>
> Regards
> Friedrich
>
> --
> Q-Software Solutions GmbH; Sitz: Bruchsal; Registergericht: Mannheim
> Registriernummer: HRB232138; Geschaeftsfuehrer: Friedrich Dominicus
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

FDominicus
"Schwab,Wilhelm K" <[hidden email]> writes:

> Levente,
>
> I stand by the analogy of GPL's history and the more emotional
> undertones of the current discussion.  Dismissing it won't make it go
> away.
IMHO you are fully right. The fact still is if something is OS it
forkable. Maye under certain conditions but it surely is forkable.

I avoid GPL software as much as I can (but well I'm running Debian
Linux) so there's not escape really. However I'm just using it... Makes
life easier ;-)

Regards
Friedrich

--
Q-Software Solutions GmbH; Sitz: Bruchsal; Registergericht: Mannheim
Registriernummer: HRB232138; Geschaeftsfuehrer: Friedrich Dominicus

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Andreas.Raab
In reply to this post by Nicolas Cellier
Hi -

Thanks everyone for the reasoned and civil responses. It is good to see
that we can have a disagreement without getting overly personal.
Unfortunately, it seems that I'm effectively offered a no-win
alternative here; I do not see how any of the discussed alternatives
would help me achieve my goals. I will have to think about where to take
things from here. If anyone has ideas, please let me know.

Cheers,
   - Andreas

On 8/30/2010 12:57 PM, Nicolas Cellier wrote:

> Hi Pharoers,
> I'm happy to read mail from Torsten, Igor and Miguel, thank you guys
> that's constructive.
> Andreas expressed his point very well, and i don't think it is
> hostile, maybe a bit sarcastic or disenchanted, but overall he keeps
> the door opened.
> The first thing to do is to cool down, relax and think.
> The second thing to do is engaging discussion with Andreas.
>
> Of course, the license is of prime importance, not having a license is
> a showstopper.
> If license is too restrictive then Andreas will probably fail to reach
> his goals...
> There will be de facto full rewrite rather than forks, but the net
> result will be the same: failure to share packages/libraries.
>
> That's why I personnally don't find Andreas defensive position a good strategy.
> Neither the attitude in response...
> It's like you're happy to throw his work away at first occasion
> without even trying to negociate.
> Bad vibrations.
>
> Before you engage in this (war)path, please, please, discuss.
> And remind this saying "il ne faut pas confondre vitesse et précipitation".
> If no agreement is found then, ok, you'll get a license to carry on.
>
> After the license problem, there is the technical compatibility problem.
> Discussions about cross fork compatibility, compatibility layers or
> libraries (a la GREASE) will have to occur anyway, be it about Andreas
> library or from any other author. So you'll have to take time to
> discuss. Don't consider this as lost time. These discussions are
> considered necessary when they regularly happens in Pharo mailing
> list, aren't they ? It shouldn't be that hard to convince Andreas to
> change things like and:and:and:. For squeakToUtf8, I don't know, maybe
> provide some automated rewrite rules, and produce an automated Pharo
> version ?
>
> Please, discuss, argue, explain why you consider certain constructions
> as bad style. Propose alternatives (be constructive - remember
> coopetition ?).
> I consider being unable to explain one's own choice as a weakness.
> Don't be weak.
> Come-on guys, despite Levente's cutting remark, you're not inferior to
> squeakers ;) (and you don't have to answer to that stupid conclusion).
>
> Nicolas
>
> 2010/8/30 Mariano Martinez Peck<[hidden email]>:
>>
>>
>> 2010/8/30 Miguel Enrique Cobá Martínez<[hidden email]>
>>>
>>> El lun, 30-08-2010 a las 18:25 +0300, Igor Stasenko escribió:
>>>> My 2 cents about WebClient.
>>>>
>>>> - it should be an (un)loadable external package, and i am fully agree
>>>> with Andreas on this point.
>>>> It is tempting to integrate it into image, do some tweaks here and
>>>> there and then ship it within a monolitic image.
>>>> But then, from maintainer's point of view, it is quite hard to keep
>>>> developing it and improving, since it may break
>>>> things in random places over multiple forks etc etc, and then who will
>>>> be accused in such breakage? - a maintainer.
>>>
>>> Of course not, we, the ones using it as part of our core image are the
>>> ones responsible of the correct functioning in our image. It would be
>>> childish to run crying to Andreas that it break our image because we are
>>> taking the decision of integrating it in the core image. Now, this of
>>> course doesn't apply to core functionality or that breaks the contract
>>> the code offers to its clients. That type of API changes will be
>>> discussed with Andreas and if no solution found, the pharo developers
>>> will found a workaround so that is remains working correctly.
>>>
>>
>> Agree with Miguel. It is the smae situation as Gofer.  Lukas is the main
>> developer of Gofer but we (pharo developers) maintain it. When a message is
>> removed or renamed for example, we take care about its senders, for all
>> packages, included Gofer. And we are the responsible, not Lukas.
>>
>>>
>>> What I don't understand is why such imposition to the way of use the
>>> software. If it decided to have an open source license he can't restrict
>>> the uses of the software. This is a real open source implications.
>>>
>>>
>>>>
>>>> It is good to have a person, who personally responsible for
>>>> maintaining a package, or even if by a group of people,
>>>> it should use a separate repository for developing it.
>>>>
>>>> Otherwise, if you integrate it into image, by doing that you:
>>>>   - losing a maintainer , who willingly contributing to this project
>>>>   - in same turn, must take own responsibility for maintaining it,
>>>> which means extra work for you, whenever you having
>>>>    problems with it.
>>>
>>> Of course, that is the point. Nobody expects otherwise.
>>>
>>>>
>>>> We should learn how to integrate things without intimately tying
>>>> everything with a single bloated image.
>>>
>>> Isn't as we are integrating moose or seaside in the core image is a
>>> basic infrastructure thing, a http client, that every modern language in
>>> the current times includes in their core libraries (java, ruby, lisp).
>>>
>>>> And WebClient could be right thing for learning that (Seaside too ;).
>>>>
>>>
>>>
>>> --
>>> Miguel Cobá
>>> http://miguel.leugim.com.mx
>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> [hidden email]
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Stéphane Ducasse
In reply to this post by Levente Uzonyi-2
thanks added to http://code.google.com/p/pharo/issues/detail?id=2885

Stef
On Aug 31, 2010, at 12:22 AM, Levente Uzonyi wrote:

>
> In Squeak(CogVM):
> "7-bit ByteString"
> mediumDoc := ByteString new: 4096 streamContents: [ :stream |
> 4096 timesRepeat: [ stream nextPut: (Character value: 128 atRandom - 1) ] ].
> (1 to: 5) collect: [ :run |
> [ 1 to: 100000 do: [ :ix |
> mediumDoc squeakToUtf8 ] ] timeToRun ].
> "===> #(344 345 344 347 344)"
> (1 to: 5) collect: [ :run |
> [ 1 to: 100000 do: [ :ix |
> mediumDoc convertToWithConverter: UTF8TextConverter new ] ] timeToRun ].
> "===> #(404 373 375 374 374)"
> (1 to: 5) collect: [ :run |
> [ 1 to: 100000 do: [ :ix |
> mediumDoc convertToEncoding: 'utf-8' ] ] timeToRun ].
> "===> #(1443 1440 1438 1443 1445)"
>
> "7-bit ByteString with a single 8-bit character"
> mediumDoc := ByteString new: 4096 streamContents: [ :stream |
> 4096 timesRepeat: [ stream nextPut: (Character value: 128 atRandom - 1) ] ].
> mediumDoc at: 2048 put: (Character value: 128).
> (1 to: 5) collect: [ :run |
> [ 1 to: 100000 do: [ :ix |
> mediumDoc squeakToUtf8 ] ] timeToRun ].
> "===> #(1262 1246 1249 1250 1249)."
> (1 to: 5) collect: [ :run |
> [ 1 to: 100000 do: [ :ix |
> mediumDoc convertToWithConverter: UTF8TextConverter new ] ] timeToRun ].
> "===> #(1261 1256 1264 1260 1258)"
> (1 to: 5) collect: [ :run |
> [ 1 to: 100000 do: [ :ix |
> mediumDoc convertToEncoding: 'utf-8' ] ] timeToRun ].
> "===> #(2591 2567 2538 2543 2582) Not neglible (~0.5 speed)"
>
> "8-bit ByteStrings (only 1000 conversion/test)"
> mediumDoc := ByteString new: 4096 streamContents: [ :stream |
> 4096 timesRepeat: [ stream nextPut: (Character value: 256 atRandom - 1) ] ].
> (1 to: 5) collect: [ :run |
> [ 1 to: 1000 do: [ :ix |
> mediumDoc squeakToUtf8 ] ] timeToRun ].
> "===> #(627 618 618 622 618)"
> (1 to: 5) collect: [ :run |
> [ 1 to: 1000 do: [ :ix |
> mediumDoc convertToWithConverter: UTF8TextConverter new ] ] timeToRun ].
> "===> #(648 621 620 621 622)"
> (1 to: 5) collect: [ :run |
> [ 1 to: 1000 do: [ :ix |
> mediumDoc convertToEncoding: 'utf-8' ] ] timeToRun ].
> "===> #(676 653 650 658 648)"
>
> "WideStrings"
> mediumDoc := String new: 4096 streamContents: [ :stream |
> 4096 timesRepeat: [ stream nextPut: (Character value: (1<<22) atRandom - 1) ] ].
> (1 to: 5) collect: [ :run |
> [ 1 to: 1000 do: [ :ix |
> mediumDoc squeakToUtf8 ] ] timeToRun ].
> "===> #(632 635 633 632 633)"
> (1 to: 5) collect: [ :run |
> [ 1 to: 1000 do: [ :ix |
> mediumDoc convertToWithConverter: UTF8TextConverter new ] ] timeToRun ].
> "===> #(693 625 625 626 625)"
> (1 to: 5) collect: [ :run |
> [ 1 to: 1000 do: [ :ix |
> mediumDoc convertToEncoding: 'utf-8' ] ] timeToRun ].
> "===> #(644 637 640 640 638)"
>
>
> So, for 7-bit ByteStrings (optionally with few 8-bit characters), it does make a difference to use #squeakToUtf8, for 8-bit ByteStrings and WideStrings it doesn't really matter.


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Stéphane Ducasse
In reply to this post by Levente Uzonyi-2
so now we understand why Pharo design is crap :)
Sorry I could resist....
It would be nice if we were a bit more adults. What is strange is that
some people catalyze communication problems (me included) but we should live with that.
I added your bench to the issue too.

Stef


On Aug 31, 2010, at 12:34 AM, Levente Uzonyi wrote:

> And another with "SmallDoc":
>
> smallDoc := ByteString new: 20 streamContents: [ :stream |
> 20 timesRepeat: [ stream nextPut: (Character value: 128 atRandom - 1) ] ].
> (1 to: 5) collect: [ :run |
> [ 1 to: 100000 do: [ :ix |
> smallDoc squeakToUtf8 ] ] timeToRun ].
> "===>  #(15 15 15 15 15)"
> (1 to: 5) collect: [ :run |
> [ 1 to: 100000 do: [ :ix |
> smallDoc convertToWithConverter: UTF8TextConverter new ] ] timeToRun ].
> "===>  #(34 34 34 35 32)"
> (1 to: 5) collect: [ :run |
> [ 1 to: 100000 do: [ :ix |
> smallDoc convertToEncoding: 'utf-8' ] ] timeToRun ].
> "===>  #(1256 1258 1259 1260 1260)"
>
> smallDoc := ByteString new: 20 streamContents: [ :stream |
> 20 timesRepeat: [ stream nextPut: (Character value: 128 atRandom - 1) ] ].
> smallDoc at: 10 put: (Character value: 129).
> (1 to: 5) collect: [ :run |
> [ 1 to: 100000 do: [ :ix |
> smallDoc squeakToUtf8 ] ] timeToRun ].
> "===> #(115 112 112 113 112)"
> (1 to: 5) collect: [ :run |
> [ 1 to: 100000 do: [ :ix |
> smallDoc convertToWithConverter: UTF8TextConverter new ] ] timeToRun ].
> "===> #(157 125 124 126 125)"
> (1 to: 5) collect: [ :run |
> [ 1 to: 100000 do: [ :ix |
> smallDoc convertToEncoding: 'utf-8' ] ] timeToRun ].
> "===> #(1416 1419 1419 1429 1428)"


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Stéphane Ducasse
In reply to this post by Levente Uzonyi-2
don;t worry levente

Nicolas was sensitive to the fact that you laugh because you consider that our process is close and that I
have all the powers, which is false. We proposed in the past to Nicolas to help integrate changes
but this is too boring in pharo so I do the dirty work and should work on making something simpler so that
other can join if they want.

BTW nicolas now we have menus and a lot more the rest (even automatic password settings) so a simple change is integrated
in 2 min, merge and verification of the load in another image. so this is not bad.

Stef

On Aug 31, 2010, at 12:49 AM, Levente Uzonyi wrote:

> On Mon, 30 Aug 2010, Nicolas Cellier wrote:
>
>> Hi Pharoers,
>
> snip
>
>> Come-on guys, despite Levente's cutting remark, you're not inferior to
>> squeakers ;) (and you don't have to answer to that stupid conclusion).
>
> Uh, what remark?
>
>>
>> Nicolas
>>
>
> snip
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Stéphane Ducasse
In reply to this post by Henrik Sperre Johansen
>> snip
>>
>>> Yeah, that's why I added the 200000 4KB docs / sec number.
>>> I really doubt the conversion will be a significant part of the processing time if what you send out is so small you are able to convert 800k messages per second...
>>
>> It depends on the machine/load/etc.
> I feel like we already had this discussion over the cull: implementation, and I doubt either of us is going to change their mind, so let's stop here :)


but cull: is in squeak now I think :)
I did not look carefully

>>> See the code I attached last mail, switching to convertToEncoding: 'utf8' sort of implied implementing something like that, which gives it nearly the same speed as convertToWithConverter: UTF8TextConverter new in your examples.
>>
>> Sorry, I didn't see that. It looks cool, but I still wouldn't use #convertToEncoding: in my code, because there's a similar looking method (#converToWithConverter:) with better performance :).
> Sure, though I find it quite ugly, I wouldn't vehemently oppose using it either, but the issue here was finding something Andreas would accept :)
>> But it's definitely better than the current version, though if a converter is added/changed/removed, the dictionary has to be updated manually.
>>
>>
>> Levente
> Yeah, the code was merely a proof of concept to show off that you could get acceptable (for some :P) performance using it, as a middleground between squeakToUtf8 and convertToWithConverter in terseness.
>
> Cheers,
> Henry
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Andreas.Raab
In reply to this post by Johan Brichau-2
On 8/30/2010 1:40 AM, Johan Brichau wrote:
> I am not a lawyer but as far as I understand this topic, no license means nobody can use the code at all, which contradicts the fact of having it in a public repository (and you being perfectly happy of people using it).
> Can you please clarify the license situation of those projects?

The license situation is that the code that's there has not been made
available with a specific license yet. I use that as a vehicle to allow
people to check things out, to try stuff and to experiment with it while
I'm developing the code and am not willing to give up control. If you
feel you do need a license during that period (which is perfectly
reasonable) you can always contact and ask me and I'll be more than
happy to grant you a non-transferable license that restricts source
redistribution but is otherwise completely free for your use (commercial
or otherwise). The point isn't to keep people from trying things out,
the point is to bring development to a point where I'm happy to release
it in the chosen form to the general public.

Cheers,
   - Andreas

> On 30 Aug 2010, at 00:00, Andreas Raab wrote:
>
>> As you can see, when I mean to put code under the MIT license, I try to state that by including a copy of the license on the front page of the repository as well as setting the license field. Contrary to, for example, the following repositories:
>>
>> http://www.squeaksource.com/ar.html
>> http://www.squeaksource.com/SqueakSSL.html
>> http://www.squeaksource.com/WebClient.html
>>
>> which are not (or not yet) under MIT. Obviously, I'm trying to be as clear as possible on these matters, which is why I was pointing out that your repository incorrectly claims that the version of WebClient in it is LGPLv2. I'm surprised (and shocked) that apparently nobody in Pharo even tries to find out what the license status for WebClient is.
>
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Henrik Sperre Johansen
In reply to this post by Stéphane Ducasse
  On 31.08.2010 08:47, Stéphane Ducasse wrote:
>>> snip
>>>
>>>> Yeah, that's why I added the 200000 4KB docs / sec number.
>>>> I really doubt the conversion will be a significant part of the processing time if what you send out is so small you are able to convert 800k messages per second...
>>> It depends on the machine/load/etc.
>> I feel like we already had this discussion over the cull: implementation, and I doubt either of us is going to change their mind, so let's stop here :)
>
> but cull: is in squeak now I think :)
> I did not look carefully
Yes, the discussion wasn't over its usefulness.
Like now, it was whether the degree of optimization Levente presented
was useful in any real scenarios :)

Cheers,
Henry

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Stéphane Ducasse
In reply to this post by Andreas.Raab
Originally I thought to shut up but today is the last days of summer holidays and I'm a positive thinking
so let us try to help
My suggestions:
        - put MIT now
        - accept other submissions even open the repositories to people that are
        cool (lukas, philippe, sven)
        - trust others!
        - have a look at HCHTTPClient and may be merge, migrate,
        - let pharo uses in it the image, we are not that dumb and with the merging
        capability and rss feed somebody can merge back really fast.

Stef

On Aug 31, 2010, at 8:38 AM, Andreas Raab wrote:

> Hi -
>
> Thanks everyone for the reasoned and civil responses. It is good to see that we can have a disagreement without getting overly personal. Unfortunately, it seems that I'm effectively offered a no-win alternative here; I do not see how any of the discussed alternatives would help me achieve my goals. I will have to think about where to take things from here. If anyone has ideas, please let me know.
>
> Cheers,
>  - Andreas


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Julian Fitzell-2
In reply to this post by Levente Uzonyi-2
2010/8/31 Levente Uzonyi <[hidden email]>:

> On Mon, 30 Aug 2010, Miguel Enrique Cobá Martínez wrote:>
> > "You must be kidding. The freedom to fork is a essential right of open
> > source software:
> > http://news.cnet.com/8301-13505_3-10379280-16.html
> >
> > http://asay.blogspot.com/2006/10/wither-right-to-fork.html
> >
> > http://www.gnu.org/philosophy/free-sw.html
> > http://www.opensource.org/docs/osd
> > http://www.opensource.org/node/357
> >
> > period."
>
> If you agree with OSI.

Right. People always get into this argument. OSI has a definition of
"Open Source" that is based on a moral position of having certain
"freedoms" with the code.

Legally, however, there is no such definition. When you write code,
you (or your employer) own the code and you (or your employer) can
release it under more or less any license—and with any
restrictions—you desire. If I wanted, I could release code with the
restriction that you can only use it on Wednesday! The right to create
"derivative works"—obviously a significant component of forking—is
restricted by copyright law unless the creator explicitly grants that
right to you.

So you're perfectly free to say that WebClient is not "Open Source" if
you wish; but you don't obtain specific rights just because the source
is open. Your rights are entirely determined by your license with the
creator(s).

That's all I'll contribute to this discussion for the moment. We're
working with intellectual property lawyers to prepare our ESUG talk on
open source licensing; hopefully we'll be able to touch on some of
this then and have some useful resources for the community as an
output.

Julian

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Stéphane Ducasse
>
> That's all I'll contribute to this discussion for the moment. We're
> working with intellectual property lawyers to prepare our ESUG talk on
> open source licensing; hopefully we'll be able to touch on some of
> this then and have some useful resources for the community as an
> output.

Julian please no public advertisement for this cool conference on this mailing-list,
we are serious people working and not dreaming about the charm of Barcelona. :D
_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Andreas.Raab
In reply to this post by Sven Van Caekenberghe
Hi Sven -

I had a quick look at the failing tests on Pharo and they seem mostly
the result of bugs in Pharo's Network package. First, MimeDocument>>url
needs to return an instance of Url not a string (check the senders; all
users of it expect it to be a Url not a string) so if you change that to
return a url it'll take care of the pathForFile issue.

The failure of testMultiPartPost2 is a combination of two bugs in
HTTPSocket. First, there's a typo in getResponseUpTo: at the end (this
needs to be #copyFrom:to: (the "to" is missing the colon). Second, there
is httpPostMultiPart: which adds an erroneous CrLf at the end of a
persistent HTTP/1.1 connection. That causes an interesting series of
things to go wrong (which I'm partly still investigating) but the easy
solution is to insert a "Connection: close" header.

Fixes attached. These are of course also broken in Pharo 1.0 and 1.1.

Cheers,
   - Andreas

On 8/30/2010 2:17 AM, Sven Van Caekenberghe wrote:

> Hi Andreas,
>
> Thank you for clarifying your position and for pointing out the lack of a proper license for WebClient code.
>
> I and other people in the Pharo community made a mistake and we're sorry. We will be more careful in the future.
>
> But to our defense, as others pointed out, you're communications gave the impression that this was true open source, compatible with the standard Squeak one in spirit.
>
> Futhermore, and this to your credit as well, you yourself wrote the WebClient-Pharo package, giving the impression that you valued that port. It also proves that you did the actual effort. Thanks you!
>
> And indeed, you did incorporate some changes, so the intention was certainly there.
>
> Now, I would not say that we already actually forked the code. We just tried to port it. The process of following your progress proved difficult (you probably made a diff between your and our latest versions), precisely because of some of these little things like #asString, #utf8Encoding, #and:and:and:and:, but also some deeper ones like #pathForFile that kept coming back.
>
> You have every right to refuse to follow the Pharo Smalltalk spirit or style. I respect that, and the Pharo community as a whole should too.
>
> But your refusal to do so and the lack of a license give us no alternative than to look for other solutions.
>
> I wasn't there when the discussion that let to the birth of Pharo took place. But it is clear that the Smalltalk community is too small to not work together.
>
> The Smalltalk-80 inheritance and the enormeous contributions of the Squeak community over the years should be respected by all. At the same time you cannot ignore the positive effect that Pharo had since then. For me and many others, Pharo definitively has its place, along many other viable Smalltalk implementations.
>
> Regards,
>
> Sven
>
> On 30 Aug 2010, at 00:00, Andreas Raab wrote:
>
>> Hi Sven,
>>
>> [cc: pharo list since I think there are some larger issues to discuss]
>>
>> First of all thank you for your continued interest in WebClient. It is nice to see that people like to use it. However, I'm more than a bit surprised about what you are saying below about having WebClient in Pharo 1.2. Honestly, I was dumbfounded when I went to read some of the discussions on the Pharo list.
>>
>> May I ask what the due diligence process is for including packages in Pharo? I would have expected that the process includes 1) checking the project page on SS for the license and 2) sending the author a courtesy note along the lines of "hey we want to include your code, are you okay with that?" (in particular if the author of the package isn't on the Pharo list and consequently has no clue about what you're doing).
>>
>> 1. Regarding WebClient's license, please have a look at any of the following repositories, all of which are under MIT:
>>
>> http://www.squeaksource.com/Balloon3D.html
>> http://www.squeaksource.com/CroquetGL.html
>> http://www.squeaksource.com/ToolBuilder.html
>> http://www.squeaksource.com/TweakCore.html
>> ... etc ...
>>
>> As you can see, when I mean to put code under the MIT license, I try to state that by including a copy of the license on the front page of the repository as well as setting the license field. Contrary to, for example, the following repositories:
>>
>> http://www.squeaksource.com/ar.html
>> http://www.squeaksource.com/SqueakSSL.html
>> http://www.squeaksource.com/WebClient.html
>>
>> which are not (or not yet) under MIT. Obviously, I'm trying to be as clear as possible on these matters, which is why I was pointing out that your repository incorrectly claims that the version of WebClient in it is LGPLv2. I'm surprised (and shocked) that apparently nobody in Pharo even tries to find out what the license status for WebClient is.
>>
>> 2. Regarding my intentions / position you'll have to keep in mind that I don't read the Pharo list. I tried to follow it in the past only to be faced with several vicious attacks against Squeak and myself and as a consequence I stopped reading it. Consequently, this is the first time anyone has ever mentioned the inclusion of WebClient in Pharo to me.
>>
>> In short, my position is that we need more shared libraries, not more forks. You will probably see the irony that I specifically didn't set a license on WebClient to prevent such forks without any prior discussion (under the hopelessly naive assumption that there would be some sort of due diligence process) only to find out that you've forked WebClient already. How very ironic indeed.
>>
>> Because of my position above, I think WebClient should be an external package, loaded for example via Metacello configuration. In fact, that's exactly why I provided a Metacello configuration to begin with. Can someone perhaps explain where the urge to include (and consequently fork) WebClient comes from? WebClient is a perfectly good external package and for the time being I prefer it should stay that way. If you want to replace HTTPSocket, then have a look at Squeak 4.2 which contains a very simple HTTPSocket implementation that has hooks so that WebClient will be used if it's loaded.
>>
>> Regarding fixes for Pharo, as far as I know the only changes that I haven't included was a bunch of #asString sprinkled all over the places, and the abominations of replacing #squeakToUtf8 and #utf8ToSqueak with "convert[From|To]WithConverter: UTF8TextConverter new". On both of these issues I feel very strongly; I will not make the code substantially worse only to deal with shortcomings of Pharo. So if you cannot come to a reasonable resolution for these, you'll need the extension methods. Outside of that, I believe that not only have I integrated all the fixes that have been sent to me, I have also added several patches to WebClient-Pharo that provide important fixes for (in Pharo broken) network operations without which WebClient would not work in any released Pharo versions.
>>
>> Summary:
>> * I'm surprised and I'm shocked to see that there is apparently no due diligence regarding new packages in Pharo. I find this in particular shocking giving the wild claims on the Pharo web site that "From the beginning of Pharo we have maintained a strict rule that every contributor has to sign our license agreement." I haven't. (and geez, when did Michael got dropped from the Pharo board?)
>>
>> * I don't want WebClient to be included in Pharo since this means you will be producing a Pharo-only fork of WebClient which is counter-productive from my perspective. I want WebClient to remain a shared loadable package with a canonical source repository available to all forks of Squeak, including Pharo.
>>
>> * I have, and will continue to do so, integrate fixes for Pharo as long as I consider them reasonable. If there is interest, I can also provide an updated Metacello configuration; although that really just boils down to updating it to the latest package versions.
>>
>> Cheers,
>>   - Andreas
>
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

NetworkFixes-ar.1.cs (6K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

SergeStinckwich
In reply to this post by Miguel Cobá
Don't confuse open-source software with free software:

http://www.gnu.org/philosophy/free-software-for-freedom.html


2010/8/31 Miguel Enrique Cobá Martínez <[hidden email]>:

> El mar, 31-08-2010 a las 00:43 +0200, Levente Uzonyi escribió:
>> On Mon, 30 Aug 2010, Miguel Enrique Cobá Martínez wrote:
>>
>> > El mar, 31-08-2010 a las 00:25 +0200, Levente Uzonyi escribió:
>> > On Mon, 30 Aug 2010, Friedrich Dominicus wrote:
>> >
>> > > Levente Uzonyi <[hidden email]> writes:
>> >
>> > > On Mon, 30 Aug 2010, Stéphane Ducasse wrote:
>> > >
>> > >>>>
>> > >>>> I suggest that the people that want and know, group together and build an open-source one.
>> > >>>
>> > >>> Why do you have to have your "own" library?
>> > >>
>> > >> Did I say "pharo library"? reread carefully I said an "open-source one".
>> > >
>> > > What I get from Andreas' words is that he's willing to make it open
>> > > source if it won't be forked.
>> > Hm I think this is impossible. If it's OS it's up to whomever get its
>> > hand on it. Or am I mistaken?
>> >
>> >
>> > Just think about GPL, it's open source, but you can't fork the code if you
>> > don't release your changes as GPL too.
>>
>> "I don't get it. If it  is open source then is forkable. Period.
>> If it is a special case like GPL, it add some other restriction, like
>> you can't redistribute the new code without it being also GPL. You can
>> fork it and not using GPL for the new changes, the restriction is that
>> you can't redistribute it."
>>
>> From wikipedia: "Open-source software (OSS) is computer software that is
>> available in source code form for which the source code and certain other
>> rights normally reserved for copyright holders are provided under a
>> software license that permits users to study, change, and improve the
>> software."
>>
>> There's nothing about forking or redistributing here. I could make a
>> license that says: you can study, change and improve the software, but
>> you can't redistribute it without my permission.
>>
>> "But the fact remains that it is forkable always. If you don't want it
>> forkable, then use other non open source license."
>>
>> See above. You could "fork" it, but that wouldn't be open source anymore.
>>
>
> You must be kidding. The freedom to fork is a essential right of open
> source software:
> http://news.cnet.com/8301-13505_3-10379280-16.html
>
> http://asay.blogspot.com/2006/10/wither-right-to-fork.html
>
> http://www.gnu.org/philosophy/free-sw.html
> http://www.opensource.org/docs/osd
> http://www.opensource.org/node/357
>
> period.
>
>>
>> Levente
>>
>>
>> Cheers
>>
>>
>>
>> >
>> >
>> > Levente
>> >
>> >
>> > Regards
>> > Friedrich
>> >
>> > --
>> > Q-Software Solutions GmbH; Sitz: Bruchsal; Registergericht: Mannheim
>> > Registriernummer: HRB232138; Geschaeftsfuehrer: Friedrich Dominicus
>> >
>> > _______________________________________________
>> > Pharo-project mailing list
>> > [hidden email]
>> > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>> > _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>> --
>> Miguel Cobá
>> http://miguel.leugim.com.mx
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>> _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
> --
> Miguel Cobá
> http://miguel.leugim.com.mx
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



--
Serge Stinckwich
UMI UMMISCO 209 (IRD/UPMC), Hanoi, Vietnam
Every DSL ends up being Smalltalk
http://doesnotunderstand.org/

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Stéphane Ducasse
In reply to this post by Andreas.Raab
Thanks
        http://code.google.com/p/pharo/issues/detail?id=2893

Network will be soon in our radar. full of broken code

Stef


On Sep 1, 2010, at 6:16 AM, Andreas Raab wrote:

> Hi Sven -
>
> I had a quick look at the failing tests on Pharo and they seem mostly the result of bugs in Pharo's Network package. First, MimeDocument>>url needs to return an instance of Url not a string (check the senders; all users of it expect it to be a Url not a string) so if you change that to return a url it'll take care of the pathForFile issue.
>
> The failure of testMultiPartPost2 is a combination of two bugs in HTTPSocket. First, there's a typo in getResponseUpTo: at the end (this needs to be #copyFrom:to: (the "to" is missing the colon). Second, there is httpPostMultiPart: which adds an erroneous CrLf at the end of a persistent HTTP/1.1 connection. That causes an interesting series of things to go wrong (which I'm partly still investigating) but the easy solution is to insert a "Connection: close" header.
>
> Fixes attached. These are of course also broken in Pharo 1.0 and 1.1.
>
> Cheers,
>  - Andreas
>
> On 8/30/2010 2:17 AM, Sven Van Caekenberghe wrote:
>> Hi Andreas,
>>
>> Thank you for clarifying your position and for pointing out the lack of a proper license for WebClient code.
>>
>> I and other people in the Pharo community made a mistake and we're sorry. We will be more careful in the future.
>>
>> But to our defense, as others pointed out, you're communications gave the impression that this was true open source, compatible with the standard Squeak one in spirit.
>>
>> Futhermore, and this to your credit as well, you yourself wrote the WebClient-Pharo package, giving the impression that you valued that port. It also proves that you did the actual effort. Thanks you!
>>
>> And indeed, you did incorporate some changes, so the intention was certainly there.
>>
>> Now, I would not say that we already actually forked the code. We just tried to port it. The process of following your progress proved difficult (you probably made a diff between your and our latest versions), precisely because of some of these little things like #asString, #utf8Encoding, #and:and:and:and:, but also some deeper ones like #pathForFile that kept coming back.
>>
>> You have every right to refuse to follow the Pharo Smalltalk spirit or style. I respect that, and the Pharo community as a whole should too.
>>
>> But your refusal to do so and the lack of a license give us no alternative than to look for other solutions.
>>
>> I wasn't there when the discussion that let to the birth of Pharo took place. But it is clear that the Smalltalk community is too small to not work together.
>>
>> The Smalltalk-80 inheritance and the enormeous contributions of the Squeak community over the years should be respected by all. At the same time you cannot ignore the positive effect that Pharo had since then. For me and many others, Pharo definitively has its place, along many other viable Smalltalk implementations.
>>
>> Regards,
>>
>> Sven
>>
>> On 30 Aug 2010, at 00:00, Andreas Raab wrote:
>>
>>> Hi Sven,
>>>
>>> [cc: pharo list since I think there are some larger issues to discuss]
>>>
>>> First of all thank you for your continued interest in WebClient. It is nice to see that people like to use it. However, I'm more than a bit surprised about what you are saying below about having WebClient in Pharo 1.2. Honestly, I was dumbfounded when I went to read some of the discussions on the Pharo list.
>>>
>>> May I ask what the due diligence process is for including packages in Pharo? I would have expected that the process includes 1) checking the project page on SS for the license and 2) sending the author a courtesy note along the lines of "hey we want to include your code, are you okay with that?" (in particular if the author of the package isn't on the Pharo list and consequently has no clue about what you're doing).
>>>
>>> 1. Regarding WebClient's license, please have a look at any of the following repositories, all of which are under MIT:
>>>
>>> http://www.squeaksource.com/Balloon3D.html
>>> http://www.squeaksource.com/CroquetGL.html
>>> http://www.squeaksource.com/ToolBuilder.html
>>> http://www.squeaksource.com/TweakCore.html
>>> ... etc ...
>>>
>>> As you can see, when I mean to put code under the MIT license, I try to state that by including a copy of the license on the front page of the repository as well as setting the license field. Contrary to, for example, the following repositories:
>>>
>>> http://www.squeaksource.com/ar.html
>>> http://www.squeaksource.com/SqueakSSL.html
>>> http://www.squeaksource.com/WebClient.html
>>>
>>> which are not (or not yet) under MIT. Obviously, I'm trying to be as clear as possible on these matters, which is why I was pointing out that your repository incorrectly claims that the version of WebClient in it is LGPLv2. I'm surprised (and shocked) that apparently nobody in Pharo even tries to find out what the license status for WebClient is.
>>>
>>> 2. Regarding my intentions / position you'll have to keep in mind that I don't read the Pharo list. I tried to follow it in the past only to be faced with several vicious attacks against Squeak and myself and as a consequence I stopped reading it. Consequently, this is the first time anyone has ever mentioned the inclusion of WebClient in Pharo to me.
>>>
>>> In short, my position is that we need more shared libraries, not more forks. You will probably see the irony that I specifically didn't set a license on WebClient to prevent such forks without any prior discussion (under the hopelessly naive assumption that there would be some sort of due diligence process) only to find out that you've forked WebClient already. How very ironic indeed.
>>>
>>> Because of my position above, I think WebClient should be an external package, loaded for example via Metacello configuration. In fact, that's exactly why I provided a Metacello configuration to begin with. Can someone perhaps explain where the urge to include (and consequently fork) WebClient comes from? WebClient is a perfectly good external package and for the time being I prefer it should stay that way. If you want to replace HTTPSocket, then have a look at Squeak 4.2 which contains a very simple HTTPSocket implementation that has hooks so that WebClient will be used if it's loaded.
>>>
>>> Regarding fixes for Pharo, as far as I know the only changes that I haven't included was a bunch of #asString sprinkled all over the places, and the abominations of replacing #squeakToUtf8 and #utf8ToSqueak with "convert[From|To]WithConverter: UTF8TextConverter new". On both of these issues I feel very strongly; I will not make the code substantially worse only to deal with shortcomings of Pharo. So if you cannot come to a reasonable resolution for these, you'll need the extension methods. Outside of that, I believe that not only have I integrated all the fixes that have been sent to me, I have also added several patches to WebClient-Pharo that provide important fixes for (in Pharo broken) network operations without which WebClient would not work in any released Pharo versions.
>>>
>>> Summary:
>>> * I'm surprised and I'm shocked to see that there is apparently no due diligence regarding new packages in Pharo. I find this in particular shocking giving the wild claims on the Pharo web site that "From the beginning of Pharo we have maintained a strict rule that every contributor has to sign our license agreement." I haven't. (and geez, when did Michael got dropped from the Pharo board?)
>>>
>>> * I don't want WebClient to be included in Pharo since this means you will be producing a Pharo-only fork of WebClient which is counter-productive from my perspective. I want WebClient to remain a shared loadable package with a canonical source repository available to all forks of Squeak, including Pharo.
>>>
>>> * I have, and will continue to do so, integrate fixes for Pharo as long as I consider them reasonable. If there is interest, I can also provide an updated Metacello configuration; although that really just boils down to updating it to the latest package versions.
>>>
>>> Cheers,
>>>  - Andreas
>>
>>
> <NetworkFixes-ar.1.cs>_______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Miguel Cobá
In reply to this post by SergeStinckwich
El mié, 01-09-2010 a las 15:44 +0900, Serge Stinckwich escribió:
> Don't confuse open-source software with free software:
>
> http://www.gnu.org/philosophy/free-software-for-freedom.html

I think that this has already gone off-topic. The original argument was
that Andreas wanted to open source it (MIT likely) and at the same time
prohibiting forking of the codebase.
My point was that if it was open source or free software then the
forking was a granted right.
If he wanted to avoid it then he couldn't claim is free software or open
source.

With MIT you can fork (of course) but also with GPL (like the
emacs/xemacs fork).

Let not bring this thread in a free software vs open source war.

Cheers

>
>
> 2010/8/31 Miguel Enrique Cobá Martínez <[hidden email]>:
> > El mar, 31-08-2010 a las 00:43 +0200, Levente Uzonyi escribió:
> >> On Mon, 30 Aug 2010, Miguel Enrique Cobá Martínez wrote:
> >>
> >> > El mar, 31-08-2010 a las 00:25 +0200, Levente Uzonyi escribió:
> >> > On Mon, 30 Aug 2010, Friedrich Dominicus wrote:
> >> >
> >> > > Levente Uzonyi <[hidden email]> writes:
> >> >
> >> > > On Mon, 30 Aug 2010, Stéphane Ducasse wrote:
> >> > >
> >> > >>>>
> >> > >>>> I suggest that the people that want and know, group together and build an open-source one.
> >> > >>>
> >> > >>> Why do you have to have your "own" library?
> >> > >>
> >> > >> Did I say "pharo library"? reread carefully I said an "open-source one".
> >> > >
> >> > > What I get from Andreas' words is that he's willing to make it open
> >> > > source if it won't be forked.
> >> > Hm I think this is impossible. If it's OS it's up to whomever get its
> >> > hand on it. Or am I mistaken?
> >> >
> >> >
> >> > Just think about GPL, it's open source, but you can't fork the code if you
> >> > don't release your changes as GPL too.
> >>
> >> "I don't get it. If it  is open source then is forkable. Period.
> >> If it is a special case like GPL, it add some other restriction, like
> >> you can't redistribute the new code without it being also GPL. You can
> >> fork it and not using GPL for the new changes, the restriction is that
> >> you can't redistribute it."
> >>
> >> From wikipedia: "Open-source software (OSS) is computer software that is
> >> available in source code form for which the source code and certain other
> >> rights normally reserved for copyright holders are provided under a
> >> software license that permits users to study, change, and improve the
> >> software."
> >>
> >> There's nothing about forking or redistributing here. I could make a
> >> license that says: you can study, change and improve the software, but
> >> you can't redistribute it without my permission.
> >>
> >> "But the fact remains that it is forkable always. If you don't want it
> >> forkable, then use other non open source license."
> >>
> >> See above. You could "fork" it, but that wouldn't be open source anymore.
> >>
> >
> > You must be kidding. The freedom to fork is a essential right of open
> > source software:
> > http://news.cnet.com/8301-13505_3-10379280-16.html
> >
> > http://asay.blogspot.com/2006/10/wither-right-to-fork.html
> >
> > http://www.gnu.org/philosophy/free-sw.html
> > http://www.opensource.org/docs/osd
> > http://www.opensource.org/node/357
> >
> > period.
> >
> >>
> >> Levente
> >>
> >>
> >> Cheers
> >>
> >>
> >>
> >> >
> >> >
> >> > Levente
> >> >
> >> >
> >> > Regards
> >> > Friedrich
> >> >
> >> > --
> >> > Q-Software Solutions GmbH; Sitz: Bruchsal; Registergericht: Mannheim
> >> > Registriernummer: HRB232138; Geschaeftsfuehrer: Friedrich Dominicus
> >> >
> >> > _______________________________________________
> >> > Pharo-project mailing list
> >> > [hidden email]
> >> > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> >> > _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> >>
> >> --
> >> Miguel Cobá
> >> http://miguel.leugim.com.mx
> >>
> >>
> >> _______________________________________________
> >> Pharo-project mailing list
> >> [hidden email]
> >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> >> _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> >
> > --
> > Miguel Cobá
> > http://miguel.leugim.com.mx
> >
> >
> > _______________________________________________
> > Pharo-project mailing list
> > [hidden email]
> > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>
> --
> Serge Stinckwich
> UMI UMMISCO 209 (IRD/UPMC), Hanoi, Vietnam
> Every DSL ends up being Smalltalk
> http://doesnotunderstand.org/
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

--
Miguel Cobá
http://miguel.leugim.com.mx


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

laurent laffont
2010/9/1 Miguel Enrique Cobá Martínez <[hidden email]>
El mié, 01-09-2010 a las 15:44 +0900, Serge Stinckwich escribió:
> Don't confuse open-source software with free software:
>
> http://www.gnu.org/philosophy/free-software-for-freedom.html

I think that this has already gone off-topic. The original argument was
that Andreas wanted to open source it (MIT likely) and at the same time
prohibiting forking of the codebase.
My point was that if it was open source or free software then the
forking was a granted right.
If he wanted to avoid it then he couldn't claim is free software or open
source.

With MIT you can fork (of course) but also with GPL (like the
emacs/xemacs fork).

Let not bring this thread in a free software vs open source war.


+1


Cheers
>
>
> 2010/8/31 Miguel Enrique Cobá Martínez <[hidden email]>:
> > El mar, 31-08-2010 a las 00:43 +0200, Levente Uzonyi escribió:
> >> On Mon, 30 Aug 2010, Miguel Enrique Cobá Martínez wrote:
> >>
> >> > El mar, 31-08-2010 a las 00:25 +0200, Levente Uzonyi escribió:
> >> > On Mon, 30 Aug 2010, Friedrich Dominicus wrote:
> >> >
> >> > > Levente Uzonyi <[hidden email]> writes:
> >> >
> >> > > On Mon, 30 Aug 2010, Stéphane Ducasse wrote:
> >> > >
> >> > >>>>
> >> > >>>> I suggest that the people that want and know, group together and build an open-source one.
> >> > >>>
> >> > >>> Why do you have to have your "own" library?
> >> > >>
> >> > >> Did I say "pharo library"? reread carefully I said an "open-source one".
> >> > >
> >> > > What I get from Andreas' words is that he's willing to make it open
> >> > > source if it won't be forked.
> >> > Hm I think this is impossible. If it's OS it's up to whomever get its
> >> > hand on it. Or am I mistaken?
> >> >
> >> >
> >> > Just think about GPL, it's open source, but you can't fork the code if you
> >> > don't release your changes as GPL too.
> >>
> >> "I don't get it. If it  is open source then is forkable. Period.
> >> If it is a special case like GPL, it add some other restriction, like
> >> you can't redistribute the new code without it being also GPL. You can
> >> fork it and not using GPL for the new changes, the restriction is that
> >> you can't redistribute it."
> >>
> >> From wikipedia: "Open-source software (OSS) is computer software that is
> >> available in source code form for which the source code and certain other
> >> rights normally reserved for copyright holders are provided under a
> >> software license that permits users to study, change, and improve the
> >> software."
> >>
> >> There's nothing about forking or redistributing here. I could make a
> >> license that says: you can study, change and improve the software, but
> >> you can't redistribute it without my permission.
> >>
> >> "But the fact remains that it is forkable always. If you don't want it
> >> forkable, then use other non open source license."
> >>
> >> See above. You could "fork" it, but that wouldn't be open source anymore.
> >>
> >
> > You must be kidding. The freedom to fork is a essential right of open
> > source software:
> > http://news.cnet.com/8301-13505_3-10379280-16.html
> >
> > http://asay.blogspot.com/2006/10/wither-right-to-fork.html
> >
> > http://www.gnu.org/philosophy/free-sw.html
> > http://www.opensource.org/docs/osd
> > http://www.opensource.org/node/357
> >
> > period.
> >
> >>
> >> Levente
> >>
> >>
> >> Cheers
> >>
> >>
> >>
> >> >
> >> >
> >> > Levente
> >> >
> >> >
> >> > Regards
> >> > Friedrich
> >> >
> >> > --
> >> > Q-Software Solutions GmbH; Sitz: Bruchsal; Registergericht: Mannheim
> >> > Registriernummer: HRB232138; Geschaeftsfuehrer: Friedrich Dominicus
> >> >
> >> > _______________________________________________
> >> > Pharo-project mailing list
> >> > [hidden email]
> >> > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> >> > _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> >>
> >> --
> >> Miguel Cobá
> >> http://miguel.leugim.com.mx
> >>
> >>
> >> _______________________________________________
> >> Pharo-project mailing list
> >> [hidden email]
> >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> >> _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> >
> > --
> > Miguel Cobá
> > http://miguel.leugim.com.mx
> >
> >
> > _______________________________________________
> > Pharo-project mailing list
> > [hidden email]
> > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>
> --
> Serge Stinckwich
> UMI UMMISCO 209 (IRD/UPMC), Hanoi, Vietnam
> Every DSL ends up being Smalltalk
> http://doesnotunderstand.org/
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

--
Miguel Cobá
http://miguel.leugim.com.mx


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: WebClient-Core port to Pharo 1.1 final

Sven Van Caekenberghe
In reply to this post by Andreas.Raab
Andreas,

Thanks a lot for taking the time to look into these problems and for the patches.
Shouldn't we try to capture these problems with unit tests running across Squeak and its derivatives ?
What would be the procedure to contribute to these tests ?

Sven

On 01 Sep 2010, at 06:16, Andreas Raab wrote:

> Hi Sven -
>
> I had a quick look at the failing tests on Pharo and they seem mostly the result of bugs in Pharo's Network package. First, MimeDocument>>url needs to return an instance of Url not a string (check the senders; all users of it expect it to be a Url not a string) so if you change that to return a url it'll take care of the pathForFile issue.
>
> The failure of testMultiPartPost2 is a combination of two bugs in HTTPSocket. First, there's a typo in getResponseUpTo: at the end (this needs to be #copyFrom:to: (the "to" is missing the colon). Second, there is httpPostMultiPart: which adds an erroneous CrLf at the end of a persistent HTTP/1.1 connection. That causes an interesting series of things to go wrong (which I'm partly still investigating) but the easy solution is to insert a "Connection: close" header.
>
> Fixes attached. These are of course also broken in Pharo 1.0 and 1.1.
>
> Cheers,
>  - Andreas
>
> On 8/30/2010 2:17 AM, Sven Van Caekenberghe wrote:
>> Hi Andreas,
>>
>> Thank you for clarifying your position and for pointing out the lack of a proper license for WebClient code.
>>
>> I and other people in the Pharo community made a mistake and we're sorry. We will be more careful in the future.
>>
>> But to our defense, as others pointed out, you're communications gave the impression that this was true open source, compatible with the standard Squeak one in spirit.
>>
>> Futhermore, and this to your credit as well, you yourself wrote the WebClient-Pharo package, giving the impression that you valued that port. It also proves that you did the actual effort. Thanks you!
>>
>> And indeed, you did incorporate some changes, so the intention was certainly there.
>>
>> Now, I would not say that we already actually forked the code. We just tried to port it. The process of following your progress proved difficult (you probably made a diff between your and our latest versions), precisely because of some of these little things like #asString, #utf8Encoding, #and:and:and:and:, but also some deeper ones like #pathForFile that kept coming back.
>>
>> You have every right to refuse to follow the Pharo Smalltalk spirit or style. I respect that, and the Pharo community as a whole should too.
>>
>> But your refusal to do so and the lack of a license give us no alternative than to look for other solutions.
>>
>> I wasn't there when the discussion that let to the birth of Pharo took place. But it is clear that the Smalltalk community is too small to not work together.
>>
>> The Smalltalk-80 inheritance and the enormeous contributions of the Squeak community over the years should be respected by all. At the same time you cannot ignore the positive effect that Pharo had since then. For me and many others, Pharo definitively has its place, along many other viable Smalltalk implementations.
>>
>> Regards,
>>
>> Sven
>>
>> On 30 Aug 2010, at 00:00, Andreas Raab wrote:
>>
>>> Hi Sven,
>>>
>>> [cc: pharo list since I think there are some larger issues to discuss]
>>>
>>> First of all thank you for your continued interest in WebClient. It is nice to see that people like to use it. However, I'm more than a bit surprised about what you are saying below about having WebClient in Pharo 1.2. Honestly, I was dumbfounded when I went to read some of the discussions on the Pharo list.
>>>
>>> May I ask what the due diligence process is for including packages in Pharo? I would have expected that the process includes 1) checking the project page on SS for the license and 2) sending the author a courtesy note along the lines of "hey we want to include your code, are you okay with that?" (in particular if the author of the package isn't on the Pharo list and consequently has no clue about what you're doing).
>>>
>>> 1. Regarding WebClient's license, please have a look at any of the following repositories, all of which are under MIT:
>>>
>>> http://www.squeaksource.com/Balloon3D.html
>>> http://www.squeaksource.com/CroquetGL.html
>>> http://www.squeaksource.com/ToolBuilder.html
>>> http://www.squeaksource.com/TweakCore.html
>>> ... etc ...
>>>
>>> As you can see, when I mean to put code under the MIT license, I try to state that by including a copy of the license on the front page of the repository as well as setting the license field. Contrary to, for example, the following repositories:
>>>
>>> http://www.squeaksource.com/ar.html
>>> http://www.squeaksource.com/SqueakSSL.html
>>> http://www.squeaksource.com/WebClient.html
>>>
>>> which are not (or not yet) under MIT. Obviously, I'm trying to be as clear as possible on these matters, which is why I was pointing out that your repository incorrectly claims that the version of WebClient in it is LGPLv2. I'm surprised (and shocked) that apparently nobody in Pharo even tries to find out what the license status for WebClient is.
>>>
>>> 2. Regarding my intentions / position you'll have to keep in mind that I don't read the Pharo list. I tried to follow it in the past only to be faced with several vicious attacks against Squeak and myself and as a consequence I stopped reading it. Consequently, this is the first time anyone has ever mentioned the inclusion of WebClient in Pharo to me.
>>>
>>> In short, my position is that we need more shared libraries, not more forks. You will probably see the irony that I specifically didn't set a license on WebClient to prevent such forks without any prior discussion (under the hopelessly naive assumption that there would be some sort of due diligence process) only to find out that you've forked WebClient already. How very ironic indeed.
>>>
>>> Because of my position above, I think WebClient should be an external package, loaded for example via Metacello configuration. In fact, that's exactly why I provided a Metacello configuration to begin with. Can someone perhaps explain where the urge to include (and consequently fork) WebClient comes from? WebClient is a perfectly good external package and for the time being I prefer it should stay that way. If you want to replace HTTPSocket, then have a look at Squeak 4.2 which contains a very simple HTTPSocket implementation that has hooks so that WebClient will be used if it's loaded.
>>>
>>> Regarding fixes for Pharo, as far as I know the only changes that I haven't included was a bunch of #asString sprinkled all over the places, and the abominations of replacing #squeakToUtf8 and #utf8ToSqueak with "convert[From|To]WithConverter: UTF8TextConverter new". On both of these issues I feel very strongly; I will not make the code substantially worse only to deal with shortcomings of Pharo. So if you cannot come to a reasonable resolution for these, you'll need the extension methods. Outside of that, I believe that not only have I integrated all the fixes that have been sent to me, I have also added several patches to WebClient-Pharo that provide important fixes for (in Pharo broken) network operations without which WebClient would not work in any released Pharo versions.
>>>
>>> Summary:
>>> * I'm surprised and I'm shocked to see that there is apparently no due diligence regarding new packages in Pharo. I find this in particular shocking giving the wild claims on the Pharo web site that "From the beginning of Pharo we have maintained a strict rule that every contributor has to sign our license agreement." I haven't. (and geez, when did Michael got dropped from the Pharo board?)
>>>
>>> * I don't want WebClient to be included in Pharo since this means you will be producing a Pharo-only fork of WebClient which is counter-productive from my perspective. I want WebClient to remain a shared loadable package with a canonical source repository available to all forks of Squeak, including Pharo.
>>>
>>> * I have, and will continue to do so, integrate fixes for Pharo as long as I consider them reasonable. If there is interest, I can also provide an updated Metacello configuration; although that really just boils down to updating it to the latest package versions.
>>>
>>> Cheers,
>>>  - Andreas
>>
>>
> <NetworkFixes-ar.1.cs>


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Network tests coverage (Re: WebClient-Core port to Pharo 1.1 final)

Andreas.Raab
Hi Sven -

Good question. It would definitely be good to cover those areas with
tests but I fear that may require actual cooperation :-) If there is
enough energy (which is hard to say) one might be able to start a
"neutral" repository with tests but I'm not sure how well it would work
in practice (it would mean the tests are fairly far away from the source
it's covering which is generally not a good thing). If anyone has good
ideas, please propose.

Cheers,
   - Andreas

On 9/1/2010 12:38 PM, Sven Van Caekenberghe wrote:

> Andreas,
>
> Thanks a lot for taking the time to look into these problems and for the patches.
> Shouldn't we try to capture these problems with unit tests running across Squeak and its derivatives ?
> What would be the procedure to contribute to these tests ?
>
> Sven
>
> On 01 Sep 2010, at 06:16, Andreas Raab wrote:
>
>> Hi Sven -
>>
>> I had a quick look at the failing tests on Pharo and they seem mostly the result of bugs in Pharo's Network package. First, MimeDocument>>url needs to return an instance of Url not a string (check the senders; all users of it expect it to be a Url not a string) so if you change that to return a url it'll take care of the pathForFile issue.
>>
>> The failure of testMultiPartPost2 is a combination of two bugs in HTTPSocket. First, there's a typo in getResponseUpTo: at the end (this needs to be #copyFrom:to: (the "to" is missing the colon). Second, there is httpPostMultiPart: which adds an erroneous CrLf at the end of a persistent HTTP/1.1 connection. That causes an interesting series of things to go wrong (which I'm partly still investigating) but the easy solution is to insert a "Connection: close" header.
>>
>> Fixes attached. These are of course also broken in Pharo 1.0 and 1.1.
>>
>> Cheers,
>>   - Andreas
>>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
1234