Skip to content

Commit d5dd7fe

Browse files
authored
Merge pull request hardbyte#580 from hardbyte/release-3.2.0
Release 3.2.0
2 parents 2f6830d + 7268f49 commit d5dd7fe

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+1262
-471
lines changed

.appveyor.yml

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,21 @@ environment:
22
matrix:
33

44
# For Python versions available on Appveyor, see
5-
# http://www.appveyor.com/docs/installed-software#python
6-
# Python 3.0-3.3 have reached EOL
5+
# https://www.appveyor.com/docs/windows-images-software/#python
6+
# Python pre-2.7 and 3.0-3.4 have reached EOL
77

88
- PYTHON: "C:\\Python27"
9-
- PYTHON: "C:\\Python34"
109
- PYTHON: "C:\\Python35"
1110
- PYTHON: "C:\\Python36"
1211
- PYTHON: "C:\\Python37"
1312
- PYTHON: "C:\\Python27-x64"
14-
- PYTHON: "C:\\Python34-x64"
1513
- PYTHON: "C:\\Python35-x64"
1614
- PYTHON: "C:\\Python36-x64"
1715
- PYTHON: "C:\\Python37-x64"
1816

1917
install:
2018
# Prepend Python installation and scripts (e.g. pytest) to PATH
21-
- set PATH=%PYTHON_INSTALL%;%PYTHON_INSTALL%\\Scripts;%PATH%
19+
- set PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%
2220

2321
# We need to install the python-can library itself including the dependencies
2422
- "python -m pip install .[test,neovi]"
@@ -30,4 +28,4 @@ test_script:
3028
- "pytest"
3129

3230
# uplad coverage reports
33-
- "codecov"
31+
- "codecov -X gcov"

.travis.yml

Lines changed: 83 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,62 +1,99 @@
11
language: python
22

3+
# Linux setup
4+
dist: xenial
5+
6+
cache:
7+
directories:
8+
- "$HOME/.cache/pip"
9+
310
python:
4-
# CPython; versions 3.0-3.3 have reached EOL
11+
# CPython; versions pre-2.7 and 3.0-3.5 have reached EOL
512
- "2.7"
6-
- "3.4"
7-
- "3.5"
813
- "3.6"
9-
- "3.7-dev" # TODO: change to "3.7" once it is supported by travis-ci
10-
- "nightly"
14+
- "3.7"
15+
- 3.8-dev
16+
- nightly
1117
# PyPy:
12-
- "pypy" # Python 2.7
13-
- "pypy3.5" # Python 3.5
18+
- pypy # Python 2.7
19+
- pypy3.5 # Python 3.5
20+
- pypy3
21+
22+
env:
23+
1424

15-
os:
16-
- linux # Linux is officially supported and we test the library under
17-
# many different Python verions (see "python: ..." above)
25+
install:
26+
- if [[ "$TEST_SOCKETCAN" ]]; then sudo bash test/open_vcan.sh ; fi
27+
- travis_retry pip install .[test]
1828

19-
# - osx # OSX + Python is not officially supported by Travis CI as of Feb. 2018
20-
# nevertheless, "nightly" and some "*-dev" versions seem to work, so we
21-
# include them explicitly below (see "matrix: include: ..." below).
22-
# They only seem to work with the xcode8.3 image, and not the newer ones.
23-
# Thus we will leave this in, until it breaks one day, at which point we
24-
# will probably reomve testing on OSX if it is not supported then.
25-
# See #385 on Github.
29+
script:
30+
- |
31+
# Run the tests
32+
python setup.py test
33+
# preserve the error code
34+
RETURN_CODE=$?
35+
# Upload the coverage to codecov.io
36+
codecov -X gcov
37+
# set error code
38+
(exit $RETURN_CODE);
2639
27-
# - windows # Windows is not supported at all by Travis CI as of Feb. 2018
2840
29-
# Linux setup
30-
dist: trusty
31-
sudo: required
41+
jobs:
42+
allow_failures:
43+
# we allow all dev & nightly builds to fail, since these python versions might
44+
# still be very unstable
45+
- python: 3.8-dev
46+
- python: nightly
3247

