Developers: Updates for civix and cv

cv (https://github.com/civicrm/cv) and civix (https://github.com/totten/civix) are Unix/CLI tools for developers. cv provides access to your Civi site on the command line, and civix generates skeletal code for new extensions. We've had a few recent updates to each of these tools, so I wanted to introduce cv more formally and then recap some of recent improvements for each tool.

CiviCRM 4.7.13 and 4.6.23: Been There, Sprinted That

We're pleased to announce availability of CiviCRM v4.7.13 and v4.6.23.

This release was heavily influenced by the contributors from the sprints in Maryland and Edale and benefited from an extended release-candidate period. Combining the efforts of on-site and face-to-face contributions, this release addressed over 100+ JIRA issues and 170+ pull-requests.

Releases: We are what we repeatedly do

At the CiviCons and developer meetings this year, we've had several conversations about release strategy. The topic is a bit abstract -- touching on a web of interrelated issues of technology and scheduling and business-process. I've been searching for a way to explain this topic to people who don't eat and breathe code in CiviCRM's git repos -- an analysis which is a bit simpler and more transcendent.

The best analysis predates us by a few years -- Will Durant attributed the idea to Aristotle's Nicomachean Ethics, paraphrasing:

4.7.13 RC: Shake a tree and see a bug fall out

Good evening. (Or, for folks in America… good afternoon. For folks in Oceania, good morning.) I'm writing from the CiviCRM sprint in Edale (UK), and it’s the height of apple season. In an ordinary year, the local folks here would be shaking the apple trees, getting a bit tipsy on cider, and discovering gravity. But this year, an influx of visitors from around the UK and Europe (and the broader CiviSphere) have come to make this pastoral setting even more beautiful: it’s the land of PR-review and testing.

CiviCRM 4.7.12-rc: Experimental support for PHP 7 / MySQL 5.7

CiviCRM 4.7.x has made significant progress towards supporting PHP 7, MySQL 5.7, and Ubuntu 16.04. I'm pleased to announce the availability of the release-candidate for v4.7.12.

These improvements were made possible with the collaborative efforts of several people and organizations, including Mark Burdett (EFF), Mattias Michaux, Seamus Lee (Australian Greens), the New York State Senate, and the CiviCRM core team (Jitendra Purohit and me).

Announcing CiviCRM 4.6.21 and 4.7.11 Security Release

December 2016: Looking for the 4.7.14 / 4.6.24 release annoucement? Here it is!

The latest release of CiviCRM 4.6 and 4.7 includes security fixes. We recommend upgrading to 4.7.11 or 4.6.21 to ensure the security of your site and data. The latest releases include 9 security fixes and improvements. A number of other non-security issues have also been fixed in the latest releases.

To determine the impact of security fixes and improvements on your system, please review these advisories:

PSA: Please verify PHP extension "mysqli"

To ensure that CiviCRM continues to work with standard, contemporary PHP hosting platforms, a future version may make a subtle change in hosting requirements. We expect this to be mostly seamless; however, we're looking for administrators responsible for sites running a recent CiviCRM (e.g. v4.7+) to spend a few minutes to help ensure a smooth transition.

Q: I'm not too fluent in geek-speak. What should I do?

Forward this to whoever manages your server. If you work with a CiviCRM partner, they may be thinking of you already.

Developers: Extension Testapalooza

Automated tests are important when collaborating with other developers in a large project. Even if you focus your attention on a small piece of the puzzle, your piece depends on other pieces, and others may depend on you. There will be inevitable occasions when a change in one causes an unexpected change or break in another. Automated tests form the first line of defense, providing timely feedback so that problems can be addressed while the material is mentally fresh.

Tip: Share a site profile when seeking help

If you're working on a site with CiviCRM v4.6.5+ and rely on StackExchange, IRC, JIRA, or other community media for support, then you should consider making an anonymized site profile.  You can prepare one with a few clicks and paste it into any support requests.  This will provide a report of key technical details (such as the exact versions of CiviCRM, PHP, MySQL) which may assist others in diagnosing your problem.