Return-Path: Delivered-To: apmail-harmony-dev-archive@www.apache.org Received: (qmail 39417 invoked from network); 17 Jan 2007 15:10:11 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 17 Jan 2007 15:10:11 -0000 Received: (qmail 71081 invoked by uid 500); 17 Jan 2007 15:10:13 -0000 Delivered-To: apmail-harmony-dev-archive@harmony.apache.org Received: (qmail 71059 invoked by uid 500); 17 Jan 2007 15:10:13 -0000 Mailing-List: contact dev-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list dev@harmony.apache.org Received: (qmail 71050 invoked by uid 99); 17 Jan 2007 15:10:13 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 17 Jan 2007 07:10:13 -0800 X-ASF-Spam-Status: No, hits=1.4 required=10.0 tests=SPF_HELO_PASS,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (herse.apache.org: 216.86.168.178 is neither permitted nor denied by domain of geir@pobox.com) Received: from [216.86.168.178] (HELO mxout-03.mxes.net) (216.86.168.178) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 17 Jan 2007 07:10:03 -0800 Received: from [192.168.1.104] (unknown [200.82.100.154]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by smtp.mxes.net (Postfix) with ESMTP id 286635199A for ; Wed, 17 Jan 2007 10:09:38 -0500 (EST) In-Reply-To: <410-22007111535654550@earthlink.net> References: <410-22007111535654550@earthlink.net> Mime-Version: 1.0 (Apple Message framework v752.3) X-Priority: 3 Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: <30A70E07-E133-4F14-ABB7-516C49048458@pobox.com> Content-Transfer-Encoding: 7bit From: Geir Magnusson Jr. Subject: Re: [general] centralization of the NOTICE, COPYRIGHT, etc files Date: Wed, 17 Jan 2007 12:09:37 -0300 To: dev@harmony.apache.org X-Mailer: Apple Mail (2.752.3) X-Virus-Checked: Checked by ClamAV on apache.org On Jan 15, 2007, at 12:56 AM, bootjvm wrote: > > All, > > Now that Harmony has graduated from the incubator > and several contributions have been checked in, and now > that the federated build process in 'enhanced/trunk' is getting > off the ground, it is probably time to take another look at the > outstanding matter of centrally managed administrative files. At > this time, this means that the root of various directory trees > contain some or all of the following files: COPYRIGHT, LICENSE, > NOTICE, THIRD_PARTY_NOTICES.txt. In addition, > the 'harmony/enhanced/jchevm' tree contains a couple > of unique files of this genre. > > Geir originally suggested condensing the various identical LICENSE > files and the like into one (back in July). By October 2, the > discussion > took the form of a first pass idea plus comments from the list. > (The list's > discussion to date follows at the end of this message.) But with the > prospect of incubator graduation and new contributions, this second > attempt seems to me a bit more focused and mature in my thinking > about the issue. Here is the substance of what I propose: > > 1. Make _sure_ to set EOL style to 'native' on all affected files. +1 > > 2. Add Intel's 2006 copyright from a new contribution to the > centralized 'enhanced/trunk/COPYRIGHT' file. Well.... not sure. I think that right now, the various files are pulled from classlib. Certainly having them in one place is good. Maybe "common resources"? > > 3. Remove almost all COPYRIGHT, LICENSE, NOTICE, and > THIRD_PARTY_NOTICES.txt files in favor of a symbolic > link to the equivalent file in 'enhanced/trunk'. These files > contain > the complete superset of all other files that will be replaced > with > a symbolic link. Intel's 2006 copyright claim for a contribution > is the only change that will be made to these files: > > enhanced/trunk/COPYRIGHT > enhanced/trunk/LICENSE > enhanced/trunk/NOTICE > enhanced/trunk/THIRD_PARTY_NOTICES.txt You can't do links in SVN. We just need to make sure that we have a README in every root that points people to the right place for the files. > > 4. Two exceptions to this rule are some similarly-named files > in '/enhanced/jchevm' which cover special circumstances > of that contribution. Those files will, however, be adjusted > to use native EOL style in SVN. > > 5. The complete list of affected files follows this narrative > and precedes the previous list e-mail discussion. > > This is everything that needs to be done now. Several adjustments > along the way have made other ideas either obsolete or have already > been accounted for. > > Comments are solicited, especially from Tim Ellison and Geir > Magnusson. > > I would appreciate it if everyone could respond within about a > week, namely > by January 22. I would like to perform the SVN adjustments soon > thereafter. > Thanks for your time in evaluating this proposal. Actually, I think that an alternative might be simply to have COPYRIGHT_CLASSIB COPYRIGHT_DRLVM COPYRIGHT_JCHEVM etc... so each component maintains their own info? Dunno geir > > Dan Lydick > > > # > # Summary of all activities: > # > # enhanced/trunk/COPYRIGHT > # Change EOL property to 'native'. > # > # Recommend adding language: > # (C) Copyright 2006 Intel Corporation > # > # enhanced/trunk/LICENSE > # Change EOL property to 'native'. > # > # enhanced/trunk/NOTICE > # Change EOL property to 'native'. > # > # enhanced/trunk/THIRD_PARTY_NOTICES.txt > # No changes. > ########## > # ./enhanced/jchevm/LICENSE.sablevm > # Change EOL property to 'native'. > # Due to special provisions, recommend no changes to this file. > # > # ./enhanced/jchevm/NOTICE > # Change EOL property to 'native'. > # Due to special provisions, recommend no changes to this file. > ########## > # > # ./enhanced/classlib/trunk/COPYRIGHT > # ./enhanced/classlib/trunk/modules/rmi/COPYRIGHT > # ./enhanced/drlvm/trunk/COPYRIGHT > # ./enhanced/drlvm/trunk/vm/gc_cc/COPYRIGHT > # ./enhanced/drlvm/trunk/vm/gc_gen/src/COPYRIGHT > # ./enhanced/jdktools/trunk/modules/jpda/COPYRIGHT.txt > # ./enhanced/tools/trunk/jmx_console/COPYRIGHT > # Remove in favor of symbolic link to ./enhanced/trunk/COPYRIGHT > ##### > # ./enhanced/classlib/trunk/LICENSE > # ./enhanced/classlib/trunk/modules/rmi/LICENSE > # ./enhanced/drlvm/trunk/LICENSE > # ./enhanced/drlvm/trunk/vm/gc_cc/LICENSE > # ./enhanced/drlvm/trunk/vm/gc_gen/src/LICENSE > # ./enhanced/jchevm/LICENSE > # ./enhanced/jdktools/trunk/LICENSE > # ./enhanced/jdktools/trunk/modules/jpda/LICENSE.txt > # > ./enhanced/tools/trunk/eclipse/ > org.apache.harmony.eclipse.jdt.launching/LICE > NSE > # ./enhanced/tools/trunk/jmx_console/LICENSE > > # Remove in favor of symbolic link to ./enhanced/trunk/LICENSE > ##### > # ./enhanced/classlib/trunk/NOTICE > # ./enhanced/classlib/trunk/modules/rmi/NOTICE > # ./enhanced/drlvm/trunk/NOTICE > # ./enhanced/drlvm/trunk/vm/gc_cc/NOTICE > # ./enhanced/drlvm/trunk/vm/gc_gen/src/NOTICE > # ./enhanced/jdktools/trunk/NOTICE > # ./enhanced/jdktools/trunk/modules/jpda/NOTICE.txt > # ./enhanced/tools/trunk/jmx_console/NOTICE > > # Remove in favor of symbolic link to ./enhanced/trunk/NOTICE > ##### > # ./enhanced/classlib/trunk/THIRD_PARTY_NOTICES.txt > # Remove in favor of symbolic link to > ./enhanced/trunk/THIRD_PARTY_NOTICES.txt > # > > =================================================== > >> [Original Message] >> From: Tim Ellison >> To: >> Date: 10/2/06 1:27:19 PM >> Subject: Re: [general] centralization of the NOTICE, COPYRIGHT, >> etc files >> >> There's a lot to take in here Dan. Some comments in-line. >> >> bootjvm wrote: >>> A while back, Geir asked for someone to volunteer to take a >>> look at his first pass at gathering all of the COPYRIGHT, >>> LICENSE, NOTICE, and other such files from the top level of >>> the several Harmony directory trees that he had gathered >>> them into 'harmony/enhanced/trunk'. >> >> Ok. There is certainly duplication in places, the challenge is to >> ensure that the modular code structure stays intact (so we don't >> end up >> with, say, JCHEVM notices in a build that doesn't contain the code!) >> >>> I have taken a look at these and have summarized them below. >>> Following that is a short proposal as to what to do about >>> finishing this process that Geir started by eliminating the >>> redundancies while retaining the unique elements of these >>> files for each area. From the Harmony SVN repository >>> https://svn.apache.org/repos/asf/incubator/harmony/enhanced: >>> >>> trunk/ >>> COPYRIGHT -- contains these declarations: >>> (C) Copyright 2005 Intel Corporation >>> (C) Copyright 2005-2006 Intel Corporation >>> >>> INCUBATOR_NOTICE.txt >>> "...Incubation is required of all newly accepted >>> projects..." >>> >>> LICENSE >>> Apache License >>> Version 2.0, January 2004 >>> http://www.apache.org/licenses ... >>> TERMS AND CONDITIONS FOR USE, REPRODUCTION, ... >>> 1. Definitions. ... >>> >>> NOTICE -- re ASF License 2.0 section 4 d: "Portions of >>> Harmony..." >>> Intel Corporation >>> Internet Society RFC 3280 re X.509 Public Key Infrastructure >> >> Currently, I take the NOTICE file to be our (Apache's) notices to the >> recipient, such as the copyright statement and arguably the incubator >> notice, and... >> >>> THIRD_PARTY_NOTICES.txt -- regarding a number of packages: >> >> THIRD_PARTY_NOTICES is the notices that we pass on from code/ >> resources >> we have used in our implementation. In principle we can roll them >> all >> into a single NOTICE file if that helps. >> >>> ICU4C version 3.4: >>> ICU License - ICU 1.8.1 and later-- IBM 1995-2005 >>> ICU4J version 3.4: >>> ICU4J 1.3.1 and later-- IBM 1995-2005 >>> ICU4JNI version 3.4: >>> ICU4JNI 1.3.1 and later-- IBM 1995-2005 >>> FDLIBM version 5.2: >>> Sun 2004 >>> ZLIB version 1.2.3: >>> 1995-2004 Jean-loup Gailly and Mark Adler >>> Visual C++ Runtime Files: >>> The file msvcr71.dll is the Microsoft(R) C Runtime >>> Library. >>> This file is redistributed from Microsoft(R) Visual >>> Studio 7.1 >>> Bouncy Castle version 133: >>> 2000 - 2006 The Legion Of The Bouncy Castle >>> MX4J 3.0.1: >>> The MX4J License, Version 1.0 >>> Copyright (c) 2001-2004 by the MX4J contributors >>> The Independent JPEG Group's JPEG software >>> 1991-1998, Thomas G. Lane >>> Little CMS >>> 1998-2004 Marti Maria >>> libpng >>> 2004, 2006 Glenn Randers-Pehrson >>> Unicode Character Database >>> 1991-2005 Unicode, Inc. >> >> Yep. Some of these are required notices and some are courtesy >> notices. >> >>> classlib/trunk >>> COPYRIGHT >>> identical to 'trunk/COPYRIGHT' regarding >>> "(C) Copyright 2005 Intel Corporation" >>> >>> LICENSE >>> identical to 'trunk/LICENSE' >>> >>> NOTICE >>> identical to 'trunk/NOTICE' >>> >>> README.txt >>> "...Incubation is required of all newly accepted >>> projects..." >>> same as 'trunk/INCUBATOR_NOTICE.txt', plus additional > information >>> following) >>> >>> THIRD_PARTY_NOTICES.txt >>> identical to 'trunk/THIRD_PARTY_NOTICES.txt' >> >> I expect that many of these were copied-up (rather than moved), hence >> the duplication. >> >>> classlib/trunk/modules/rmi >>> COPYRIGHT >>> identical to 'trunk/COPYRIGHT' regarding >>> "(C) Copyright 2005-2006 Intel Corporation" >>> >>> LICENSE >>> identical to 'trunk/LICENSE' >>> >>> NOTICE >>> identical to 'trunk/NOTICE' portion regarding Intel >>> Corporation >> >> A hang-over from the original contribution -- I think these can be >> merged-up now. >> >>> drlvm/trunk >>> COPYRIGHT >>> identical to 'trunk/COPYRIGHT' regarding >>> "(C) Copyright 2005-2006 Intel Corporation" >>> >>> LICENSE >>> identical to 'trunk/LICENSE' >>> >>> NOTICE >>> identical to 'trunk/NOTICE' portion regarding Intel >>> Corporation >>> >>> jchevm >>> LICENSE >>> identical to 'trunk/LICENSE' >>> >>> NOTICE >>> Same as 'trunk/NOTICE' portion regarding portion >>> regarding, "This product includes software developed by >>> the ASF" >>> but then adds info about code derived from the SableVM >>> project. >>> >>> >>> Here is a possible way to meet Geir's original objectives: >>> >>> (1) Make 'trunk' the focal point where all such files are >>> gathered. >> >> which trunk ? >> >>> (2) For files that are completely common between the projects, >>> such >>> as 'LICENSE', remove the copies in each directory and replace >>> them in SVN with a symbolic link to the version in 'trunk'. >> >> 'the projects'? and what do you mean by symbolic link? more >> svn:externals :-( ? >> >>> (3) For files that have significant redundant content, replace >>> the >>> common portions of these files with statements referencing >>> the >>> relevant language in a like-named file in 'trunk'. As an >>> alternative, retain the language but add a reference to >>> the common file. >> >> I would imagine that the duplication is in boilerplate files like the >> ASL file, but is there duplication in third party notices between >> 'classlib', 'drlvm', 'jchevm', etc.? >> >>> (4) In order to protect the integrity of the licensing agreements >>> for bulk contributions, maintain their existing 'COPYRIGHT' >>> files as they stand, but add a related file to 'trunk' that >>> has the same exact contents. Should the original files >>> change, >>> which is highly unlikely, since it concerns a historical >>> event, >>> then the 'trunk' version would be updated also. (By keeping > these >>> files as they stand, then there can never be any question >>> as to >>> the arrangement by which that code came into the ASF, thus >>> protecting all parties.) The relevant files are: >>> >>> classlib/trunk/COPYRIGHT: "(C) Copyright 2005 Intel > Corporation" >>> >>> classlib/trunk/modules/rmi/COPYRIGHT: >>> "(C) Copyright 2005-2006 Intel >>> Corporation" >>> >>> drlvm/trunk/COPYRIGHT: "(C) Copyright 2005-2006 Intel >>> Corporation" >>> >>> The suggested additions become: >>> >>> trunk/COPYRIGHT.classlib: "(C) Copyright 2005 Intel > Corporation" >>> >>> trunk/COPYRIGHT.dlrvm: "(C) Copyright 2005-2006 Intel >>> Corporation" >>> >>> trunk/COPYRIGHT: remove this file >>> >>> The existing file 'trunk/COPYRIGHT' would be removed >>> because it > only >>> contains the messages from the two other directories, yet >>> does > not >>> state which copyright notice goes with which contribution. >> >> What is the difference, therefore, between having >> classlib/trunk/COPYRIGHT >> drlvm/trunk/COPYRIGHT >> and >> trunk/COPYRIGHT.classlib >> trunk/COPYRIGHT.dlrvm >> >>> (5) The LICENSE files may be combined into one central location: >>> >>> trunk/LICENSE The central focus and target >>> of all >>> others >>> >>> classlib/trunk/LICENSE Replaced by symbolic link to >>> 'trunk/LICENSE' >>> >>> classlib/trunk/modules/rmi/LICENSE >> >> Not sure that we need to call out RMI as a special case. >> >>> Replaced by symbolic link to >>> 'trunk/LICENSE' >>> >>> drlvm/trunk/LICENSE Replaced by symbolic link to >>> 'trunk/LICENSE' >>> >>> jchevm/LICENSE Replaced by symbolic link to >>> 'trunk/LICENSE' >>> >>> >>> (6) The NOTICE files retain their existing text, but adds a >>> statement >>> such >>> as, "This notice also appears in the main >>> 'harmony/enhanced/trunk/NOTICE' >>> file, where all such notices appear." >> >> That won't mean much to the recipient of a build though. >> >>> >>> trunk/NOTICE Contains a grand union of all >>> NOTICE >>> files. >>> >>> classlib/trunk/NOTICE Adds this message at the end >>> of its > text >>> >>> classlib/trunk/modules/rmi/LICENSE >>> Adds this message at the end >>> of its > text >>> >>> drlvm/trunk/LICENSE Adds this message at the end >>> of its > text >>> >>> jchevm/LICENSE Adds this message at the end >>> of its > text >>> >>> >>> (7) The THIRD_PARTY_NOTICES.txt files may be combined into one >>> central location: >>> >>> trunk/THIRD_PARTY_NOTICE.txt The central focus and >>> target of > all >>> others >>> >>> classlib/trunk/THIRD_PARTY_NOTICE.txt >>> * Replaced by symbolic link to >>> 'trunk/ >>> THIRD_PARTY_NOTICES.txt' >>> --OR-- >>> * Add language at the end of >>> this > file >>> to >>> the effect "this list is >>> part of >>> a project-wide list found in >>> 'trunk/ >>> THIRD_PARTY_NOTICES.txt' >>> (Comments?) >> >> As above, is there overlap here? >> >>> (8) Ad hoc changes to selected files, namely: >>> >>> classlib/trunk/README.txt Remove language that is >>> identical to >>> 'trunk/INCUBATOR_NOTICE.txt', >>> then >>> in its place, add reference >>> to that > file >>> for such information. >> >> Do you need to cross-reference like this? >> >>> (9) All other files are unchanged, namely: >>> >>> trunk/INCUBATOR_NOTICE.txt >>> >>> >>> (10) In _all_ such files, set 'svn propset svn:eol- >>> style=native' to > avoid >>> white space differences in comparison between them and >>> usage by > all >>> interested parties without wrangling with this issue. >> >> Sure. >> >>> (11) Future bulk contributions 'harmony/enhanced/foo' would then >>> follow this same general approach: >>> >>> (a) to gather all common files into 'harmony/enhanced/ >>> trunk' and >>> point symbolic links to them. >>> >>> (b) Add a 'harmony/enhanced/trunk/COPYRIGHT.foo' file >>> containing >>> their prior copyright information. >>> >>> (c) Any NOTICE file would add the appropriate reference to >>> 'trunk/NOTICE' and extend that file with any new >>> language. >>> >>> (d) Third party notices would be added at the end of >>> 'trunk/THIRD_PARTY_NOTICES.txt' and add a symbolic >>> link 'foo/THIRD_PARTY_NOTICES.txt' to point to that >>> addition, >>> or add a file by that name containing _only_ the new >>> information and language referring to the global one. >>> (Comments?) >> >> Hopefully covered by comments above. >> >>> (12) Suggest replacing the name 'THIRD_PARTY_NOTICES.txt' simply >>> with 'THIRD_PARTY_NOTICES' (for consistency in naming), >>> perhaps >>> in 'classlib/trunk' adding a symbolic link with the old name >>> pointing to the new. >> >> Sure >> >>> Your comments would be appreciated. >> >> Thanks for tackling it Dan. >> >> Regards, >> Tim >> >> >>> Dan Lydick >>> >>>> [Original Message] >>>> From: Geir Magnusson Jr >>>> To: >>>> Date: 7/20/06 9:52:37 PM >>>> Subject: Re: [general] centralization of the NOTICE, COPYRIGHT, etc > files >>>> >>>> Well, go for it! See what I have in there now and see what you > think... >>>> >>>> geir >>>> >>>> >>>> bootjvm wrote: >>>>> Geir, >>>>> >>>>> I have been working off and on with on putting together >>>>> a contribution for this purpose. It has all the things you >>>>> mentioned plus some more things. If you like, I would >>>>> be glad to put it together shortly and submit for The List's >>>>> inspection and approval. What do you say? >>>>> >>>>> >>>>> Dan Lydick >>>>> >>>>> >>>>>> [Original Message] >>>>>> From: Geir Magnusson Jr >>>>>> To: >>>>>> Date: 7/20/06 2:07:14 PM >>>>>> Subject: [general] centralization of the NOTICE, COPYRIGHT, >>>>>> etc files >>>>>> >>>>>> If you haven't guessed from my random checkins, questions, and >>>>>> befuddlement, I'm finishing off a first cut at a federated build. >>>>>> >>>>>> The plan is to cut a hdk and a jre snapshot. The HDK will >>>>>> contain > the >>>>>> jre, but I thought it would be more conventional for users to >>>>>> get a >>>>>> plain jre and not have to figure out what a HDK is. >>>>>> >>>>>> Now, I want to coalesce the NOTICE, COPYRIGHT, 3rd party, etc >>>>>> files >>> into >>>>>> one project-wide file in >>>>>> >>>>>> enhanced/trunk/ >>>>>> >>>>>> and replace the ones we have in classlib/, drlvm/ etc with a >>>>>> NOTICE, >>> etc >>>>>> file that points to the root one. >>>>>> >>>>>> Any complaints, suggestions? >>>>>> >>>>>> geir >>>>>> >>>>>> ----------------------------------------------------------------- >>>>>> ---- >>>>>> Terms of use : http://incubator.apache.org/harmony/mailing.html >>>>>> To unsubscribe, e-mail: harmony-dev- >>>>>> unsubscribe@incubator.apache.org >>>>>> For additional commands, e-mail: > harmony-dev-help@incubator.apache.org >>>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------------------------------------------ >>>>> --- >>>>> Terms of use : http://incubator.apache.org/harmony/mailing.html >>>>> To unsubscribe, e-mail: harmony-dev- >>>>> unsubscribe@incubator.apache.org >>>>> For additional commands, e-mail: harmony-dev- >>>>> help@incubator.apache.org >>>>> >>>>> >>>>> >>>> ------------------------------------------------------------------- >>>> -- >>>> Terms of use : http://incubator.apache.org/harmony/mailing.html >>>> To unsubscribe, e-mail: harmony-dev- >>>> unsubscribe@incubator.apache.org >>>> For additional commands, e-mail: harmony-dev- >>>> help@incubator.apache.org >>>> >>> >>> >>> >>> >>> -------------------------------------------------------------------- >>> - >>> Terms of use : http://incubator.apache.org/harmony/mailing.html >>> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org >>> For additional commands, e-mail: harmony-dev- >>> help@incubator.apache.org >>> >>> >> >> -- >> >> Tim Ellison (t.p.ellison@gmail.com) >> IBM Java technology centre, UK. >> >> --------------------------------------------------------------------- >> Terms of use : http://incubator.apache.org/harmony/mailing.html >> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org >> For additional commands, e-mail: harmony-dev- >> help@incubator.apache.org >> > > >