Black formatting applied
MODIFY
repo2docker/buildpacks/pipfile/__init__.py
repo2docker/buildpacks/pipfile/__init__.py
@@ -4,6 +4,7 @@ import re
from ..conda import CondaBuildPack
+
class PipfileBuildPack(CondaBuildPack):
"""Setup Python with pipfile for use with a repository."""
@@ -15,30 +16,30 @@ class PipfileBuildPack(CondaBuildPack):
Falsy empty string '' if not found.
"""
- if hasattr(self, '_python_version'):
+ if hasattr(self, "_python_version"):
return self._python_version
files_to_search_in_order = [
{
- 'path': self.binder_path('Pipfile.lock'),
- 'pattern': r'\s*\"python_(?:full_)?version\": \"?([0-9a-z\.]*)\"?', # ' "python_version": "3.6"'
+ "path": self.binder_path("Pipfile.lock"),
+ "pattern": r"\s*\"python_(?:full_)?version\": \"?([0-9a-z\.]*)\"?", # ' "python_version": "3.6"'
},
{
- 'path': self.binder_path('Pipfile'),
- 'pattern': r'python_(?:full_)?version\s*=+\s*\"?([0-9a-z\.]*)\"?', # 'python_version = "3.6"'
+ "path": self.binder_path("Pipfile"),
+ "pattern": r"python_(?:full_)?version\s*=+\s*\"?([0-9a-z\.]*)\"?", # 'python_version = "3.6"'
},
{
- 'path': self.binder_path('runtime.txt'),
- 'pattern': r'\s*python-([0-9a-z\.]*)\s*', # 'python-3.6'
+ "path": self.binder_path("runtime.txt"),
+ "pattern": r"\s*python-([0-9a-z\.]*)\s*", # 'python-3.6'
},
]
py_version = None
for file in files_to_search_in_order:
try:
- with open(file['path']) as f:
+ with open(file["path"]) as f:
for line in f:
- match = re.match(file['pattern'], line)
+ match = re.match(file["pattern"], line)
if not match:
continue
py_version = match.group(1)
@@ -54,11 +55,11 @@ class PipfileBuildPack(CondaBuildPack):
self._python_version = self.major_pythons.get(py_version[0])
else:
# return major.minor
- self._python_version = '.'.join(py_version.split('.')[:2])
+ self._python_version = ".".join(py_version.split(".")[:2])
return self._python_version
else:
# use the default Python
- self._python_version = self.major_pythons['3']
+ self._python_version = self.major_pythons["3"]
return self._python_version
def get_assemble_scripts(self):
@@ -73,36 +74,45 @@ class PipfileBuildPack(CondaBuildPack):
if self.py2:
# using python 2 kernel,
# requirements3.txt allows installation in the notebook server env
- nb_requirements_file = self.binder_path('requirements3.txt')
+ nb_requirements_file = self.binder_path("requirements3.txt")
if os.path.exists(nb_requirements_file):
- assemble_scripts.append((
- '${NB_USER}',
+ assemble_scripts.append(
+ (
+ "${NB_USER}",
# want the $NB_PYHTON_PREFIX environment variable, not for
# Python's string formatting to try and replace this
- '${{NB_PYTHON_PREFIX}}/bin/pip install --no-cache-dir -r "{}"'.format(nb_requirements_file)
- ))
+ '${{NB_PYTHON_PREFIX}}/bin/pip install --no-cache-dir -r "{}"'.format(
+ nb_requirements_file
+ ),
+ )
+ )
# install Pipfile.lock or fallback to installing Pipfile
- pipenv = '${KERNEL_PYTHON_PREFIX}/bin/pipenv'
- python = '${KERNEL_PYTHON_PREFIX}/bin/python'
- pipfile = self.binder_path('Pipfile')
- pipfile_lock = self.binder_path('Pipfile.lock')
- working_directory = self.binder_dir or '.'
- assemble_scripts.append((
- '${NB_USER}',
- 'pip install pipenv'
- ))
+ pipenv = "${KERNEL_PYTHON_PREFIX}/bin/pipenv"
+ python = "${KERNEL_PYTHON_PREFIX}/bin/python"
+ pipfile = self.binder_path("Pipfile")
+ pipfile_lock = self.binder_path("Pipfile.lock")
+ working_directory = self.binder_dir or "."
+ assemble_scripts.append(("${NB_USER}", "pip install pipenv"))
# if Pipfile.lock isn't found, Pipfile is used to create one
if not os.path.exists(pipfile_lock):
- assemble_scripts.append((
- '${NB_USER}',
- '(cd {} && {} lock --python {})'.format(working_directory, pipenv, python)
- ))
+ assemble_scripts.append(
+ (
+ "${NB_USER}",
+ "(cd {} && {} lock --python {})".format(
+ working_directory, pipenv, python
+ ),
+ )
+ )
# install Pipfile.lock
- assemble_scripts.append((
- '${NB_USER}',
- '(cd {} && {} install --ignore-pipfile --deploy --system --dev --python {})'.format(working_directory, pipenv, python)
- ))
+ assemble_scripts.append(
+ (
+ "${NB_USER}",
+ "(cd {} && {} install --ignore-pipfile --deploy --system --dev --python {})".format(
+ working_directory, pipenv, python
+ ),
+ )
+ )
return assemble_scripts
@@ -110,14 +120,14 @@ class PipfileBuildPack(CondaBuildPack):
"""Check if current repo should be built with the Python buildpack.
"""
# first make sure python is not explicitly unwanted
- runtime_txt = self.binder_path('runtime.txt')
+ runtime_txt = self.binder_path("runtime.txt")
if os.path.exists(runtime_txt):
with open(runtime_txt) as f:
runtime = f.read().strip()
if not runtime.startswith("python-"):
return False
- pipfile = self.binder_path('Pipfile')
- pipfile_lock = self.binder_path('Pipfile.lock')
+ pipfile = self.binder_path("Pipfile")
+ pipfile_lock = self.binder_path("Pipfile.lock")
return os.path.exists(pipfile) or os.path.exists(pipfile_lock)

MODIFY
tests/pipfile/setup-py-explicit-in-binder-dir/setup.py
tests/pipfile/setup-py-explicit-in-binder-dir/setup.py
from setuptools import setup, find_packages
setup(
- name='Dummy',
- version='1.0.0',
- url='https://git-place.org/dummy/dummy.git',
- author='Dummy Name',
- author_email='dummy@my-email.com',
- description='Dummy package for testing purposes only',
+ name="Dummy",
+ version="1.0.0",
+ url="https://git-place.org/dummy/dummy.git",
+ author="Dummy Name",
+ author_email="dummy@my-email.com",
+ description="Dummy package for testing purposes only",
packages=find_packages(),
- install_requires=['pypi-pkg-test==0.0.4'],
+ install_requires=["pypi-pkg-test==0.0.4"],
)

MODIFY
tests/pipfile/setup-py-explicit/setup.py
tests/pipfile/setup-py-explicit/setup.py
from setuptools import setup, find_packages
setup(
- name='Dummy',
- version='1.0.0',
- url='https://git-place.org/dummy/dummy.git',
- author='Dummy Name',
- author_email='dummy@my-email.com',
- description='Dummy package for testing purposes only',
+ name="Dummy",
+ version="1.0.0",
+ url="https://git-place.org/dummy/dummy.git",
+ author="Dummy Name",
+ author_email="dummy@my-email.com",
+ description="Dummy package for testing purposes only",
packages=find_packages(),
- install_requires=['pypi-pkg-test==0.0.4'],
+ install_requires=["pypi-pkg-test==0.0.4"],
)

MODIFY
tests/pipfile/setup-py-implicit/setup.py
tests/pipfile/setup-py-implicit/setup.py
from setuptools import setup, find_packages
setup(
- name='Dummy',
- version='1.0.0',
- url='https://git-place.org/dummy/dummy.git',
- author='Dummy Name',
- author_email='dummy@my-email.com',
- description='Dummy package for testing purposes only',
+ name="Dummy",
+ version="1.0.0",
+ url="https://git-place.org/dummy/dummy.git",
+ author="Dummy Name",
+ author_email="dummy@my-email.com",
+ description="Dummy package for testing purposes only",
packages=find_packages(),
- install_requires=['pypi-pkg-test==0.0.4'],
+ install_requires=["pypi-pkg-test==0.0.4"],
)

Black formatting applied