Ensure that debug symbols are generated for x86_64 and ppc64 builds.
[WebKit-https.git] / JavaScriptGlue / ChangeLog
1 2008-04-02  Mark Rowe  <mrowe@apple.com>
2
3         Reviewed by Oliver Hunt.
4
5         Ensure that debug symbols are generated for x86_64 and ppc64 builds.
6
7         * Configurations/Base.xcconfig:
8
9 2008-03-20  Maciej Stachowiak  <mjs@apple.com>
10
11         - fix build
12
13         * ForwardingHeaders/wtf/ListRefPtr.h: Added.
14
15 2008-03-01  Mark Rowe  <mrowe@apple.com>
16
17         Reviewed by Tim Hatcher.
18
19         Update Xcode configuration to support building debug and release from the mysterious future.
20
21         * Configurations/Base.xcconfig:
22         * Configurations/DebugRelease.xcconfig:
23
24 2008-02-29  Geoffrey Garen  <ggaren@apple.com>
25
26         Reviewed by David Harrison.
27         
28         Fixed <rdar://problem/5765063> TOT REGRESSION: Software Update crash in
29         KJS::Collector::collect() (missing JSLock)
30
31         * JSValueWrapper.cpp:
32         (unprotectGlobalObject): Added missing JSLock.
33
34 2008-02-05  Mark Rowe  <mrowe@apple.com>
35
36         Reviewed by Oliver Hunt.
37
38         Update versioning to support the mysterious future.
39
40         * Configurations/Version.xcconfig: Add SYSTEM_VERSION_PREFIX_1060.
41
42 2008-01-28  Eric Seidel  <eric@webkit.org>
43
44         Reviewed by darin.
45         
46         Add icu headers to JSG in preparation for depending on ::UChar.
47
48         * Configurations/Base.xcconfig:
49         * ForwardingHeaders/wtf/unicode: Added.
50         * ForwardingHeaders/wtf/unicode/Unicode.h: Added.
51         * ForwardingHeaders/wtf/unicode/icu: Added.
52         * ForwardingHeaders/wtf/unicode/icu/UnicodeIcu.h: Added.
53         * icu: Copied from ../JavaScriptCore/icu.
54
55 2007-12-19  Geoffrey Garen  <ggaren@apple.com>
56
57         Build fix.
58
59         * ForwardingHeaders/wtf/VectorTraits.h: Added.
60
61 2007-12-10  Timothy Hatcher  <timothy@apple.com>
62
63         Reviewed by Mark Rowe.
64
65         <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x
66
67         * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
68           so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.
69
70 2007-12-04  Geoffrey Garen  <ggaren@apple.com>
71
72         Reviewed by Darin Adler.
73
74         Third step in refactoring JSGlobalObject: Moved data members and data
75         member access from Interpreter to JSGlobalObject. Replaced JSInterpreter
76         subclass with JSGlobalObject subclass.
77         
78         * JSRun.cpp:
79         (JSRun::JSRun):
80         (JSRun::Evaluate):
81         (JSRun::CheckSyntax):
82         * JSRun.h:
83         (JSGlueGlobalObject::JSGlueGlobalObject):
84         * JSUtils.cpp:
85         (KJSValueToCFTypeInternal):
86         * JSValueWrapper.cpp:
87         (getThreadGlobalExecState):
88
89 2007-12-02  Geoffrey Garen  <ggaren@apple.com>
90
91         Reviewed by Eric Seidel.
92
93         Updated to match the JavaScriptCore change to move virtual methods from
94         Interpreter to JSGlobalObject.
95         
96         * JSRun.cpp:
97         * JSRun.h:
98         * JSValueWrapper.cpp:
99         (getThreadGlobalExecState):
100         * JavaScriptGlue.cpp:
101         (JSRunCopyGlobalObject):
102         (JSRunEvaluate):
103
104 2007-11-30  Geoffrey Garen  <ggaren@apple.com>
105
106         Reviewed by Beth Dakin.
107         
108         Modified to follow new JSGlobalObject/Interpreter ownership rules 
109         in JavaScriptCore.
110
111         * JSRun.cpp:
112         (JSRun::JSRun):
113         (JSRun::GetInterpreter):
114         (JSRun::Evaluate):
115         (JSRun::CheckSyntax):
116         * JSRun.h:
117         * JSValueWrapper.cpp:
118         (unprotectGlobalObject):
119         (initializeGlobalObjectKey):
120         (getThreadGlobalExecState):
121
122 2007-11-29  Mark Rowe  <mrowe@apple.com>
123
124         Reviewed by Maciej.
125
126         Fix REGRESSION(r27885): Installer hits assertion failure in JavaScriptGlue.
127
128         * JSValueWrapper.cpp:
129         (getThreadGlobalExecState): Set the global object on the Interpreter before using it.
130
131 2007-11-27  Anders Carlsson  <andersca@apple.com>
132         
133         Build fix.
134         
135         * JSUtils.cpp:
136         (KJSValueToCFTypeInternal):
137         * JSValueWrapper.cpp:
138         (JSValueWrapper::JSObjectCopyPropertyNames):
139
140 2007-11-21  Mark Rowe  <mrowe@apple.com>
141
142         Reviewed by Eric.
143
144         Fix JavaScriptGlue to build without warnings using GCC 4.2.
145
146         * Configurations/Base.xcconfig:
147         * JSRun.h:
148
149 2007-11-17  Mark Rowe  <mrowe@apple.com>
150
151         Reviewed by Darin Adler.
152
153         Fix: <rdar://problem/5607032> REGRESSION: testapi exits with assertion failure in debug build
154              <rdar://problem/5440659> JSGlobalContextCreate throws away globalObjectClass's prototype
155              http://bugs.webkit.org/show_bug.cgi?id=16033
156
157         Update for changes in Interpreter method signatures.
158
159         * JSRun.h:
160
161 2007-11-13  Geoffrey Garen  <ggaren@apple.com>
162
163         Reviewed by Anders Carlsson.
164
165         Renamed Shared to RefCounted.
166
167         * ForwardingHeaders/wtf/RefCounted.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/Shared.h.
168         * ForwardingHeaders/wtf/Shared.h: Removed.
169
170 2007-11-13  Geoffrey Garen  <ggaren@apple.com>
171
172         Reviewed by Sam Weinig.
173
174         Moved Shared.h into wtf so it could be used in more places.
175
176         * ForwardingHeaders/wtf/Shared.h: Added.
177
178 2007-11-08  Mark Rowe  <mrowe@apple.com>
179
180         Build fix.
181
182         * ForwardingHeaders/wtf/MathExtras.h: Copied from WebCore/ForwardingHeaders/wtf/MathExtras.h.
183
184 2007-11-05  Geoffrey Garen  <ggaren@apple.com>
185
186         Build fix.
187
188         * ForwardingHeaders/kjs/value.h: Added.
189
190 2007-11-03  Sam Weinig  <sam@webkit.org>
191
192         Build-fix.
193
194         * UserObjectImp.cpp:
195
196 2007-11-03  David D. Kilzer  <ddkilzer@webkit.org>
197
198         Sort files(...); sections of Xcode project files.
199
200         Rubber-stamped by Darin.
201
202         * JavaScriptGlue.xcodeproj/project.pbxproj:
203
204 2007-10-25  Eric Seidel  <eric@webkit.org>
205
206         Reviewed by Geoff.
207         
208         Make JSG build again after JSGlobalObject change.
209
210         * JSRun.cpp:
211         (JSRun::JSRun):
212         (JSRun::GlobalObject):
213         * JSRun.h:
214         (JSInterpreter::JSInterpreter):
215         * JSUtils.h:
216
217 2007-10-11  Mark Rowe  <mrowe@apple.com>
218
219         Reviewed by Tim Hatcher.
220
221         Fix for <rdar://problem/5488678>.  Disable debugging symbols in production builds for 10.4
222         PowerPC to prevent a huge STABS section from being generated.
223
224         * Configurations/Base.xcconfig:
225
226 2007-10-04  Mark Rowe  <mrowe@apple.com>
227
228         Reviewed by Oliver.
229
230         Switch to default level of debugging symbols to resolve <rdar://problem/5488678>.
231         The "full" level appears to offer no observable benefits even though the documentation
232         suggests it be used for dead code stripping.  This should also decrease link times.
233
234         * Configurations/Base.xcconfig:
235
236 2007-09-03  Mark Rowe  <mrowe@apple.com>
237
238         Reviewed by Tim Hatcher.
239
240         <rdar://problem/5452164> Production build with in symbols directory has no debug info
241
242         Enable debug symbol generation on all build configurations.  Production builds are stripped
243         of symbols by Xcode during deployment post-processing.
244
245         * Configurations/Base.xcconfig:
246         * JavaScriptGlue.xcodeproj/project.pbxproj:
247
248 2007-08-09  Mark Rowe  <mrowe@apple.com>
249
250         Reviewed by Antti.
251
252         <rdar://problem/5400709> Versioning in debug and release builds should include minor and tiny version before +
253
254         * Configurations/Version.xcconfig:
255         * JavaScriptGlue.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between
256         Version.xcconfig and Info.plist explicit to Xcode.
257
258 2007-07-16  Sam Weinig  <sam@webkit.org>
259
260         Reviewed by Oliver.
261
262         Turn off -Wshorten-64-to-32 warning for 64-bit builds.
263
264         * Configurations/Base.xcconfig:
265
266 2007-04-27  Mark Rowe  <mrowe@apple.com>
267
268         Reviewed by Oliver.
269
270         * JavaScriptGlue.xcodeproj/project.pbxproj: Improve dependencies in Xcode project
271         by marking JavaScriptGlue as a dependency of testjsglue.
272
273 2007-03-24  Mark Rowe  <mrowe@apple.com>
274
275         Reviewed by Dave Hyatt.
276
277         * JavaScriptGlue.xcodeproj/project.pbxproj: Use GCC 4.0 for testjsglue.
278
279 2007-03-24  Mark Rowe  <mrowe@apple.com>
280
281         Rubber-stamped by Darin.
282
283         * Configurations/JavaScriptGlue.xcconfig: Remove unnecessary INFOPLIST_PREPROCESS.
284
285 2007-03-19  Andrew Wellington  <proton@wiretapped.net>
286
287         Reviewed by Maciej.
288
289         Really set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
290
291         * JavaScriptGlue.xcodeproj/project.pbxproj:
292
293 2007-03-18  Andrew Wellington  <proton@wiretapped.net>
294
295         Reviewed by Mark Rowe
296         
297         Set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
298
299         * JavaScriptGlue.xcodeproj/project.pbxproj:
300
301 2007-03-17  Timothy Hatcher  <timothy@apple.com>
302
303         Reviewed by Mark Rowe.
304
305         Made Version.xcconfig smarter when building for different configurations.
306         Now uses the 522+ OpenSource version for Debug and Release, while using the    
307         full 522.4 version for Production builds. The system prefix is also computed
308         based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard.
309
310         * Configurations/JavaScriptGlue.xcconfig:
311         * Configurations/Version.xcconfig:
312
313 2007-03-15  Timothy Hatcher  <timothy@apple.com>
314
315         Reviewed by John.
316
317         * Factored out most of our common build settings into .xcconfig files. Anything that was common in
318           each build configuration was factored out into the shared .xcconfig file.
319         * Adds a Version.xcconfig file to define the current framework version, to be used in other places.
320         * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
321         * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
322
323         * Configurations/Base.xcconfig: Added.
324         * Configurations/DebugRelease.xcconfig: Added.
325         * Configurations/JavaScriptGlue.xcconfig: Added.
326         * Configurations/Version.xcconfig: Added.
327         * Info.plist:
328         * JavaScriptGlue.xcodeproj/project.pbxproj:
329
330 === Safari-5522.4 ===
331
332 2007-03-12  Geoffrey Garen  <ggaren@apple.com>
333
334         Reviewed by Oliver Hunt.
335         
336         Updated in light of fix for <rdar://problem/4681051> Installer crashes 
337         in KJS::Collector::markOtherThreadConservatively(KJS::Collector::Thread*) 
338         trying to install iLife 06 using Rosetta on an Intel Machine
339         
340         * JavaScriptGlue.cpp:
341         (JSLockInterpreter): Ensure backwards compatibility by calling 
342         registerThread() when explicitly taking the JSLock. (This doesn't happen 
343         automatically anymore.) I doubt this actally matters, but in JavaScriptGlue
344         territory, that kind of thinking will get you killed.
345
346 2007-03-06  Geoffrey Garen  <ggaren@apple.com>
347
348         Reviewed by Maciej Stachowiak.
349
350         Fixed all known crashers exposed by run-webkit-tests --threaded while using
351         a PAC file (for maximum carnage). See JavaScriptCore ChangeLog for 
352         more details.
353
354         * JSBase.cpp:
355         (JSBase::Release): Lock when deleting, because we may be deleting an object
356         (like a JSRun) that holds thread-unsafe data.
357
358         * JSUtils.cpp:
359         (CFStringToUString): Don't lock, because our caller locks. Also, locking
360         inside a function that returns thread-unsafe data by copy will only mask
361         threading problems.
362
363         * JavaScriptGlue.cpp:
364         (JSRunEvaluate): Added missing JSLock.
365         (JSRunCheckSyntax): Converted to JSLock.
366         * JavaScriptGlue.xcodeproj/project.pbxproj:
367
368 2007-02-22  Geoffrey Garen  <ggaren@apple.com>
369
370         Reviewed by Darin Adler.
371         
372         Fixed <rdar://problem/4942528> Installer.app Stuck "Examining additional 
373         volumes..."
374         
375         The problem was that JavaScriptGlue held a JSObject in a static pointer
376         without protecting it from garbage collection. 
377         
378             sUserObjectPrototypeImp  = new UserObjectPrototypeImp();
379             static ProtectedPtr<UserObjectPrototypeImp> protectPrototype; // valiant, brave, but useless
380
381         Through an interesting comedy of errors, this object would be collected 
382         and then assigned as the prototype of another object allocated at the 
383         same address, thus becoming its own prototype. (See http://www.ziplo.com/grandpa.htm
384         for further explanation of this phenomenon.) Hence the infinte loop in 
385         property lookup.
386         
387         The solution is equally humorous: all of this code was completely useless --
388         it only served to create an empty object in the prototype chain -- so
389         I just removed it.
390
391         * UserObjectImp.cpp:
392         (UserObjectImp::UserObjectImp):
393         * UserObjectImp.h:
394
395 2007-02-19  Timothy Hatcher  <timothy@apple.com>
396
397         Reviewed by Geoff.
398
399         <rdar://problem/4636301> Deprecate JavaScriptGlue
400
401         * JavaScriptGlue.h: adds DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER to everything
402         * JavaScriptGlue.xcodeproj/project.pbxproj: use -Wno-deprecated-declarations to keep the project building
403         * config.h: define DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER as empty on other systems
404
405 2007-02-16  Darin Adler  <darin@apple.com>
406
407         Reviewed by Anders.
408
409         - fix <rdar://problem/5000216> JavaScriptGlue framework started turning all CFNumbers
410           into signed 32bit values
411
412         Circumstantial evidence seems to indicate that JavaScriptGlue was depending on a bug
413         in CFNumber where CFNumberIsFloatType was returning true for 64-bit integer values.
414
415         * JSUtils.cpp: (JSObjectKJSValue): Removed the call to CFNumberIsFloatType in the
416         conversion of numeric values, and always use kCFNumberDoubleType, since double is
417         the internal format of numbers in JavaScriptCore. There's no value to having a
418         separate code path for integers. There's also no reason to check the return value
419         from CFNumberGetValue -- if it returns false it still does the best it can to convert
420         to a double, which is what we want.
421
422         * UserObjectImp.cpp: (UserObjectImp::toString): Removed a similar code path that
423         tried to handle integers separate from double. Instead, always use a double. For
424         compatibility, use a format without a decimal point when CFNumberIsFloatType returns
425         false. Also removed a bogus cast to float; the "%f" format string takes a double,
426         not a float, so all the cast did was cut down on precision.
427
428 2007-01-25  Mark Rowe  <mrowe@apple.com>
429
430         Reviewed by Maciej.
431
432         * Info.plist: Update copyright string.
433
434 2006-12-19  Timothy Hatcher  <timothy@apple.com>
435
436         Reviewed by Darin.
437
438         <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features
439
440         * JavaScriptGlue.xcodeproj/project.pbxproj:
441
442 === Safari-521.26 ===
443
444 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
445
446         Reviewed by Tim H.
447
448         Build fix:  DWARF and -gfull are incompatible with symbol separation.
449
450         * JavaScriptGlue.xcodeproj/project.pbxproj:
451
452 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
453
454         Reviewed by Tim H.
455
456         http://bugs.webkit.org/show_bug.cgi?id=10394
457         Bug 10394: WebKit Release and Production configurations should enable dead code stripping
458
459         * JavaScriptGlue.xcodeproj/project.pbxproj:
460
461 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
462
463         Reviewed by Tim H.
464
465         http://bugs.webkit.org/show_bug.cgi?id=10384
466         Bug 10384: Switch to DWARF for Release configuration
467
468         * JavaScriptGlue.xcodeproj/project.pbxproj:
469
470 2006-08-04  Sam Weinig  <sam.weinig@gmail.com>
471
472         Reviewed by Darin.
473
474         - patch for http://bugs.webkit.org/show_bug.cgi?id=10192
475           Make WebCore (and friends) compile with -Wshorten-64-to-32
476
477           * Adds -Wshorten-64-to-32 flag to Xcode project.
478
479         * JavaScriptGlue.xcodeproj/project.pbxproj:
480
481 2006-08-03  Sam Weinig  <sam.weinig@gmail.com>
482
483         Reviewed by Darin.
484
485         - patch for http://bugs.webkit.org/show_bug.cgi?id=10176
486           Make WebCore compile with -Wundef
487
488           * Adds -Wundef flag to Xcode project
489
490         * JavaScriptGlue.xcodeproj/project.pbxproj:
491
492 2006-07-29  Sam Weinig  <sam.weinig@gmail.com>
493
494         Reviewed by Darin.
495
496         - patch for http://bugs.webkit.org/show_bug.cgi?id=10080
497           Adopt pedantic changes from the Unity project to improve 
498           cross-compiler compatibility
499
500           Changes include:
501           * Turning on gcc warning for missing newline at the end of a source file
502             (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc).
503
504         * JavaScriptGlue.xcodeproj/project.pbxproj:
505
506 === Safari-521.19 ===
507
508 2006-07-19  Geoffrey Garen  <ggaren@apple.com>
509
510         Fixed by Darin & Maciej, reviewed by me.
511         
512         - Fixed <rdar://problem/4638934> Leopard 9A227: Installer crashes right 
513         after LCA and while preparing Installation
514
515         Compile release/production with NDEBUG set, to ensure binary compatibility
516         between JavaScriptGlue and JavaScriptCore. In debug builds, JavaScriptCore 
517         includes an extra debug data member in HashSet.
518         
519         * JavaScriptGlue.xcodeproj/project.pbxproj:
520
521 === Safari-521.18 ===
522
523 2006-07-15  Maciej Stachowiak  <mjs@apple.com>
524
525         Reviewed by Darin.
526
527         - switch property lists to be vector+set of Identifiers instead of list of References
528         
529         * JSUtils.cpp:
530         (KJSValueToCFTypeInternal): updated for JSC SPI changes
531         * JSValueWrapper.cpp:
532         (JSValueWrapper::JSObjectCopyPropertyNames): ditto
533         * UserObjectImp.cpp:
534         (UserObjectImp::getPropertyNames): ditto
535         * UserObjectImp.h:
536
537 === Safari-521.17 ===
538
539 2006-07-14  Geoffrey Garen  <ggaren@apple.com>
540
541         Reviewed by Maciej.
542         
543         - Updated JSInterpreter to work with Interpreter ref-counting in JavaScriptCore.
544
545         (JSInterpreter::JSInterpreter::~JSInterpreter): Now protected to catch
546         manual delete.
547
548 2006-07-12  Anders Carlsson  <acarlsson@apple.com>
549
550         Build fix
551         
552         * JSUtils.cpp:
553         (KJSValueToCFTypeInternal):
554         * JSValueWrapper.cpp:
555         (JSValueWrapper::JSObjectCopyPropertyNames):
556         * UserObjectImp.cpp:
557         (UserObjectImp::getPropertyList):
558         
559 === Safari-521.15 ===
560
561 2006-07-07  Geoffrey Garen  <ggaren@apple.com>
562
563         - build fix
564
565         * JSUtils.cpp:
566         (KJSValueToCFTypeInternal):
567         * JSValueWrapper.cpp:
568         (JSValueWrapper::JSObjectCopyPropertyNames):
569
570 2006-07-03  Geoffrey Garen  <ggaren@apple.com>
571
572         Reviewed by Maciej.
573         
574         * JSRun.cpp:
575         (JSRun::CheckSyntax): Updated to use new checkSyntax syntax in JSC.
576         * JavaScriptGlue.xcodeproj/project.pbxproj:
577
578 === Safari-521.14 ===
579
580 2006-06-28  Timothy Hatcher  <timothy@apple.com>
581
582         Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
583
584         * JavaScriptGlue.xcodeproj/project.pbxproj:
585
586 2006-06-24  David Kilzer  <ddkilzer@kilzer.net>
587
588         Reviewed by Timothy.
589
590         * Info.plist: Fixed copyright to include 2003-2006.
591
592 === JavaScriptGlue-521.13 ===
593         
594 2006-06-20  Geoffrey Garen  <ggaren@apple.com>
595
596         Reviewed by Anders.
597         
598         - Required for JS API: Rename propList to getPropertyList and have it
599         take its target property list by reference so that subclasses can
600         add properties to the list before calling through to their superclasses.
601
602         * JSUtils.cpp:
603         (KJSValueToCFTypeInternal):
604         * JSValueWrapper.cpp:
605         (JSValueWrapper::JSObjectCopyPropertyNames):
606         * UserObjectImp.cpp:
607         (UserObjectImp::getPropertyList):
608         * UserObjectImp.h:
609
610 2006-06-15  Timothy Hatcher  <timothy@apple.com>
611
612         Reviewed by Geoff and Darin.
613         
614         Prefer the DWARF debugging symbols format for use in Xcode 2.3.
615
616         * JavaScriptGlue.xcodeproj/project.pbxproj:
617
618 2006-06-12  Geoffrey Garen  <ggaren@apple.com>
619
620         Reviewed by TimO, Maciej.
621         
622         - JSGlue part of merging InterpreterImp into Interpreter.
623         
624         Since there's now a kjs forwarding header, I moved all forwarding
625         headers into a "ForwardingHeaders" directory, like in WebCore.
626
627         * ForwardingHeaders: Added.
628         * ForwardingHeaders/kjs: Added.
629         * ForwardingHeaders/kjs/ExecState.h: Added.
630         * ForwardingHeaders/wtf: Added.
631         * JavaScriptGlue.xcodeproj/project.pbxproj:
632         * config.h:
633         * wtf: Removed.
634         * wtf/AlwaysInline.h: Removed.
635         * wtf/Assertions.h: Removed.
636         * wtf/FastMalloc.h: Removed.
637         * wtf/Forward.h: Removed.
638         * wtf/HashCountedSet.h: Removed.
639         * wtf/HashSet.h: Removed.
640         * wtf/Noncopyable.h: Removed.
641         * wtf/OwnArrayPtr.h: Removed.
642         * wtf/OwnPtr.h: Removed.
643         * wtf/PassRefPtr.h: Removed.
644         * wtf/Platform.h: Removed.
645         * wtf/RefPtr.h: Removed.
646         * wtf/Vector.h: Removed.
647
648 === JavaScriptGlue-521.10 ===
649
650 2006-05-09  Maciej Stachowiak  <mjs@apple.com>
651
652         Rubber stamped by Anders.
653         
654         - renamed kxmlcore to wtf
655         
656         kxmlcore --> wtf
657         KXMLCore --> WTF
658         KXC --> WTF
659
660         * config.h:
661         * kxmlcore: Removed.
662         * kxmlcore/AlwaysInline.h: Removed.
663         * kxmlcore/Assertions.h: Removed.
664         * kxmlcore/FastMalloc.h: Removed.
665         * kxmlcore/Forward.h: Removed.
666         * kxmlcore/HashCountedSet.h: Removed.
667         * kxmlcore/HashSet.h: Removed.
668         * kxmlcore/Noncopyable.h: Removed.
669         * kxmlcore/OwnArrayPtr.h: Removed.
670         * kxmlcore/OwnPtr.h: Removed.
671         * kxmlcore/PassRefPtr.h: Removed.
672         * kxmlcore/Platform.h: Removed.
673         * kxmlcore/RefPtr.h: Removed.
674         * kxmlcore/Vector.h: Removed.
675         * wtf: Added.
676
677 2006-04-11  Darin Adler  <darin@apple.com>
678
679         - try to fix Windows build
680
681         * kxmlcore/HashForward.h: Removed.
682
683 2006-04-10  Darin Adler  <darin@apple.com>
684
685         Rubber-stamped by John Sullivan.
686
687         - added forwarding headers for the new Forward.h and HashForward.h files
688
689         * kxmlcore/Forward.h: Added.
690         * kxmlcore/HashForward.h: Added.
691
692 2006-04-04  Timothy Hatcher  <timothy@apple.com>
693
694         Reviewed by Darin.
695
696         The Debug and Release frameworks are now built with install paths relative to the build products directory.
697         This removes the need for other projects to build with -framework WebCore and -framework JavaScriptCore. 
698
699         * JavaScriptGlue.xcodeproj/project.pbxproj:
700
701 2006-04-02  Eric Seidel  <eseidel@apple.com>
702
703         Reviewed by andersca.
704
705         Add missing forwarding header.
706
707         * kxmlcore/Vector.h: Added.
708
709 2006-03-31  Geoffrey Garen  <ggaren@apple.com>
710
711         Reviewed by Darin.
712
713         - Fixed <rdar://problem/4430836> JavaScript patch crashing Quartz
714         Composer
715
716         JSValueWrappers used to hold on to the ExecState that pertained at
717         the time of their creation. Since ExecStates are transient, that
718         design was totally bogus, and it would crash once the ExecState had
719         been deallocated.
720
721         Unfortunately, there's no clean solution to this problem, since
722         the JSGlue API has no notion of state. The solution here is to use
723         a shared, global ExecState for the purpose of JSGlue calls. Given
724         the pre-existing limitations in the JSGlue API, this design
725         shouldn't actually introduce any new limitations (see comments in
726         JSValueWrapper.cpp).
727
728         I tested with Quartz Composer and PAC files, neither of which are
729         layout-testable.
730         
731         * JSUtils.cpp:
732         (KJSValueToJSObject):
733         * JSValueWrapper.cpp:
734         (JSValueWrapper::JSValueWrapper):
735         (JSValueWrapper::GetValue):
736         (getProcessGlobalExecState):
737         (JSValueWrapper::JSObjectCopyPropertyNames):
738         (JSValueWrapper::JSObjectCopyProperty):
739         (JSValueWrapper::JSObjectSetProperty):
740         (JSValueWrapper::JSObjectCallFunction):
741         (JSValueWrapper::JSObjectCopyCFValue):
742         * JSValueWrapper.h:
743
744         Also added a test harness file. It was helpful while I was testing,
745         and may come in handy in the future:
746         
747         * JavaScriptGlue.xcodeproj/project.pbxproj:
748         testjsglue.cpp: Added.
749
750 2006-03-28  Darin Adler  <darin@apple.com>
751
752         Reviewed by Geoff.
753
754         - added a build step that checks for init routines
755
756         * JavaScriptGlue.xcodeproj/project.pbxproj: Added a custom build phase that invokes the
757         check-for-global-initializers script.
758
759 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
760
761         Not reviewed, but I noticed these trivial extra changes were needed to avoid
762         breaking the build with my reviewed patch for:
763         
764         http://bugs.webkit.org/show_bug.cgi?id=7387
765         
766         Add config.h, includes of it, and Platform.h forwarding header.
767
768         * JSBase.cpp:
769         * JSObject.cpp:
770         * JSRun.cpp:
771         * JSUtils.cpp:
772         * JSValueWrapper.cpp:
773         * JavaScriptGlue.cpp:
774         * UserObjectImp.cpp:
775         * config.h: Added.
776         * kxmlcore/Platform.h: Added.
777
778 === JavaScriptGlue-521.7 ===
779
780 2006-02-10  Geoffrey Garen  <ggaren@apple.com>
781
782         Reviewed by eric.
783
784         - Fixed build.
785
786         * UserObjectImp.cpp:
787         (UserObjectImp::toPrimitive):
788         * UserObjectImp.h:
789
790 2006-02-03  Timothy Hatcher  <timothy@apple.com>
791
792         Reviewed by Justin.
793
794         Renamed configuration names to Debug, Release and Production.
795
796         * JavaScriptGlue.xcodeproj/project.pbxproj:
797
798 2006-02-01  Darin Adler  <darin@apple.com>
799
800         - added some forwarding headers to make new JavaScriptCore changes work
801
802         * kxmlcore/Assertions.h: Added.
803         * kxmlcore/Noncopyable.h: Added.
804         * kxmlcore/OwnPtr.h: Added.
805         * kxmlcore/OwnArrayPtr.h: Added.
806
807 2006-01-16  Timothy Hatcher  <timothy@apple.com>
808
809         Adding the license header to all files so we can
810         move JavaScriptGlue into the open source repository.
811
812         * LICENSE: Added.
813         * JSBase.cpp: license header added.
814         * JSBase.h: ditto.
815         * JSObject.cpp: ditto.
816         * JSObject.h: ditto.
817         * JSRun.cpp: ditto.
818         * JSRun.h: ditto.
819         * JSUtils.cpp: ditto.
820         * JSUtils.h: ditto.
821         * JSValueWrapper.cpp: ditto.
822         * JSValueWrapper.h: ditto.
823         * JavaScriptGlue.cpp: ditto.
824         * JavaScriptGlue.h: ditto.
825         * UserObjectImp.cpp: ditto.
826         * UserObjectImp.h: ditto.
827
828 2005-12-21  Timothy Hatcher  <timothy@apple.com>
829
830         * JavaScriptGlue.xcodeproj/project.pbxproj:
831           Set tab width to 8, indent width to 4 and uses tabs to false per file.
832
833 2005-12-19  Darin Adler  <darin@apple.com>
834
835         Reviewed by Geoff Garen and Eric Seidel.
836
837         - fix http://bugs.webkit.org/show_bug.cgi?id=4923
838           stop using <ostream> in WebCore, eliminating the <cmath> troubles it causes
839
840         * kxmlcore/AlwaysInline.h: Added.
841
842 2005-12-15  Darin Adler  <darin@apple.com>
843
844         Reviewed by Maciej.
845
846         * JSRun.cpp: (JSRun::Evaluate): Updated for change to Interpreter::evaluate.
847
848 2005-12-15  Darin Adler  <darin@apple.com>
849
850         Reviewed by Tim Hatcher.
851
852         * JavaScriptGlue.xcodeproj/project.pbxproj: Removed some redundant build
853         settings, turned off prebinding explicitly for our Development and
854         Deployment builds, remove .exp file from sources. All "clean-up".
855
856 === Safari-521~5 ===
857
858 2005-12-13  Geoffrey Garen  <ggaren@apple.com>
859
860     - Fixed build after Anders's last checkin to JavaScriptCore.
861     
862         Reviewed by darin.
863
864         * UserObjectImp.cpp:
865         (UserObjectImp::userObjectGetter): Updated to reflect new argument that 
866     getters take (unused here).
867         * UserObjectImp.h:
868
869 2005-12-13  Maciej Stachowiak  <mjs@apple.com>
870
871         Reviewed by Eric.
872
873     - added forwarding header for HashCountedSet
874
875         * kxmlcore/HashCountedSet.h: Added.
876
877 2005-12-10  Darin Adler  <darin@apple.com>
878
879         Rubber stamped by Maciej.
880
881         - updated for KJS class renaming
882
883         * many files and functions
884
885 2005-12-10  Darin Adler  <darin@apple.com>
886
887         Reviewed by Maciej.
888
889         - eliminated the old Undefined(), Null(), Boolean(), Number(), and String()
890
891         Code now uses jsUndefined(), jsNull(), jsBoolean(), jsNumber(), and jsString().
892
893         * JSUtils.cpp:
894         (JSObjectKJSValue):
895         * UserObjectImp.cpp:
896         (UserObjectImp::callAsFunction):
897         (UserObjectImp::toPrimitive):
898
899 2005-12-05  Maciej Stachowiak  <mjs@apple.com>
900
901         - added new forwarding headers
902
903         * kxmlcore/PassRefPtr.h: Added.
904         * kxmlcore/RefPtr.h: Added.
905
906 2005-12-05  Maciej Stachowiak  <mjs@apple.com>
907
908         * kxmlcore/PassRefPtr.h: Added.
909
910 2005-11-26  Maciej Stachowiak  <mjs@apple.com>
911
912         Rubber stamped by Eric.
913
914     - renamed InterpreterLock to JSLock
915
916         * JSUtils.cpp:
917         (CFStringToUString):
918         (JSObjectKJSValue):
919         (KJSValueToCFTypeInternal):
920         * JSValueWrapper.cpp:
921         (JSValueWrapper::JSObjectCopyPropertyNames):
922         (JSValueWrapper::JSObjectCopyProperty):
923         (JSValueWrapper::JSObjectSetProperty):
924         (JSValueWrapper::JSObjectCallFunction):
925         (JSValueWrapper::JSObjectCopyCFValue):
926         * JavaScriptGlue.cpp:
927         (JSRunCreate):
928         (JSCollect):
929         (JSLockInterpreter):
930         (JSUnlockInterpreter):
931         * UserObjectImp.cpp:
932         (UserObjectImp::callAsFunction):
933
934 2005-11-16  Maciej Stachowiak  <mjs@apple.com>
935
936         Reviewed by Geoff.
937
938     Updated to use new API to drop all locks.
939
940         * JavaScriptGlue.cpp:
941         (JSLockInterpreter):
942         (JSUnlockInterpreter):
943         * UserObjectImp.cpp:
944         (UserObjectImp::callAsFunction):
945
946 2005-11-14  Geoffrey Garen  <ggaren@apple.com>
947
948         Reviewed by mjs.
949
950         - Part of the fix for <rdar://problem/4342216> Installer crash in 
951           KJS::ValueImp::marked() when garbage collector runs inside call to 
952           ConstantValues::init()
953           
954         Added locking in JSRunCreate, since JSRun::JSRun constructs an object.
955         
956         * JavaScriptGlue.cpp:
957         (JSRunCreate):
958
959 2005-11-10  Geoffrey Garen  <ggaren@apple.com>
960
961         Reviewed by Maciej.
962
963         - Fixed <rdar://problem/4334445> installer crashed on my 
964           dual g4 450Mhz after clicking language
965
966         - Reversed backwards NULL check.
967         - Inserted guards against NULL fJSUserObject data member.
968         - Cleaned up some style.
969
970         * JSUtils.cpp:
971         (KJSValueToCFTypeInternal):
972         * UserObjectImp.cpp:
973         (UserObjectImp::~UserObjectImp):
974         (UserObjectImp::callAsFunction):
975         (UserObjectImp::userObjectGetter):
976         (UserObjectImp::getOwnPropertySlot):
977         (UserObjectImp::put):
978         (UserObjectImp::mark):
979
980 2005-11-04  Timothy Hatcher  <timothy@apple.com>
981
982         Reviewed by Darin.
983
984         * JavaScriptGlue.xcodeproj/project.pbxproj:
985           Fixed the FRAMEWORK_SEARCH_PATHS to look in the WebKit
986           Frameworks for the Default config.
987
988 2005-11-03  Timothy Hatcher  <timothy@apple.com>
989
990         Reviewed by Darin and Vicki.
991
992         * JavaScriptGlue.xcodeproj/project.pbxproj:
993           Change to use $(SYSTEM_LIBRARY_DIR) consistently and place
994           $(NEXT_ROOT) in a few spots to make build-root work.
995
996 2005-11-01  Maciej Stachowiak  <mjs@apple.com>
997
998     Reviewed by: Eric.
999     
1000         <rdar://problem/4324107> get JavaScriptGlue working with TOT JavaScriptCore again
1001
1002     - reverted all this stuff to use ReferenceList instead of IdentifierSequencedSet
1003
1004         * JSUtils.cpp:
1005         (KJSValueToCFTypeInternal):
1006         * JSValueWrapper.cpp:
1007         (JSValueWrapper::JSObjectCopyPropertyNames):
1008         * UserObjectImp.cpp:
1009         (UserObjectImp::propList):
1010         * UserObjectImp.h:
1011
1012 2005-10-11  Timothy Hatcher  <timothy@apple.com>
1013
1014         Setup the proper Framework search path for the Default config.
1015         Prepping for a TOT submission and build by B&I.
1016
1017         * JavaScriptGlue.xcodeproj/project.pbxproj:
1018
1019 2005-10-10  Darin Adler  <darin@apple.com>
1020
1021         Reviewed by Eric.
1022
1023         - converted tabs to spaces, NULL to 0, added some (void), got rid of __ prefixes
1024           in headers (reserved for compiler/library)
1025
1026         * Info.plist:
1027         * JSBase.cpp:
1028         * JSBase.h:
1029         * JSObject.cpp:
1030         * JSObject.h:
1031         * JSRun.cpp:
1032         * JSRun.h:
1033         * JSUtils.cpp:
1034         * JSUtils.h:
1035         * JSValueWrapper.cpp:
1036         * JSValueWrapper.h:
1037         * JavaScriptGlue.cpp:
1038         * JavaScriptGlue.h:
1039         * UserObjectImp.cpp:
1040         * UserObjectImp.h:
1041
1042 2005-10-10  Darin Adler  <darin@apple.com>
1043
1044         * .cvsignore: Added. Ignore Makefile.in and Makefile.
1045
1046 2005-10-07  Timothy Hatcher  <timothy@apple.com>
1047
1048         Reviewed by Maciej.
1049         
1050         Build fix, needed to disable RTTI. Upgraded to a native target.
1051
1052         * JavaScriptGlue.xcodeproj/project.pbxproj:
1053         * Info.plist
1054
1055 2005-10-05  Maciej Stachowiak  <mjs@apple.com>
1056
1057         Reviewed by Eric and Darin.
1058
1059     <rdar://problem/4260506> Port JavaScriptGlue to TOT JavaScriptCore
1060
1061         * JSRun.cpp:
1062         (JSRun::JSRun):
1063         (JSRun::GlobalObject):
1064         * JSRun.h:
1065         (JSInterpreter::JSInterpreter):
1066         * JSUtils.cpp:
1067         (KJSValueToJSObject):
1068         (JSObjectKJSValue):
1069         (KJSValueToCFTypeInternal):
1070         (KJSValueToCFType):
1071         * JSUtils.h:
1072         * JSValueWrapper.cpp:
1073         (JSValueWrapper::JSValueWrapper):
1074         (JSValueWrapper::GetValue):
1075         (JSValueWrapper::JSObjectCopyPropertyNames):
1076         (JSValueWrapper::JSObjectCopyProperty):
1077         (JSValueWrapper::JSObjectSetProperty):
1078         (JSValueWrapper::JSObjectCallFunction):
1079         (JSValueWrapper::JSObjectMark):
1080         * JSValueWrapper.h:
1081         * JavaScriptGlue.cpp:
1082         (JSRunCopyGlobalObject):
1083         * JavaScriptGlue.xcodeproj/project.pbxproj:
1084         * Makefile.am: Added.
1085         * UserObjectImp.cpp:
1086         (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
1087         (UserObjectImp::UserObjectImp):
1088         (UserObjectImp::callAsFunction):
1089         (UserObjectImp::getPropertyNames):
1090         (UserObjectImp::userObjectGetter):
1091         (UserObjectImp::getOwnPropertySlot):
1092         (UserObjectImp::put):
1093         (UserObjectImp::toPrimitive):
1094         (UserObjectImp::mark):
1095         * UserObjectImp.h:
1096         * kxmlcore/FastMalloc.h: Added.
1097         * kxmlcore/HashSet.h: Added.
1098
1099 2005-09-14  Maciej Stachowiak  <mjs@apple.com>
1100
1101         Reviewed by Geoff.
1102
1103     - fixed <rdar://problem/4214783> REGRESSION: kjs_fast_malloc crash due to lack of locking on multiple threads (seen selecting volumes in the installer)
1104
1105     Make sure to lock using the InterpreterLock class in all places that need it
1106     (including anything that uses the collector, the parser, the protect count hash table,
1107     and anything that allocates via fast_malloc).
1108
1109         * JSUtils.cpp:
1110         (CFStringToUString):
1111         (JSObjectKJSValue):
1112         (KJSValueToCFTypeInternal):
1113         * JSUtils.h:
1114         * JSValueWrapper.cpp:
1115         (JSValueWrapper::JSObjectCopyPropertyNames):
1116         (JSValueWrapper::JSObjectCopyProperty):
1117         (JSValueWrapper::JSObjectSetProperty):
1118         (JSValueWrapper::JSObjectCallFunction):
1119         (JSValueWrapper::JSObjectCopyCFValue):
1120         * JavaScriptGlue.cpp:
1121         (JSCollect):
1122
1123 2005-09-27  Adele Peterson  <adele@apple.com>
1124
1125         Reviewed by Maciej.
1126
1127         <rdar://problem/4223297> JavaScriptGlue: Submit 64-bit compatible versions of your API and SPIs by September 15
1128
1129         * JavaScriptGlue.h: Changed UInt32 to CFTypeID for JSTypeID
1130
1131 2005-09-06  Geoffrey Garen  <ggaren@apple.com>
1132
1133         -upgraded project files to XCode 2.1
1134
1135         * JavaScriptGlue.pbproj/project.pbxproj: Removed.
1136         * JavaScriptGlue.xcodeproj/.cvsignore: Added.
1137         * JavaScriptGlue.xcodeproj/project.pbxproj: Added.
1138
1139 2005-09-01  Maciej Stachowiak  <mjs@apple.com>
1140
1141         Rubber stamped by hyatt.
1142
1143     - initial import of JavaScriptGlue into our repository
1144
1145         * English.lproj/InfoPlist.strings: Added.
1146         * JSBase.cpp: Added.
1147         (JSBase::JSBase):
1148         (JSBase::~JSBase):
1149         (JSBase::Retain):
1150         (JSBase::Release):
1151         (JSBase::RetainCount):
1152         (JSBase::GetTypeID):
1153         (JSBase::CopyDescription):
1154         (JSBase::Equal):
1155         * JSBase.h: Added.
1156         * JSObject.cpp: Added.
1157         (JSUserObject::JSUserObject):
1158         (JSUserObject::~JSUserObject):
1159         (JSUserObject::CopyPropertyNames):
1160         (JSUserObject::CopyProperty):
1161         (JSUserObject::SetProperty):
1162         (JSUserObject::ImplementsCall):
1163         (JSUserObject::CallFunction):
1164         (JSUserObject::CopyCFValue):
1165         (JSUserObject::Equal):
1166         (JSUserObject::Mark):
1167         (JSUserObject::GetData):
1168         * JSObject.h: Added.
1169         (JSUserObject::DataType):
1170         * JSRun.cpp: Added.
1171         (JSRun::JSRun):
1172         (JSRun::~JSRun):
1173         (JSRun::Flags):
1174         (JSRun::GetSource):
1175         (JSRun::GlobalObject):
1176         (JSRun::GetInterpreter):
1177         (JSRun::Evaluate):
1178         (JSRun::CheckSyntax):
1179         * JSRun.h: Added.
1180         (JSInterpreter::JSInterpreter):
1181         (JSInterpreter::JSInterpreter::~JSInterpreter):
1182         (JSInterpreter::Flags):
1183         * JSUtils.cpp: Added.
1184         (CFStringToUString):
1185         (UStringToCFString):
1186         (CFStringToIdentifier):
1187         (IdentifierToCFString):
1188         (KJSValueToJSObject):
1189         (JSObjectKJSValue):
1190         (KJSValueToCFTypeInternal):
1191         (KJSValueToCFType):
1192         (GetCFNull):
1193         * JSUtils.h: Added.
1194         (RetainCFType):
1195         (ReleaseCFType):
1196         * JSValueWrapper.cpp: Added.
1197         (JSValueWrapper::JSValueWrapper):
1198         (JSValueWrapper::~JSValueWrapper):
1199         (JSValueWrapper::GetValue):
1200         (JSValueWrapper::GetExecState):
1201         (JSValueWrapper::GetJSObectCallBacks):
1202         (JSValueWrapper::JSObjectDispose):
1203         (JSValueWrapper::JSObjectCopyPropertyNames):
1204         (JSValueWrapper::JSObjectCopyProperty):
1205         (JSValueWrapper::JSObjectSetProperty):
1206         (JSValueWrapper::JSObjectCallFunction):
1207         (JSValueWrapper::JSObjectCopyCFValue):
1208         (JSValueWrapper::JSObjectMark):
1209         * JSValueWrapper.h: Added.
1210         * JavaScriptGlue.cpp: Added.
1211         (JSSetCFNull):
1212         (JSGetCFNull):
1213         (JSRetain):
1214         (JSRelease):
1215         (JSCopyDescription):
1216         (JSEqual):
1217         (JSGetTypeID):
1218         (JSGetRetainCount):
1219         (JSObjectCreate):
1220         (JSObjectCreateInternal):
1221         (JSObjectCopyCFValue):
1222         (JSObjectGetData):
1223         (JSObjectCopyProperty):
1224         (JSObjectSetProperty):
1225         (JSObjectCallFunction):
1226         (JSRunCreate):
1227         (JSRunCopySource):
1228         (JSRunCopyGlobalObject):
1229         (JSRunEvaluate):
1230         (JSRunCheckSyntax):
1231         (JSCollect):
1232         (JSTypeGetCFArrayCallBacks):
1233         (JSCFRetain):
1234         (JSCFRelease):
1235         (JSObjectCreateWithCFType):
1236         (CFJSObjectDispose):
1237         (JSObjectCopyPropertyNames):
1238         (CFJSObjectCopyProperty):
1239         (CFJSObjectSetProperty):
1240         (CFJSObjectCopyCFValue):
1241         (CFJSObjectEqual):
1242         (CFJSObjectCopyPropertyNames):
1243         (JSCreateCFArrayFromJSArray):
1244         (JSCreateJSArrayFromCFArray):
1245         (JSLockInterpreter):
1246         (JSUnlockInterpreter):
1247         * JavaScriptGlue.exp: Added.
1248         * JavaScriptGlue.h: Added.
1249         * JavaScriptGlue.pbproj/project.pbxproj: Added.
1250         * UserObjectImp.cpp: Added.
1251         (UserObjectPrototypeImp::UserObjectPrototypeImp):
1252         (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
1253         (UserObjectImp::UserObjectImp):
1254         (UserObjectImp::~UserObjectImp):
1255         (UserObjectImp::classInfo):
1256         (UserObjectImp::implementsCall):
1257         (UserObjectImp::call):
1258         (UserObjectImp::propList):
1259         (UserObjectImp::hasProperty):
1260         (UserObjectImp::get):
1261         (UserObjectImp::put):
1262         (UserObjectImp::GetJSUserObject):
1263         (UserObjectImp::toPrimitive):
1264         (UserObjectImp::toBoolean):
1265         (UserObjectImp::toNumber):
1266         (UserObjectImp::toString):
1267         (UserObjectImp::mark):
1268         * UserObjectImp.h: Added.
1269