33-
matrix:
34-
# see "os: ..." above
3548
include:
36-
- os: osx
49+
# Note no matrix support when using stages.
50+
# Stages with the same name get run in parallel.
51+
# Jobs within a stage can also be named.
52+
53+
# Unit Testing Stage
54+
55+
# testing socketcan on Trusty & Python 3.6, since it is not available on Xenial
56+
- stage: test
57+
name: Socketcan
58+
os: linux
59+
dist: trusty
60+
python: "3.6"
61+
sudo: required
62+
env: TEST_SOCKETCAN=TRUE
63+
64+
# testing on OSX
65+
- stage: test
66+
os: osx
3767
osx_image: xcode8.3
38-
python: "3.6-dev"
39-
- os: osx
68+
python: 3.6-dev
69+
- stage: test
70+
os: osx
4071
osx_image: xcode8.3
41-
python: "3.7-dev"
42-
- os: osx
72+
python: 3.7-dev
73+
- stage: test
74+
os: osx
4375
osx_image: xcode8.3
44-
python: "nightly"
45-
46-
allow_failures:
47-
# allow all nighly builds to fail, since these python versions might be unstable
48-
- python: "nightly"
49-
# we do not allow dev builds to fail, since these builds are considered stable enough
76+
python: nightly
5077

51-
install:
52-
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then sudo bash test/open_vcan.sh ; fi
53-
- if [[ "$TRAVIS_PYTHON_VERSION" == "3.6" ]]; then travis_retry pip install -r doc/doc-requirements.txt; fi
54-
- travis_retry pip install .[test]
55-
56-
script:
57-
- pytest
58-
- codecov
59-
# Build Docs with Sphinx
60-
# -a Write all files
61-
# -n nitpicky
62-
- if [[ "$TRAVIS_PYTHON_VERSION" == "3.6" ]]; then python -m sphinx -an doc build; fi
78+
- stage: documentation
79+
name: "Sphinx Build"
80+
python: "3.7"
81+
before_install:
82+
- travis_retry pip install -r doc/doc-requirements.txt
83+
script:
84+
# Build the docs with Sphinx
85+
# -a Write all files
86+
# -n nitpicky
87+
- python -m sphinx -an doc build
88+
- stage: deploy
89+
name: "PyPi Deployment"
90+
python: "3.7"
91+
deploy:
92+
provider: pypi
93+
user: hardbyte
94+
password:
95+
secure: oQ9XpEkcilkZgKp+rKvPb2J1GrZe2ZvtOq/IjzCpiA8NeWixl/ai3BkPrLbd8t1wNIFoGwx7IQ7zxWL79aPYeG6XrljEomv3g45NR6dkQewUH+dQFlnT75Rm96Ycxvme0w1+71vM4PqxIuzyXUrF2n7JjC0XCCxHdTuYmPGbxVO1fOsE5R5b9inAbpEUtJuWz5AIrDEZ0OgoQpLSC8fLwbymTThX3JZ5GBLpRScVvLazjIYfRkZxvCqQ4mp1UNTdoMzekxsvxOOcEW6+j3fQO+Q/8uvMksKP0RgT8HE69oeYOeVic4Q4wGqORw+ur4A56NvBqVKtizVLCzzEG9ZfoSDy7ryvGWGZykkh8HX0PFQAEykC3iYihHK8ZFz5bEqRMegTmuRYZwPsel61wVd5posxnQkGm0syIoJNKuuRc5sUK+E3GviYcT8NntdR+4WBrvpQAYa1ZHpVrfnQXyaDmGzOjwCRGPoIDJweEqGVmLycEC5aT8rX3/W9tie9iPnjmFJh4CwNMxDgVQRo80m6Gtlf/DQpA3mH39IvWGqd5fHdTPxYPs32EQSCsaYLJV5pM8xBNv6M2S/KriGnGZU0xT7MEr46da0LstKsK/U8O0yamjyugMvQoC3zQcKLrDzWFSBsT7/vG+AuV5SK8yzfEHugo7jkPQQ+NTw29xzk4dY=
96+
on:
97+
# Have travis deploy tagged commits to PyPi
98+
tags: true
99+
skip_cleanup: true

