* THANKS: Demangled.
[WebKit-https.git] / JavaScriptCore / ChangeLog
1 2002-05-28  Maciej Stachowiak  <mjs@apple.com>
2
3         * THANKS: Demangled.
4
5 === Alexander-7 ===
6
7 2002-05-24  Maciej Stachowiak  <mjs@apple.com>
8
9         Added license and acknowledgements.
10
11         * AUTHORS: Added.
12         * COPYING.LIB: Added.
13         * THANKS: Added.
14
15 === 0.3 ===
16
17 === Alexander-6 ===
18
19 === Alexander-5 ===
20
21 === Alexander-4 ===
22
23 === JavaScriptCore-5 ===
24
25 2002-05-21  Maciej Stachowiak  <mjs@apple.com>
26
27         Reviewed by: Richard Williamson
28
29         Fixed Radar 2928775 - Sherlock crashes sitting in stocks channel
30
31         * kjs/internal.cpp:
32         (InterpreterImp::InterpreterImp): Set the interp pointer earlier,
33         in case garbage collection takes place while creating the global
34         values.
35
36 2002-05-15  Darin Adler  <darin@apple.com>
37
38         Reviewed by: Maciej Stachowiak
39         
40         * Makefile.am:
41         Use all-am and clean-am instead of all and clean because it's better and
42         to make "make check" at the top level work right.
43
44 2002-05-13  Darin Adler  <darin@apple.com>
45
46         Reviewed by: Maciej Stachowiak
47
48         * kjs/value.h: Fix comment typos.
49
50 === JavaScriptCore-4 ===
51
52 2002-05-10  Maciej Stachowiak  <mjs@apple.com>
53
54         Reviewed by: Ken Kocienda and Darin Adler
55
56         Fixed the following bug:
57
58         Radar 2890573 - JavaScriptCore needs to be thread-safe
59
60         Actually this is only a weak form of thread-safety - you can safely
61         use different interpreters from different threads at the same
62         time. If you try to use a single interpreter object from multiple
63         threads, you need to provide your own locking.
64
65         * kjs/collector.h, kjs/collector.cpp:
66         (Collector::lock, Collector::unlock): Trivial implementation of a
67         recursive mutex.
68         (Collector::allocate): Lock around the body of this function.
69         (Collector::collect): Likewise.
70         (Collector::finalCheck): Likewise.
71         (Collector::numInterpreters): Likewise.
72         (Collector::numGCNotAllowedObjects): Likewise.
73         (Collector::numReferencedObjects): Likewise.
74         * kjs/internal.cpp:
75         (Parser::parse): use a mutex to lock around the whole parse, since
76         it uses a bunch of global state.
77         (InterpreterImp::InterpreterImp): Grab the Collector lock here,
78         both the mutually exclude calls to the body of this function, and
79         to protect the s_hook static member which the collector pokes at.
80         (InterpreterImp::clear): Likewise.
81         * kjs/ustring.cpp:
82         (statBufferKeyCleanup, statBufferKeyInit, UString::ascii): Convert
83         use of static variable
84         * kjs/value.cpp:
85         (ValueImp::ValueImp, ValueImp::mark, ValueImp::marked,
86         ValueImp::setGcAllowed): Grab the GC lock around any flag changes.
87
88 === Alexander-3 ===
89
90 2002-05-08  Darin Adler  <darin@apple.com>
91
92         * kjs/collector.h:
93         * kjs/collector.cpp:
94         (Collector::numInterpreters):
95         (Collector::numGCNotAllowedObjects):
96         (Collector::numReferencedObjects):
97         Add three new functions so we can see a bit more about leaking JavaScriptCore.
98
99 2002-05-06  Darin Adler  <darin@apple.com>
100
101         * JavaScriptCorePrefix.h: Added.
102         * JavaScriptCore.pbproj/project.pbxproj: Use PFE precompiling.
103         Also switch from xNDEBUG to NDEBUG.
104
105 === Alexander 0.3c2 (v1) ===
106
107 2002-04-18  Darin Adler  <darin@apple.com>
108
109         * JavaScriptCore.pbproj/project.pbxproj: Oops. Take out -Wstrict-prototypes, put back
110         -Wmissing-prototypes.
111
112 2002-04-18  Darin Adler  <darin@apple.com>
113
114         * JavaScriptCore.pbproj/project.pbxproj: Take out -Wmissing-prototypes
115         because system headers are triggering it when we don't have
116         precompiled headers on.
117
118 2002-04-18  Darin Adler  <darin@apple.com>
119
120         Reviewed by Maciej
121
122         * JavaScriptCore.pbproj/project.pbxproj: Turn on gcc3 and the same set of warnings
123         as in the rest of Labyrinth (see top level ChangeLog for details).
124
125 2002-04-17  Maciej Stachowiak  <mjs@apple.com>
126
127         Reviewed by: Darin Adler  <darin@apple.com>
128
129         * kjs/testkjs.cpp: Don't include <iostream.h> to avoid gcc3
130         warning.
131
132 2002-04-15  Darin Adler  <darin@apple.com>
133
134         Reviwed by: Maciej Stachowiak  <mjs@apple.com>
135
136         * kjs/internal.cpp:
137         * kjs/property_map.cpp:
138         * kjs/ustring.h:
139         Removed some unneeded <config.h> includes so we are more similar
140         to the real KDE sources.
141
142 2002-04-15  Darin Adler  <darin@apple.com>
143
144         Reviwed by: Maciej Stachowiak  <mjs@apple.com>
145
146         Merged changes from KDE 3.0 final and did some build fixes.
147
148         * JavaScriptCore.pbproj/project.pbxproj: Added nodes2string.cpp.
149
150         * kjs/grammar.*: Regenerated.
151         * kjs/*.lut.h: Regenerated.
152
153 2002-04-08  Darin Adler  <darin@apple.com>
154
155         Reviwed by: Maciej Stachowiak  <mjs@apple.com>
156
157         * JavaScriptCore.pbproj/project.pbxproj: Re-added -Wno-format-y2k.
158
159 2002-04-04  Darin Adler  <darin@apple.com>
160
161         * JavaScriptCore.pbproj/project.pbxproj: Add an Unoptimized build
162         style: exactly like Development except without the -O.
163
164 2002-04-03  Darin Adler  <darin@apple.com>
165
166         * kjs/Makefile.am: Gratuitous cleanup.
167
168 2002-04-02  Darin Adler  <darin@apple.com>
169
170         * JavaScriptCore.pbproj/project.pbxproj: Update flags as I did for
171         WebFoundation.
172
173 2002-04-02  Maciej Stachowiak  <mjs@apple.com>
174
175         * JavaScriptCore.pbproj/project.pbxproj: Pass -Wno-format-y2k so
176         the project builds with gcc3.
177         
178         * kjs/nodes.cpp: Avoid including an obsolete header to avoid
179         warning with gcc3.
180
181 2002-04-02  Darin Adler  <darin@apple.com>
182
183         * kjs/property_map.cpp: (PropertyMap::~PropertyMap): Deallocate the
184         map by calling clear so we don't leak the entire map.
185
186 2002-04-02  Darin Adler  <darin@apple.com>
187
188         * kjs/internal.cpp: (InterpreterImp::globalClear): Add code to
189         deallocate and null out emptyList, because once the last interpreter
190         is destroyed there's nothing to keep it from being garbage collected.
191
192 2002-04-01  Darin Adler  <darin@apple.com>
193
194         Got rid of KWQDef.h because it's dangerous to have two files with
195         the same name and different contents.
196
197         * JavaScriptCore.pbproj/project.pbxproj:
198         * kjs/KWQDef.h: Removed.
199         * kjs/ustring.h: Defines unsigned int types inline now.
200
201 2002-03-30  Maciej Stachowiak  <mjs@apple.com>
202
203         Fixed Radar 2891272 (JavaScript crashes loading quicktime.com and
204         apple.com)
205
206         * kjs/object.cpp: (ObjectImp::~ObjectImp): Don't call setGCAlloc
207         on object internals pointed to, because they may have already been
208         collected by the time this object is collected, and in that case
209         we would corrupt the malloc arena.
210
211         * Makefile.am: Make the stamp file depend on all the sources and
212         headers so the framework gets rebuilt properly.
213
214         * JavaScriptCore.pbproj/project.pbxproj: Some random numbers moved
215         around. No idea what I really changed.
216
217 2002-03-30  Darin Adler  <darin@apple.com>
218
219         * kjs/grammar.y: Took out Id tag so we won't constantly need to
220         update grammar.cpp.
221         * kjs/grammar.cpp: Regenerated without Id tag.
222
223         * .cvsignore: Ignore some additional autogenerated files.
224         * kjs/.cvsignore: Ignore some additional autogenerated files.
225
226 2002-03-30  Maciej Stachowiak  <mjs@apple.com>
227
228         * JavaScriptCore.pbproj/project.pbxproj: Install some of the
229         headers.
230
231 2002-03-30  Maciej Stachowiak  <mjs@apple.com>
232
233         Converted JavaScriptCore to build with Project Builder, in
234         preparation for B&I submission.
235
236         * English.lproj/InfoPlist.strings: Added.
237         * JavaScriptCore.pbproj/.cvsignore: Added.
238         * JavaScriptCore.pbproj/project.pbxproj: Added.
239         
240         * .cvsignore: Update the set of ignored things.
241
242         * Makefile.am: Hand off to PB for the main build, but still handle
243         the generated files and the test program.
244
245         * kjs/Makefile.am: Don't build anything except the generated
246         source files.
247
248         * kjs/KWQDef.h, kjs/config.h: Added minimal versions of these
249         files to get kjs to build.
250
251         Check in all the genrated files, since Project Builder isn't up to
252         the task of handling built sources:
253         
254         * kjs/array_object.lut.h: Added.
255         * kjs/date_object.lut.h: Added.
256         * kjs/grammar.cpp: Added.
257         * kjs/grammar.cpp.h: Added.
258         * kjs/grammar.h: Added.
259         * kjs/lexer.lut.h: Added.
260         * kjs/math_object.lut.h: Added.
261         * kjs/number_object.lut.h: Added.
262         * kjs/string_object.lut.h: Added.
263
264         * kjs/.cvsignore: Update set of ignored things.
265
266 2002-03-28  Maciej Stachowiak  <mjs@apple.com>
267
268         * kjs/kjs-test.chk: Update output for new test results.
269
270 2002-03-26  Maciej Stachowiak  <mjs@apple.com>
271
272         Set up kjs to build by itself into libJavaScriptCore.dylib.
273         
274         * .cvsignore: Added.
275         * Makefile.am: Added.
276         * dummy.cpp: Added.
277         * kjs/.cvsignore: Added.