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