Hi,
after having finished its 11405th build, the last official RBuild
builder has gone offline, forever.
The Linux CMake builder has now turned as being the official builder.
Thanks RBuild, you served us well :-).
Also, the other RBuild builder, the release builder has also gone
offline forever. Its hardware was not able to properly handle a ReactOS
build, and was hardly upgradable.
Daily release builds should replace it any time soon.
With my best regards,
--
Pierre Schweitzer <pierre(a)reactos.org>
Systems Administrator
ReactOS Foundation
March 2012 Meeting Minutes
2012-03-29
19:00 UTC
Fezile, #meeting
Proceedings
===========
* Meeting started at 19:00 UTC by Aleksey Bragin.
* Point 1: The state of Trunk
-----------------------------
* Cameron Gutman gave some examples how badly Trunk has regressed since
0.3.14:
- Frequent bugchecks and assertions in the console
- Broken Unicode in the console
- Several key apps such as Firefox, Ping, Dwnl and Notepad being
broken or rarely working
He opened a discussion about improving the quality of Trunk.
* Timo Kreuzer favorized a stricter revert-on-regressions policy. By
employing the Patchbot buildslave, "evil" changes should be detected in
advance before committing them. According to Giannis Adamopoulos, the
Patchbot currently needs 20 minutes in total for building and testing a
patch.
* Colin Finck asked whether the current regressions were visible in the
automated regression tests. Aleksey Bragin denied this for most of them
as these were usability problems not detected by our regression tests.
* Various people suggested frameworks such as AutoIt and AutoHotKey to
automate application testing as well.
* To also automate real hardware testing, Jan Blomqvist Kinander has set
up another server. He reported that he could successfully perform a
remote ReactOS installation on it and just needs some scripts to
automate the procedures now.
* Aleksey Bragin illustrated his plan to move more towards loosely
managed development. In particular, he wants to introduce Atlassian
tools such as FishEye and JIRA to plan activity and actually do stuff.
* Cameron Gutman wanted a firm decision about dealing with regressions
first. Aleksey Bragin responded that the current rules still apply: A
commit shall be reverted after one day if it breaks booting or
installation. Other regressions shall be reported in Bugzilla using the
REGRESSION prefix.
* Olaf Siejka criticized the way bugs are currently handled. The list at
http://www.reactos.org/wiki/Bug_Filters#Patch_review_list is getting
bigger and bigger while developers don't take responsibility for it. He
added that a decision was taken to release early last month, although no
progress towards implementing it was visible.
* Alex Ionescu joined the meeting later and reopened the discussion
about using Atlassian tools. In his opinion, JIRA and FishEye can
support our development along with Bamboo as a build and continuous
integration system. Later on, these systems could be set up to only
accept a commit if it can be successfully built by Bamboo.
- Olaf Siejka wants to set up a Bamboo test system to evaluate the
tool.
- Alex Ionescu will send out an E-Mail as soon as our setup is ready
for testing.
* Point 2: Plan for the next month
----------------------------------
* The previous discussion about improving development using new tools
continued here. While Aleksey Bragin outlined that he wants to finish
the setup in April, Alex Ionescu gave more examples about what needs to
be changed when moving to JIRA:
- A dynamic component maintainer list should be added to establish
a clear chain of responsibility for all parts of ReactOS.
- User privileges should be changed to let only component maintainers
classify their bugs.
* Furthermore, the list at
http://www.reactos.org/wiki/Bug_Filters#Patch_review_list has been
discussed again. Alex Ionescu and Timo Kreuzer agreed that such general
lists are pointless and the following approach was suggested instead:
- Developers owning bugs and being mailed about them
- Release not being made until all important bugs are fixed
- Someone to prioritize which bugs are blocking a release
* Alex Ionescu outlined more ideas about improving the release process.
He suggested to create a roadmap for each release and picking several
specific bugs as goals for this release. Only fixes for these bugs
should go into a release, new features could be prepared in branches.
* The branches idea was picked up by Amine Khaldi who questioned that
SVN was able to properly handle more branches for new features, release
preparation, etc. due to its limited branching capabilities.
* Alex Ionescu did not agree with this, because people can merge just
subdirectories of a branch into Trunk or even bundle all changes in
.patch files and simply apply them.
* Timo Kreuzer called for a feature freeze in Trunk before the
discussion on point 2 ended, but Aleksey Bragin stated that this would
prevent further work on fixing Mm.
* Aleksey Bragin finally repeated that he is going to finish the setup
of the new tools in April and wants to get everybody used to them. The
idea of having modules owners shall get more developer responsibility
towards issues and patches.
* Point 3: Next release discussion
----------------------------------
* Aleksey Bragin postponed this discussion to the next meeting as most
of the topics have already been covered in the discussion about Trunk.
No objections were raised.
* Point 4: New website status
-----------------------------
* Maciej Bialas reported that he is at the point of applying small fixes
now as well as importing the user database into Drupal. He stated that
every user needs to change his password after the migration because of
different hashing algorithms used in Drupal and RosCMS.
* Pierre Schweitzer noted that we should prevent another mass mailing of
all registered users due to the problems caused by the last one.
* Ziliang Guo proposed to just create a sticky forum post and write a
mail to a ReactOS mailing list about the password changes. There were no
objections.
* The participants agreed to continue discussions about website content
on the mailing lists.
* Point 5: Miscellaneous
------------------------
* Giannis Adamopoulos picked up the new subsystem layout for Win32k,
which had already been discussed a year ago and was postponed. He
outlined it at http://pastie.org/3694259. Aleksey Bragin, James Tabor
and Timo Kreuzer agreed on it, so it will be committed within the next 4
days.
* Art Yerkes reported about his work on NewCC. In particular, he is
currently looking at a bug not existing in a non-NewCC build. He expects
other issues afterwards, but thinks that the entire work is progressing
well.
* Meeting closed at 21:55 UTC by Aleksey Bragin.
* Minutes written by Colin Finck.
All Facebook fanpages will be to switch to the new timeline layout this
weekend. This means we need a cover picture for our reactos fan page.
If artistic guys out there wanna put something together, we'll upload it to
our fanpage.
Maybe someone could start a thread in the forum to gather some interest?
Cheers,
Ged.
Hello,
Let me invite you to the monthly status meeting taking place last
Thursday of this month, 29th of March, 19:00 UTC.
The meeting will be at irc://fezile.reactos.org (Port 6667, no SSL) in
the channel #meeting. Note that the IRC service will only be started
shortly before the meeting. Your participation passwords will be emailed
to you shortly before the meeting starts.
If someone still is not getting passwords sent before a meeting - please
email Colin or Pierre before the meeting started to get one.
In order to save time, let's choose who is going to be the minute taker
on the upcoming meeting. Volunteers welcome.
Proposed agenda will be posted to this list tomorrow. Please email me
your suggestions.
With the best regards,
Aleksey Bragin.
Hello dear React OS mailing list!
I've found that ReactOS dbghelp.dll includes PDB file parser. Does anyone
know where I can find documentation of PDB internal structure?
Thanks,
Svyatoslav Kuzmich
Am 19.03.2012 17:21, schrieb tfaber(a)svn.reactos.org:
> }
> }
> - uState = uState;
> + this->uState = uState;
> TRACE("--\n");
> }
LOL!
Thats another reason why I love C++, it makes people write very funny
code :D
This is a new set of potential bugs found via Viva64:
Example 1. ReactOS project. Incorrect printing of a WCHAR-character( regproc.c 293) .
static void REGPROC_unescape_string(WCHAR* str)
{
...
default:
fprintf(stderr,
"Warning! Unrecognized escape sequence: \\%c'\n",
str[str_idx]);
...
}Reason: To fix the code, we should replace '%c' with '%C' in the format string.
Example 2. ReactOS project. Assignment error. (menu.c 4347)
BOOL WINAPI GetMenuItemInfoA(...)
{
...
mii->cch = mii->cch;
...
}
Example 16. ReactOS project. Misprint in a macro.( win32k gradient.c 343 )
#define SWAP(a,b,c) c = a;\
a = b;\
a = c
Example 8. ReactOS object. Choosing a wrong object.
void CardButton::DrawRect(HDC hdc, RECT *rect, bool fNormal)
{
...
HPEN hhi = CreatePen(0, 0, MAKE_PALETTERGB(crHighlight));
HPEN hsh = CreatePen(0, 0, MAKE_PALETTERGB(crShadow));
...
if(fNormal)
hOld = SelectObject(hdc, hhi);
else
hOld = SelectObject(hdc, hhi);
...
}
The 'then' statement is equivalent to the 'else' statement. cardlib cardbutton.cpp 83
The 'hsh' object is not used, while 'hhi' is used twice. This is the correct code:
if(fNormal)
hOld = SelectObject(hdc, hhi);
else
hOld = SelectObject(hdc, hsh);
Example 10. ReactOS project. Mistake in a variable name.
BOOL APIENTRY
GreStretchBltMask(...)
{
...
MaskPoint.x += DCMask->ptlDCOrig.x;
MaskPoint.y += DCMask->ptlDCOrig.x;
...
}
Consider reviewing the correctness of 'x' item's usage. win32k bitblt.c 670
Example 4. ReactOS project. Incorrect calculation of a string length ( vbe.c 57 )
static const PCHAR Nv11Board = "NV11 (GeForce2) Board";
static const PCHAR Nv11Chip = "Chip Rev B2";
static const PCHAR Nv11Vendor = "NVidia Corporation";
BOOLEAN
IsVesaBiosOk(...)
{
...
if (!(strncmp(Vendor, Nv11Vendor, sizeof(Nv11Vendor))) &&
!(strncmp(Product, Nv11Board, sizeof(Nv11Board))) &&
!(strncmp(Revision, Nv11Chip, sizeof(Nv11Chip))) &&
(OemRevision == 0x311))
...
}Reason: The error here is this: the sizeof() operator, absolutely inappropriate
in this situation, is used to calculate string lengths. The sizeof()
operator actually calculates the pointer size instead of the number of
bytes in a string.
In this case Abragin said this is not a bug.
I'm sending here to discuss about them ;).Are they valid?
Link: http://www.viva64.com/en/a/0079/
Automatic Continue in kdb has been implemented and improves the debugging on the test bots.
However, the KVM bot can't use it in the first stage because it is controlled by keyboard entries at this time.
I propose to switch the first stage to kdserial as well.
Any objections ?
Kind regards,
Sylvain Petreolle
..\..\dll\win32\avifil32\avifile_Hu.rc(32) : error RC2101 : invalid directive in preprocessed RC file
Still broken, since winesync
Best regards
----- Original message -----
From: buildbot(a)reactos.org
To: caemyr(a)myopera.com
Date: Thu, 15 Mar 2012 23:12:01 +0000
Subject: buildbot failure in ReactOS on CMake_x86_MSVCWin Debug
The Buildbot has finished a build on builder CMake_x86_MSVCWin Debug while building ReactOS.
Full details are available at:
http://build.reactos.org/builders/CMake_x86_MSVCWin%20Debug/builds/808
Buildbot URL: http://build.reactos.org/
Buildslave for this Build: Windows_AMD64_1
Build Reason: scheduler
Build Source Stamp: 56167
Blamelist: rharabien
BUILD FAILED: failed building bootcd
sincerely,
-The Buildbot
--
With best regards
Caemyr