Skip to content

Instantly share code, notes, and snippets.

@auroraeosrose
Created February 26, 2015 16:36
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save auroraeosrose/d038ec0f9fc82985fe06 to your computer and use it in GitHub Desktop.
Save auroraeosrose/d038ec0f9fc82985fe06 to your computer and use it in GitHub Desktop.
Go PHP7(ext) - What we're doing

A quick snapshot of what is going on with the project - for the tl;dr see "what can I do?"

What is complete

  1. A name- GoPHP7 is a project (not yet really started) to motivate people to migrate to PHP7 when it's released. This echoes the GoPHP5 project of the past
  2. An irc channel - registered on freenode - owner auroraeosrose, ops lornajane, ircmaxell and joepferguson
  3. A set of goals - see http://goo.gl/BJ3s8D

What is in process

  1. Getting "adminy" stuff set up (lornajane is in charge) - This will include website, wikis, twitter, whatever, and other tools
  2. Recruitment (auroraeosrose and all of you!) - Getting people interested in helping
  3. Vagrant boxes to help with quick development setup (joepferguson is in charge) - besides using rasmus's excellent php7 box https://atlas.hashicorp.com/rasmus/boxes/php7dev we'll also need windows boxes, and possibly some different virtual backends (parallels, hyper-v, vmware) for the php7dev box beyond virtualbox

What else needs to be done

  1. Identify extensions in core, pecl (hosted by php.net), pecl (elsewhere), and other places - get their location, maintainers, 5.6 and 7 compat, tests and doc statuses
  2. Brain dump docs for people wanting to help improve an extensions documentation, test, or 5.6/7 compat status
  3. Write more documentation for new extension devs to use, things like best practices, setups for testing on travis/appveyor, how to get windows extensions compiling, etc
  4. Work on "new" best practices for php7 - namespacing extensions, proper api design, code layout and standards, so that extensions are nice and clean (think PSR's for extensions - optional but makes life awesome)
  5. Work with composer and pickle folks (https://github.com/FriendsOfPHP/pickle) so that installation with composer/pickle is even better than with pear/pecl
  6. Have a packagist like place to list all these disparate extensions (pecl has license restrictions, for example) - maybe even packagist itself
  7. Create places to have binary compiles for systems - ubuntu/debian ppas, homebrew stuff, etc so that getting binary/easily compiling versions on a system is something all extensions can have with minimal work

What can I do to start?

  1. Create a gist of the extensions you really care about - that you use, that you WANT to use, and find out information about where it is (source) if it's on pecl, status, etc - keep it around until we're ready to stick it in the "big list"
  2. Set up a php7 compile somewhere to test on, you can wait for the vagrants but you may have something you're already used to, and esoteric operating systems (yes you freebsd) are not necessarily a bad thing
  3. Take a look at http://qa.php.net and learn to write .phpt tests (they're really easy)
  4. Take a look at http://doc.php.net/ to learn how to write php.net documentation
  5. Take a look at readthedocs.org to learn how to create offsite documentation
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment