Reviewed by Geoff Garen.
[WebKit-https.git] / JavaScriptGlue / ChangeLog
index bd6d06f..9fd1905 100644 (file)
@@ -1,3 +1,723 @@
+2008-07-23  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Geoff Garen.
+
+        Make JSClassRef work with any context, not just the first one it was used in.
+
+        * ForwardingHeaders/wtf/HashMap.h: Added.
+
+2008-07-22  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Oliver Hunt and Sam Weinig.
+
+        Next step toward putting doubles in registers: Prepare the Register class
+        and its clients for registers that don't contain JSValue*s.
+        
+2008-07-21  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        <rdar://problem/6091287> Revamp the handling of CFBundleShortVersionString to be fixed at the major component of the version number.
+
+        * Configurations/Version.xcconfig:
+        * Info.plist:
+
+2008-07-18  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Cameron Zwarich.
+        
+        Three renames:
+        
+        "CallTypeNative" => "CallTypeHost"
+        "code" => "byteCode"
+        "generatedCode" => "generatedByteCode"
+
+        * ChangeLog:
+        * JSObject.cpp:
+        (JSUserObject::getCallData):
+
+2008-07-14  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Geoff Garen.
+
+        Eliminate per-thread JavaScript global data instance support and make arbitrary
+        global data/global object combinations possible.
+
+        * ForwardingHeaders/wtf/ThreadSpecific.h: Added.
+        * JSRun.cpp:
+        (JSRun::JSRun):
+        * JSUtils.cpp:
+        (getThreadGlobalExecState):
+        Adapt to the new way of asking for shared JSGlobalData.
+
+2008-07-10  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute.
+
+        * Configurations/JavaScriptGlue.xcconfig:
+
+2008-07-09  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Geoff Garen.
+
+        Don't warn about deprecated functions in production builds.
+
+        * Configurations/Base.xcconfig:
+        * Configurations/DebugRelease.xcconfig:
+
+2008-07-08  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Darin.
+
+        <rdar://problem/6058368> REGRESSION: Crash occurs in KJS::Machine after launching
+        Apple Installer
+
+        The problem was that JSUserObject::getCallData() was setting call type to native, but
+        left callData.native.function uninitialized.
+
+        * JSObject.cpp:
+        (JSUserObject::getCallData): Initialize callData.native.function.
+        (nativeCallFunction): Call UserObjectImp::callAsFunction().
+
+2008-07-04  Sam Weinig  <sam@webkit.org>
+
+        Rubber-stamped by Dan Bernstein.
+
+        * JSObject.h: Rename the header guard as it now conflicts with the
+        JSObject in JavaScriptCore.
+
+2008-07-01  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Darin.
+
+        Disable JSLock for per-thread contexts.
+
+        * ForwardingHeaders/wtf/Locker.h: Added.
+        * ForwardingHeaders/wtf/Threading.h: Added.
+        * JSBase.cpp:
+        (JSBase::Release):
+        * JSUtils.cpp:
+        (JSObjectKJSValue):
+        (KJSValueToCFTypeInternal):
+        (unprotectGlobalObject):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        (JSValueWrapper::JSObjectCopyCFValue):
+        * JavaScriptGlue.cpp:
+        (JSRunCreate):
+        (JSRunEvaluate):
+        (JSRunCheckSyntax):
+        (JSCollect):
+        (JSLockInterpreter):
+        (JSUnlockInterpreter):
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+        Pass a parameter (always true) to JSLock and JSLock::DropAllLocks to indicate that JSG
+        clients always need implicit mutex protection.
+        Added includes that are now needed.
+
+2008-06-26  Darin Adler  <darin@apple.com>
+
+        Reviewed by Geoff.
+
+        * JSUtils.cpp: Added include of <JavaScriptCore/JSString.h> since jsString
+        will soon be changed to return a JSString*.
+        * UserObjectImp.cpp: Ditto.
+
+2008-06-23  Darin Adler  <darin@apple.com>
+
+        Reviewed by Geoff.
+
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCallFunction): Updated to use getCallData and call instead
+        of the old callAsFunction.
+
+2008-06-17  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Darin.
+
+        Prepare JavaScript heap for being per-thread.
+
+        * JSRun.cpp: (JSRun::JSRun): Create JSGlueGlobalObject in a shared JS heap.
+
+        * JSUtils.h: Made getThreadGlobalExecState available throughout JSGlue.
+
+        * JSUtils.cpp:
+        (JSObjectKJSValue): Pass an ExecState where now required.
+        (unprotectGlobalObject):
+        (initializeGlobalObjectKey):
+        (getThreadGlobalExecState):
+        Moved these functions from JSValueWrapper.cpp, as the global exec state is now needed
+        elsewhere. I'm not quite sure how this relates to the global object from JSRun, but
+        since the new uses are all for Heap access, there doesn't seem to be any behavior change.
+
+        * JavaScriptGlue.cpp:
+        (JSLockInterpreter): Don't call registerThread explicitly, as JSLock will do that.
+
+        * UserObjectImp.cpp: (UserObjectImp::toPrimitive): Pass ExecState* where now required.
+
+2008-06-17  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Darin Adler.
+
+        <rdar://problem/5775802> JavaScriptGlue should not force use of GCC 4.0.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2008-06-16  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Alexey.
+
+        - removed nearly unused types.h and LocalStorageEntry.h headers
+
+        * JSUtils.h:
+
+2008-06-16  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Geoff Garen.
+
+        Make Identifier construction use an explicitly passed IdentifierTable.
+
+        * JSUtils.cpp:
+        (CFStringToIdentifier):
+        (KJSValueToCFTypeInternal):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        * UserObjectImp.cpp:
+        (UserObjectImp::getPropertyNames):
+        Pass ExecState or JSGlobalData everywhere.
+
+2008-06-15  Darin Adler  <darin@apple.com>
+
+        - rename KJS::List to KJS::ArgList
+
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCallFunction):
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+        * UserObjectImp.h:
+
+2008-06-15  Darin Adler  <darin@apple.com>
+
+        - new names for a few key JavaScriptCore files
+
+        * ForwardingHeaders/kjs/JSValue.h: Copied from JavaScriptGlue/ForwardingHeaders/kjs/value.h.
+        * ForwardingHeaders/kjs/value.h: Removed.
+        * JSUtils.h:
+
+2008-06-03  Darin Adler  <darin@apple.com>
+
+        - update for JavaScriptCore changes for https://bugs.webkit.org/show_bug.cgi?id=19269
+          speed up SunSpider by eliminating the toObject call for most get/put/delete
+
+        * UserObjectImp.cpp:
+        (UserObjectImp::userObjectGetter): Removed originalObject argument.
+        * UserObjectImp.h: Ditto.
+
+2008-06-02  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Alexey Proskuryakov.
+
+        Removed JSObject::call, since it just called JSObject::callAsFunction.
+
+        SunSpider reports no change.
+
+2008-05-28  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Oliver Hunt.
+        
+        Fixed total destruction in Software Update.app.
+        
+        Updated JavaScriptGlue to honor squirrelfish's new getCallData mechanism for
+        indicating that an object can be called as a function.
+
+2008-05-10  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Oliver.
+
+        - JavaScriptGlue part of fix for: "SQUIRRELFISH: function toString broken after calling"
+        https://bugs.webkit.org/show_bug.cgi?id=18869
+        
+        * JSRun.cpp:
+        (JSRun::Evaluate): Use UString version of eveluate() instead of
+        the now departed UChar*/length variant; use of the lower-level
+        version was gratuitous in any case.
+        (JSRun::CheckSyntax): Ditto for checkSyntax().
+
+2008-04-30  Geoffrey Garen  <ggaren@apple.com>
+
+        Build fix: supply missing parameter that used to be implicit.
+
+        * JSRun.cpp:
+        (JSRun::Evaluate):
+
+2008-03-30  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Oliver Hunt.
+        
+        Build fix.
+
+        * ForwardingHeaders/wtf/UnusedParam.h: Copied from ForwardingHeaders/wtf/OwnPtr.h.
+
+2008-05-12  Alexey Proskuryakov  <ap@webkit.org>
+
+        Roll out recent  threading changes (r32807, r32810, r32819, r32822) to simplify
+        SquirrelFish merging.
+
+        * JSUtils.cpp:
+        (JSObjectKJSValue):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (unprotectGlobalObject):
+        (initializeGlobalObjectKey):
+        (getThreadGlobalExecState):
+        * JavaScriptGlue.cpp:
+        (JSCollect):
+        (JSLockInterpreter):
+        * UserObjectImp.cpp:
+        (UserObjectImp::toPrimitive):
+
+2008-05-02  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Darin.
+
+        Make JavaScriptGlue and JavaScriptCore API functions implicitly call initializeThreading
+        for the sake of non-WebKit clients.
+
+        * JavaScriptGlue.cpp:
+        (JSRunCreate):
+        (JSCollect):
+        (JSCreateJSArrayFromCFArray):
+        (JSLockInterpreter):
+        These are all possible JavaScriptGlue entry points.
+
+2008-05-02  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Geoffrey Garen.
+
+        https://bugs.webkit.org/show_bug.cgi?id=18826
+        Make JavaScript heap per-thread
+
+        * JSValueWrapper.cpp:
+        * JSUtils.h:
+        Moved getThreadGlobalExecState() to JSUtils and made it extern, as ExecState is now needed
+        for all JS allocations.
+
+        * JSUtils.cpp:
+        (JSObjectKJSValue): Pass ExecState to functions that now need it.
+        (unprotectGlobalObject): Moved from JSValueWrapper.cpp.
+        (initializeGlobalObjectKey): Ditto.
+        (getThreadGlobalExecState): Ditto.
+
+        * UserObjectImp.cpp: (UserObjectImp::toPrimitive): Pass ExecState to jsString and jsNumber.
+
+        * JavaScriptGlue.cpp:
+        (JSCollect): Use current thread's heap.
+        (JSLockInterpreter): Removed JSLock::registerThread(), because a JS heap doesn't need to
+        know about other threads.
+
+2008-04-25  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Darin.
+
+        Fix run-webkit-tests --threading
+        and provisionally fix <https://bugs.webkit.org/show_bug.cgi?id=18661>
+        Proxy server issue in Sunday's Nightly
+
+        * UserObjectImp.cpp: Adjusted for the new member added to ClassInfo.
+
+2008-04-25  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Adele Peterson.
+
+        <rdar://problem/5891264> Don't install the JavaScriptGlue headers
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2008-04-25  Mark Rowe  <mrowe@apple.com>
+
+        Rubber-stamped by Sam Weinig.
+
+        Add some content to an empty ICU header file to prevent verification errors.
+
+        * icu/unicode/utf_old.h:
+
+2008-04-02  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        Ensure that debug symbols are generated for x86_64 and ppc64 builds.
+
+        * Configurations/Base.xcconfig:
+
+2008-03-20  Maciej Stachowiak  <mjs@apple.com>
+
+        - fix build
+
+        * ForwardingHeaders/wtf/ListRefPtr.h: Added.
+
+2008-03-01  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Tim Hatcher.
+
+        Update Xcode configuration to support building debug and release from the mysterious future.
+
+        * Configurations/Base.xcconfig:
+        * Configurations/DebugRelease.xcconfig:
+
+2008-02-29  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by David Harrison.
+        
+        Fixed <rdar://problem/5765063> TOT REGRESSION: Software Update crash in
+        KJS::Collector::collect() (missing JSLock)
+
+        * JSValueWrapper.cpp:
+        (unprotectGlobalObject): Added missing JSLock.
+
+2008-02-05  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        Update versioning to support the mysterious future.
+
+        * Configurations/Version.xcconfig: Add SYSTEM_VERSION_PREFIX_1060.
+
+2008-01-28  Eric Seidel  <eric@webkit.org>
+
+        Reviewed by darin.
+        
+        Add icu headers to JSG in preparation for depending on ::UChar.
+
+        * Configurations/Base.xcconfig:
+        * ForwardingHeaders/wtf/unicode: Added.
+        * ForwardingHeaders/wtf/unicode/Unicode.h: Added.
+        * ForwardingHeaders/wtf/unicode/icu: Added.
+        * ForwardingHeaders/wtf/unicode/icu/UnicodeIcu.h: Added.
+        * icu: Copied from ../JavaScriptCore/icu.
+
+2007-12-19  Geoffrey Garen  <ggaren@apple.com>
+
+        Build fix.
+
+        * ForwardingHeaders/wtf/VectorTraits.h: Added.
+
+2007-12-10  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by Mark Rowe.
+
+        <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x
+
+        * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
+          so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.
+
+2007-12-04  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Darin Adler.
+
+        Third step in refactoring JSGlobalObject: Moved data members and data
+        member access from Interpreter to JSGlobalObject. Replaced JSInterpreter
+        subclass with JSGlobalObject subclass.
+        
+        * JSRun.cpp:
+        (JSRun::JSRun):
+        (JSRun::Evaluate):
+        (JSRun::CheckSyntax):
+        * JSRun.h:
+        (JSGlueGlobalObject::JSGlueGlobalObject):
+        * JSUtils.cpp:
+        (KJSValueToCFTypeInternal):
+        * JSValueWrapper.cpp:
+        (getThreadGlobalExecState):
+
+2007-12-02  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Eric Seidel.
+
+        Updated to match the JavaScriptCore change to move virtual methods from
+        Interpreter to JSGlobalObject.
+        
+        * JSRun.cpp:
+        * JSRun.h:
+        * JSValueWrapper.cpp:
+        (getThreadGlobalExecState):
+        * JavaScriptGlue.cpp:
+        (JSRunCopyGlobalObject):
+        (JSRunEvaluate):
+
+2007-11-30  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Beth Dakin.
+        
+        Modified to follow new JSGlobalObject/Interpreter ownership rules 
+        in JavaScriptCore.
+
+        * JSRun.cpp:
+        (JSRun::JSRun):
+        (JSRun::GetInterpreter):
+        (JSRun::Evaluate):
+        (JSRun::CheckSyntax):
+        * JSRun.h:
+        * JSValueWrapper.cpp:
+        (unprotectGlobalObject):
+        (initializeGlobalObjectKey):
+        (getThreadGlobalExecState):
+
+2007-11-29  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Maciej.
+
+        Fix REGRESSION(r27885): Installer hits assertion failure in JavaScriptGlue.
+
+        * JSValueWrapper.cpp:
+        (getThreadGlobalExecState): Set the global object on the Interpreter before using it.
+
+2007-11-27  Anders Carlsson  <andersca@apple.com>
+        
+        Build fix.
+        
+        * JSUtils.cpp:
+        (KJSValueToCFTypeInternal):
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+
+2007-11-21  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Eric.
+
+        Fix JavaScriptGlue to build without warnings using GCC 4.2.
+
+        * Configurations/Base.xcconfig:
+        * JSRun.h:
+
+2007-11-17  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Darin Adler.
+
+        Fix: <rdar://problem/5607032> REGRESSION: testapi exits with assertion failure in debug build
+             <rdar://problem/5440659> JSGlobalContextCreate throws away globalObjectClass's prototype
+             http://bugs.webkit.org/show_bug.cgi?id=16033
+
+        Update for changes in Interpreter method signatures.
+
+        * JSRun.h:
+
+2007-11-13  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Anders Carlsson.
+
+        Renamed Shared to RefCounted.
+
+        * ForwardingHeaders/wtf/RefCounted.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/Shared.h.
+        * ForwardingHeaders/wtf/Shared.h: Removed.
+
+2007-11-13  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        Moved Shared.h into wtf so it could be used in more places.
+
+        * ForwardingHeaders/wtf/Shared.h: Added.
+
+2007-11-08  Mark Rowe  <mrowe@apple.com>
+
+        Build fix.
+
+        * ForwardingHeaders/wtf/MathExtras.h: Copied from WebCore/ForwardingHeaders/wtf/MathExtras.h.
+
+2007-11-05  Geoffrey Garen  <ggaren@apple.com>
+
+        Build fix.
+
+        * ForwardingHeaders/kjs/value.h: Added.
+
+2007-11-03  Sam Weinig  <sam@webkit.org>
+
+        Build-fix.
+
+        * UserObjectImp.cpp:
+
+2007-11-03  David D. Kilzer  <ddkilzer@webkit.org>
+
+        Sort files(...); sections of Xcode project files.
+
+        Rubber-stamped by Darin.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2007-10-25  Eric Seidel  <eric@webkit.org>
+
+        Reviewed by Geoff.
+        
+        Make JSG build again after JSGlobalObject change.
+
+        * JSRun.cpp:
+        (JSRun::JSRun):
+        (JSRun::GlobalObject):
+        * JSRun.h:
+        (JSInterpreter::JSInterpreter):
+        * JSUtils.h:
+
+2007-10-11  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Tim Hatcher.
+
+        Fix for <rdar://problem/5488678>.  Disable debugging symbols in production builds for 10.4
+        PowerPC to prevent a huge STABS section from being generated.
+
+        * Configurations/Base.xcconfig:
+
+2007-10-04  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Oliver.
+
+        Switch to default level of debugging symbols to resolve <rdar://problem/5488678>.
+        The "full" level appears to offer no observable benefits even though the documentation
+        suggests it be used for dead code stripping.  This should also decrease link times.
+
+        * Configurations/Base.xcconfig:
+
+2007-09-03  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Tim Hatcher.
+
+        <rdar://problem/5452164> Production build with in symbols directory has no debug info
+
+        Enable debug symbol generation on all build configurations.  Production builds are stripped
+        of symbols by Xcode during deployment post-processing.
+
+        * Configurations/Base.xcconfig:
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2007-08-09  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Antti.
+
+        <rdar://problem/5400709> Versioning in debug and release builds should include minor and tiny version before +
+
+        * Configurations/Version.xcconfig:
+        * JavaScriptGlue.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between
+        Version.xcconfig and Info.plist explicit to Xcode.
+
+2007-07-16  Sam Weinig  <sam@webkit.org>
+
+        Reviewed by Oliver.
+
+        Turn off -Wshorten-64-to-32 warning for 64-bit builds.
+
+        * Configurations/Base.xcconfig:
+
+2007-04-27  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Oliver.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj: Improve dependencies in Xcode project
+        by marking JavaScriptGlue as a dependency of testjsglue.
+
+2007-03-24  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Dave Hyatt.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj: Use GCC 4.0 for testjsglue.
+
+2007-03-24  Mark Rowe  <mrowe@apple.com>
+
+        Rubber-stamped by Darin.
+
+        * Configurations/JavaScriptGlue.xcconfig: Remove unnecessary INFOPLIST_PREPROCESS.
+
+2007-03-19  Andrew Wellington  <proton@wiretapped.net>
+
+        Reviewed by Maciej.
+
+        Really set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2007-03-18  Andrew Wellington  <proton@wiretapped.net>
+
+        Reviewed by Mark Rowe
+        
+        Set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2007-03-17  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by Mark Rowe.
+
+        Made Version.xcconfig smarter when building for different configurations.
+        Now uses the 522+ OpenSource version for Debug and Release, while using the    
+        full 522.4 version for Production builds. The system prefix is also computed
+        based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard.
+
+        * Configurations/JavaScriptGlue.xcconfig:
+        * Configurations/Version.xcconfig:
+
+2007-03-15  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by John.
+
+        * Factored out most of our common build settings into .xcconfig files. Anything that was common in
+          each build configuration was factored out into the shared .xcconfig file.
+        * Adds a Version.xcconfig file to define the current framework version, to be used in other places.
+        * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
+        * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
+
+        * Configurations/Base.xcconfig: Added.
+        * Configurations/DebugRelease.xcconfig: Added.
+        * Configurations/JavaScriptGlue.xcconfig: Added.
+        * Configurations/Version.xcconfig: Added.
+        * Info.plist:
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+=== Safari-5522.4 ===
+
+2007-03-12  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Oliver Hunt.
+        
+        Updated in light of fix for <rdar://problem/4681051> Installer crashes 
+        in KJS::Collector::markOtherThreadConservatively(KJS::Collector::Thread*) 
+        trying to install iLife 06 using Rosetta on an Intel Machine
+        
+        * JavaScriptGlue.cpp:
+        (JSLockInterpreter): Ensure backwards compatibility by calling 
+        registerThread() when explicitly taking the JSLock. (This doesn't happen 
+        automatically anymore.) I doubt this actally matters, but in JavaScriptGlue
+        territory, that kind of thinking will get you killed.
+
+2007-03-06  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Maciej Stachowiak.
+
+        Fixed all known crashers exposed by run-webkit-tests --threaded while using
+        a PAC file (for maximum carnage). See JavaScriptCore ChangeLog for 
+        more details.
+
+        * JSBase.cpp:
+        (JSBase::Release): Lock when deleting, because we may be deleting an object
+        (like a JSRun) that holds thread-unsafe data.
+
+        * JSUtils.cpp:
+        (CFStringToUString): Don't lock, because our caller locks. Also, locking
+        inside a function that returns thread-unsafe data by copy will only mask
+        threading problems.
+
+        * JavaScriptGlue.cpp:
+        (JSRunEvaluate): Added missing JSLock.
+        (JSRunCheckSyntax): Converted to JSLock.
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
 2007-02-22  Geoffrey Garen  <ggaren@apple.com>
 
         Reviewed by Darin Adler.