WineHQ

World Wine News

All the news that fits, we print.

05/28/2004
by Brian Vincent
Issue: 224

XML source
More Issues...

This is the 224th issue of the Wine Weekly News publication. Its main goal is to perform switch cutovers. It also serves to inform you of what's going on around Wine. Wine is an open source implementation of the Windows API on top of X and Unix. Think of it as a Windows compatibility layer. Wine does not require Microsoft Windows, as it is a completely alternative implementation consisting of 100% Microsoft-free code, but it can optionally use native system DLLs if they are available. You can find more info at www.winehq.org


This week, 141 posts consumed 494 K. There were 60 different contributors. 26 (43%) posted more than once. 23 (38%) posted last week too.

The top 5 posters of the week were:

  1. 14 posts in 38K by Mike Hearn
  2. 13 posts in 30K by Alexandre Julliard
  3. 10 posts in 23K by Rein Klazes
  4. 7 posts in 42K by Eric Pouech
  5. 6 posts in 28K by Ivan

News: Interviews Galore 05/22/2004 Archive
News

We published an interview with Steven Edwards this week. Steven has been working on Wine for about three years and has been instrumental in getting Wine in a usable condition for the ReactOS project. We ended up getting Slashdotted for it. The Slashdot comments were pretty positive too. I think a large part of that is because Steven did an excellent job describing the motivations behind ReactOS.

Orange Crate published an interview with Jeremy White. Last week Slashdot had one, but I think this one is much better. Jeremy talks more about the business side of things and has some interesting revelations:

Chuck Talk: What is on the roadmap for continuing CrossOver development?

Jeremy White: Right now we are really going to focus on our compatibility center. We've got a system where customers can vote for what application support they want next; we're going to try to follow that.

We do have some architectural issues we have to work on; for example, iTunes is going to require some COM and MSI work before we get it working, so we're starting in on those projects.

A few days later Mad Penguin also ran an interview with Jeremy to complement their review of CrossOver Office 3.0 . (By the way, that's the first review of CXO 3.0 I've seen so far and it has a lot of good things to say about the product.)


Testing - Volunteers Needed 05/28/2004 Archive
Testing

Chris Morgan announced a call for volunteers to help with running Wine's testing framework. The new framework downloads and runs nightly builds of the complete set of Win32 API tests and runs them on Windows boxes. So if you have a Windows computer laying around you can set it up to run Chris' Winrash program and it will automate the entire process. Chris described the process:

Thanks to Brian Vincent, Paul Millar, Dimi Paun, Ferenc Wagner and Kevin Koltzau the automated winetest suite is ready for more widespread testing.

Kevin and Paul build winetests each night if there were cvs commits since the last time the tests were built. The winetests are published to a script on winehq that Brian and Dimi wrote. The winrash service that I wrote sends its current state to the service and receives a script to process that may direct it to check in later, download a winetest and run it or upgrade itself. Thanks to Ferenc the winetest results are sent back to winehq and can be accessed via http://test.winehq.org/data/ Pretty formatting of the results is coming soon ;-)

We need volunteers that are willing to participate in the winetesting process by running the winrash service on their computers. The winrash installer can be downloaded from:

You can find out more about winrash at

The installer will install winrash as a service and run Wine tests as required. It is IMPORTANT that you set the client id correctly. Please use your first and last name WITHOUT spaces, like JohnSmith. Using the default client id will cause your winetest results to be ignored.

The service is smart enough to autoupgrade as new versions are released. To uninstall just go to the Add/Remove programs and click 'remove' as you do for many windows programs. There is the ability to restrict the times when winrash runs winetests but this requires manually adding some keys to the registry. I haven't finished testing this feature but if someone wants it I can see about getting it polished up and in a release early this coming week.

We currently need testers for the whole range of windows versions, win95/98/me, nt3/4, win2k, xp and 2003.

Please reply if you want to help out so that we know what kind of coverage we can expect. The more the merrier, so please sign up even if others have done so for your version of Windows.

Dimi described a few items that still remained to be completed, the biggest of which involved reorganizing the web pages a bit. Also, you may want to note that up until a few weeks ago the winetest suite was failing under Win9x. I noticed there's been some recent patches in that area though, so perhaps it's fixed.


Mandrake 10 & Corrupted Registries 05/23/2004 Archive
Fixes

Christian Costa reported a fairly serious problem, This is the second time I had to reboot when my box is stuck while running a windows apps. In both cases the registry had been corrupted. This is very annoying. Could we have the wineserver do a backup of registry files at startup so we can retrieve the previous version if a corruption occurs? That would be very useful.

Alexandre wanted more info about the crash since it shouldn't be an issue, Well, a backup could be implemented, but the way the registry is saved should prevent it from being corrupted, since we only replace the previous one once the new one has been saved correctly. It would be interesting to find out exactly how yours managed to get corrupted. What sort of corruption do you see?

Christian also wondered if anyone else was having the problem and mentioned he was using reiserfs on a Mandrake 2.4.21-0.13mdk kernel. That led Steven Edwards to mention some integration issues with Mandrake 10, Do you have the LSB package installed in your Mandrake? There are two bugs in Mandrake 10 that some of our users have spotted in CrossOver. I don't know all of the details but there seems to be an issue with the 2.4 Mandrake kernel and the LSB package. Once the users have removed the LSB package things seem to clear up.

