3 2006-07-15 Maciej Stachowiak <mjs@apple.com>
7 - switch property lists to be vector+set of Identifiers instead of list of References
10 (KJSValueToCFTypeInternal): updated for JSC SPI changes
12 (JSValueWrapper::JSObjectCopyPropertyNames): ditto
14 (UserObjectImp::getPropertyNames): ditto
19 2006-07-14 Geoffrey Garen <ggaren@apple.com>
23 - Updated JSInterpreter to work with Interpreter ref-counting in JavaScriptCore.
25 (JSInterpreter::JSInterpreter::~JSInterpreter): Now protected to catch
28 2006-07-12 Anders Carlsson <acarlsson@apple.com>
33 (KJSValueToCFTypeInternal):
35 (JSValueWrapper::JSObjectCopyPropertyNames):
37 (UserObjectImp::getPropertyList):
41 2006-07-07 Geoffrey Garen <ggaren@apple.com>
46 (KJSValueToCFTypeInternal):
48 (JSValueWrapper::JSObjectCopyPropertyNames):
50 2006-07-03 Geoffrey Garen <ggaren@apple.com>
55 (JSRun::CheckSyntax): Updated to use new checkSyntax syntax in JSC.
56 * JavaScriptGlue.xcodeproj/project.pbxproj:
60 2006-06-28 Timothy Hatcher <timothy@apple.com>
62 Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
64 * JavaScriptGlue.xcodeproj/project.pbxproj:
66 2006-06-24 David Kilzer <ddkilzer@kilzer.net>
70 * Info.plist: Fixed copyright to include 2003-2006.
72 === JavaScriptGlue-521.13 ===
74 2006-06-20 Geoffrey Garen <ggaren@apple.com>
78 - Required for JS API: Rename propList to getPropertyList and have it
79 take its target property list by reference so that subclasses can
80 add properties to the list before calling through to their superclasses.
83 (KJSValueToCFTypeInternal):
85 (JSValueWrapper::JSObjectCopyPropertyNames):
87 (UserObjectImp::getPropertyList):
90 2006-06-15 Timothy Hatcher <timothy@apple.com>
92 Reviewed by Geoff and Darin.
94 Prefer the DWARF debugging symbols format for use in Xcode 2.3.
96 * JavaScriptGlue.xcodeproj/project.pbxproj:
98 2006-06-12 Geoffrey Garen <ggaren@apple.com>
100 Reviewed by TimO, Maciej.
102 - JSGlue part of merging InterpreterImp into Interpreter.
104 Since there's now a kjs forwarding header, I moved all forwarding
105 headers into a "ForwardingHeaders" directory, like in WebCore.
107 * ForwardingHeaders: Added.
108 * ForwardingHeaders/kjs: Added.
109 * ForwardingHeaders/kjs/ExecState.h: Added.
110 * ForwardingHeaders/wtf: Added.
111 * JavaScriptGlue.xcodeproj/project.pbxproj:
114 * wtf/AlwaysInline.h: Removed.
115 * wtf/Assertions.h: Removed.
116 * wtf/FastMalloc.h: Removed.
117 * wtf/Forward.h: Removed.
118 * wtf/HashCountedSet.h: Removed.
119 * wtf/HashSet.h: Removed.
120 * wtf/Noncopyable.h: Removed.
121 * wtf/OwnArrayPtr.h: Removed.
122 * wtf/OwnPtr.h: Removed.
123 * wtf/PassRefPtr.h: Removed.
124 * wtf/Platform.h: Removed.
125 * wtf/RefPtr.h: Removed.
126 * wtf/Vector.h: Removed.
128 === JavaScriptGlue-521.10 ===
130 2006-05-09 Maciej Stachowiak <mjs@apple.com>
132 Rubber stamped by Anders.
134 - renamed kxmlcore to wtf
142 * kxmlcore/AlwaysInline.h: Removed.
143 * kxmlcore/Assertions.h: Removed.
144 * kxmlcore/FastMalloc.h: Removed.
145 * kxmlcore/Forward.h: Removed.
146 * kxmlcore/HashCountedSet.h: Removed.
147 * kxmlcore/HashSet.h: Removed.
148 * kxmlcore/Noncopyable.h: Removed.
149 * kxmlcore/OwnArrayPtr.h: Removed.
150 * kxmlcore/OwnPtr.h: Removed.
151 * kxmlcore/PassRefPtr.h: Removed.
152 * kxmlcore/Platform.h: Removed.
153 * kxmlcore/RefPtr.h: Removed.
154 * kxmlcore/Vector.h: Removed.
157 2006-04-11 Darin Adler <darin@apple.com>
159 - try to fix Windows build
161 * kxmlcore/HashForward.h: Removed.
163 2006-04-10 Darin Adler <darin@apple.com>
165 Rubber-stamped by John Sullivan.
167 - added forwarding headers for the new Forward.h and HashForward.h files
169 * kxmlcore/Forward.h: Added.
170 * kxmlcore/HashForward.h: Added.
172 2006-04-04 Timothy Hatcher <timothy@apple.com>
176 The Debug and Release frameworks are now built with install paths relative to the build products directory.
177 This removes the need for other projects to build with -framework WebCore and -framework JavaScriptCore.
179 * JavaScriptGlue.xcodeproj/project.pbxproj:
181 2006-04-02 Eric Seidel <eseidel@apple.com>
183 Reviewed by andersca.
185 Add missing forwarding header.
187 * kxmlcore/Vector.h: Added.
189 2006-03-31 Geoffrey Garen <ggaren@apple.com>
193 - Fixed <rdar://problem/4430836> JavaScript patch crashing Quartz
196 JSValueWrappers used to hold on to the ExecState that pertained at
197 the time of their creation. Since ExecStates are transient, that
198 design was totally bogus, and it would crash once the ExecState had
201 Unfortunately, there's no clean solution to this problem, since
202 the JSGlue API has no notion of state. The solution here is to use
203 a shared, global ExecState for the purpose of JSGlue calls. Given
204 the pre-existing limitations in the JSGlue API, this design
205 shouldn't actually introduce any new limitations (see comments in
208 I tested with Quartz Composer and PAC files, neither of which are
212 (KJSValueToJSObject):
213 * JSValueWrapper.cpp:
214 (JSValueWrapper::JSValueWrapper):
215 (JSValueWrapper::GetValue):
216 (getProcessGlobalExecState):
217 (JSValueWrapper::JSObjectCopyPropertyNames):
218 (JSValueWrapper::JSObjectCopyProperty):
219 (JSValueWrapper::JSObjectSetProperty):
220 (JSValueWrapper::JSObjectCallFunction):
221 (JSValueWrapper::JSObjectCopyCFValue):
224 Also added a test harness file. It was helpful while I was testing,
225 and may come in handy in the future:
227 * JavaScriptGlue.xcodeproj/project.pbxproj:
228 testjsglue.cpp: Added.
230 2006-03-28 Darin Adler <darin@apple.com>
234 - added a build step that checks for init routines
236 * JavaScriptGlue.xcodeproj/project.pbxproj: Added a custom build phase that invokes the
237 check-for-global-initializers script.
239 2006-03-02 Maciej Stachowiak <mjs@apple.com>
241 Not reviewed, but I noticed these trivial extra changes were needed to avoid
242 breaking the build with my reviewed patch for:
244 http://bugzilla.opendarwin.org/show_bug.cgi?id=7387
246 Add config.h, includes of it, and Platform.h forwarding header.
252 * JSValueWrapper.cpp:
253 * JavaScriptGlue.cpp:
256 * kxmlcore/Platform.h: Added.
258 === JavaScriptGlue-521.7 ===
260 2006-02-10 Geoffrey Garen <ggaren@apple.com>
267 (UserObjectImp::toPrimitive):
270 2006-02-03 Timothy Hatcher <timothy@apple.com>
274 Renamed configuration names to Debug, Release and Production.
276 * JavaScriptGlue.xcodeproj/project.pbxproj:
278 2006-02-01 Darin Adler <darin@apple.com>
280 - added some forwarding headers to make new JavaScriptCore changes work
282 * kxmlcore/Assertions.h: Added.
283 * kxmlcore/Noncopyable.h: Added.
284 * kxmlcore/OwnPtr.h: Added.
285 * kxmlcore/OwnArrayPtr.h: Added.
287 2006-01-16 Timothy Hatcher <timothy@apple.com>
289 Adding the license header to all files so we can
290 move JavaScriptGlue into the open source repository.
293 * JSBase.cpp: license header added.
295 * JSObject.cpp: ditto.
299 * JSUtils.cpp: ditto.
301 * JSValueWrapper.cpp: ditto.
302 * JSValueWrapper.h: ditto.
303 * JavaScriptGlue.cpp: ditto.
304 * JavaScriptGlue.h: ditto.
305 * UserObjectImp.cpp: ditto.
306 * UserObjectImp.h: ditto.
308 2005-12-21 Timothy Hatcher <timothy@apple.com>
310 * JavaScriptGlue.xcodeproj/project.pbxproj:
311 Set tab width to 8, indent width to 4 and uses tabs to false per file.
313 2005-12-19 Darin Adler <darin@apple.com>
315 Reviewed by Geoff Garen and Eric Seidel.
317 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4923
318 stop using <ostream> in WebCore, eliminating the <cmath> troubles it causes
320 * kxmlcore/AlwaysInline.h: Added.
322 2005-12-15 Darin Adler <darin@apple.com>
326 * JSRun.cpp: (JSRun::Evaluate): Updated for change to Interpreter::evaluate.
328 2005-12-15 Darin Adler <darin@apple.com>
330 Reviewed by Tim Hatcher.
332 * JavaScriptGlue.xcodeproj/project.pbxproj: Removed some redundant build
333 settings, turned off prebinding explicitly for our Development and
334 Deployment builds, remove .exp file from sources. All "clean-up".
338 2005-12-13 Geoffrey Garen <ggaren@apple.com>
340 - Fixed build after Anders's last checkin to JavaScriptCore.
345 (UserObjectImp::userObjectGetter): Updated to reflect new argument that
346 getters take (unused here).
349 2005-12-13 Maciej Stachowiak <mjs@apple.com>
353 - added forwarding header for HashCountedSet
355 * kxmlcore/HashCountedSet.h: Added.
357 2005-12-10 Darin Adler <darin@apple.com>
359 Rubber stamped by Maciej.
361 - updated for KJS class renaming
363 * many files and functions
365 2005-12-10 Darin Adler <darin@apple.com>
369 - eliminated the old Undefined(), Null(), Boolean(), Number(), and String()
371 Code now uses jsUndefined(), jsNull(), jsBoolean(), jsNumber(), and jsString().
376 (UserObjectImp::callAsFunction):
377 (UserObjectImp::toPrimitive):
379 2005-12-05 Maciej Stachowiak <mjs@apple.com>
381 - added new forwarding headers
383 * kxmlcore/PassRefPtr.h: Added.
384 * kxmlcore/RefPtr.h: Added.
386 2005-12-05 Maciej Stachowiak <mjs@apple.com>
388 * kxmlcore/PassRefPtr.h: Added.
390 2005-11-26 Maciej Stachowiak <mjs@apple.com>
392 Rubber stamped by Eric.
394 - renamed InterpreterLock to JSLock
399 (KJSValueToCFTypeInternal):
400 * JSValueWrapper.cpp:
401 (JSValueWrapper::JSObjectCopyPropertyNames):
402 (JSValueWrapper::JSObjectCopyProperty):
403 (JSValueWrapper::JSObjectSetProperty):
404 (JSValueWrapper::JSObjectCallFunction):
405 (JSValueWrapper::JSObjectCopyCFValue):
406 * JavaScriptGlue.cpp:
410 (JSUnlockInterpreter):
412 (UserObjectImp::callAsFunction):
414 2005-11-16 Maciej Stachowiak <mjs@apple.com>
418 Updated to use new API to drop all locks.
420 * JavaScriptGlue.cpp:
422 (JSUnlockInterpreter):
424 (UserObjectImp::callAsFunction):
426 2005-11-14 Geoffrey Garen <ggaren@apple.com>
430 - Part of the fix for <rdar://problem/4342216> Installer crash in
431 KJS::ValueImp::marked() when garbage collector runs inside call to
432 ConstantValues::init()
434 Added locking in JSRunCreate, since JSRun::JSRun constructs an object.
436 * JavaScriptGlue.cpp:
439 2005-11-10 Geoffrey Garen <ggaren@apple.com>
443 - Fixed <rdar://problem/4334445> installer crashed on my
444 dual g4 450Mhz after clicking language
446 - Reversed backwards NULL check.
447 - Inserted guards against NULL fJSUserObject data member.
448 - Cleaned up some style.
451 (KJSValueToCFTypeInternal):
453 (UserObjectImp::~UserObjectImp):
454 (UserObjectImp::callAsFunction):
455 (UserObjectImp::userObjectGetter):
456 (UserObjectImp::getOwnPropertySlot):
457 (UserObjectImp::put):
458 (UserObjectImp::mark):
460 2005-11-04 Timothy Hatcher <timothy@apple.com>
464 * JavaScriptGlue.xcodeproj/project.pbxproj:
465 Fixed the FRAMEWORK_SEARCH_PATHS to look in the WebKit
466 Frameworks for the Default config.
468 2005-11-03 Timothy Hatcher <timothy@apple.com>
470 Reviewed by Darin and Vicki.
472 * JavaScriptGlue.xcodeproj/project.pbxproj:
473 Change to use $(SYSTEM_LIBRARY_DIR) consistently and place
474 $(NEXT_ROOT) in a few spots to make build-root work.
476 2005-11-01 Maciej Stachowiak <mjs@apple.com>
480 <rdar://problem/4324107> get JavaScriptGlue working with TOT JavaScriptCore again
482 - reverted all this stuff to use ReferenceList instead of IdentifierSequencedSet
485 (KJSValueToCFTypeInternal):
486 * JSValueWrapper.cpp:
487 (JSValueWrapper::JSObjectCopyPropertyNames):
489 (UserObjectImp::propList):
492 2005-10-11 Timothy Hatcher <timothy@apple.com>
494 Setup the proper Framework search path for the Default config.
495 Prepping for a TOT submission and build by B&I.
497 * JavaScriptGlue.xcodeproj/project.pbxproj:
499 2005-10-10 Darin Adler <darin@apple.com>
503 - converted tabs to spaces, NULL to 0, added some (void), got rid of __ prefixes
504 in headers (reserved for compiler/library)
515 * JSValueWrapper.cpp:
517 * JavaScriptGlue.cpp:
522 2005-10-10 Darin Adler <darin@apple.com>
524 * .cvsignore: Added. Ignore Makefile.in and Makefile.
526 2005-10-07 Timothy Hatcher <timothy@apple.com>
530 Build fix, needed to disable RTTI. Upgraded to a native target.
532 * JavaScriptGlue.xcodeproj/project.pbxproj:
535 2005-10-05 Maciej Stachowiak <mjs@apple.com>
537 Reviewed by Eric and Darin.
539 <rdar://problem/4260506> Port JavaScriptGlue to TOT JavaScriptCore
543 (JSRun::GlobalObject):
545 (JSInterpreter::JSInterpreter):
547 (KJSValueToJSObject):
549 (KJSValueToCFTypeInternal):
552 * JSValueWrapper.cpp:
553 (JSValueWrapper::JSValueWrapper):
554 (JSValueWrapper::GetValue):
555 (JSValueWrapper::JSObjectCopyPropertyNames):
556 (JSValueWrapper::JSObjectCopyProperty):
557 (JSValueWrapper::JSObjectSetProperty):
558 (JSValueWrapper::JSObjectCallFunction):
559 (JSValueWrapper::JSObjectMark):
561 * JavaScriptGlue.cpp:
562 (JSRunCopyGlobalObject):
563 * JavaScriptGlue.xcodeproj/project.pbxproj:
564 * Makefile.am: Added.
566 (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
567 (UserObjectImp::UserObjectImp):
568 (UserObjectImp::callAsFunction):
569 (UserObjectImp::getPropertyNames):
570 (UserObjectImp::userObjectGetter):
571 (UserObjectImp::getOwnPropertySlot):
572 (UserObjectImp::put):
573 (UserObjectImp::toPrimitive):
574 (UserObjectImp::mark):
576 * kxmlcore/FastMalloc.h: Added.
577 * kxmlcore/HashSet.h: Added.
579 2005-09-14 Maciej Stachowiak <mjs@apple.com>
583 - fixed <rdar://problem/4214783> REGRESSION: kjs_fast_malloc crash due to lack of locking on multiple threads (seen selecting volumes in the installer)
585 Make sure to lock using the InterpreterLock class in all places that need it
586 (including anything that uses the collector, the parser, the protect count hash table,
587 and anything that allocates via fast_malloc).
592 (KJSValueToCFTypeInternal):
594 * JSValueWrapper.cpp:
595 (JSValueWrapper::JSObjectCopyPropertyNames):
596 (JSValueWrapper::JSObjectCopyProperty):
597 (JSValueWrapper::JSObjectSetProperty):
598 (JSValueWrapper::JSObjectCallFunction):
599 (JSValueWrapper::JSObjectCopyCFValue):
600 * JavaScriptGlue.cpp:
603 2005-09-27 Adele Peterson <adele@apple.com>
607 <rdar://problem/4223297> JavaScriptGlue: Submit 64-bit compatible versions of your API and SPIs by September 15
609 * JavaScriptGlue.h: Changed UInt32 to CFTypeID for JSTypeID
611 2005-09-06 Geoffrey Garen <ggaren@apple.com>
613 -upgraded project files to XCode 2.1
615 * JavaScriptGlue.pbproj/project.pbxproj: Removed.
616 * JavaScriptGlue.xcodeproj/.cvsignore: Added.
617 * JavaScriptGlue.xcodeproj/project.pbxproj: Added.
619 2005-09-01 Maciej Stachowiak <mjs@apple.com>
621 Rubber stamped by hyatt.
623 - initial import of JavaScriptGlue into our repository
625 * English.lproj/InfoPlist.strings: Added.
631 (JSBase::RetainCount):
633 (JSBase::CopyDescription):
636 * JSObject.cpp: Added.
637 (JSUserObject::JSUserObject):
638 (JSUserObject::~JSUserObject):
639 (JSUserObject::CopyPropertyNames):
640 (JSUserObject::CopyProperty):
641 (JSUserObject::SetProperty):
642 (JSUserObject::ImplementsCall):
643 (JSUserObject::CallFunction):
644 (JSUserObject::CopyCFValue):
645 (JSUserObject::Equal):
646 (JSUserObject::Mark):
647 (JSUserObject::GetData):
649 (JSUserObject::DataType):
655 (JSRun::GlobalObject):
656 (JSRun::GetInterpreter):
658 (JSRun::CheckSyntax):
660 (JSInterpreter::JSInterpreter):
661 (JSInterpreter::JSInterpreter::~JSInterpreter):
662 (JSInterpreter::Flags):
663 * JSUtils.cpp: Added.
666 (CFStringToIdentifier):
667 (IdentifierToCFString):
668 (KJSValueToJSObject):
670 (KJSValueToCFTypeInternal):
676 * JSValueWrapper.cpp: Added.
677 (JSValueWrapper::JSValueWrapper):
678 (JSValueWrapper::~JSValueWrapper):
679 (JSValueWrapper::GetValue):
680 (JSValueWrapper::GetExecState):
681 (JSValueWrapper::GetJSObectCallBacks):
682 (JSValueWrapper::JSObjectDispose):
683 (JSValueWrapper::JSObjectCopyPropertyNames):
684 (JSValueWrapper::JSObjectCopyProperty):
685 (JSValueWrapper::JSObjectSetProperty):
686 (JSValueWrapper::JSObjectCallFunction):
687 (JSValueWrapper::JSObjectCopyCFValue):
688 (JSValueWrapper::JSObjectMark):
689 * JSValueWrapper.h: Added.
690 * JavaScriptGlue.cpp: Added.
700 (JSObjectCreateInternal):
701 (JSObjectCopyCFValue):
703 (JSObjectCopyProperty):
704 (JSObjectSetProperty):
705 (JSObjectCallFunction):
708 (JSRunCopyGlobalObject):
712 (JSTypeGetCFArrayCallBacks):
715 (JSObjectCreateWithCFType):
717 (JSObjectCopyPropertyNames):
718 (CFJSObjectCopyProperty):
719 (CFJSObjectSetProperty):
720 (CFJSObjectCopyCFValue):
722 (CFJSObjectCopyPropertyNames):
723 (JSCreateCFArrayFromJSArray):
724 (JSCreateJSArrayFromCFArray):
726 (JSUnlockInterpreter):
727 * JavaScriptGlue.exp: Added.
728 * JavaScriptGlue.h: Added.
729 * JavaScriptGlue.pbproj/project.pbxproj: Added.
730 * UserObjectImp.cpp: Added.
731 (UserObjectPrototypeImp::UserObjectPrototypeImp):
732 (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
733 (UserObjectImp::UserObjectImp):
734 (UserObjectImp::~UserObjectImp):
735 (UserObjectImp::classInfo):
736 (UserObjectImp::implementsCall):
737 (UserObjectImp::call):
738 (UserObjectImp::propList):
739 (UserObjectImp::hasProperty):
740 (UserObjectImp::get):
741 (UserObjectImp::put):
742 (UserObjectImp::GetJSUserObject):
743 (UserObjectImp::toPrimitive):
744 (UserObjectImp::toBoolean):
745 (UserObjectImp::toNumber):
746 (UserObjectImp::toString):
747 (UserObjectImp::mark):
748 * UserObjectImp.h: Added.