Re: Introduction + Missing static modifiers

From: Date: Tue, 18 Jun 2013 17:36:02 +0000
Subject: Re: Introduction + Missing static modifiers
References: 1 2 3 4 5 6 7 8  Groups: php.doc 
Request: Send a blank email to phpdoc+get-969384430@lists.php.net to get a copy of this message
On Tue, Jun 18, 2013 at 1:28 PM, Sherif Ramadan <theanomaly.is@gmail.com>wrote: > > > > On Tue, Jun 18, 2013 at 1:23 PM, Jeff Welch <whatthejeff@gmail.com> wrote: > >> On Jun 18, 2013, at 1:13 PM, Sherif Ramadan <theanomaly.is@gmail.com> >> wrote: >> >> On Mon, Jun 17, 2013 at 12:50 PM, Jeff Welch <whatthejeff@gmail.com>wrote: >> >>> On Sun, Jun 16, 2013 at 6:51 PM, Jeff Welch <whatthejeff@gmail.com>wrote: >>> >>>> On Sun, Jun 16, 2013 at 10:57 AM, Jeff Welch <whatthejeff@gmail.com>wrote: >>>> >>>>> On Sun, Jun 16, 2013 at 4:36 AM, Sherif Ramadan < >>>>> theanomaly.is@gmail.com> wrote: >>>>> >>>>>> >>>>>> On Sun, Jun 16, 2013 at 3:40 AM, Jeff Welch >>>>>> <whatthejeff@gmail.com>wrote: >>>>>> >>>>>>> Hi, all :) >>>>>>> >>>>>>> My name is Jeff Welch and I'm one of the maintainers of the >>>>>>> PHPUnit >>>>>>> project. While investigating a PHPUnit issue ( >>>>>>> >>>>>>> https://github.com/sebastianbergmann/phpunit-mock-objects/issues/130+S1$OoŽ >>>>>>> øF\°=) >>>>>>> this past friday, I noticed that the PHP documentation is missing the >>>>>>> static modifier for a number of methods. I've created a patch ( >>>>>>> >>>>>>> https://gist.github.com/whatthejeff/5790970) that adds the missing >>>>>>> modifier for the following methods: >>>>>>> >>>>>>> * MessageFormatter::create >>>>>>> * MessageFormatter::formatMessage >>>>>>> * MessageFormatter::parseMessage >>>>>>> * mysqli::poll >>>>>>> * Phar::apiVersion >>>>>>> * Phar::canCompress >>>>>>> * Phar::canWrite >>>>>>> * Phar::createDefaultStub >>>>>>> * Phar::getSupportedCompression >>>>>>> * Phar::getSupportedSignatures >>>>>>> * Phar::interceptFileFuncs >>>>>>> * Phar::isValidPharFilename >>>>>>> * Phar::loadPhar >>>>>>> * Phar::mapPhar >>>>>>> * Phar::running >>>>>>> * Phar::mount >>>>>>> * Phar::mungServer >>>>>>> * Phar::unlinkArchive >>>>>>> * Phar::webPhar >>>>>>> * SQLite3::version >>>>>>> * SQLite3::escapeString >>>>>>> >>>>>>> Anyway, it would be nice to get VCS access so I don't have to jump >>>>>>> through too many hoops for future contributions. >>>>>>> >>>>>>> PS: I've heard a love for cats will get you far with this list, so >>>>>>> I >>>>>>> submit to you my cat-related open source contributions: >>>>>>> >>>>>>> * >>>>>>> https://github.com/whatthejeff/nyancat-phpunit-resultprinter >>>>>>> * >>>>>>> https://github.com/phpspec/phpspec/pull/133 >>>>>>> * >>>>>>> https://github.com/whatthejeff/nyancat-scoreboard >>>>>>> >>>>>>> >>>>>> >>>>>> Hey you cheated. There was a dinosaur in there! >>>>>> >>>>>> Looks OK, but I suspect that it would be even better to add the >>>>>> visibility modifiers as long as you're adding the access modifiers. >>>>>> >>>>> >>>>> I can agree to this. >>>>> >>>>> >>>>>> The documentation is currently wishy-washy about having those for all >>>>>> of the classes. Some have just the access and others have both visibility >>>>>> and access. If you'd be willing to help fix the rest that would be >>>>>> awesome >>>>>> >>>>> >>>>> I don't mind adding the missing visibility modifiers. >>>>> >>>> >>>> Alright, I've updated the patch ( >>>> https://gist.github.com/whatthejeff/5790970) to >>>> include visibility >>>> modifiers. For the most part I only worked on core classes as I don't have >>>> time to go through all the available PECL classes. I can't guarantee that I >>>> caught them all, but I did my best :) >>>> >>> >>> I realize this diff will be very time consuming to verify manually, so >>> I've added a script that parses the modifiers from my diff and verifies >>> them through reflection. >>> >>> You can find the script here: >>> >>> https://gist.github.com/whatthejeff/5790970#file-test-missing-modifiers-php >>> And the output here: >>> https://gist.github.com/whatthejeff/5790970#file-output >>> >>> Hopefully this helps :) >>> >>> >>>> >>>>> >>>>>> and I'm sure the cats will give you bonus points for your VCS account. >>>>>> >>>>>> You also might want to take a look at y >>>>>> Ú°w°‚Ï1(³¬Ý}https://edit.php.net >>>>>> >>>>> >>>>> Yeah, I looked into that, but it's also nice to use shell tools for >>>>> making mass changes. For instance, I found all the missing static modifiers >>>>> and patched the documentation using grep/awk/sed. >>>>> >>>>> >>>>>> If no one has any objections I'll go ahead and apply your patch later >>>>>> tonight. I admit I didn't look it over that thoroughly. >>>>>> >>>>> >>>>> I can tell you that I compiled all the sources and manually verified >>>>> that the changed pages look as expected. We use DocBook for PHPUnit's >>>>> documentation, so I have a decent amount of experience with this toolchain. >>>>> >>>>> >>>>>> >>>>>> >>>>>>> Thanks, >>>>>>> >>>>>>> - Jeff >>>>>>> >>>>>> >>>>>> >>>>> >>>> >>> >> >> Wow, this patch is huge and scary. Maybe we should give you a CVS account >> so that you can patch it yourself? :P >> >> >> Actually, I cheated and asked Sebastian Bergmann to patch it for me last >> night: >> >> > That would explain why svn is telling me the patch failed when I tried to > run it through patch this morning :) I didn't update from trunk apparently. > > Good job. 999999 more patches like this and you get a free t-shirt! > Sounds like a worthwhile investment :) > > >> >> https://svn.php.net/viewvc?limit_changes=0&view=revision&revision=330543 >> >> I wouldn't mind having a CVS account, though :P >> >> - Jeff >> > >

« previous php.doc (#969384430) next »