I've been doing regular merges of the Swiss-cheese branch with trunk to keep the code from becoming stale. In addition I've been working on testing and documentation. All efforts have been slow but steady.
There has been some creeping uncertainty that the merges are not perfect. The merge seems to sometimes make some very bad decisions about how to merge and I seem to only catch these by luck. I suspect it might have done things I did not happen to see. I have made a giant patch that I intend to go over line by line and make sure everything makes sense. However, I've given up on merging the game engine, since I do not understand the differences between Swiss-cheese's and trunk's versions. There are several minor changes that I'd like to start merging into trunk and since we are at the beginning the next release cycle it seems like a good time. These are just some things that present a headache when merging, so I'll get them reviewed and merged in now. I think it is very important that I devise a means to test all of the code before full review. There are about 5,000 places where the new OpenGL layer is used throughout the code, but even opening all region types and displaying one of every kind of object only tests about 2000 of those lines. I have enabled code coverage and have a script I've written to help me gradually track all of these untested lines down and make sure they get run. I have written a rough draft of most of the documentation. Since replacing deprecated functions requires a significant change in how basic things are drawn, the documentation needs to quite good because it will affect lots of contributors. It needs to be both technically good by answering the question, "How do I do this now?," and manage the outrage factor the makes people as, "Why do I have to do this like this now?!" :-) I could probably do all of this in a week if I worked full time. Unfortunately, I cannot dedicate full time right now though, so I am aiming for end of the year. Summary: * I need to do a full self-review to make sure merging hasn't mangled anything. * Swiss-cheese's game engine is in a weird state due to differences from trunk I'm not familiar with. * I'm going to start submitting patches from Swiss-cheese to make maintenance easier. * I have a system in place to test and track the thousands of changes in drawing code * Documentation at this point might be good enough for reviewers but not for the community. * I estimate I have 40-50 hours of work to do before review, but I cannot do it all at once. * Aiming to start review immediately next year. Plan: 1st week: Self code review and create any patches that can be applied now 2nd-3rd week: Achieve full code coverage. Automate if possible. Visually compare w/ trunk 4th week: Holiday 5th week: Profile and track down any performance problems. Improve documentation. _______________________________________________ Bf-committers mailing list [email protected] http://lists.blender.org/mailman/listinfo/bf-committers
