Coder Social home page Coder Social logo

codecov / codecov-python Goto Github PK

View Code? Open in Web Editor NEW
184.0 21.0 139.0 683 KB

Python report uploader for Codecov

Home Page: https://codecov.io

License: Apache License 2.0

Makefile 1.11% Python 98.89%
coverage codecov ci coverage-report coveragepy

codecov-python's Introduction

๐Ÿšจ๐Ÿšจ Deprecation Notice ๐Ÿšจ๐Ÿšจ

This uploader is being deprecated by the Codecov team. We recommend migrating to our new uploader as soon as possible to prevent any lapses in coverage. The new uploader is open source, and we highly encourage submitting Issues and Pull Requests.

You can visit our migration guide for help moving to our new uploader, and our blog post to learn more about our deprecation plan

On February 1, 2022 this uploader will be completely deprecated and will no longer be able to upload coverage to Codecov.

Codecov Global Python Uploader

codecov.io PyPI Code style: black FOSSA Status

Support Documentation Community Boards Twitter

Find coverage reports for all the languages below, gather them and submit them to Codecov.

Codecov Features

  • Reports are automatically combined with no extra setup. Each build is stored separately and combined.
  • Multiple languages are supported in a single upload and repository.
  • Optionally stores environment variables per build.

Usage

pip install --user codecov && codecov -t <the-repository-upload-token>

or

conda install -c conda-forge codecov && codecov -t <the-repository-upload-token>

--user argument not needed for Python projects. See example here.

Languages

Python, C#/.net, Java, Node/Javascript/Coffee, C/C++, D, Go, Groovy, Kotlin, PHP, R, Scala, Xtern, Xcode, Lua and more...

Using tox?

Codecov can be set up in your tox.ini.

Just please make sure to pass all the necessary environment variables through:

[testenv]
passenv = TOXENV CI TRAVIS TRAVIS_* CODECOV_*
deps = codecov>=1.4.0
commands = codecov -e TOXENV

See all the environment variables for other CI providers here

Configuration

Below are the most commonly used settings.

Argument Environment Description
-t CODECOV_TOKEN Private repo token for uploading
-e CODECOV_ENV List of config vars to store for the build
-F Flag this upload to group coverage reports. Ex. unittests or integration
# public repository on Travis CI
install:
  - pip install --user codecov
# or
  - conda install -c conda-forge codecov
after_success:
  - codecov
# private repository on Travis CI
install:
  - pip install codecov
# or
  - conda install -c conda-forge codecov
after_success:
  - codecov -t the-repository-upload-token

CI Providers

Company Supported Token Required
AppVeyor Yes Build status Private only
Bamboo coming soon
Buildbot coming soon buildbot/buildbot#1671
CircleCI Yes Private only
Codeship Yes Public & Private
Drone.io Yes Public & Private
GitHub Actions Yes Build status Public & Private
Gitlab CI Yes Public & Private
Jenkins Yes Public & Private
Magnum CI Yes Public & Private
Semaphore Yes Public & Private
Shippable Yes Public & Private
Solano Labs coming soon
Travis CI Yes Build Status Private only
Wercker Yes Public & Private
Cirrus CI Yes Private only
Git / Mercurial Yes (as a fallback) Public & Private

Troubleshooting

If you're seeing an HTTP 400 error when uploading reports to S3, make sure you've updated to at least version 2.1.3.

Copyright

Copyright 2014-2022 codecov

License

FOSSA Status

codecov-python's People

Contributors

blueyed avatar chfast avatar dependabot-preview[bot] avatar dmoody256 avatar drazisil avatar frewsxcv avatar hugovk avatar jayvdb avatar jrgoodle avatar kami avatar kane-c avatar nmoinvaz avatar obestwalter avatar ofek avatar paugier avatar peterjc avatar rly avatar robpol86 avatar ryanhiebert avatar sajith avatar stevepeak avatar takluyver avatar thiagocodecov avatar thomasrockhu avatar thomasrockhu-codecov avatar toddrme2178 avatar treyhunner avatar udim avatar vmuriart avatar wpennock avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

