<p>[22:01:43] <ughabugha> Oh, cool, the meeting. :)</p>
<p>[22:01:51] <jrand0m> hi, welcome to the weekly dev meeting, number $something</p>
<p>[22:01:56] <ughabugha> Hi.</p>
<p>[22:02:02] <jrand0m> weekly status notes up at http://i2p.net/pipermail/i2p/2004-March/000180.html</p>
<p>[22:02:09] * mihi has joined #i2p</p>
<p>[22:02:13] <fidd> howdy</p>
<p>[22:02:32] <jrand0m> we'll see if we can avoid a 2 hour session today ;)</p>
<p>[22:02:39] <jrand0m> ok, jumping to 1) network status</p>
<p>[22:02:43] <Masterboy> :P</p>
<p>[22:02:56] <jrand0m> we got 0.3.0 out on sunday, and its generally functional</p>
<p>[22:03:12] <Masterboy> yes it is:)</p>
<p>[22:03:23] <ox> * jrandom waves from i2p#i2p to prove it ;)</p>
<p>[22:03:43] <jrand0m> there are still some bugs to fix, and a new set of things to be addressed, but ever onwards we go</p>
<p>[22:04:21] * ion has joined #i2p</p>
<p>[22:04:22] * ughabugha is reading the status notes.</p>
<p>[22:04:27] * mrflibble has quit IRC (r eboot time)</p>
<p>[22:04:35] <jrand0m> in the email i mention a new network monitoring tool duck put together - http://duck.i2p/dot/dot.png (or a snapshot at http://i2p.net/~jrandom/profiles.png)</p>
<p>[22:05:05] <jrand0m> it basically gives us a view into how the network is doing - how many people are out there, and how well they're finding out about reliable and fast resources</p>
<p>[22:05:22] <jrand0m> (basically it visualizes the result of the 0.3 peer profiling and selection process)</p>
<p>[22:05:50] <ox><duck> nice!</p>
<p>[22:06:22] <jrand0m> yeah, its nice to see the visual feedback on the algorithms, rather than manually going through the networkDb</p>
<p>[22:06:37] <ox><Masterboy> there's a need of cpu usage decreasing..</p>
<p>[22:06:38] <fidd> :)</p>
<p>[22:06:48] * jrand0m gives the eepSiteAppOfTheWeek award to duck for dot.png</p>
<p>[22:06:54] <ughabugha> Yeah, I wonder what would we be doing without duck?</p>
<p>[22:07:08] <ox><duck> maybe we can make an audio version too</p>
<p>[22:07:17] <fidd> haha</p>
<p>[22:07:20] <jrand0m> :)</p>
<p>[22:07:22] <human> heheh</p>
<p>[22:07:34] <fidd> or a smell-one</p>
<p>[22:07:47] <ughabugha> Yeah, and stream it over jnon's icecast every hour.</p>
<p>[22:07:51] <no_dammagE> how do I understand the speed column in #transport?</p>
<p>[22:08:00] <no_dammagE> I mean peer profiles</p>
<p>[22:08:25] <jrand0m> no_dammagE> good question. if you read the bottom text below, it explains that the numbers have no correlation with anything - they're strictly relative values.</p>
<p>[22:08:50] <no_dammagE> ok :)</p>
<p>[22:09:15] <jrand0m> if you want the *real* answer, see http://i2p.net/cgi-bin/cvsweb.cgi/i2p/code/router/java/src/net/invisiblenet/i2p/router/peermanager/SpeedCalculator.java?rev=1.3&content-type=text/x-cvsweb-markup</p>
<p>[22:10:07] <jrand0m> the network has also grown to a steady 18-22 routers, which is a good size for the moment</p>
<p>[22:10:31] <jrand0m> we'll want to grow a bit more once some of the existing bugs are dealt with, and the 0.3.1 phttp code is in place</p>
<p>[22:10:36] <KyroxX> re</p>
<p>[22:10:45] <jrand0m> wb KyroxX</p>
<p>[22:11:03] <jrand0m> ok, that leads us into 2) 0.3.1 plan</p>
<p>[22:11:16] <no_dammagE> mine will go off in 30 minutes and will go on in ~ 20 hours (or ill make it on the autostart so that it will be started with the PC)</p>
<p>[22:11:33] * fR has quit IRC (Ping timeout)</p>
<p>[22:12:01] <jrand0m> rather than get the phttp code, the bandwidth limiter, and the new collusion deterrent all in one 0.3.1 release, i'm pushing the collusion deterrent into 0.3.2</p>
<p>[22:12:19] <jrand0m> roadmap hasn't yet been updated, but things are pretty much the same</p>
<p>[22:12:45] * fR has joined #i2p</p>
<p>[22:13:17] <ughabugha> Are you going to release 0.3.0.1?</p>
<p>[22:13:18] <jrand0m> there's going to be some complex stuff in the phttp revamp, dealing with throttling the connections, but we'll see how it goes</p>
<p>[22:13:36] * KyroxX has quit IRC (Verlassend)</p>
<p>[22:13:47] <jrand0m> perhaps, though currently the roadmap lists 0.3.1 as next week</p>
<p>[22:13:54] <jrand0m> sunday, even.</p>
<p>[22:14:01] <ox><baffled> I knew you was in collusion with somebody.</p>
<p>[22:14:02] <jrand0m> so i'm not sure</p>
<p>[22:14:03] * Rom|Away|3h has quit IRC (Ping timeout)</p>
<p>[22:14:04] <Masterboy> how can i limit the cpu usageof my router? why not make : "low" - "normal" - "high" - so you could choose?</p>
<p>[22:14:10] <jrand0m> heh baff</p>
<p>[22:14:11] <no_dammagE> why is that critical?:</p>
<p>[22:21:12] <jrand0m> ok, back to the web arch stuff</p>
<p>[22:22:06] <jrand0m> there are several different aspects of "how we use the web" in i2p, and we can either treat them all as OneBigWebThingy, or we can talk about specializing the components, making things that do their OneThingWell</p>
<p>[22:22:34] * ion has joined #i2p</p>
<p>[22:22:44] <jrand0m> mihi brought up some good points that I hadn't been looking at, some valuable features that we'll certainly want</p>
<p>[22:23:03] <ughabugha> jrand0m: Are you talking about the separation of Squid and I2P web?</p>
<p>[22:23:11] <ughabugha> Or something deeper?</p>
<p>[22:23:24] <duck> the 'HTTPTunnel vs. {privoxy,muffin} + HTTPClient' thread</p>
<p>[22:23:48] <jrand0m> the seperation of squid and eepsites, as well as the seperation of browser proxies vs. (essentially) cgis</p>
<p>[22:23:49] <ughabugha> Right.</p>
<p>[22:24:00] <jrand0m> and, of course, the filters</p>
<p>[22:24:48] <jrand0m> since we all work in the open source world here, there's no real need to have OneBigThing that deals with all of the different use cases - we can build one to address a need, then reuse its code for another to address another need</p>
<p>[22:24:56] * jar has joined #i2p</p>
<p>[22:25:04] <duck> I tend to agree with human's latest post</p>
<p>[22:25:13] <jrand0m> plus, with mihi's new streaming I2PTunnel api, its fairly easy to build off</p>
<p>[22:26:42] <jrand0m> as do i, though i don't have the time to work on httptunnel, so its really up to mihi as to what use case he's most interested in addressing first</p>
<p>[22:26:48] * lucky has joined #i2p</p>
<p>[22:27:45] * jar has quit IRC (EOF From client)</p>
<p>[22:27:52] <jrand0m> mihi> any thoughts?</p>
<p>[22:28:26] <jrand0m> ok or anyone else? :)</p>
<p>[22:28:47] <duck> http://i2p.i2p/ looks ugly to me</p>
<p>[22:28:55] <duck> but even that could be survived</p>
<p>[22:28:59] <jrand0m> i2p.i2p?</p>
<p>[22:29:05] <human> ?</p>
<p>[22:29:27] * ion has quit IRC (Ping timeout)</p>
<p>[22:29:28] <jrand0m> i could add in a dns entry for eep.i2p.net pointing to 127.0.0.1 for machines that do bad dns things</p>
<p>[22:30:01] * fR has quit IRC (EOF From client)</p>
<p>[22:30:20] * human didn't get the latest proposal :-)</p>
<p>[22:30:27] <duck> I think I did see i2p.i2p mentioned somewhere as replacement for the current http://i2p/keybla</p>
<p>[22:30:35] <jrand0m> yours was the latest human</p>
<p>[22:30:54] <jrand0m> oh, right, yeah on irc last night i think jnano was discussing it</p>
<p>[22:30:55] <human> jrand0m: i mean: "i could add in a dns entry for eep.i2p.net pointing to 127.0.0.1 for machines that do bad dns things"</p>
<p>[22:31:03] <mihi> duck: you have good eyes. i did this to prevent netbios lookups in Opera.</p>
<p>[22:40:14] <human> mihi: dunno, but as i wrote above: socks tunnels, however, will not replace www proxies :-)</p>
<p>[22:40:18] <ughabugha> If you ment that as a question. :)</p>
<p>[22:41:13] <jrand0m> ok, cool, anyone have anything else to bring up for web stuff, or are we ready for 4) Administravia?</p>
<p>[22:42:23] <jrand0m> ok, just some notes -</p>
<p>[22:42:24] * Rom|Away|3h is now known as Rom|Away|4h</p>
<p>[22:42:51] <jrand0m> the drupal site is back online, so anyone who wants to help out with that, or see the latest progress, please hit drupal.i2p.net :)</p>
<p>[22:44:02] <jrand0m> on it, you'll find the other two administravia points - the team roster [http://drupal.i2p.net/team] and the draft of a new license policy [http://drupal.i2p.net/node/view/85]</p>
<p>[22:44:26] <duck> I was looking at the license policy...</p>
<p>[22:44:52] <duck> (but with Cryptix team as copyrightor instead of regents of massachusets or something)</p>
<p>[22:44:52] <jrand0m> but, strictly, its the Cryptix license ;)</p>
<p>[22:45:05] <duck> what is MIT?</p>
<p>[22:45:13] <jrand0m> mit is == bsd 2 clause</p>
<p>[22:45:16] <jrand0m> == x</p>
<p>[22:45:19] <duck> what code is MIT I mean</p>
<p>[22:45:25] <jrand0m> nothing</p>
<p>[22:45:29] <human> == x < 4.4.0</p>
<p>[22:45:36] <jrand0m> i just list it as "if you want to use MIT, great"</p>
<p>[22:45:42] <jrand0m> right human :/</p>
<p>[22:45:49] <duck> the amount of licenses is already quite a few</p>
<p>[22:45:56] <duck> I was wondering if that could be restricted</p>
<p>[22:46:07] <duck> for example changing the GPL code into BSD or even pubdomain</p>
<p>[22:46:31] <duck> was wondering what the author(s) of that part(s) did think about that</p>
<p>[22:46:32] <ox><no_dammagE> so, chatroom, ill go sleep now. Good code @ Devteam, good time of day to all others. Till tomorrow.</p>
<p>[22:46:40] <duck> bye no_dammagE </p>
<p>[22:46:41] <jrand0m> i would love if the i2ptunnel streaming lib / naming lib or even the full i2ptunnel were licensed under a bsd-like license</p>
<p>[22:46:51] <jrand0m> later no_dammagE</p>
<p>[22:46:55] <no_dammagE> cu</p>
<p>[22:46:58] * no_dammagE has quit IRC</p>
<p>[22:47:19] * jar_backup has joined #i2p</p>
<p>[22:47:50] <jrand0m> but, of course, GPL is fine, t'is mihi's right :)</p>
<p>[22:48:06] <mihi> for streaming/naming lib that would be okay for me (or BSD or LGPL). but I'd like to keep GPL for the core I2PTunnel</p>
<p>[22:48:07] <ughabugha> Well, whatever the license is, it should be GPL-compatible.</p>
<p>[22:48:36] <ughabugha> (Ie, it shouldn't be more restrictive than GPL)</p>
<p>[22:48:42] <human> i'm a GNU GPL advocate, but i think that the best license to disseminate new protocols and formats is something BSD-style (e.g. see how the OGG Vorbis guys relicensed everything from LGPL do MIT-X11)</p>
<p>[22:49:05] <jrand0m> mihi> the streaming and naming lib are funcional without dependency upon i2ptunnel itself, right?</p>
<p>[22:49:14] <ughabugha> Yeah, reference implementation shouldn't be GPL.</p>
<p>[22:49:25] <mihi> they should be. if not, it's a bug.</p>
<p>[22:49:30] <jrand0m> BSD 2 clause on those would be fantastic</p>
<p>[22:49:40] <human> yup!</p>
<p>[22:49:45] <mihi> you can have naming lib public domain if you include it into core ;)</p>
<p>[22:50:02] * ion has joined #i2p</p>
<p>[22:50:03] <jrand0m> absolutely, I'd love to include them in the core sdk</p>
<p>[22:50:42] <mihi> them? ;) (including streaming lib into core would be a bad idea imho, since it is too less open for other impls)</p>
<p>[22:51:09] <jrand0m> well, the sdk impl itself makes some nontrivial design assumptions - its just a ref impl</p>
<p>[22:51:22] <jrand0m> i'd love if people could take i2p.jar and write a streaming app</p>
<p>[22:51:28] <human> mihi: regarding I2PTunnels & GPL: i'd suggest to add an explicit GNU GPL exception that allows people to link your app with proprietary JVMs (see my comment on http://drupal.i2p.net/node/view/85)</p>
<p>[22:51:28] * Masterboy has quit IRC (Ping timeout)</p>
<p>[22:51:59] <duck> human: that brings up the "have to hire a lawyer before I can use it"-problem</p>
<p>[22:52:01] <jrand0m> (perhaps we can split the current i2ptunnel into i2ptunnel and i2pstreaming, if you'd prefer?)</p>
<p>[22:52:32] <mihi> jrand0m: that would be okay for me. just change the ant task to build 2 jars ;)</p>
<p>[22:52:35] <human> duck: i suggest to add the exception just to avoid it</p>
<p>[22:52:39] <jrand0m> duck> if mihi is willing to BSD the streaming and naming libs, i don't think that'd be too much trouble</p>
<p>[22:53:30] <mihi> and better make i2pministreaming instead of i2pstreaming</p>
<p>[22:53:41] <duck> mihistreaming :)</p>
<p>[22:53:48] <mihi> (note the n in mi4ni)</p>
<p>[22:54:02] <mihi> duck: that was exactly what i thought ;)</p>
<p>[22:54:03] <jrand0m> word mihi, so perhaps we can revise the table on http://drupal.i2p.net/node/view/85 to list the I2PTunnel core as GPL (perhaps with the exception human mentions?), plus a seperate I2PMiniStreaming line as BSD?</p>
<p>[22:54:04] <jrand0m> hehe</p>
<p>[22:54:10] <jrand0m> i2pmihistreaming is good too :)</p>
<p>[22:55:25] <duck> ok</p>
<p>[22:55:40] <duck> next week I'll try to convince you all to move totally to publicdomain</p>
<p>[22:55:45] <duck> but this is enough for now :)</p>
<p>[22:55:48] <jrand0m> :)</p>
<p>[22:55:50] <human> hehe</p>
<p>[22:56:06] <jrand0m> mihi*=5</p>
<p>[22:56:14] <mihi> jrandom**=5;</p>
<p>[22:56:21] <duck> wbk did just offer to help with the webdesign</p>
<p>[22:56:36] <jrand0m> oh awesome duck</p>
<p>[22:56:45] <jrand0m> well, briefly before we jump to 5)</p>
<p>[22:56:58] <jrand0m> do any devs have any qualms with the /policy/ in http://drupal.i2p.net/node/view/85?</p>
<p>[22:57:05] <duck> so I did do a bureaucratic team-table lookup and delegate him to wilde</p>
<p>[22:57:25] <human> before jumping... what about the GPL + exception suggestion?</p>
<p>[22:57:29] <jrand0m> aka "implicitly under $primaryLicense" or "explicitly under $alternate"?</p>
<p>[22:57:47] <jrand0m> duck++ :)</p>
<p>[22:58:02] <mihi> human: I'm adding it atm</p>
<p>[22:58:07] * human agrees with jrand0m's policy</p>
<p>[22:58:25] <duck> what about copyright owner</p>
<p>[22:58:28] <human> mihi: ok, thanks</p>
<p>[22:58:30] * duck did see human adding some new files as GPL</p>
<p>[22:58:36] <duck> and putting mihi's name on that</p>
<p>[22:58:45] <ughabugha> Err... I don't think drupal likes passwords which are 32 characters long.</p>
<p>[22:58:51] <human> duck: i just cut'n'pasted existing files</p>
<p>[22:59:18] <duck> ok, but what if we have 50 ppl working on it and each putting their own name on the copyrights</p>
<p>[22:59:20] <jrand0m> for people that add public domain code, there's no copyright, but for people who use copyright, people should copyright it themselves</p>
<p>[22:59:22] <human> duck: (well, even if i'm forgetting to put copyrights into files...)</p>
<p>[22:59:25] <duck> then you cant switch license at a later point</p>
<p>[22:59:29] <jrand0m> thats fine duck, in my opinion</p>
<p>[22:59:53] <jrand0m> e.g. thecrypto should be the copyright owner of his encryption and SHA routines</p>
<p>[23:00:03] <human> (i was still observing jrand0m's policy to stick with module licenses, btw)</p>
<p>[23:00:05] <jrand0m> though since he's released it under BSD 2 clause, we will use it</p>
<p>[23:00:38] <jrand0m> oh, maybe i'm missing the point - you want to make sure everyone puts their own name on it?</p>
<p>[23:00:44] <duck> no</p>
<p>[23:00:49] * jrand0m assigns copyright to richard nixon</p>
<p>[23:00:56] <human> heheh</p>
<p>[23:01:34] <human> btw: in my country, "public domain" is just another kind of copyright</p>
<p>[23:01:46] <jrand0m> hmm. i2p doesn't have any legal entity to receive copyright (and *never* will)</p>
<p>[23:02:02] <human> i.e. you (the author) distribute your works without any restrictions</p>
<p>[23:02:18] <jrand0m> right, a lot of countries have fucked up IP laws</p>
<p>[23:02:59] <human> jrand0m: just to say that maybe it's better to put something like "i've created this file, and you can use it without any restriction" in each file</p>
<p>[23:03:13] <jrand0m> that i think is a good idea</p>
<p>[23:03:47] <human> jrand0m: (it's still happening, of course, but i think it should be a requirement :-)</p>
<p>[23:03:55] <jrand0m> thats why i included the "jrandom wrote this in $year and releases it into the public domain" ;)</p>
<p>[23:04:08] <human> jrand0m: yeah :-)</p>
<p>[23:04:27] <jrand0m> so i'm missing ducks point</p>
<p>[23:04:37] <fidd> and that thing abouth eating children</p>
<p>[23:04:37] <duck> I lost it too</p>
<p>[23:04:43] <jrand0m> :)</p>
<p>[23:04:44] <human> heheh</p>
<p>[23:04:47] <duck> lets forget it</p>
<p>[23:04:58] * lucky has joined #i2p</p>
<p>[23:05:13] <jrand0m> ok, so I'll add to the commit priv section the suggestion that people make note of their authorship of what they write</p>
<p>[23:05:22] <jrand0m> (even if they dont copyright it?)</p>
<p>[23:05:50] <jrand0m> [damn i borked my regexp]</p>
<p>[23:05:57] <duck> want me to PGP sign a statement?</p>
<p>[23:06:09] <jrand0m> i'm going to, yes</p>
<p>[23:06:30] <jrand0m> once the policy is ready and revised, i'll be contacting all prior committers for PGP/GPG auth </p>
<p>[23:06:33] <human> jrand0m: yes (in my country it's impossible to refuse copyright, it's seen as an inalienable author's right)</p>
<p>[23:06:52] <duck> yes, your country is fucked</p>
<p>[23:06:53] <duck> NEXT</p>
<p>[23:06:56] <duck> (oops)</p>
<p>[23:06:58] <jrand0m> :)</p>
<p>[23:07:19] <fidd> human, what country?</p>
<p>[23:07:39] <human> jrand0m: so, "this file is not copyrighted" just doesn't make sense - you should *always* explicitly say that you're the author, and that you put no restrictions on your work</p>
<p>[23:07:47] <human> fidd: somewhere near Europe :-)</p>
<p>[23:07:54] <fidd> heh, ok</p>
<p>[23:07:59] <lucky> human: you can later say you don't want the copyright</p>
<p>[23:08:03] <lucky> and put it in the public domain.</p>
<p>[23:08:19] <jrand0m> human> with the "implicit release under $primaryLicense", that should address the issue though, right?</p>
<p>[23:08:24] <duck> human means that that doesnt mean anything in $fuckedcountry</p>
<p>[23:08:42] <jrand0m> human> since that implicitly means commit == release as $primaryLicense</p>
<p>[23:13:41] <wilde> so we can have good docs for 1.0</p>
<p>[23:13:41] <mihi> human, jrand0m: is the license in CVS okay now? ;)</p>
<p>[23:13:55] <jrand0m> on http://drupal.i2p.net/team there are a lot of [vacant] roles. volunteer!</p>
<p>[23:14:02] <fidd> i cant get drupal thru squuid :/</p>
<p>[23:14:17] * mihi volunteers for QS guy cuz of echo server ;)</p>
<p>[23:14:29] <mihi> s/QS/QA/</p>
<p>[23:14:33] <jrand0m> woot!</p>
<p>[23:15:01] <wilde> unit tests for echo server</p>
<p>[23:15:12] <mihi> wilde rofl no</p>
<p>[23:15:17] <human> mihi: maybe you should s/XXXX/mihi/ in the GPL exception :-)</p>
<p>[23:15:20] <ughabugha> jrand0m: Heh, what do you mean by stress testing? :)</p>
<p>[23:15:34] <mihi> echo server is system test for i2p ;)</p>
<p>[23:15:38] <mihi> human: oops ;)</p>
<p>[23:15:56] * Rom|Away|4h has quit IRC (Ping timeout)</p>
<p>[23:16:08] <jrand0m> ughabugha> it means you smash (aka use) the router and have patience with me to debug it, submitting reports and logs</p>
<p>[23:17:40] <mihi> duck: editor still open and the CVS comment was fast to type as well ;)</p>
<p>[23:17:40] <jrand0m> mihi> licenses look great - just to be explicit, you're idented here, and you intend to release under the bsd 2 clause [per http://opensource.org/licenses/bsd-license.php], correct?</p>
<p>[23:17:41] * Romster is now known as Rom|Away|4h</p>
<p>[23:18:02] <jrand0m> (or you can just add that copyright text into the source)</p>
<p>[23:19:24] <mihi> hmm, what does idented mean? (yes to your second subclause)</p>
<p>[23:19:42] <jrand0m> means you've proven to trent that you're mihi :)</p>
<p>[23:30:49] <ox><wilde> ok no more questions from me</p>
<p>[23:30:55] * human sacrifices his pet to the PM</p>
<p>[23:31:38] * mihi still waits for jrand0m kicking himself...</p>
<p>[23:31:44] <@jrand0m> i think there's benefit to discussion, as well as some quirkiness. i also lean in human's direction - there's no need to confuse people by explaining "eep != i2p"</p>