Christian noticed that other files open when he rebooted experienced corruption. Alexandre felt it wasn't a problem for Wine to solve, Yes, it very much looks like a filesystem issue, I prefer that <g> If you feel like trying to reproduce it, maybe you could try to add an fsync() in the saving code and see if this makes a difference.


Internationalization of Calendars 05/22/2004 Archive
Internationalization

Internationalization issues can be fascinating for the insight they give on other cultures. William Lahti asked for some info regarding calendars, I am trying to implement EnumCalendarInfo and would like to know if any locales have multiple calendars, where the settings for the extra calendars would be in the nls file, and if any calendars have their own separate file.

Shachar Shemesh had some pointers for the Middle East region:

I'm not familiar with the Windows API in that respect, but I can tell you that both Jews and Muslims have their own calendars (as well as Chinese, Hindus etc, IIRC). At least in Israel, the gregorian is the main calendar, but having the ability to view Jewish dates would be nice.

There is (or used to be) also a project with the same name for Muslim dates, but I can't seem to locate it. The best I can do is

Josh Walker then outlined how Japanese calendars worked, though the answer was a bit different than the question William originally asked, it was still interesting:

Japanese also use a different system to indicate the year. They use the year of the emperor. For example today's year is 14 Heisei (The current emperor has been in power since 1990.) When Emperor Hirohito died in 1989, Japanese programmers had to reprogram their computers to deal with the new "year" as many were hard-coded for the old emperor. Y2K wasn't much of a problem because the Japanese had updated their computers ten years before.

Nowadays on computers, they simply list the julian year, then month, then day, and then the character of day of the week

    2002(sei)/05(getsu)/14(hi) (Getsuyobi)

abbreviated, it looks like this --> 04.05.24

Here's what the command "date" gave me as output

    2004&#24180; 5&#26376; 24&#26085;
    &#26376;&#26332;&#26085;

Here's what cal gives me...

    5&#26376; 2004
    &#26085; &#26376; &#28779; &#27700; &#26408; &#37329;
    &#22303;
                       1
    2  3  4  5  6  7  8
    9 10 11 12 13 14 15
    16 17 18 19 20 21 22
    23 24 25 26 27 28 29
    30 31

Just remember, year comes first and the date is separated by periods if you want to drop the characters.

That led Shachar to go into more detail:

Don't get me started about representation.

First - the dates. Arabic dates are a bit simpler - it's a lunar calendar (from moon birth until moon birth), which means that the months jump around the year. So, for example, Ramadan, the fasting month, can happen during winter or summer.

As for the Hebrew calendar.... It's a lunar calendar, with a leap MONTH added once every three to four years, to make sure it doesn't drift too far away from the seasons. So my birthday, which according to the Hebrew calendar happens on the 21st of the SECOND Adar........

Then there is representation. Numerological letters are used. aleph means 1, bet means 2, yod means 10, kaf (the next one) means 20, and so on until 90, and then Kof means 100, and Taf (the last letter) means 400 (22 characters altogether). The numbers are added, so this year is [ed. note: 4 Hebrew characters ] (Taf - 400 Shin- 300 Samech - 60 Daled -4, 764 altogether).

Of course, this is omitting the thousands. The real year is [ed. note: more Hebrew characters ], or 5764. I was never sure what it's counting from. Naturally, the months are also displayed like that.

Oh, and did I mention that a day ends at sunset? Sabbath is kept from the sunset on Friday (actually, half hour before as a safty measure) until sunset on Saturday (half hour after).


Serial Issues 05/24/2004 Archive
IO

David Purucker ran into a problem with serial communication:

I have tried several terminal programs (Hyperterm and TeraTerm) under several builds of Wine including Wine-20040505 and they seem to have the same generic problem.

They all exhibit the same situation, DATA seems to go OUT, but never seems to come IN. Several other people have experienced the same thing, as seen in this bug report:

By the way, TeraTerm does work fine in TCP/IP mode, so it's definitely a serial problem. It's freeware available here:

It appears to be a fundamental problem in the serial/file code, which I understand is now under the ntdll tree. Obviously, I don't know much about it, but there is definitely something wrong.

I was wondering if any developers were aware of this problem, as the decreased general usage of serial communications may have caused this to slip under the carpet, so to speak.

Scott Gifford offered some tips:

We are using serial ports under Wine for a current project, and they work OK (apart from a few warnings). The machine I'm using doesn't have X, so I haven't tried HyperTerminal or TeraTerm, but our console-mode applications operate pretty much as expected.

I'm using two patches applied to a recent CVS. The first is a patch Eric Pouech recently posted:

The second is a patch of my own to suppress warnings when using a pseudo-tty as a serial port:

But our apps worked OK before that; they just generated some warnings. Still, these patches might help, or at least cut down on the noise and help you find the real error.

David tried that, but still didn't have any luck. Jakob Eriksson offered one more suggestion, Teraterm worked almost 100% ok a few months back for me. There was some issue with buffer sizes or something, but I changed a setting in TeraTerm and it worked perfect for me.


All Kernel Cousin issues and summaries are copyright their original authors, and distributed under the terms of the
GNU General Public License, version 2.0.