codecov-python's Issues

gitlab-ci-multi-runner `codecov` does not find coverage.xml

I try to get codecov working on my gitlab-ci.
As runner/slave is use gitlab-ci-multi-runner in shell mode, therefore simply using the local shell.

The error message codecov prints:

No reports found. You may need to add a coverage config file. Visit http://bit.ly/1slucpy for configuration help.Uploaded: False
Report URL: n/a
Upload Version: codecov-v1.1.9
Message: error no coverage report found, could not upload to codecov

Do data is uploaded in reality.

You can see the an example build here

I also execute ls -la and like you see the coverage.xml exists and has a file size. All other commands run well with the runner. The runner run all commands in the same directory like usual.

I can type in exactly the same commands on the same machine (where the runner is executed) with the same user (gitlab_ci_multi_runner) and everything works well, but not automatically via the CI.

I have no ideas left. Suggestions?

EDIT: Like you see with ls -la the coverage config also exists ...

coverage parallel not supported

When coverage run config parallel = True, cmdline option -p, --parallel-mode, multiple coverage data files are created with machine name, process id and random number appended to the .coverage data file name.

codecov reports "No coverage report found".

Min coverage

Exit with a status 1(fail) when min-coverage is not met via codecov --min-coverage=72

Special thanks to @pplante

codecov --help fails out of Git repo

Running codecov --help outside of a Git repo displays a traceback:

Traceback (most recent call last):
  File "/tmp/vv/bin/codecov", line 9, in <module>
    load_entry_point('codecov==1.1.9', 'console_scripts', 'codecov')()
  File "/tmp/vv/local/lib/python2.7/site-packages/codecov/__init__.py", line 286, in cli
    data, codecov = main()
  File "/tmp/vv/local/lib/python2.7/site-packages/codecov/__init__.py", line 259, in main
    branch = subprocess.check_output('git rev-parse --abbrev-ref HEAD', shell=True)
  File "/usr/lib/python2.7/subprocess.py", line 573, in check_output
    raise CalledProcessError(retcode, cmd, output=output)
subprocess.CalledProcessError: Command 'git rev-parse --abbrev-ref HEAD' returned non-zero exit status 128

This is because the check '-h' not in argv and '--help' not in argv only works if argv is set; else it should check sys.argv (this is what argparse does line 276).

I personally recommend something like if not argv: argv = sys.argv at the beginning of main() to avoid unnecessary ifs.

Empty $TRAVIS_PYTHON_NAME included regardless of --env / -e

It seems (possibly due to a change on TravisCI), that $TRAVIS_PYTHON_NAME is currently empty, e.g.

https://codecov.io/gh/ipython/ipython/commit/c17ff28cb1220a91d94fc0dc4b85ccee561fb68f/builds

https://codecov.io/gh/biopython/biopython/commit/2d7619594003460b61fab62260ce50f6a344ba63/builds

Reading the code for --env aka -e, the current behaviour is to automatically add some additional environment variables over-riding those specified at the command line, e.g. for TravisCI

include_env.add('TRAVIS_OS_NAME')
include_env.add('TRAVIS_%s_NAME' % language.upper())
include_env.add('TOXENV')

and for Snap:

include_env.add(os.getenv('DISPLAY'))

Having these as the default is nice (if -env or -e is not used), but to me having them over-ride the command line is surprising. As per #75 the documentation here could be clearer?

Support loading token from a file.

Some CI systems (buildbot for example) default to showing the environment and command-line of all commands run. Thus, it would be useful if there was an option to pass a file-name with the token in it, rather than an argument or environment variable.

Codecov on Python2.6

I get this error on 2.6:

