Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 508 lines (325 sloc) 13.52 kb
8634b74 initial import into fresh git repo.
pad authored
1 -*- org -*-
2
a94b617 @aryx * changes.txt:
aryx authored
3 * 0.21 (Q3 2012) (codegraph)
4
aa240ef @aryx * changes.txt:
aryx authored
5 ** introduce codegraph, a hierarchical matrix-based dependency visualizer
6 with support for PHP, OCaml, C, and Java.
8863809 @aryx lang_c: skeleton dirs and files
aryx authored
7
aa240ef @aryx * changes.txt:
aryx authored
8 ** introduce lang_c/
8863809 @aryx lang_c: skeleton dirs and files
aryx authored
9 a simplified version of lang_cpp/ just focused on C.
aa240ef @aryx * changes.txt:
aryx authored
10 Also added graph_code_c.ml.
a94b617 @aryx * changes.txt:
aryx authored
11
aa240ef @aryx * changes.txt:
aryx authored
12 ** improve lang_java/, support for generics, annotations, and other recent
13 Java features.
14 Also added graph_code_java.ml.
15
16 ** scheck
17
18 *** new variable checker using ast_php_simple.ml
19 far less false positives
20
21 * 0.20 (Q2 2012) (luisa)
af18dec @aryx codegraph: skeleton files
aryx authored
22
db32d39 @aryx * changes.txt:
aryx authored
23 ** introduce graph_code.ml, another way to represent a full program
15128f1 @aryx * changes.txt:
aryx authored
24 futur backend of codegraph
db32d39 @aryx * changes.txt:
aryx authored
25
af18dec @aryx codegraph: skeleton files
aryx authored
26 ** sgrep:
27
28 *** metavariables for XHP attributes
2f7f620 @aryx * changes.txt: misc
aryx authored
29
aa240ef @aryx * changes.txt:
aryx authored
30 ** internals
31
32 *** improve ast_php_simple.ml
33 good basis then for graph_code_php.ml, new, check_variables_php.ml, etc.
34
e41686d @aryx * changes.txt: 0.20
aryx authored
35 * 0.19 (Q1 2012) (pfff_logger)
fc28b66 @aryx introduce lang_opa/
aryx authored
36
6ce8eb2 @aryx * main_codemap.ml: use of the logger
aryx authored
37 ** introduce pfff_logger (in OPA), monitoring the use of pfff tools
0c57fe0 @aryx * changes.txt: misc
aryx authored
38 (please rerun ./configure if you have compilation pbs)
6ce8eb2 @aryx * main_codemap.ml: use of the logger
aryx authored
39
e41686d @aryx * changes.txt: 0.20
aryx authored
40 ** introduce lang_opa
41 basic support
42
8b764ba @aryx * changes.txt: misc
aryx authored
43 ** introduce type inference for PHP (julien)
44
51edd34 @aryx sgrep: allow metavariables for XHP tags
aryx authored
45 ** sgrep:
46
47 *** case insensitive mode by default
48
49 *** metavariables for XHP tags
c0c9a4f @aryx sgrep/spatch: be case insensitive by default
aryx authored
50
e5b8edb @aryx * changes.txt: misc
aryx authored
51 ** internals
52
e41686d @aryx * changes.txt: 0.20
aryx authored
53 *** heavily commented abstract interpreter and type inference
54
51edd34 @aryx sgrep: allow metavariables for XHP tags
aryx authored
55 *** refactored lang_php/analysis/
56 less error messages, progress meter, split files, each PHP database
57 has its own file, refactored abstract interpreter, etc.
e5b8edb @aryx * changes.txt: misc
aryx authored
58
2f7f620 @aryx * changes.txt: misc
aryx authored
59 * -----------------------------------------------------------
60
8506ad2 @aryx * changes.txt:
aryx authored
61 * 0.18 (Q4 2011) (codequery)
719929f @aryx * changes.txt: misc
aryx authored
62
7e7e2c9 @aryx * changes.txt: misc
aryx authored
63 ** introduce codequery, an interactive Prolog-based code query engine,
4dd89f1 @aryx * h_program-lang/database_code.pl:
aryx authored
64 especially useful to query inheritance information.
8a46dd7 @aryx * lang_php/analyze/foundation/database_prolog_php.ml: new file
aryx authored
65
c062ac9 @aryx * changes.txt: misc
aryx authored
66 ** introduce simplified AST for PHP (julien)
67
68 ** introduce abstract interpreter for PHP (julien)
7e7e2c9 @aryx * changes.txt: misc
aryx authored
69 which leads to a more precise callgraph, type information,
70 and opens the way for many more checks (including security checks
71 using tainting analysis).
72
31e74b3 @aryx * changes.txt: scheck v2
aryx authored
73 ** scheck: lots of new checks, and removed lots of false positives
9baabf8 @aryx * changes.txt: misc
aryx authored
74 while still being reasonably fast, thanks to the use of a lazy entity finder.
31e74b3 @aryx * changes.txt: scheck v2
aryx authored
75
b016375 @aryx * changes.txt:
aryx authored
76 ** spatch
77
78 *** leverage pretty printer so can reindent correctly the code
330c907 @aryx * lang_php/analyze/foundation/ast_php_simple.ml: open source
aryx authored
79 after some transformation. Thx to julien.
80 spatch --pretty-printer.
4dd89f1 @aryx * h_program-lang/database_code.pl:
aryx authored
81
fc55dcd @aryx added documentation about swi prolog dependencies
aryx authored
82 *** a "sed mode" so can do spatch -e 's/foo(X,Y)/foo(X)/' *.php
b016375 @aryx * changes.txt:
aryx authored
83
9baabf8 @aryx * changes.txt: misc
aryx authored
84 ** lang_ml, more highlight
85 so can parse julien's code which heavily use modules.
4dd89f1 @aryx * h_program-lang/database_code.pl:
aryx authored
86
fc55dcd @aryx added documentation about swi prolog dependencies
aryx authored
87 ** lang_cpp, better parsing
88
330c907 @aryx * lang_php/analyze/foundation/ast_php_simple.ml: open source
aryx authored
89 ** internals
90
91 *** removed lots of dead code now that commited to use the abstract interpreter
abe2505 @aryx * changes.txt: misc
aryx authored
92 (and prolog) instead of a PIL+cflow+dataflow+db+...
330c907 @aryx * lang_php/analyze/foundation/ast_php_simple.ml: open source
aryx authored
93
2f7f620 @aryx * changes.txt: misc
aryx authored
94 *** refacrored lang_php/analysis, get rid of directories
95
96 * 0.17 (Q3 2011) (overlay, pm_depend)
719929f @aryx * changes.txt: misc
aryx authored
97
adc5134 @aryx * changes.txt: more stuff
aryx authored
98 ** introduce notion of code overlay
99 with some helper functions to check the validity of an overlay.
100 Also added some support for overlay in codemap.
101
9baabf8 @aryx * changes.txt: misc
aryx authored
102 Overlays help organize and visualize a (bad) codebase from a different point
adc5134 @aryx * changes.txt: more stuff
aryx authored
103 of view.
104
5f2a9bc @aryx * changes.txt: refresh
aryx authored
105 ** introduce pm_depend
2f7f620 @aryx * changes.txt: misc
aryx authored
106 a package/module dependency visualizer exporting data for Gephi
5f2a9bc @aryx * changes.txt: refresh
aryx authored
107 (only for ocaml code for now). Played with it on the code of pfff
108 (in package mode) and some of its components: codemap, cpp, php, cmf
109 (in module mode with and without extern mode).
110
aa240ef @aryx * changes.txt:
aryx authored
111 update: superseded by codegraph
112
adc5134 @aryx * changes.txt: more stuff
aryx authored
113 ** started port of codemap to ocsigen
114 can now display the treemap. Had to report many bugs to the ocsigen team
115 to get this to work.
116
aa240ef @aryx * changes.txt:
aryx authored
117 update: staled
118
5f2a9bc @aryx * changes.txt: refresh
aryx authored
119 ** sgrep: support for regexp when matching string constants
120
9395b45 @aryx * changes.txt:
aryx authored
121 * 0.16 (Q2 2011) (c++ parser)
5998b6e @aryx changes.txt: new version
aryx authored
122
123 ** better C++ parser
adc5134 @aryx * changes.txt: more stuff
aryx authored
124 complete refactoring of the parser. Far less heuristics techniques.
125 Closer to what was described in the CC'09 paper.
5998b6e @aryx changes.txt: new version
aryx authored
126
9395b45 @aryx * changes.txt:
aryx authored
127 * 0.15 (Q1 2011) (html/css parsers, ocsigen)
b0e247c @aryx introduce 0.15 beta1
aryx authored
128
adc5134 @aryx * changes.txt: more stuff
aryx authored
129 ** introduce web-based source code navigator a la LXR using ocsigen
130 first play with ocsigen.
b0e247c @aryx introduce 0.15 beta1
aryx authored
131
aa240ef @aryx * changes.txt:
aryx authored
132 update: not used
133
adc5134 @aryx * changes.txt: more stuff
aryx authored
134 ** introduce lang_html/ with clean ast_html.ml type
135 (also using code from a stripped down version of ocamlnet)
b0e247c @aryx introduce 0.15 beta1
aryx authored
136
bbb817a @aryx changes.txt: note on lang_css/
aryx authored
137 ** introduce lang_css/
138 (using code from ccss by dario teixeira)
139
4b172db @aryx * changes.txt: more
aryx authored
140 ** introduce lang_web/ with combined html+js+css parser
141
2f7f620 @aryx * changes.txt: misc
aryx authored
142 * -----------------------------------------------------------
143
144 * 0.14 (Q4 2010) (layers, spatch, more language highlighters)
9919d5b adding lang_java/ to help visualize java code
pad authored
145
f22971e lang_python: -parse_python mostly working on webpy/ source
pad authored
146 ** codemap
f456e0e changes.txt: misc
pad authored
147
5f2a9bc @aryx * changes.txt: refresh
aryx authored
148 *** layer type, so can save results of global analysis and process them
149 later in codemap or pfff_statistics
150
151 *** layers! like in google earth
6cfc865 changes.txt: misc
pad authored
152
6631d25 @aryx changes.txt: added some dates
aryx authored
153 - architecture/aspect layer (default one)
bc4335b changes.txt: misc
pad authored
154 - static dead code layer
5f2a9bc @aryx * changes.txt: refresh
aryx authored
155 - dead: dynamic live code layer (using xhprof data)
579c96c add layer for coverage!
pad authored
156 - test coverage layer (using phpunit and xdebug data)
5f2a9bc @aryx * changes.txt: refresh
aryx authored
157 -
bc4335b changes.txt: misc
pad authored
158 - bugs layer
89cd527 bugfix in php highlighter
pad authored
159 - security layer
6cc7e88 layer cyclomatic complexity
pad authored
160 - cyclomatic complexity,
6631d25 @aryx changes.txt: added some dates
aryx authored
161 - age (and activity) layer
162 - number of authors layer
c635ef6 changes.txt: misc
pad authored
163
66c4e09 @aryx changes.txt: misc
aryx authored
164 *** more semantic visual feedback
165 can see arguments passed by refs visually (TakeArgNByRef)
166 as well as functions containing dynamic calls (ContainDynamicCall)
167
f456e0e changes.txt: misc
pad authored
168 *** visual grep
66c4e09 @aryx changes.txt: misc
aryx authored
169 can now visualize the result of a git grep on a project
f456e0e changes.txt: misc
pad authored
170
7cdb78b visual: try different fonts. Also double the spaces when displaying code...
pad authored
171 *** better visualization of directories
f22971e lang_python: -parse_python mostly working on webpy/ source
pad authored
172 use different color for dirs and files labels, and highlight first
7cdb78b visual: try different fonts. Also double the spaces when displaying code...
pad authored
173 letter of label at depth = 1
c635ef6 changes.txt: misc
pad authored
174
5f2a9bc @aryx * changes.txt: refresh
aryx authored
175
6cfc865 changes.txt: misc
pad authored
176 ** introduce spatch, a syntactical patch
177 a DSL to express easily refactoring on PHP.
178
179 ** sgrep/spatch
66c4e09 @aryx changes.txt: misc
aryx authored
180
181 *** better support for XHP patterns with flexible matching
6cfc865 changes.txt: misc
pad authored
182 on attributes
183
66c4e09 @aryx changes.txt: misc
aryx authored
184 *** experimental support for statement patterns
185 can now express patterns like:
186 sgrep -e 'foreach($A as $V) { if (strpos($T, $V) !== false) { return Z; }}'
187
f22971e lang_python: -parse_python mostly working on webpy/ source
pad authored
188 ** introducing lang_nw/
9919d5b adding lang_java/ to help visualize java code
pad authored
189 so can visualize also Tex/Latex/Noweb source (which includes
190 the documentation of pfff!)
191
f22971e lang_python: -parse_python mostly working on webpy/ source
pad authored
192 ** introducing lang_lisp/
43087e4 changes.txt: misc
pad authored
193
f22971e lang_python: -parse_python mostly working on webpy/ source
pad authored
194 ** introducing lang_haskell/
8ec6744 misc
pad authored
195
f22971e lang_python: -parse_python mostly working on webpy/ source
pad authored
196 ** introducing lang_python/
8ec6744 misc
pad authored
197
8167f7f lang_csharp: basic highlighter integrated in codemap
pad authored
198 ** introducing lang_csharp/
199
66c4e09 @aryx changes.txt: misc
aryx authored
200 ** introducing lang_erlang/
201
aa240ef @aryx * changes.txt:
aryx authored
202 ** introducing lang_java/
203
5f2a9bc @aryx * changes.txt: refresh
aryx authored
204 ** lang_ml
205 more highlight
206
43087e4 changes.txt: misc
pad authored
207 ** php analysis
c635ef6 changes.txt: misc
pad authored
208
aa240ef @aryx * changes.txt:
aryx authored
209 *** finalized the PIL
210 update: superseded by ast_php_simple.ml
d1d6329 changes.txt: misc
pad authored
211
adc5134 @aryx * changes.txt: more stuff
aryx authored
212 *** dead? dataflow analysis using PIL (thanks to iproctor)
aa240ef @aryx * changes.txt:
aryx authored
213 update: supersed by abstract interpreter
43087e4 changes.txt: misc
pad authored
214
42a2572 database_code.ml: more properties
pad authored
215 ** global analysis
216
217 *** store additional attributes/properties per entities in the light code db
d1d6329 changes.txt: misc
pad authored
218 - does it take argument by refs.
219 - does it contain dynamic calls ($fn(...))
220
221 This can help the visualizer to give more semantic visual feedback.
42a2572 database_code.ml: more properties
pad authored
222
43087e4 changes.txt: misc
pad authored
223 ** documentation
f22971e lang_python: -parse_python mostly working on webpy/ source
pad authored
224 wrote wiki pages (intro, sgrep, spatch, features, vision, roadmap, etc)
43087e4 changes.txt: misc
pad authored
225
f22971e lang_python: -parse_python mostly working on webpy/ source
pad authored
226 applied codemap on many open source project and generated screenshots.
9919d5b adding lang_java/ to help visualize java code
pad authored
227
d1d6329 changes.txt: misc
pad authored
228 ** internals
229
66c4e09 @aryx changes.txt: misc
aryx authored
230 *** refactored the code in visual/ to have smaller and cleaner files
231 thanks to literate programming and codemap itself to show the problem
232 and assist in the refactoring
d1d6329 changes.txt: misc
pad authored
233
dc27904 changes.txt: misc
pad authored
234 *** refactored code about defs/uses in defs_uses_php.ml
235 and put more generic stuff in h_program-lang/
236
66c4e09 @aryx changes.txt: misc
aryx authored
237 *** renamed pfff_visual in codemap
f22971e lang_python: -parse_python mostly working on webpy/ source
pad authored
238
adc5134 @aryx * changes.txt: more stuff
aryx authored
239 ** commons/graph.ml
240 a polymorphic wrapper around ocamlgraph
241
242 (to compute strongly connected components of php callgraph, in prevision
243 of a bottom up analysis of php)
244
aa240ef @aryx * changes.txt:
aryx authored
245 update: also useful for codegraph backend.
246
8634b74 initial import into fresh git repo.
pad authored
247 * 0.13
248
43087e4 changes.txt: misc
pad authored
249 first public release!
8634b74 initial import into fresh git repo.
pad authored
250
2f7f620 @aryx * changes.txt: misc
aryx authored
251 * 0.12 (Q3 2010) (codemap, light db, tags, scheck, ocaml support)
8634b74 initial import into fresh git repo.
pad authored
252
253 Real start of multi-language support.
254
255 ** introduce source code navigator/searcher/visualizer using cairo
256
257 Show treemap and thumbnails of file content!
258 Have also minimap, zoom, labels, alpha for overlapping labels,
259 labels in diagonal, anamorphic content showing in bigger fonts
260 the important stuff, magnifying glass, clickable content
261 where a click opens the file in your editor at the right place, etc.
262 => A kind of google maps but on code :)
263
264 Support for PHP, Javascript, ML, C++, C, thrift.
265
266 For PHP do also URL highlighting which helps understand the control flow
267 in webapps.
268 Also highlight local/globals/parameters variables differently.
269 Also highlight bad smells (especially security related bad smells)
270
271 Integrate other PL artifacts:
272 - The builtins API reference
273 - PLEAC cookbooks
274 => a single place to query information about the code
275 (no need to first grep the code, then google for the function
276 because it turns out to be a builtin).
277
278 Can easily go the definition of a function (whether it's a builtin or not,
279 thanks to the parsable PHP manual and HPHP idl files).
280
281 Can easily go to the example of use of a function (whether it's a builtin
282 or not, thanks to PLEAC for the builtin functions).
283
284 Far more flexible and powerful than the previous treemap visualizer
285 which was using Graphics. Now also render file content!
286
5f2a9bc @aryx * changes.txt: refresh
aryx authored
287 ** new tool, stags, a TAG generator using ASTs not fragle regexp
288 support for PHP ocaml
289
adc5134 @aryx * changes.txt: more stuff
aryx authored
290 ** introduce parsing_ml/
291 Allow to use and experiment the treemap code visualizer on the pfff
292 source itself; to see if such features are useful.
8634b74 initial import into fresh git repo.
pad authored
293
294 ** introduce parsing_cpp/
295
296 ** introduce analyze_js/, analyze_cpp/, analyze_ml/
297 very basic support. Just highlighting
298
adc5134 @aryx * changes.txt: more stuff
aryx authored
299 ** introduce database_code.ml, a generic code-information database
300 using JSON as support. Will help make pfff less php-specific.
8634b74 initial import into fresh git repo.
pad authored
301
5f2a9bc @aryx * changes.txt: refresh
aryx authored
302 ** sgrep
303 support linear patterns (e.g. sgrep -e 'X & X')
304 and a -pvar option to print matched metavarables instead of matched code
305
adc5134 @aryx * changes.txt: more stuff
aryx authored
306 ** internals
8634b74 initial import into fresh git repo.
pad authored
307 reorganized the treemap and h_program-lang/ to be less
308 facebook and pfff specific. Have a commons/file_type.ml for instance.
309
310
311 * 0.11
312
5f2a9bc @aryx * changes.txt: refresh
aryx authored
313 ** introduce checker, scheck
8634b74 initial import into fresh git repo.
pad authored
314 warn about "unused variable" and "use of undefined variable".
315
316 use fast global analysis (bonus: it's flib-aware and desugar
317 the require_module_xxx and other flib conventions).
318
319 ** introduce php_etags
320 a more precise TAGS file generator (bonus: it's xhp-aware).
321
322 ** introduce javascript support, parsing_js/
323 parsing/unparsing/dumping.
324 preliminary refactoring support.
325
326 ** introduce builtin XHP support
327
328 ** analysis
329
5f2a9bc @aryx * changes.txt: refresh
aryx authored
330 *** dead? introduce PIL, PHP Intermediate Language
331 a more conveninent AST to work on
8634b74 initial import into fresh git repo.
pad authored
332 for doing complex analysis such as dataflow, type-inference, tainted
333 analysis, etc.
334
5f2a9bc @aryx * changes.txt: refresh
aryx authored
335 *** include/require analysis as well as flib-unsugaring. Make it possible
8634b74 initial import into fresh git repo.
pad authored
336 to grab all the files needed to check one file, in a way similar
337 to what gcc does with cpp. Provide a DFS and BFS algo.
338
2f7f620 @aryx * changes.txt: misc
aryx authored
339 * 0.10 (Q2 2010) (test coverage)
8634b74 initial import into fresh git repo.
pad authored
340
adc5134 @aryx * changes.txt: more stuff
aryx authored
341 ** finish test coverage analysis using xdebug.ml and phpunit.ml
8634b74 initial import into fresh git repo.
pad authored
342 rank, filter, parallelize (using MPI), cronize.
343
5f2a9bc @aryx * changes.txt: refresh
aryx authored
344 ** helpers to write some PHP refactorings
8634b74 initial import into fresh git repo.
pad authored
345 fix parsing (lexer) and unparsing bugs
346
347 introduce the transfo field, mimicing part of coccinelle.
348
349 improve support for XHP and refactoring, merging tokens heuristic.
350
351 ** analysis
352 static method calls analysis (with self/parent special cases handling)
353
354 users_of_class, users_of_define, extenders/implementers of class
355
356 ** parser
adc5134 @aryx * changes.txt: more stuff
aryx authored
357 fix bugs in lexer, now can parse <?= code
8634b74 initial import into fresh git repo.
pad authored
358
359 ** internal
5f2a9bc @aryx * changes.txt: refresh
aryx authored
360
adc5134 @aryx * changes.txt: more stuff
aryx authored
361 *** split analyze_php/ in multiple dirs
362 and moved code from facebook/ to analyze_php/
8634b74 initial import into fresh git repo.
pad authored
363
adc5134 @aryx * changes.txt: more stuff
aryx authored
364 *** started to use OUnit.ml !
8634b74 initial import into fresh git repo.
pad authored
365 unit tests for parsing, analysis, deadcode, callgraph, xdebug
366
367 ** first work on web gui
368 extract and modularize php highlighting logic from gtk gui.
369
370 started integrate treemap and web gui.
371
372 ** first work on thrift interface to pfff services
5f2a9bc @aryx * changes.txt: refresh
aryx authored
373 used by web ui of acrichton
8634b74 initial import into fresh git repo.
pad authored
374
375 ** misc
376 static arrays lint checks
377
adc5134 @aryx * changes.txt: more stuff
aryx authored
378 dead? proto of undeterministic PHP bugs finder using diff and xdebug
8634b74 initial import into fresh git repo.
pad authored
379
380 * 0.9
381
5f2a9bc @aryx * changes.txt: refresh
aryx authored
382 ** phpunit result analysis and parsing
8634b74 initial import into fresh git repo.
pad authored
383
384 ** analysis
385 control flow graph analysis:
386 useful for cyclomatic complexity, and potentially useful or far more
387 things (sgrep, dataflow, etc)
388
adc5134 @aryx * changes.txt: more stuff
aryx authored
389 dead? start of dataflow analysis
8634b74 initial import into fresh git repo.
pad authored
390
391 start of coverage analysis (static and dynamic)
392
393 start of include_require static analysis (and flib file dependencies too)
394
adc5134 @aryx * changes.txt: more stuff
aryx authored
395 dead? start of type unioning
8634b74 initial import into fresh git repo.
pad authored
396
5f2a9bc @aryx * changes.txt: refresh
aryx authored
397 ** dead? introduce compile_php/
398 but for now very rudimentary
399 update: not used for now
8634b74 initial import into fresh git repo.
pad authored
400
401 ** internals
402 reorganized json/sexp output, factorize code and use more ocaml.ml
403
2f7f620 @aryx * changes.txt: misc
aryx authored
404 * 0.8 (Q1 2010) (sgrep, treemap, xdebug dynamic analysis)
8634b74 initial import into fresh git repo.
pad authored
405
adc5134 @aryx * changes.txt: more stuff
aryx authored
406 ** xdebug trace parsing, can now do dynamic analysis!
407 Done for type "inference/extraction" at the beginnning and useful
408 for coverage too!
8634b74 initial import into fresh git repo.
pad authored
409
adc5134 @aryx * changes.txt: more stuff
aryx authored
410 ** dead: GUI, trivial type inference feedback based on xdebug info
411 update: not really used for now, superseded by julien static type inference
8634b74 initial import into fresh git repo.
pad authored
412
413 ** sgrep: introducing $V special metavar
414
adc5134 @aryx * changes.txt: more stuff
aryx authored
415 ** dead? introducing parsing_sql/
8634b74 initial import into fresh git repo.
pad authored
416 could be useful at some point for better type checking or type inference
aa240ef @aryx * changes.txt:
aryx authored
417 update: not used for now
8634b74 initial import into fresh git repo.
pad authored
418
419 * 0.7
420
adc5134 @aryx * changes.txt: more stuff
aryx authored
421 ** dead: introducing ppp, php pre processor, and implement closure
8634b74 initial import into fresh git repo.
pad authored
422 by source-to-source transformation.
423
424 now I can code in PHP :)
425
426 ** improved pretty printer, and helpers for AST transformation
427 with map_php.ml. Used by ppp and closure implemetation.
428
429 ** sgrep:
430 - a -emacs flag
431 - improved -xhp and made it the default operating mode
432
433 ** deadcode:
434 - do fixpoint analysis per file
435
436 * 0.6
437
438 ** introducing sgrep_php
439 a code matcher working at the AST level
440
441 ** introducing treemap viewer using Graphics.mli
71649ab @aryx changes.txt: estet
aryx authored
442 update: superseded by cairo-based viewer (but reused most of the algorithms)
8634b74 initial import into fresh git repo.
pad authored
443
71649ab @aryx changes.txt: estet
aryx authored
444 ** treemap algorithms library and basic literate programming manual
445
adc5134 @aryx * changes.txt: more stuff
aryx authored
446 ** dead? introducing code_rank
447 ref from sebastien bergmann
8634b74 initial import into fresh git repo.
pad authored
448
adc5134 @aryx * changes.txt: more stuff
aryx authored
449 * 0.5
8634b74 initial import into fresh git repo.
pad authored
450
adc5134 @aryx * changes.txt: more stuff
aryx authored
451 ** dead: XHP poor's man support.
452 Just have A new -pp option to give opportunity to call
71649ab @aryx changes.txt: estet
aryx authored
453 a preprocessor (eg 'xhpize -d').
8634b74 initial import into fresh git repo.
pad authored
454
455 ** ffi/meta
456 a new -json option and json support
457
458 also supported in sgrep.
459
460 * 0.4
461
462 ** doc
463 programmer manual for parsing_php/
464 internals manual for parsing_php/
465
466 !!use literate programming method (via noweb/syncweb)!!
467 (hence the special marks in the source)
468
469 ** analysis
470 callgraph for methods (using weak heuristic), with optimisations
471 to scale (partially because use weak heuristic)
472
2f7f620 @aryx * changes.txt: misc
aryx authored
473 * -----------------------------------------------------------
474
475 * 0.3 (Q4 2009) (PHP parser, berkeley db, deadcode)
8634b74 initial import into fresh git repo.
pad authored
476
477 ** analysis
478 deadcode analysis v2, v3, v4
479
480 ** infrastructure
481 IRC support (adapting ocamlirc/)
71649ab @aryx changes.txt: estet
aryx authored
482 update: not used anymore
8634b74 initial import into fresh git repo.
pad authored
483
484 complement git.ml
485
486 * 0.2
487
488 ** analysis
489 deadcode analysis v1
490
491 * 0.1
492
adc5134 @aryx * changes.txt: more stuff
aryx authored
493 ** dead: introducing PHP gui (with ocamlgtk/)
b0e247c @aryx introduce 0.15 beta1
aryx authored
494 update: superseded by codemap, a fancy gui using cairo and gtk
8634b74 initial import into fresh git repo.
pad authored
495
496 * beta
497
498 ** global analysis first draft, PHP database (with ocamlbdb/)
499
6631d25 @aryx changes.txt: added some dates
aryx authored
500 * alpha (Nov 2009)
8634b74 initial import into fresh git repo.
pad authored
501
502 ** PHP parser first draft !
503 reused Zend flex/bison code.
504
505 ** visitor (using ocamltarzan)
506
adc5134 @aryx * changes.txt: more stuff
aryx authored
507 ** AST dumper (also using ocamltarzan and lib-sexp)
Something went wrong with that request. Please try again.