Re: What's in the NT branch

From: Guido Serassio <guido.serassio@dont-contact.us>
Date: Thu, 13 Mar 2008 20:48:51 +0100

Hi Henrik,

At 12:59 13/03/2008, Henrik Nordstrom wrote:
>On Tue, 2008-03-11 at 22:43 +0100, Guido Serassio wrote:
>
> > This file comes from the original work of Romeo Anghelache.
> > After some search, I have found the original one from Apache 1.3:
> >
> http://svn.apache.org/viewvc/httpd/httpd/branches/1.3.x/src/os/win32/readdir.c?view=markup
> > If I remember right, the Apache License is not good for Squid.
>
>Correct. The Apache license is GPL incompatible due to minor stupid
>things, but still incompatible.

So we should find another one. May be that the version included into
the MinGW runtime could be fine. I will test it, but I don't know when ...

> > My final intention is to have all the code changes merged into
> > STABLE/HEAD, but currently Squid 3.0 doesn't work at all on native
> > Windows, so some heavy and separated development work is still need
> > to fix all problems before any merge.
>
>That's fine. Such work should be done in a short lived development
>branch, and then merged upstream when it builds and runs, before the
>Windows release.
>
> > If this first step will be successful, and I'm not so sure about this
> > positive result ...., then there will the IPv6 on Windows challenge ...
>
>IPv6 on Windows is the same as above, but probably with more frequent
>merges to trunk.
>
> > I think that a more appropriate attribute for the Windows port is too
> > easily broken ... :-(
> > It's a very acrobatic piece of code .... :-)
>
>I don't see how keeping a separate port branch helps that... it's more
>of a sign that something needs redesign to support windows better.

Too much times something like this is happened:

- Update from CVS of my work dir
- Fix of build problems
- Commit of fixes
- Finished the little time that I have available for development,
usually during weekend
- Hope to do some test/debug during the next weekend
- During the next week someone commit changes in the source
- Update from CVS of my work dir (again during weekend)
- Fix of NEW build problems
- Commit of fixes
- Finished again the little time that I have available for
development just for fix NEW problems .....

This is very disappointing and is the reason because I like to have a
separated branch ....

I think that the main problem here is that there is still only one
Windows developer and this developer is not a full time developer:
I'm mainly a consultant, not a developer.

>What aspect of Windows do you see as the most fragile part?

The main problem is in the code that is touched from others developers.

>- integrity of tha build/make/project files?

Not big problems here, usually the fix is add/remove a source file
some the build project. But sometimes things was worse: i.e. the move
from perl to awk for preprocessing.

>- the socket/filedescriptor emulation?

Many times very big problems here, and also with proprietary IPC and
IPv6 support.
This is the section where currently Squid 3.0 is failing on Windows.
I think that the forward port of the all 2.6+ related enhancements
could help the Squid 3.0 Windows support.

>- rename of open files

No problems here.

>- windows specific support features (i.e. service code, dns registry
>glue etc)

Usually not so big problems here, because all the code is in Windows
specific sources.

>- something else forgoten in the list above

Different C/C++ compiler not always compatible with gcc and a totally
different run time library not based on glibc and not Posix
compliant. And many times this is a very big problem, true for both
Visual Studio and MinGW native environments.

Regards

Guido

-
========================================================
Guido Serassio
Acme Consulting S.r.l. - Microsoft Certified Partner
Via Lucia Savarino, 1 10098 - Rivoli (TO) - ITALY
Tel. : +39.011.9530135 Fax. : +39.011.9781115
Email: guido.serassio@acmeconsulting.it
WWW: http://www.acmeconsulting.it/
Received on Thu Mar 13 2008 - 13:50:50 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Apr 01 2008 - 13:00:10 MDT