Running codecov
Traceback (most recent call last):
  File "/home/travis/miniconda/envs/testenv/bin/codecov", line 7, in <module>
    from codecov import main
  File "/home/travis/miniconda/envs/testenv/lib/python2.6/site-packages/codecov/__init__.py", line 7, in <module>
    import argparse

I think this can be fixed hopefully with a change to install_requires, assuming the rest of the code is Python2.6 compatible. I'm happy to do a PR.

failed to exec coverage

On Windows, if the Python "Scripts" directory is not in the PATH, and codecov is invoked like C:\...\Scripts\codecov, try_to_run will fail to exec coverage. The same could happen on Unix, but it is less likely.

This can be avoided a few ways, e.g. by calling coverage as a Python package, adding the "Scripts" directory to the PATH for the exec, using sys.executable -m coverage on Python 2.7+, etc.

$CODECOV_ENV documentation URL dead

From the help text,

$ codecov
...
  --env [ENV [ENV ...]], -e [ENV [ENV ...]]
                        Store environment variables to help distinguish CI
                        builds. Example: http://bit.ly/1ElohCu
...

Comes from this line:

basics.add_argument('--env', '-e', nargs="*", default=os.getenv("CODECOV_ENV"), help="Store environment variables to help distinguish CI builds. Example: http://bit.ly/1ElohCu")

Sadly http://bit.ly/1ElohCu resolves to https://codecov.io/github/pyca/cryptography/src/cryptography?ref=db86de59b02be0793dea5e862090586c31998ad1 which gives an Error 404

Note the codecov-bash help text is different:

    -e ENV       Specify environment variables to be included with this build
                 ex. codecov -e VAR,VAR2
                 (or) set environment variable CODECOV_ENV=VAR,VAR2

Add support for local .git repositories not yet published to github that are on Windows.

Currently I can pip install --upgrade codecov on windows.

However I would like to be able to check the coverage of my latest commits locally so I know weather or not I need to add my tests for some test cases before I put the repository to github. Is there a way to do this? I can do "%SystemDrive%\Python360\python.exe" setup.py test that runs pytest and passes the one test the local repository has. I just would like to use this to see how many lines are covered locally and then print the % of the code that is covered.

This is also to ensure proper setup for codecov as well.

Also on travis I see projects like aiohttp doing make cov-dev-full. How can I do that in terms of Windows or AppVeyor when it is on github officially?

Codecov prints exception traceback when no token is supplied, even though exit status is 0

Calling codecov without a token results in traceback and error messages.
Returning with 0 is OK, since I may not want a build to fail if I do not intend to send the report to codecov. However, in that case, I'd prefer not to have such an error be displayed:

Uploaded: False
Report URL: n/a
Upload Version: codecov-v1.1.8
Message: missing token or other required argument(s)
WARNING:rollbar:Got unexpected status code from Rollbar api: 403
Response:
{
  "err": 1,
  "message": "access token not found: 856822f107db4a6a8cd84b69e242378f"
}
ERROR:rollbar:Exception while posting item ApiError(u'access token not found: 856822f107db4a6a8cd84b69e242378f',)
Traceback (most recent call last):
    (...traceback...)    
    raise ApiError(json_data.get('message') or 'Unknown error')
ApiError: access token not found: 856822f107db4a6a8cd84b69e242378f

I think a basic "token not provided, report not uploaded" message could be more helpful ๐Ÿ˜‰

Agnostic support for CI systems

This is a follow up for buildbot/buildbot#1671

I see the code from https://github.com/codecov/codecov-python/blob/master/codecov/__init__.py#L260-L430 is trying to hunt each CI system and extract the required information .

I don't see any generic lookup for those environment variables ... other than the token.

Those variables should also be VCS agnostic ... but for now this is of lower priority, since only GitHub/GitLab and Bitbucket are supported anyway.

The goal is to allow sending reports from Buildbot or other CI system without requiring to update codecov-python for each new CI system.

