Skip to content

Commit ca7207f

Browse files
authored
DOC: update contributing.rst for ci (pandas-dev#15880)
* DOC: update contributing.rst for ci * typos & auto-cancel links * make it a note * add back accid deleted section
1 parent 456e729 commit ca7207f

File tree

2 files changed

+39
-17
lines changed

2 files changed

+39
-17
lines changed

doc/source/_static/ci.png

219 KB
Loading

doc/source/contributing.rst

+39-17
Original file line numberDiff line numberDiff line change
@@ -113,13 +113,6 @@ want to clone your fork to your machine::
113113
This creates the directory `pandas-yourname` and connects your repository to
114114
the upstream (main project) *pandas* repository.
115115

116-
The testing suite will run automatically on Travis-CI and Appveyor once your
117-
pull request is submitted. However, if you wish to run the test suite on a
118-
branch prior to submitting the pull request, then Travis-CI and/or AppVeyor
119-
need to be hooked up to your GitHub repository. Instructions for doing so
120-
are `here <http://about.travis-ci.org/docs/user/getting-started/>`__ for
121-
Travis-CI and `here <https://www.appveyor.com/docs/>`__ for AppVeyor.
122-
123116
Creating a branch
124117
-----------------
125118

@@ -432,7 +425,8 @@ Building master branch documentation
432425

433426
When pull requests are merged into the *pandas* ``master`` branch, the main parts of
434427
the documentation are also built by Travis-CI. These docs are then hosted `here
435-
<http://pandas-docs.github.io/pandas-docs-travis>`__.
428+
<http://pandas-docs.github.io/pandas-docs-travis>`__, see also
429+
the :ref:`Continuous Integration <contributing.ci>` section.
436430

437431
Contributing to the code base
438432
=============================
@@ -444,8 +438,9 @@ Code standards
444438
--------------
445439

446440
Writing good code is not just about what you write. It is also about *how* you
447-
write it. During testing on Travis-CI, several tools will be run to check your
448-
code for stylistic errors. Generating any warnings will cause the test to fail.
441+
write it. During :ref:`Continuous Integration <contributing.ci>` testing, several
442+
tools will be run to check your code for stylistic errors.
443+
Generating any warnings will cause the test to fail.
449444
Thus, good style is a requirement for submitting code to *pandas*.
450445

451446
In addition, because a lot of people use our library, it is important that we
@@ -467,7 +462,8 @@ Here are *some* of the more common ``cpplint`` issues:
467462
- we restrict line-length to 80 characters to promote readability
468463
- every header file must include a header guard to avoid name collisions if re-included
469464

470-
Travis-CI will run the `cpplint <https://pypi.python.org/pypi/cpplint>`_ tool
465+
:ref:`Continuous Integration <contributing.ci>`. will run the
466+
`cpplint <https://pypi.python.org/pypi/cpplint>`_ tool
471467
and report any stylistic errors in your code. Therefore, it is helpful before
472468
submitting code to run the check yourself::
473469

@@ -514,7 +510,8 @@ the more common ``PEP8`` issues:
514510
- we restrict line-length to 79 characters to promote readability
515511
- passing arguments should have spaces after commas, e.g. ``foo(arg1, arg2, kw1='bar')``
516512

517-
Travis-CI will run the `flake8 <http://pypi.python.org/pypi/flake8>`_ tool
513+
:ref:`Continuous Integration <contributing.ci>` will run
514+
the `flake8 <http://pypi.python.org/pypi/flake8>`_ tool
518515
and report any stylistic errors in your code. Therefore, it is helpful before
519516
submitting code to run the check yourself on the diff::
520517

@@ -542,6 +539,35 @@ existing code, so don't break it if at all possible. If you think breakage is r
542539
clearly state why as part of the pull request. Also, be careful when changing method
543540
signatures and add deprecation warnings where needed.
544541

542+
.. _contributing.ci:
543+
544+
Testing Thru Continuous Integration
545+
-----------------------------------
546+
547+
The pandas testing suite will run automatically on Travis-CI, Appveyor, and Circle CI
548+
continuous integration services, once your pull request is submitted.
549+
However, if you wish to run the test suite on a branch prior to submitting the pull request,
550+
then Travis-CI, Appveyor and/or CircleCI need to be hooked up to your GitHub repository.
551+
Instructions for doing so are `here <http://about.travis-ci.org/docs/user/getting-started/>`__ for
552+
Travis-CI, `here <https://www.appveyor.com/docs/>`__ for Appveyor, and
553+
`here <https://circleci.com/>`__ for CircleCI.
554+
555+
A pull-request will be considered for merging when you have an all 'green' build. See
556+
this example.
557+
558+
.. image:: _static/ci.png
559+
560+
561+
.. note::
562+
563+
Pushing to *your* branch will cancel any non-currently-running tests for that
564+
same pull-request for Appveyor. For Travis CI, you can enable the auto-cancel feature
565+
`here <https://docs.travis-ci.com/user/customizing-the-build/#Building-only-the-latest-commit>`__ and
566+
for CircleCI `here <https://circleci.com/changelog-legacy/#option-to-auto-cancel-redundant-builds>`__.
567+
568+
.. _contributing.tdd:
569+
570+
545571
Test-driven development/code writing
546572
------------------------------------
547573

@@ -875,12 +901,8 @@ updated. Pushing them to GitHub again is done by::
875901
git push -f origin shiny-new-feature
876902

877903
This will automatically update your pull request with the latest code and restart the
878-
Travis-CI tests.
904+
:ref:`Continuous Integration <contributing.ci>` tests.
879905

880-
If your pull request is related to the ``pandas.io.gbq`` module, please see
881-
the section on :ref:`Running Google BigQuery Integration Tests
882-
<contributing.gbq_integration_tests>` to configure a Google BigQuery service
883-
account for your pull request on Travis-CI.
884906

885907
Delete your merged branch (optional)
886908
------------------------------------

0 commit comments

Comments
 (0)