CHANGELOG.txt

Lines changed: 72 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,64 @@
1+
Version 3.2.0
2+
====
3+
4+
5+
Major features
6+
--------------
7+
8+
* FD support added for Pcan by @bmeisels with input from
9+
@markuspi, @christiansandberg & @felixdivo in PR #537
10+
* This is the last version of python-can which will support Python 2.7
11+
and Python 3.5. Support has been removed for Python 3.4 in this
12+
release in PR #532
13+
14+
Other notable changes
15+
---------------------
16+
17+
* #533 BusState is now an enum.
18+
* #535 This release should automatically be published to PyPi by travis.
19+
* #577 Travis-ci now uses stages.
20+
* #548 A guide has been added for new io formats.
21+
* #550 Finish moving from nose to pytest.
22+
* #558 Fix installation on Windows.
23+
* #561 Tests for MessageSync added.
24+
25+
General fixes, cleanup and docs changes can be found on the GitHub milestone
26+
https://github.com/hardbyte/python-can/milestone/7?closed=1
27+
28+
Pulls: #522, #526, #527, #536, #540, #546, #547, #548, #533, #559, #569, #571, #572, #575
29+
30+
Backend Specific Changes
31+
------------------------
32+
33+
pcan
34+
~~~~
35+
36+
* FD
37+
38+
slcan
39+
~~~~
40+
41+
* ability to set custom can speed instead of using predefined speed values. #553
42+
43+
socketcan
44+
~~~~
45+
46+
* Bug fix to properly support 32bit systems. #573
47+
48+
usb2can
49+
~~~~
50+
51+
* slightly better error handling
52+
* multiple serial devices can be found
53+
* support for the `_detect_available_configs()` API
54+
55+
Pulls #511, #535
56+
57+
vector
58+
~~~~
59+
60+
* handle `app_name`. #525
61+
162
Version 3.1.1
263
====
364

@@ -13,20 +74,20 @@ Two new interfaces this release:
1374
Other notable changes
1475
---------------------
1576

16-
- #477 The kvaser interface now supports bus statistics via a custom bus method.
17-
- #434 neovi now supports receiving own messages
18-
- #490 Adding option to override the neovi library name
19-
- #488 Allow simultaneous access to IXXAT cards
20-
- #447 Improvements to serial interface:
77+
* #477 The kvaser interface now supports bus statistics via a custom bus method.
78+
* #434 neovi now supports receiving own messages
79+
* #490 Adding option to override the neovi library name
80+
* #488 Allow simultaneous access to IXXAT cards
81+
* #447 Improvements to serial interface:
2182
* to allow receiving partial messages
2283
* to fix issue with DLC of remote frames
2384
* addition of unit tests
24-
- #497 Small API changes to `Message` and added unit tests
25-
- #471 Fix CAN FD issue in kvaser interface
26-
- #462 Fix `Notifier` issue with asyncio
27-
- #481 Fix PCAN support on OSX
28-
- #455 Fix to `Message` initializer
29-
- Small bugfixes and improvements
85+
* #497 Small API changes to `Message` and added unit tests
86+
* #471 Fix CAN FD issue in kvaser interface
87+
* #462 Fix `Notifier` issue with asyncio
88+
* #481 Fix PCAN support on OSX
89+
* #455 Fix to `Message` initializer
90+
* Small bugfixes and improvements
3091

