Skip to content

Commit

Permalink
Merge pull request #1 from civicrm/master
Browse files Browse the repository at this point in the history
Updating Fork with Commits on Base
  • Loading branch information
MiyaNoctem authored Oct 24, 2019
2 parents ec64795 + 97a7308 commit 5fb7a5e
Show file tree
Hide file tree
Showing 5,012 changed files with 289,357 additions and 225,382 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
96 changes: 20 additions & 76 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,76 +1,20 @@
CiviCRM is a community-driven open-source project. It has a small,
full-time "core team" which facilitates development and works on critical
issues. However, many improvements are driven by the active contributors.

This document provides important information about how to contribute.

## Review/Release Process

Releases are developed on a monthly cycle. At the start of the month, the
release-manager will send an invitation to developers who have open PRs,
encouraging them to participate in the release-cycle. Participation
provides a way to exchange feedback with other developers, get PRs merged,
and ensure the next release works -- all with a predictable timeline.

* For a high-level summary of the release process, see the
[Release Management README](https://github.com/civicrm/release-management/blob/master/README.md).
* For an example invitation, see the previous [invitation for the April-May 2016](https://github.com/civicrm/release-management/issues/1).

## Pull-Request Scope

A good pull request (PR) addresses a clearly-defined problem. There should be a detailed description logged in the [issue tracker](http://issues.civicrm.org/). Excellent PRs also increase test coverage. If you are tempted to do additional tweaks or code cleanup outside the scope of that issue, you could make a separate commit and include them in the PR if they are minor & non-controversial, or create a seperate PR if they are more complex.

There is no size limit for PRs as long as they are focused on completely solving a discreet problem. As a practical matter, though, bigger PRs may take longer to review and merge. When possible, split "epic" issues into bite-sized chunks as long as each seperate PR is functionally complete and does not cause merge conflicts with your other PRs. In the latter case, add commits to an existing PR.

## Pull-Request Subject

When filing a pull-request, use a descriptive subject. These are good examples:

* `CRM-12345 - Fix Paypal IPNs when moon is at half-crescent (waxing)`
* `(WIP) CRM-67890 - Refactor SMS callback endpoint`
* `(NFC) CRM_Utils_PDF - Improve docblocks`

A few elements to include:

* **CRM-_XXXXX_** - This is a reference to the [CiviCRM issue tracker](http://issues.civicrm.org/)
(JIRA). A bot will setup crosslinks between JIRA and GitHub.
* **Description** - Provide a brief description of what the pull-request does.
* **(WIP)** - "Work in Progress" - If you are still developing a set of
changes, it may be useful to submit a pull-request and flag it as
`(WIP)`. This allows you to have discussion with other developers and
check test results. Once the change is ready, update the subject line
to remove `(WIP)`.
* **(NFC)** - "Non-Functional Change" - Most patches are designed to
change functionality (e.g. fix an error message or add a new button).
However, some changes are non-functional -- e.g. they cleanup the
code-style, improve the comments, or improve the test-suite.

## Testing

Pull-requests are tested automatically by a build-bot. Key things to know:

* If you are a new contributor, the tests may be placed on hold pending a
cursory review. One of the administrators will post a comment like
`jenkins, ok to test` or `jenkins, add to whitelist`.
* The pull-request will have a colored dot indicating its status:
* **Yellow**: The automated tests are running.
* **Red**: The automated tests have failed.
* **Green**: The automated tests have passed.
* If the automated test fails, click on the red dot to investigate details. Check for information in:
* The initial summary. Ordinarily, this will list test failures and error messages.
* The console output. If the test-suite encountered a significant error (such as a PHP crash),
the key details will only appear in the console.
* Code-style tests are executed first. If the code-style in this patch is inconsistent, the remaining tests will be skipped.
* The primary tests may take 20-120 min to execute. This includes the following suites: `api_v3_AllTests`, `CRM_AllTests`, `Civi\AllTests`, `civicrm-upgrade-test`, and `karma`
* There are a handful of unit tests which are time-sensitive and which fail sporadically. See: https://forum.civicrm.org/index.php?topic=36964.0
* The web test suite (`WebTest_AllTests`) takes several hours to execute. [It runs separately -- after the PR has been merged.](https://test.civicrm.org/job/CiviCRM-WebTest-Matrix/)

For detailed discussion about automated tests, see http://wiki.civicrm.org/confluence/display/CRMDOC/Testing

## Updating a pull-request

During review, there may be some feedback about problems or additional
changes required for acceptance. If you've never updated a pull-request
before, see [Stackoverflow: How to update a pull request](http://stackoverflow.com/questions/9790448/how-to-update-a-pull-request).

When you push the update to the pull-request, the test suite will re-execute.
CiviCRM is a community-driven open-source project. It has a small, full-time
[core team](https://civicrm.org/core-team)
which facilitates development and works on critical issues.
Additionally, a large community of active contributors and
[partner organizations](https://civicrm.org/partners-contributors)
drive much of the development work.

For developers, CiviCRM maintains a comprehensive
[Developer Guide](https://docs.civicrm.org/dev/en/latest).
Topics of particular importance while submitting pull requests include:

* [Contributing to CiviCRM core](https://docs.civicrm.org/dev/en/latest/core/contributing/)
* [Pull requests](https://docs.civicrm.org/dev/en/latest/tools/git/#pr)
* [Git workflow overview](https://docs.civicrm.org/dev/en/latest/tools/git/#contributing)
* [Writing automated tests](https://docs.civicrm.org/dev/en/latest/testing/setup/)
* [Jenkins continuous integration](https://docs.civicrm.org/dev/en/latest/tools/jenkins/)
* [Release Process](https://docs.civicrm.org/dev/en/latest/core/release-process/)
* [Developer Community](https://docs.civicrm.org/dev/en/latest/basics/community/)

CiviCRM thanks you for your contributions and invites you to [log your time spent](https://civicrm.org/contributor-log) so that you (or your organization) may receive public recognition and promotion for your efforts.
19 changes: 19 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
Overview
----------------------------------------
_A brief description of the pull request. Try to keep it non-technical._

Before
----------------------------------------
_The current status. Please provide screenshots or gifs ([LICEcap](http://www.cockos.com/licecap/), [SilentCast](https://github.com/colinkeenan/silentcast)) where appropriate._

After
----------------------------------------
_What has been changed. Please provide screenshots or gifs ([LICEcap](http://www.cockos.com/licecap/), [SilentCast](https://github.com/colinkeenan/silentcast)) where appropriate._

Technical Details
----------------------------------------
_If the PR introduces noteworthy technical changes, please describe them here. Provide code snippets if necessary_

Comments
----------------------------------------
_Anything else you would like the reviewer to note_
20 changes: 5 additions & 15 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,27 +1,16 @@
*~
*.bak
.use-civicrm-setup
/ext/
backdrop/
bower_components
CRM/Case/xml/configuration
CRM/Core/DAO/.listAll.php
CRM/Core/DAO/listAll.php
CRM/Core/I18n/SchemaStructure.php
bin/setup.conf
civicrm-version.php
civicrm-version.txt
civicrm.config.php
install/langs.php
node_modules
packages/.channels
packages/.depdb
packages/.depdblock
packages/.filemap
packages/.lock
packages/.registry
packages/cache
packages/doc
packages/temp
packages/test
settings_location.php
sql/case_sample.mysql
sql/civicrm.mysql
Expand All @@ -32,12 +21,12 @@ sql/civicrm_data.mysql
sql/civicrm_drop.mysql
sql/civicrm_navigation.mysql
sql/civicrm_sample.mysql
templates/CRM/common/version.tpl
tests/phpunit/CiviTest/CiviSeleniumSettings.php
tests/phpunit/CiviTest/civicrm.settings.php
tools/stats/config.php
authors.txt
drupal/
/drupal/
/drupal-8/
WordPress
joomla
packages/
Expand All @@ -54,3 +43,4 @@ civicrm.settings.php
sql/dummy_processor.mysql
distmaker/distmaker.conf
distmaker/out
/tmp
79 changes: 71 additions & 8 deletions .toxic.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,79 @@
"toxicAlert": "<img alt=\"Please: Help save the fish from toxic code\" src=\"https://civicrm.org/sites/civicrm.org/files/HazCode-Please.png\">\n\n(Automated notice) This pull-request modifies {SYMBOLS}. That code has been previously identified as hazardous. For advice on dealing with it, please review [Toxic Code Protocol](http://wiki.civicrm.org/confluence/display/CRM/Toxic+Code+Protocol)."
},
"checks": {
"CRM_Contact_Import_Parser_Contact::import()": "toxicAlert",
"CRM_Core_BAO_Mapping::buildMappingForm()": "toxicAlert",
"CRM_Event_Form_Participant::postProcess()": "toxicAlert",
"CRM_Export_BAO_Export::exportComponents()": "toxicAlert",
"CRM_Member_Form_Membership::postProcess()": "toxicAlert",
"CRM_Contribute_Form_Contribution::postProcess()": "toxicAlert",
"CRM_Activity_BAO_Activity::create()": "toxicAlert",
"CRM_Activity_Form_Activity::preProcess()": "toxicAlert",
"CRM_Case_BAO_Case::getCaseActivity()": "toxicAlert",
"CRM_Case_BAO_Case::mergeCases()": "toxicAlert",
"CRM_Contact_BAO_Contact::formatProfileContactParams()": "toxicAlert",
"CRM_Contact_BAO_ContactTest::testCreateProfileContact()": "toxicAlert",
"CRM_Contact_BAO_Individual::format()": "toxicAlert",
"CRM_Contact_BAO_Query::addHierarchicalElements()": "toxicAlert",
"CRM_Contact_BAO_Relationship::relatedMemberships()": "toxicAlert",
"CRM_Contact_Form_Contact::postProcess()": "toxicAlert",
"CRM_Contact_Import_Form_MapField::buildQuickForm()": "toxicAlert",
"CRM_Contact_Import_Parser::formatCommonData()": "toxicAlert",
"CRM_Contact_Import_Parser::formatContactParameters()": "toxicAlert",
"CRM_Contact_Import_Parser::run()": "toxicAlert",
"CRM_Contact_Import_Parser_Contact::import()": "toxicAlert",
"CRM_Contribute_BAO_Contribution::recordFinancialAccounts()": "toxicAlert",
"CRM_Contribute_BAO_Contribution::transitionComponents()": "toxicAlert",
"CRM_Contribute_BAO_ContributionPage::sendMail()": "toxicAlert",
"CRM_Contribute_BAO_Query::whereClauseSingle()": "toxicAlert",
"CRM_Contribute_Form_Contribution::buildQuickForm()": "toxicAlert",
"CRM_Contribute_Form_Contribution::submit()": "toxicAlert",
"CRM_Contribute_Form_ContributionBase::preProcess()": "toxicAlert",
"CRM_Contribute_Form_ContributionPage_Amount::postProcess()": "toxicAlert",
"CRM_Contribute_Form_Contribution_Confirm::postProcessMembership()": "toxicAlert",
"CRM_Contribute_Form_Contribution_Confirm::processFormSubmission()": "toxicAlert",
"CRM_Contribute_Form_Contribution_Main::buildQuickForm()": "toxicAlert",
"CRM_Contribute_Form_Contribution_Main::formRule()": "toxicAlert",
"CRM_Contribute_Form_Contribution_Main::submit()": "toxicAlert",
"CRM_Contribute_Form_Task_Invoice::printPDF()": "toxicAlert",
"CRM_Contribute_Import_Parser::run()": "toxicAlert",
"CRM_Core_BAO_ActionScheduleTest::setUp()": "toxicAlert",
"CRM_Core_BAO_CustomField::formatCustomField()": "toxicAlert",
"CRM_Core_BAO_CustomGroup::getTree()": "toxicAlert",
"CRM_Core_BAO_Mapping::buildMappingForm()": "toxicAlert",
"CRM_Core_BAO_UFGroup::buildProfile()": "toxicAlert",
"CRM_Core_BAO_UFGroup::getValues()": "toxicAlert",
"CRM_Core_I18n_SchemaStructure::widgets()": "toxicAlert",
"CRM_Core_Permission::getEntityActionPermissions()": "toxicAlert",
"CRM_Core_PseudoConstantTest::testOptionValues()": "toxicAlert",
"CRM_Custom_Form_Field::formRule()": "toxicAlert",
"CRM_Dedupe_Merger::getRowsElementsAndInfo()": "toxicAlert",
"CRM_Dedupe_Merger::moveAllBelongings()": "toxicAlert",
"CRM_Event_Form_ManageEvent_Fee::formRule()": "toxicAlert",
"CRM_Event_Form_Participant::submit()": "toxicAlert",
"CRM_Event_Form_Registration_Confirm::postProcess()": "toxicAlert",
"CRM_Event_BAO_Event::displayProfile()": "toxicAlert",
"CRM_Contribute_Form_Contribution_Confirm::postProcess()": "toxicAlert"
"CRM_Event_Form_Registration_Register::buildQuickForm()": "toxicAlert",
"CRM_Event_Form_Registration_Register::postProcess()": "toxicAlert",
"CRM_Export_BAO_Export::exportComponents()": "toxicAlert",
"CRM_Mailing_BAO_Mailing::compose()": "toxicAlert",
"CRM_Mailing_BAO_Mailing::getRecipients()": "toxicAlert",
"CRM_Mailing_BAO_Mailing::report()": "toxicAlert",
"CRM_Member_Form_Membership::formRule()": "toxicAlert",
"CRM_Member_Form_Membership::submit()": "toxicAlert",
"CRM_PCP_Page_PCPInfo::run()": "toxicAlert",
"CRM_Price_BAO_PriceField::addQuickFormElement()": "toxicAlert",
"CRM_Price_Form_Field::formRule()": "toxicAlert",
"CRM_Profile_Form::buildQuickForm()": "toxicAlert",
"CRM_Profile_Form::postProcess()": "toxicAlert",
"CRM_Profile_Form::preProcess()": "toxicAlert",
"CRM_Profile_Page_Dynamic::run()": "toxicAlert",
"CRM_Report_Form_Contact_Detail::__construct()": "toxicAlert",
"CRM_Report_Form_Contribute_Bookkeeping::__construct()": "toxicAlert",
"CRM_Report_Form_Contribute_Detail::__construct()": "toxicAlert",
"CRM_Report_Form_Event_ParticipantListing::__construct()": "toxicAlert",
"CRM_Report_Form_Member_ContributionDetail::__construct()": "toxicAlert",
"CRM_UF_Form_Field::buildQuickForm()": "toxicAlert",
"CRM_Upgrade_Incremental_php_FourThree::createFinancialRecords()": "toxicAlert",
"CRM_Utils_Date::relativeToAbsolute()": "toxicAlert",
"CRM_Utils_Mail_EmailProcessor::_process()": "toxicAlert",
"ImportCiviSeleniumTestCase::importContacts()": "toxicAlert",
"WebTest_Contribute_OnBehalfOfOrganization::_testUserWithMoreThanOneRelationship()": "toxicAlert",
"WebTest_Profile_BatchUpdateTest::testBatchUpdate()": "toxicAlert",
"api_v3_JobTest::getMergeLocations()": "toxicAlert",
"api_v3_JobTest::getMergeSets()": "toxicAlert"
}
}
Loading

0 comments on commit 5fb7a5e

Please sign in to comment.