Return-Path: Delivered-To: apmail-james-mime4j-dev-archive@minotaur.apache.org Received: (qmail 99443 invoked from network); 11 Jan 2011 14:19:27 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 11 Jan 2011 14:19:27 -0000 Received: (qmail 91254 invoked by uid 500); 11 Jan 2011 14:19:27 -0000 Delivered-To: apmail-james-mime4j-dev-archive@james.apache.org Received: (qmail 91199 invoked by uid 500); 11 Jan 2011 14:19:26 -0000 Mailing-List: contact mime4j-dev-help@james.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: mime4j-dev@james.apache.org Delivered-To: mailing list mime4j-dev@james.apache.org Received: (qmail 91191 invoked by uid 99); 11 Jan 2011 14:19:25 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 11 Jan 2011 14:19:25 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=10.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of apache@bago.org designates 209.85.161.49 as permitted sender) Received: from [209.85.161.49] (HELO mail-fx0-f49.google.com) (209.85.161.49) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 11 Jan 2011 14:19:17 +0000 Received: by fxm19 with SMTP id 19so20075356fxm.22 for ; Tue, 11 Jan 2011 06:18:55 -0800 (PST) Received: by 10.223.78.205 with SMTP id m13mr3937628fak.79.1294755535462; Tue, 11 Jan 2011 06:18:55 -0800 (PST) Received: from mail-wy0-f177.google.com (mail-wy0-f177.google.com [74.125.82.177]) by mx.google.com with ESMTPS id f24sm7402923fak.0.2011.01.11.06.18.54 (version=SSLv3 cipher=RC4-MD5); Tue, 11 Jan 2011 06:18:55 -0800 (PST) Received: by wyf22 with SMTP id 22so21391007wyf.22 for ; Tue, 11 Jan 2011 06:18:54 -0800 (PST) MIME-Version: 1.0 Received: by 10.227.126.204 with SMTP id d12mr2264283wbs.174.1294755534112; Tue, 11 Jan 2011 06:18:54 -0800 (PST) Received: by 10.227.9.197 with HTTP; Tue, 11 Jan 2011 06:18:54 -0800 (PST) X-Originating-IP: [78.134.12.186] In-Reply-To: <1294753533.3394.79.camel@ubuntu> References: <4D2C0AEE.5070700@virtualpostman.co.za> <1294749756.3394.48.camel@ubuntu> <1294753533.3394.79.camel@ubuntu> Date: Tue, 11 Jan 2011 15:18:54 +0100 Message-ID: Subject: Re: 0.6.2 or 0.7 any time soon? was Re: Incorrect line length limitation while parsing headers From: Stefano Bagnara To: mime4j-dev Content-Type: text/plain; charset=ISO-8859-1 2011/1/11 Oleg Kalnichevski : > On Tue, 2011-01-11 at 14:01 +0100, Stefano Bagnara wrote: >> 2011/1/11 Oleg Kalnichevski : >> > On Tue, 2011-01-11 at 09:27 +0100, Norman Maurer wrote: >> >> Hi there, >> >> >> >> I think if it worth it we should release 0.6.2. Release often release >> >> early, you know ;) >> >> >> >> Bye, >> >> Norman >> >> >> > >> > Folks >> > >> > I also would like to port another fix, should we decide to do another >> > release off the 0.6.x branch. >> >> What is the other fix? This one is not critical (I see it just like a >> documentation bug: either way we need that check on that field to work >> that way, we can't simply check the line length). >> > > Parsing of folded fields. The default field parser in 0.6 chokes on > perfectly valid fields if their body is folded. > > >> > I am also willing to make a push toward the 0.7 release, if no one is >> > going to pick up work on the API changes stared by Stefano on the trunk. >> >> I had really few time but I think I also slowed down because I never >> understood if what I was doing was liked or not. It takes a lot to >> complete stuff, so I would have liked to understand what others thinks >> we should do in 0.7. >> >> As an example I see sometimes we talk as 0.x versions we can do >> backward incompatible changes trying to reach a good api, other times >> it seems we instead are "stuck" to the 0.6 version because 0.6 has >> already a lot of users so compatibility is brought to the table. >> >> That said, I say my opinion and I expect others to say their opinions >> so that we can see where we can find a consensus. >> - I think 0.6 is not "great" as API, so I would happily break >> compatibility in order to provide a better api. Main thing is that the >> 0.6 API does not accept evolution (every non trivial feature will >> require a backward incompatible change). >> - IMO current trunk could be released as 0.7.0 with very minor change: >> it is far from exposing a complete api, but I find it already better >> than 0.6 and I have already some product depending on current trunk. >> We saw we proceed at a slow speed, so we should be prepared improving >> the API while we reach 1.0. >> - I guess most of changes we have in trunk are not backportable to 0.6 >> because they have been possible by the major refactorings, but I'm not >> against this, if anyone sees a way. >> >> Can you state yours and also tell something more about "your" 0.7 plan? >> > > I think we discussed this on more than one occasion in the past. While I > think mime4j 'core' in 0.7 is fine, the 'dom' / 'message' stuff is not, Yes, we discussed a couple of times, but we didn't find a solution (at least not one I understood) > and the whole library is not in a releasable state at the moment. Got it: hope you will review trunk soon to understand what changes you propose to make it releasable. > And there is "my" plan: > > (1) ask people to go over issues in JIRA and decide what is in scope for > 0.7 and what can wait until a better day (0.8) +1 The main causes I use trunk in production instead of 0.6 are: MIME4J-158 - Reduce usage of commons-logging in favor of a "Monitor" service. https://issues.apache.org/jira/browse/MIME4J-158 MIME4J-58 - Lenient dealing with headless messages or malformed header/body separation https://issues.apache.org/jira/browse/MIME4J-58 MIME4J-153 - Headless inconsistency between MimeTokenStream and MimeStreamParser https://issues.apache.org/jira/browse/MIME4J-153 Also the folded header stuff you mentioned (MIME4J-141 - MIME4J-146) > (2) revisit the 'dom' and 'message' packages and try to figure out > whether 'model' and 'implementation' classes in their present form make > sense. +1 > In my option, many of them do not. They are the result of my limited use case: they work fine in my use cases (jDKIM + proprietary product). We need more real use cases to "shape" them, but I trust you (and you probably have good uses cases too), so I will wait for your review. Stefano