> -----Original Message----- > From: wikitech-l-boun...@lists.wikimedia.org > [mailto:wikitech-l-boun...@lists.wikimedia.org] On Behalf Of > Domas Mituzas > Sent: 01 March 2010 10:11 > To: Wikimedia developers > Subject: [Wikitech-l] hiphop progress > > Howdy, > > > Most of the code in MediaWiki works just fine with it > (since most of > > it is mundane) but things like dynamically including certain files, > > declaring classes, eval() and so on are all out. > > There're two types of includes in MediaWiki, ones I fixed for > AutoLoader and ones I didn't - HPHP has all classes loaded, > so AutoLoader is redundant. > Generally, every include that just defines classes/functions > is fine with HPHP, it is just some of MediaWiki's startup > logic (Setup/WebStart) that depends on files included in > certain order, so we have to make sure HipHop understands > those includes. > There was some different behavior with file including - in > Zend you can say require("File.php"), and it will try current > script's directory, but if you do require("../File.php") - it will > > We don't have any eval() at the moment, and actually there's > a mode when eval() works, people are just scared too much of it. > We had some double class definitions (depending on whether > certain components are available), as well as double function > definitions ( ProfilerStub vs Profiler ) > > One of major problems is simply still not complete function > set, that we'd need: > > * session - though we could sure work around it by setting up > our own Session abstraction, team at facebook is already busy > implementing full support > * xdiff, mhash - the only two calls to it are from > DiffHistoryBlob - so getting the feature to work is mandatory > for production, not needed for testing :)
Mhash been obsoleted by the hash extension, and HipHop has the hash extension (looking at the src). I think mhash is implemented as a wrapper onto the hash extension for a while. (http://svn.php.net/viewvc?view=revision&revision=269961) assert(hash('adler32', 'foo', true) === mhash(MHASH_ADLER32, 'foo')); Jared _______________________________________________ Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l