Skip to content

Drop support for EOL Python 2.6 and 3.3#933

Merged
gmr merged 3 commits intopika:masterfrom
hugovk:rm-2.6
Jan 31, 2018
Merged

Drop support for EOL Python 2.6 and 3.3#933
gmr merged 3 commits intopika:masterfrom
hugovk:rm-2.6

Conversation

@hugovk
Copy link
Copy Markdown
Contributor

@hugovk hugovk commented Jan 30, 2018

#932 (comment) says:

don't worry so much about 2.6. We need to drop support for that ancient version anyway. If anything, detect 2.6 and disable the changes you're making.

Here's the pip installs for pika from PyPI for last month:

python_version percent download_count
2.7 75.0% 202,328
3.6 11.1% 30,057
3.5 8.6% 23,204
3.4 4.8% 13,008
2.6 0.2% 663
3.3 0.1% 159
3.7 0.0% 133
3.2 0.0% 50
None 0.0% 5

Source: pypinfo --start-date -60 --end-date -30 --percent --pip --markdown pika pyversion

Python 3.3 is also EOL and even less used, so let's drop that too.

It also does some minor code cleanup.

@hugovk
Copy link
Copy Markdown
Contributor Author

hugovk commented Jan 30, 2018

When merged, the 2.6 skips in #932 can be removed.

@codecov
Copy link
Copy Markdown

codecov bot commented Jan 30, 2018

Codecov Report

Merging #933 into master will decrease coverage by 0.17%.
The diff coverage is 83.33%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #933      +/-   ##
==========================================
- Coverage   82.26%   82.09%   -0.18%     
==========================================
  Files          20       21       +1     
  Lines        3643     3769     +126     
  Branches      541      559      +18     
==========================================
+ Hits         2997     3094      +97     
- Misses        499      518      +19     
- Partials      147      157      +10
Impacted Files Coverage Δ
pika/exceptions.py 72.11% <0%> (ø) ⬆️
pika/compat/__init__.py 84.31% <100%> (ø) ⬆️
pika/adapters/blocking_connection.py 84.87% <100%> (+0.13%) ⬆️
pika/__init__.py 100% <100%> (+22.22%) ⬆️
pika/adapters/base_connection.py 65.59% <100%> (+0.52%) ⬆️
pika/adapters/__init__.py 68.18% <0%> (-4.05%) ⬇️
pika/adapters/libev_connection.py 73.43% <0%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 03275ed...68cee87. Read the comment docs.

@michaelklishin
Copy link
Copy Markdown
Contributor

@lukebakken @gmr fine with you to merge?

Copy link
Copy Markdown
Member

@lukebakken lukebakken left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, I have requested some changes.

.travis.yml Outdated
python:
- 2.6
- 2.7
- 3.3
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove version 3.3

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will do!

import json
import random

print(('pika version: %s') % pika.__version__)
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could these changes be part of a separate PR? They aren't directly related to dropping 2.6 and 3.3 support, right?

`Basic.Cancel`
"""

__slots__ = ('method_frame')
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See my comment about making these changes in a separate PR

def genSingleEncode(prefix, cValue, unresolved_domain):
type = spec.resolveDomain(unresolved_domain)
if type == 'shortstr':
print(prefix + \
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use a separate PR for formatting changes.

@gmr
Copy link
Copy Markdown
Member

gmr commented Jan 30, 2018

There's a lot of work in this PR that I'd say misattributes the changes to removal of 2.6 support. Code formatting and style changes aren't the same as removing 2.6.

I don't disagree with the code formatting changes, but I'd rather separate concerns TBH.

@lukebakken lukebakken added this to the 1.0.0 milestone Jan 30, 2018
@gmr
Copy link
Copy Markdown
Member

gmr commented Jan 30, 2018

That being said I'm a big +1 for dropping 2.6 support as long as we're very clear in versioning that it is a breaking change for anyone who's stuck in Python pre 2013. (2.6 EOL was 2013).

@hugovk
Copy link
Copy Markdown
Contributor Author

hugovk commented Jan 30, 2018

Some of the changes are only possible after dropping 2.6 (formatters/set/dict), but sure, I can move all those to another PR!

@hugovk
Copy link
Copy Markdown
Contributor Author

hugovk commented Jan 31, 2018

This PR updated to only include dropping the EOL versions. Will create another for the others.

The coverage build job fails because:

0.54s$ aws s3 cp --recursive s3://com-gavinroy-travis/pika/$TRAVIS_BUILD_NUMBER/ coverage
fatal error: Unable to locate credentials

This is unrelated, and should be disabled from PRs and forks.

This was referenced Jan 31, 2018
@gmr gmr merged commit b8325ec into pika:master Jan 31, 2018
@hugovk hugovk deleted the rm-2.6 branch January 31, 2018 15:25
lukebakken pushed a commit that referenced this pull request Apr 12, 2018
Drop support for EOL Python 2.6 and 3.3

(cherry picked from commit b8325ec)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants