Skip to content

Add information for lib3to6 to practicalities #287

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Sep 19, 2023

Conversation

mscuthbert
Copy link
Collaborator

Also update some prose for 2020; and for people like me who only skim headings, re-wrote the not-recommended mitigations in negative voice.

Also update some prose for 2020; and for people like me who only skim headings, re-wrote the not-recommended mitigations in negative voice.

It is possible to release a meta-package that has _virtually_ no code and relies
on a conditional dependency to install its actual core code on the user system.
For example, Frob-6.0 could be a meta-package which depends on
Frob-real-py2 on Python < 3.0, and Frob-real-py3 on Python ≥ 3.4. While
this approach is _doable_ this can make imports confusing.

## Depend on setuptools
## Don't depend on setuptools
Copy link
Member

@Carreau Carreau Aug 26, 2020

Choose a reason for hiding this comment

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

I think this one is

Suggested change
## Don't depend on setuptools
## Don't depend on setuptools unless version >=24.3

Maybe ?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

How about Don't depend on setuptools unless version >=24.3

So that it's all a list of not to dos?

Copy link
Member

Choose a reason for hiding this comment

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

sounds good updated suggestion.

Choose a reason for hiding this comment

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

buildscript {
repositories {
// Gradle 4.1 and higher include support for Google's Maven repo using
// the google() method. And you need to include this repo to download
//

## If your users absolutely need Py2.7 but you want to move on

If you have users that still depend on Python 2.7 and you cannot drop support yet,
it may nonetheless be possible to start using Python 3 in your codebase. T
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
it may nonetheless be possible to start using Python 3 in your codebase. T
it may nonetheless be possible to start using Python 3 in your codebase.


If you have users that still depend on Python 2.7 and you cannot drop support yet,
it may nonetheless be possible to start using Python 3 in your codebase. T
hrough automatic conversion using [lib3to6](https://pypi.org/project/lib3to6/)
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
hrough automatic conversion using [lib3to6](https://pypi.org/project/lib3to6/)
Through automatic conversion using [lib3to6](https://pypi.org/project/lib3to6/)

If you have users that still depend on Python 2.7 and you cannot drop support yet,
it may nonetheless be possible to start using Python 3 in your codebase. T
hrough automatic conversion using [lib3to6](https://pypi.org/project/lib3to6/)
(similar to BabelJS for JavaScript)
Copy link
Contributor

Choose a reason for hiding this comment

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

Looks like it's named simply Babel: https://babeljs.io/

Suggested change
(similar to BabelJS for JavaScript)
(similar to Babel for JavaScript)

it may nonetheless be possible to start using Python 3 in your codebase. T
hrough automatic conversion using [lib3to6](https://pypi.org/project/lib3to6/)
(similar to BabelJS for JavaScript)
you can generate distribution files that will work on both Python2 and Python3.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
you can generate distribution files that will work on both Python2 and Python3.
you can generate distribution files that will work on both Python 2 and Python 3.

hrough automatic conversion using [lib3to6](https://pypi.org/project/lib3to6/)
(similar to BabelJS for JavaScript)
you can generate distribution files that will work on both Python2 and Python3.
Lib3to6 is also useful if your project needs to support older versions of Python3
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
Lib3to6 is also useful if your project needs to support older versions of Python3
Lib3to6 is also useful if your project needs to support older versions of Python 3

@mbarkhau mbarkhau mentioned this pull request Aug 27, 2020
Copy link

@myself001695 myself001695 left a comment

Choose a reason for hiding this comment

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

@@ -11,7 +11,6 @@ is mostly written with the assumption that software are going to stop Python 2
support, it does perfectly apply to a package that wishes to not support Python 3,
or is stopping support for any minor version.


This page gathers information and links to resources allowing a library
to stop supporting an older version of Python without causing too
much disruption for users who haven't upgraded to this new version.

Choose a reason for hiding this comment

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

~~~~

@hugovk
Copy link
Contributor

hugovk commented Feb 8, 2023

(I've reported @myself001695 to GitHub for disruptive behaviour.)

@mscuthbert mscuthbert merged commit 7d2016f into master Sep 19, 2023
@mscuthbert mscuthbert deleted the practicalities-lib3to6 branch September 19, 2023 17:47
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.

5 participants