3192
Version 3.1.0
3293
====

CONTRIBUTORS.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,4 @@ Shaoyu Meng <[email protected]>
2626
Alexander Mueller<[email protected]>
2727
Jan Goeteyn
2828
"ykzheng" <[email protected]>
29+
Lear Corporation

MANIFEST.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
include *.txt
2+
include test/*.py
23
include test/data/*.*
34
recursive-include doc *.rst

README.rst

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
python-can
22
==========
33

4-
|release| |docs| |build_travis| |build_appveyor| |coverage|
4+
|release| |docs| |build_travis| |build_appveyor| |coverage| |downloads|
55

66
.. |release| image:: https://img.shields.io/pypi/v/python-can.svg
77
:target: https://pypi.python.org/pypi/python-can/
@@ -11,18 +11,21 @@ python-can
1111
:target: https://python-can.readthedocs.io/en/stable/
1212
:alt: Documentation
1313

14-
.. |build_travis| image:: https://travis-ci.org/hardbyte/python-can.svg?branch=develop
14+
.. |build_travis| image:: https://img.shields.io/travis/hardbyte/python-can/develop.svg?label=Travis%20CI
1515
:target: https://travis-ci.org/hardbyte/python-can/branches
1616
:alt: Travis CI Server for develop branch
1717

18-
.. |build_appveyor| image:: https://ci.appveyor.com/api/projects/status/github/hardbyte/python-can?branch=develop&svg=true
18+
.. |build_appveyor| image:: https://img.shields.io/appveyor/ci/hardbyte/python-can/develop.svg?label=AppVeyor
1919
:target: https://ci.appveyor.com/project/hardbyte/python-can/history
2020
:alt: AppVeyor CI Server for develop branch
2121

2222
.. |coverage| image:: https://codecov.io/gh/hardbyte/python-can/branch/develop/graph/badge.svg
2323
:target: https://codecov.io/gh/hardbyte/python-can/branch/develop
2424
:alt: Test coverage reports on Codecov.io
2525

26+
.. |downloads| image:: https://pepy.tech/badge/python-can
27+
:target: https://pepy.tech/project/python-can
28+
:alt: Downloads on PePy
2629

2730
The **C**\ ontroller **A**\ rea **N**\ etwork is a bus standard designed
2831
to allow microcontrollers and devices to communicate with each other. It
@@ -34,7 +37,16 @@ Python developers; providing common abstractions to
3437
different hardware devices, and a suite of utilities for sending and receiving
3538
messages on a can bus.
3639

37-
The library supports Python 2.7, Python 3.4+ as well as PyPy 2 & 3 and runs on Mac, Linux and Windows.
40+
The library supports Python 2.7, Python 3.5+ as well as PyPy 2 & 3 and runs
41+
on Mac, Linux and Windows.
42+
43+
================== ===========
44+
Library Version Python
45+
------------------ -----------
46+
2.x 2.6+, 3.4+
47+
3.x 2.7+, 3.5+
48+
4.x (expected) 3.6+
49+
================== ===========
3850

3951

4052
Features
@@ -48,7 +60,7 @@ Features
4860
- many different loggers and readers supporting playback: ASC (CANalyzer format), BLF (Binary Logging Format by Vector), CSV, SQLite and Canutils log
4961
- efficient in-kernel or in-hardware filtering of messages on supported interfaces
5062
- bus configuration reading from file or environment variables
51-
- CLI tools for working with CAN busses (see the `docs <https://python-can.readthedocs.io/en/stable/scripts.html>`__)
63+
- CLI tools for working with CAN buses (see the `docs <https://python-can.readthedocs.io/en/stable/scripts.html>`__)
5264
- more
5365

5466

can/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
import logging
1010

11-
__version__ = "3.1.1"
11+
__version__ = "3.2.0"
1212

1313
log = logging.getLogger('can')
1414

0 commit comments

Comments
 (0)