Return-Path: Delivered-To: apmail-tomcat-dev-archive@www.apache.org Received: (qmail 52140 invoked from network); 1 Jan 2009 13:54:32 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 1 Jan 2009 13:54:32 -0000 Received: (qmail 60826 invoked by uid 500); 1 Jan 2009 13:54:30 -0000 Delivered-To: apmail-tomcat-dev-archive@tomcat.apache.org Received: (qmail 60763 invoked by uid 500); 1 Jan 2009 13:54:30 -0000 Mailing-List: contact dev-help@tomcat.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Tomcat Developers List" Delivered-To: mailing list dev@tomcat.apache.org Received: (qmail 60752 invoked by uid 99); 1 Jan 2009 13:54:30 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 01 Jan 2009 05:54:30 -0800 X-ASF-Spam-Status: No, hits=-4.0 required=10.0 tests=RCVD_IN_DNSWL_MED,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [195.227.30.149] (HELO mailserver.kippdata.de) (195.227.30.149) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 01 Jan 2009 13:54:21 +0000 Received: from [192.168.2.102] ([192.168.2.102]) by mailserver.kippdata.de (8.13.5/8.13.5) with ESMTP id n01Ds0HA025618 for ; Thu, 1 Jan 2009 14:54:00 +0100 (CET) Message-ID: <495CCAD0.9000605@kippdata.de> Date: Thu, 01 Jan 2009 14:53:20 +0100 From: Rainer Jung User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.1b3pre) Gecko/20081204 Thunderbird/3.0b1 MIME-Version: 1.0 To: Tomcat Developers List Subject: tcnative API stability/compatibility Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 8bit X-Virus-Checked: Checked by ClamAV on apache.org Hi, we now have tcnative 1.1.x and trunk. What's our goal w.r.t. API stability? Citing from an earlier thread: >> > we do have a 1.1.x branch in tcnative which is supposed to be the stable >> > brach. > > Ok. I thought this was still also used in 6.0. OTOH, the library should > be renamed so that both v1.1 and this new incompatible one could be used > at the same time, right ? > > R�my We have native and Java code in tcnative. I guess we are talking here mainly about the Java side, i.e. the native one is the implementation, which is only exposed via the Java code and the Java code represents the API we do make public. I expect we want the following situation: - new methods can be added to tcnative trunk - old methods are not allowed to be removed either from trunk or from 1.1.x Trunk will most likely result in 1.2.x versions, and code using tcnative should be able to update from 1.1 to 1.2 without incompatibilities. Otherwise we would already now decide, that trunk will become a 2.x. Methods could get deprecated in trunk though. Exception: There are some methods which wouldn't have worked any time in the past, because they refer to native functions that don't exist. I think it is a good cleanup to remove/rename them now in trunk and 1.1.x. Anyone fine with that? Concerning the native side. What is the compatibility goal between the Java code and the native lib? Do we want to urge each using software to use a) exactly the same version of native, than the version of the Java code b) the same minor version, but patch version greater or equal to the Java side c) the same major version and any minor/patch greater or equal ... I guess we want a) or b), I think it's to early for c). If we go for b) and trunk is for a 1.2.x version, we don't need to support loading multiple copies of the native library. So I guess, b) is what we should do? Regards, Rainer --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org For additional commands, e-mail: dev-help@tomcat.apache.org