Jelte Jinmei Hankins Shane Michael Feng Kambe Fujiwara Larissa Evan Shawn Jeremy
AP from Previous Weeks
- Jeremy to investigate logging bot for Jabber room (taken over from Shane)
Jeremy: Not completed. Try to get something going today and tomorrow.
Shane: We'll use the bind10.isc.org site to record this somehow.
Jeremy: Yes, on a web page linked from there.
- Michael to write blog entry about SQLite3
Michael: In progress.
Y1 post-mortem session planning (from last week)
Shane: Suggest sending out questionnaire to team, and then we can discuss it at face-to-face meeting. Any other suggestions?
Larissa: Like survey idea. Structure I have always done is "what went well", "improvables", and then "change policies" after than.
Beijing BIND 10 team meeting
- 2010-04-26 to 2010-04-30 at CNNIC office in Beijing
Shane: If you cannot attend the whole time, let me know and I will adjust schedule when you are not there.
Jinmei: Will we have a full-day meeting on the 30th? If we will end in the morning some may leave on that day.
Shane: Problem is that it will be more like the 1st face-to-face meeting. This is going to be a very full meeting, with many things to discuss.
Michael: Flying on the 24th (arriving the 25th), leaving on May 3rd.
Shane: May 1 is a big holiday in many countries in Europe. In Beijing too?
Feng: May 1 is start of a big 3 day holiday, but until April 30 is okay. If you have time, send me an e-mail and we'll go someplace in Beijing.
- Visa/travel status
Shane: Everything in progress.
Feng: Already booked hotel. Maybe 10 minutes walk to CNNIC. If you have your arrival fixed, please send e-mail and I can meet up at airport.
- Agenda input
Shane: If you have input for agenda, please e-mail me or send mail to bind10-dev@… and I'll make sure it gets included. Plan is draft agenda before next week's conference call.
- xfrin/xfrout status
Jeremy: xfrin worked for me. Like Jelte mentioned, the dependencies are overkill. Extremely hard to set up and get going. Boost Python not provided on any operating system.
Jelte: Provided on Ubuntu, but only for Python 2 not for Python 3. I saw today someone added the error message to the xfr daemons.
Jinmei: I have a more fundamental question about dependencies. I often found that Python 3 is not so common in many environments. You often have to do manual installation for Python 3. So you may have Python 3.1 as a package, but you may need to manually install SQLite loadable module for Python 3, and it may not be so trivial. I wonder why we need Python 3 in the first place. If we can use 2.x it would be easier for other people.
Michael: This is the same question I asked when we started.
Jelte: I think the bigger reason is that by the time that our finished product is there that we guessed that Python 3 was very common.
Evan: That is more-or-less what I recall.
Shane: Can we run Python 2 code in Python 3?
Jinmei: I don't think we can make a decision today. Maybe something for the face-to-face agenda?
Michael: I don't think we can make a decision without someone trying it..
Shane: Jinmei would you be willing to try running some of our stuff with Python 2?
Jinmei: Wouldn't be my top priority...
Evan: Sure why not?
Michael: Can we make a "utilities" tarball?
Shane: So, a tarball with all the packages you need? Maybe we can just make a shell script with "./configure && make && make install" for this stuff.
Michael: Goal is for people to run our stuff, not to run Python 2.6. Long term investment is better to make dependencies easier.
Shane: Actually, you're right. Evan, don't look at this.
Jeremy: I'll write a shell script that installs the components needed under its own directory.
Jeremy: The way configure is right now, you get features or not depending on what we have on the system.
Jinmei: Like what?
Jeremy: Like boost.python being defined.
Jelte: Resulting in xfrin/xfrout being defined but not doing something.
Jinmei: I still expect we will have that kind of optional features. Like we may provide a non-DNSSEC version of something.
Jeremy: Another example was the asio TCP code.
Shane: Some configure scripts show what the probing did at the end.
Jelte: Apache does that.
Jeremy: We can do that.
Shane: Do we currently listen for notifies?
Shane: No worries. Maybe something we want to schedule for 2nd release of this year.
Jinmei: Actually I am wondering when and how we can implement this stuff.
Shane: Since we just started started looking at xfrin, haven't looked at xfrout yet.
Jinmei: I tried it and it simply worked. I even sent some patches for xfrout code. Simply responds to incoming xfrout requests.
- Ticket review
Shane: Jinmei went through tickets?
Jinmei: I went through tickets assigned to me.
Shane: I'll go through tickets like before last review and "ping" people.
Jeremy: Can everyone subscribe to bind10-tickets list please?
Shane: Are you the list owner for that? Can you subscribe people?
Jinmei: I don't remember the conclusion of the discussion, but I am now receiving 2 copies of every message. I am wondering whether I need to unsubscribe somewhere.
Jeremy: You are only getting duplicates when you are the recipient of the ticket.
Jinmei: Can we receive a ticket when ticket is assigned to us?
Shane: Did you get an e-mail when I assigned a ticket to you today?
Jinmei: If it's already done then it's fine.
Shane: I guess we can experiment and see what happens.
Jeremy: Should e-mail 4 groups: reporter, owner, generic list, and ... someone else.
Jinmei: Difficult to differentiate information if everyone is subscribed to the list. People type 'd' if messages are too noisy. On Rt it is relatively easy to differentiate these things. If a ticket is assigned to me, a specific message indicating that is delivered to me. I'm afraid we may tend to miss information like the assignment change.
Jeremy: I'll see if there is an option for that.
Jelte: Is this for new tickets or every ticket?
Jeremy: For tickets, were we going to fix categories and milestones?
Jinmei: I agree, because right now that is not very helpful.
Jeremy: I can fix those if someone can mail a proposal to the mailing list to what they should be.
AP Shane will mail proposal about new categories and milestones to list.
Larissa: If we adjust the component and milestone categories in there it will all get better.
- Test coverage review
Shane: Per last week, no specific goals other than including Python tests.
Michael: Rather than BIND 9 or BIND 10 specific tests, have a DNS conformance test. It would be awesome if we could have a test between different versions of servers. My goal is to reduce the threshold necessary to write tests.
Jinmei: Do you know the conformance test tool provided by the TAHI project?
Michael: Yes a bit.
Jelte: I've talked to one of the people on that years ago, when they were just starting out.
Shane: That's not an IPv6 thing?
Jinmei: Started from IPv6 conformance test. I guess they just applied for a government grant for next-generation project. Target was DNS.
Michael: Last update was in test coverage & specification was August 2007.
Michael: Advantage in writing our own in that regression tests are easy. I'll take a look at it and see.
Shane: Maybe we can take an approach like we did with static analysis tools and run multiple suites.
Michael: Might not be something packaged with release. Never complete! Even if it only ran one test it would be useful to include at some point. There's no point in waiting until it is "done" before you start releasing it.
Jeremy: Would this tool actually start the server? Or would it do queries and compare results?
Michael: Tool I have now starts & stops servers, creates keys and specifies what keys, tools are independent so easy to separate.
AP Michael to write mail with motivation & description of DNS conformance test.
- Python wrapper research (Jelte)
Jelte: Figured out Francis' code, and read documentation on how to manually write a library. Very possible with this, and will provide some features that Boost Python does not have (although could not check because couldn't get Boost Python running). For example overload the str() function to invoke toText() function. It will be lots & lots of more work. Far from trivial, and we have to be really, really careful. Easy to create segfaults and memory issues, and uncaught exceptions can cause Python to exit.
Jelte: Re-did the work Francis did so I would have something to compare it to. Working on adding a 2nd .h file, and ran into a problem making a separate module for each header file we have, but that would mean a lot of DLL. Non-trivial to make multiple source files into one big module, since most things are added in the main function. Will look at this more tomorrow. (One function initializes the module and it needs access to all the static objects that are created - like constants and class descriptions - so adding those in multiple source files where one needs the other was non-trivial.)
Jelte: I googled a bit, and saw a lot of people asking how to do this right, but not a lot of answers. Are the other projects that do this?
Shane: Surely the SQL layer and things like that...
Jinmei: This should be a nice blog entry!
AP Jelte to write blog entry about Python wrapper.
Jinmei: Next snapshot release... is it next week?
Shane: Deadline is the 19th?
Jeremy: Yes, and ship on the 21st.
Jinmei: Not sure on the status of that goal, which features it will have & so on.
Jinmei: A bit confused about the policy of review and use of trunk. Right now it's a mixture of new features and reviewed code. People tend to add more & more stuff while there are many fragments of unreviewed code. I don't know how we can use the trunk to be consistent with our reviewed policies.
Jeremy: I can talk about this now...?
Shane: A mail may be best.
AP Jeremy to send mail about this.
Hankins: Just a reminder about DHCP.
Shane: We are going to discuss DHCP immediately after. Anyone who wants to can stay but does not have to.
Jeremy: Still making the decision on the "changes" format. I did receive some feedback on the file. But I don't know if we need to make the final decision, but on the release on the 21st we'll include some sort of release notes or change history. Maybe something I do myself manually, but in the long term it would be good if everyone did their own "changes" entries.
Shane: This is something we'd need to add into some sort of process like the review process or something like that, otherwise we'll forget.
Jeremy: Release engineering for trunk and reviewed branch, but I'll talk about that via e-mail.