For my project I am using this environment in Buildbot https://github.com/chevah/buildbot-configuration-builder/blob/master/chevah/buildbot_configuration_builder/builder.py#L859


As agnostic environment variables I suggest:

commit -> VCS_COMMIT_ID
branch -> VCS_BRANCH_NAME
branch_url -> VCS_BRANCH_URL
build -> VCS_BUILD_ID
build_url -> VCS_BUILD_URL
pr -> GITHUB_PR_ID | GITLAB_PR_ID
slug -> GITHUB_SLUG | GITLAB_SLUG


any CI system should set CI=true and maybe 'CI_NAME=service`

Wrong mercurial commit regex on drone.io

Here's response:

{"uploaded": false, "meta": {"status": 400, "request": "c2a4534d-2988-4170-9e5c-e454c0cc4a0d"}, "message": "Invalid value '4083:e8ca1b43e114' (str): must match pattern ^\\w{40}

Allow multiple paths to be passed to -f

From what I undestand, as of now, only a single path can be passed as argument when using codecov -f parameter.

Could multiple files be passed as well, or could this feature be added?

False positive report upload

The client outputs:

Uploaded: True
Report URL: http://codecov.io/bitbucket/saaj/cherrypy?ref=4094%3A18e3f7c08f04
Upload Version: codecov-v1.1.6
Message: Coverage reports upload successfully

But it doesn't appear on the website. Originated from #19.

Support for Buildkite

Hey,

I'd love to see support for buildkite. They expose all the necessary env variables as far as I can see, so integration should be relatively straight-forward: https://buildkite.com/docs/guides/environment-variables

Some things I can set by passing them as arguments to the command, but things like the "pr" parameter are not exposed at the moment, as far as I can see :-)

Thanks!

'ascii' codec can't encode characters in position...

I get an error while trying to use the uploader for a Go project:
https://github.com/bbalet/stopwords

'ascii' codec can't encode characters in position 13398-13493: ordinal not in range(128)

Apparently, this is a known issue with Python, see:

Attached is the log generated by Travis-CI where you can find this error:
log.txt

Detect report timestamps before uploading

A customer experienced an issue when the uploaded report had expires (being that it was > 12 hours old). The uploader should (1) recognize these files, (2) make note of them not being uploaded, (3) proceed to call coverage xml if necessary.

Failing on GitLab CI v9+

Hi !

