[squeak-dev] The Inbox: Network-ul.100.mcz

Frank Shearar frank.shearar at gmail.com
Thu Jun 23 10:27:34 UTC 2011


On 23 June 2011 11:23, Bert Freudenberg <bert at freudenbergs.de> wrote:
>
> On 23.06.2011, at 11:22, Frank Shearar wrote:
>
>> On 23 June 2011 02:29, Chris Muller <asqueaker at gmail.com> wrote:
>>> Just an FYI, the Magma test suite is pretty heavy on networking
>>> activity, but I didn't encounter any problems with this loaded.
>>>
>>> So what needs to happen for us as a community to make a decision on
>>> whether to accept or reject this?  I assume we will accept it, but
>>> maybe some of those more familiar with it can make some comments..?
>>> Who is our best networking expert who might want to review it and
>>> discuss?
>>>
>>>  - Chris
>>
>> I'll defer to the real experts, like Andreas, as to the actual contents.
>>
>> With my reviewer's cap on, my thoughts are:
>> * I'd like to see a test suite - is it possible that the Etoys people
>> wrote a suite for the below that we might appropriate?
>
> There are a couple test methods: testIPv6, testPort80, timeTest, timeTestUDP. No full test suite.
>
>> * I'd like to see the basic idea behind the change - what's it do?
>> what's it for?
>
> Squeak so far had a very simplified idea of network addresses - e.g. IPv4 only, each host has only a single interface, etc. The new primitives support more lookup options, and you can make not only IPv6 connections but any socket connections your OS supports.
>
> "Old interface"
> NetNameResolver addressForName: 'google.com'
> ==> #[74 125 39 104]
>
> "New interface"
> NetNameResolver addressesForName: 'google.com'
> ==> an OrderedCollection(
> 74.125.39.104(fx-in-f104.1e100.net),0(0)-inet4-stream-tcp
> 74.125.39.105(fx-in-f105.1e100.net),0(0)-inet4-stream-tcp
> 74.125.39.106(fx-in-f106.1e100.net),0(0)-inet4-stream-tcp
> 74.125.39.147(fx-in-f147.1e100.net),0(0)-inet4-stream-tcp
> 74.125.39.99(fx-in-f99.1e100.net),0(0)-inet4-stream-tcp
> 74.125.39.103(fx-in-f103.1e100.net),0(0)-inet4-stream-tcp)
>
> And if I had an IPv6 connection it would give IPv6 addresses too:
>
> NetNameResolver addressesForName: 'localhost'
> ==> an OrderedCollection(
> ::1(localhost),0(0)-inet6-stream-tcp
> fe80::1%lo0(localhost),0(0)-inet6-stream-tcp
> 127.0.0.1(localhost),0(0)-inet4-stream-tcp)

Ah, great. Thanks for the explanation/motivation, Bert!

>> * Networking's really important, and I'd really like to see a general
>> test suite for all things networky. I don't expect this particular
>> change to implement one, but I do think it's something we need. I made
>> a very brief start, in the form of MockSocketStream, long ago. It'd
>> probably be better to use mocks, given that we'd be testing
>> integration with the underlying platform (in the form of the wrapping
>> layer made by SocketStream and friends).
>>
>> frank
>
> I agree networking is important. I would not hold off incorporating this until there is a test suite.

Oh, I agree entirely! That's why I don't expect this change to include
a complete one; I'm just expressing a deep desire for such a suite.

It sounds like Chris' Magma tests use networking in anger, so we can
be reasonably sure that the change won't cause regressions (which is
my main concern).

> - Bert -
>
>>> On Sat, Dec 11, 2010 at 10:12 PM,  <commits at source.squeak.org> wrote:
>>>> A new version of Network was added to project The Inbox:
>>>> http://source.squeak.org/inbox/Network-ul.100.mcz
>>>>
>>>> ==================== Summary ====================
>>>>
>>>> Name: Network-ul.100
>>>> Author: ul
>>>> Time: 12 December 2010, 4:49:19.894 am
>>>> UUID: 81823263-c3d6-f949-a8b0-6a107dcb5322
>>>> Ancestors: Network-ul.99
>>>>
>>>> Network changes from the EToys repository.
>>
>> <snip>
>>
>> frank
>>
>
>
>
>



More information about the Squeak-dev mailing list