So GitLab-CI has been updating from v8 to v9 lately, and they transitioned from builds to job in their whole nomenclature. As such, some job variables have been renamed, causing codecov to crash when called in the CI environment. For instance (this example is actually what makes it crash for me) CI_BUILD_REPO has been renamed CI_REPOSITORY_URL, so I get the following exception when I try to report:

      _____          _
     / ____|        | |
    | |     ___   __| | ___  ___ _____   __
    | |    / _ \ / _  |/ _ \/ __/ _ \ \ / /
    | |___| (_) | (_| |  __/ (_| (_) \ V /
     \_____\___/ \____|\___|\___\___/ \_/
                                    v2.0.7

==> Detecting CI provider
Traceback (most recent call last):
  File "/usr/local/bin/codecov", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.6/site-packages/codecov/__init__.py", line 473, in main
    slug=os.getenv('CI_BUILD_REPO').split('/', 3)[-1].replace('.git', ''),
AttributeError: 'NoneType' object has no attribute 'split'
ERROR: Job failed: exit code 1

I'll submit a PR shortly.

Coverage should not be uploaded if coverage.xml can not be generated

I have a project in which coverage is not in the PATH

it would be nice if codecov would fail with a nice message instructing that coverage.xml could not be generated and that I should either add coverage to PATH, or generate the file or specify another XML file.

cd /home/adi/chevah/brink/build-ubuntu1604-x64

      _____          _
     / ____|        | |
    | |     ___   __| | ___  ___ _____   __
    | |    / _ \ / _  |/ _ \/ __/ _ \ \ / /
    | |___| (_) | (_| |  __/ (_| (_) \ V /
     \_____\___/ \____|\___|\___\___/ \_/
                                    v2.0.3

==> Detecting CI provider
  -> Got branch from git/hg
  -> Got sha from git/hg
==> Preparing upload
/bin/sh: 1: hg: not found
    Error running `cd /home/adi/chevah/brink/build-ubuntu1604-x64 && hg locate`: None
/bin/sh: 1: hg: not found
    Error running `hg locate`: None
==> Processing gcov (disable by -X gcov)
    Executing gcov (find /home/adi/chevah/brink/build-ubuntu1604-x64 -type f -name '*.gcno'  -exec gcov -pb  {} +)
==> Collecting reports
    + /home/adi/chevah/brink/build-ubuntu1604-x64/bin/coverage bytes=345
    + /home/adi/chevah/brink/build-ubuntu1604-x64/bin/coverage-2.7 bytes=353
    + /home/adi/chevah/brink/build-ubuntu1604-x64/bin/coverage2 bytes=347
    Generating coverage xml reports for Python
/bin/sh: 1: coverage: not found
    Error running `coverage xml -i`: None
    - Ignored: [Errno 2] No such file or directory: '/home/adi/chevah/brink/build-ubuntu1604-x64/coverage.xml'
==> Uploading
    .url https://codecov.io
    .query commit=d44a3abc70901d9feae42db66f5c953f775eea43&token=<secret>&build=xps&branch=3435-codecov&package=py2.0.3
    Pinging Codecov...
    Uploading to S3...
    http://codecov.io/github/chevah/brink/commit/d44a3abc70901d9feae42db66f5c953f775eea43
cd /home/adi/chevah/brink

AppVeyor still requires token.

I got an email a few weeks ago that said "Integration Using Appveyor CI? You no longer need a repo token for public repos.".

However I'm getting this traceback:

Traceback (most recent call last):
  File "C:\Python34-x64\lib\runpy.py", line 170, in _run_module_as_main
    "__main__", mod_spec)
  File "C:\Python34-x64\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Python34-x64\Scripts\codecov.exe\__main__.py", line 9, in <module>
  File "C:\Python34-x64\lib\site-packages\codecov\__init__.py", line 285, in cli
    data, codecov = main()
  File "C:\Python34-x64\lib\site-packages\codecov\__init__.py", line 278, in main
    data = upload(url=codecov.url, branch=codecov.branch, commit=codecov.commit, token=codecov.token, env=codecov.env, slug=codecov.slug, **defaults)
  File "C:\Python34-x64\lib\site-packages\codecov\__init__.py", line 120, in upload
    result.raise_for_status()
  File "C:\Python34-x64\lib\site-packages\requests\models.py", line 851, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 400 Client Error: Bad Request
{"message": "token or build not found", "meta": {"request": "22e2fb93-cad4-485b-8960-bffaacc5ddaf", "status": 400}, "uploaded": false}

https://ci.appveyor.com/project/Robpol86/terminaltables/build/1.0.152
https://github.com/Robpol86/terminaltables/tree/1a8e68f10accf7e8097cec9dd52af3befc47b97f

appveyor.yml:

init:
  - set PATH=C:\Python34-x64;C:\Python34-x64\Scripts;%PATH%
install:
  - ps: Start-FileDownload https://raw.github.com/pypa/pip/master/contrib/get-pip.py
  - python get-pip.py
build_script:
  - pip install codecov tox
test_script:
  - tox
  - tox -e combine py34x64 py34 py33x64 py33 py27x64 py27
after_test:
  - mv tests/.coverage .
  - codecov

Travis Mac InsecurePlatformWarning

I'm using the script to upload coverage reports from Travis on their Mac VM images for iOS development. Recently, I started seeing the following warning message:

/Library/Python/2.7/site-packages/requests/packages/urllib3/util/ssl_.py:79: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
  InsecurePlatformWarning

I'm not specifying what version of python to use in the .travis.yml file.
Is this something to be fixed on your end? Or is it a Travis configuration issue?

python -m codecov fails

python -m codecov
C:\Python27\python.exe: No module named codecov.__main__; 'codecov' is a package and cannot be directly executed
Command exited with code 1

`coverage xml` failures are not detailed

I got a failure here https://travis-ci.org/ionelmc/pytest-benchmark/jobs/75152592#L284 like this:

/home/travis/build/ionelmc/pytest-benchmark$ /home/travis/build/ionelmc/pytest-benchmark/.tox/codecov/bin/codecov 

Error running `coverage xml`. Codecov team will be notifiedNo reports found. You may need to add a coverage config file. Visit http://bit.ly/1slucpy for configuration help.Uploaded: False

Report URL: n/a

Upload Version: codecov-v1.2.3

Message: error no coverage report found, could not upload to codecov

I would be nice to get the complete output of coverage xml.

Cannot upload test results that contain characters outside of latin-1

For the past several months (at least 3) codecov has failed to work when test results contain unicode characters. Codecov outputs the following:

==> Detecting CI provider
    Travis Detected
==> Preparing upload
==> Processing gcov (disable by -X gcov)
    Executing gcov (find /home/travis/build/boto/botocore -type f -name '*.gcno'  -exec gcov -pb  {} +)
==> Collecting reports
    + /home/travis/build/boto/botocore/tests/nosetests.xml bytes=1746359
    Generating coverage xml reports for Python
    + /home/travis/build/boto/botocore/coverage.xml bytes=262229
==> Appending environment variables
    + TRAVIS_PYTHON_NAME
    + TRAVIS_OS_NAME
==> Uploading
    .url https://codecov.io
    .query [redacted]
    Pinging Codecov...
    Uploading to S3...
Error: 'latin-1' codec can't encode character '\u2713' in position 1651009: Body ('โœ“') is not valid Latin-1. Use body.encode('utf-8') if you want to send it encoded in UTF-8.

Tip: See an example python repo: https://github.com/codecov/example-python
Support channels:
  Email:   [email protected]
  IRC:     #codecov
  Gitter:  https://gitter.im/codecov/support
  Twitter: @codecov

I'm unsure why this suddenly stopped working, but it does appear to coincide with the requests upgrade. Regardless, the body should probably be encoded before sending.

UnicodeEncodeError when uploading reports data

$ codecov --token=MY_CODECOV_TOKEN
Traceback (most recent call last):
  File "/home/travis/virtualenv/python3.4.2/bin/codecov", line 9, in <module>
    load_entry_point('codecov==1.2.3', 'console_scripts', 'codecov')()
  File "/home/travis/virtualenv/python3.4.2/lib/python3.4/site-packages/codecov/__init__.py", line 325, in cli
    data, codecov = main()
  File "/home/travis/virtualenv/python3.4.2/lib/python3.4/site-packages/codecov/__init__.py", line 318, in main
    data = upload(url=codecov.url, branch=codecov.branch, commit=codecov.commit, token=codecov.token, env=codecov.env, slug=codecov.slug, **defaults)
  File "/home/travis/virtualenv/python3.4.2/lib/python3.4/site-packages/codecov/__init__.py", line 137, in upload
    result = requests.post(url, data=reports)
  File "/home/travis/virtualenv/python3.4.2/lib/python3.4/site-packages/requests/api.py", line 88, in post
    return request('post', url, data=data, **kwargs)
  File "/home/travis/virtualenv/python3.4.2/lib/python3.4/site-packages/requests/api.py", line 44, in request
    return session.request(method=method, url=url, **kwargs)
  File "/home/travis/virtualenv/python3.4.2/lib/python3.4/site-packages/requests/sessions.py", line 456, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/travis/virtualenv/python3.4.2/lib/python3.4/site-packages/requests/sessions.py", line 559, in send
    r = adapter.send(request, **kwargs)
  File "/home/travis/virtualenv/python3.4.2/lib/python3.4/site-packages/requests/adapters.py", line 327, in send
    timeout=timeout
  File "/home/travis/virtualenv/python3.4.2/lib/python3.4/site-packages/requests/packages/urllib3/connectionpool.py", line 493, in urlopen
    body=body, headers=headers)
  File "/home/travis/virtualenv/python3.4.2/lib/python3.4/site-packages/requests/packages/urllib3/connectionpool.py", line 291, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/opt/python/3.4.2/lib/python3.4/http/client.py", line 1090, in request
    self._send_request(method, url, body, headers)
  File "/opt/python/3.4.2/lib/python3.4/http/client.py", line 1127, in _send_request
    body = body.encode('iso-8859-1')
UnicodeEncodeError: 'latin-1' codec can't encode characters in position 21994-21999: ordinal not in range(256)

pip and 1.3.0

Is 1.3.0 (the version in master) ready to be published to pip?

Failing on python 3.2 on Travis-CI

$ coverage run main.py
Traceback (most recent call last):
  File "/home/travis/virtualenv/python3.2.5/bin/coverage", line 9, in <module>
    load_entry_point('coverage==4.0.2', 'console_scripts', 'coverage')()
  File "/home/travis/virtualenv/python3.2.5/lib/python3.2/site-packages/pkg_resources/__init__.py", line 519, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/home/travis/virtualenv/python3.2.5/lib/python3.2/site-packages/pkg_resources/__init__.py", line 2630, in load_entry_point
    return ep.load()
  File "/home/travis/virtualenv/python3.2.5/lib/python3.2/site-packages/pkg_resources/__init__.py", line 2310, in load
    return self.resolve()
  File "/home/travis/virtualenv/python3.2.5/lib/python3.2/site-packages/pkg_resources/__init__.py", line 2316, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "/home/travis/virtualenv/python3.2.5/lib/python3.2/site-packages/coverage/__init__.py", line 13, in <module>
    from coverage.control import Coverage, process_startup
  File "/home/travis/virtualenv/python3.2.5/lib/python3.2/site-packages/coverage/control.py", line 15, in <module>
    from coverage.annotate import AnnotateReporter
  File "/home/travis/virtualenv/python3.2.5/lib/python3.2/site-packages/coverage/annotate.py", line 85
    dest.write(u'  ')
                   ^
SyntaxError: invalid syntax

Travis cli error

Traceback (most recent call last):
  File "/home/travis/virtualenv/python2.7.8/bin/codecov", line 9, in <module>
    load_entry_point('codecov==0.1.0', 'console_scripts', 'codecov')()
  File "/home/travis/virtualenv/python2.7.8/lib/python2.7/site-packages/codecov/__init__.py", line 145, in main
    if type(codecov.repo) in (tuple, list):
AttributeError: 'Namespace' object has no attribute 'repo'

Extract from build log
Side note May be a good idea to add rollbar to the python cli

--help wants a repo in cwd

That option shouldn't require any repository to be setup.
Eg:

C:\Users\ionel_000>codecov --help
fatal: Not a git repository (or any of the parent directories): .git
Traceback (most recent call last):
  File "c:\Python27\Scripts\codecov-script.py", line 9, in <module>
    load_entry_point('codecov==1.1.7', 'console_scripts', 'codecov')()
  File "c:\Python27\lib\site-packages\codecov\__init__.py", line 240, in cli
    data, codecov = main()
  File "c:\Python27\lib\site-packages\codecov\__init__.py", line 216, in main
    branch = subprocess.check_output('git rev-parse --abbrev-ref HEAD', shell=True)
  File "c:\Python27\lib\subprocess.py", line 573, in check_output
    raise CalledProcessError(retcode, cmd, output=output)
subprocess.CalledProcessError: Command 'git rev-parse --abbrev-ref HEAD' returned non-zero exit status 128

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.