Index: jupyterlab_widgets-1.0.2/pyproject.toml =================================================================== --- jupyterlab_widgets-1.0.2.orig/pyproject.toml +++ jupyterlab_widgets-1.0.2/pyproject.toml @@ -1,3 +1,17 @@ [build-system] -requires = ["jupyter_packaging~=0.7.9", "jupyterlab~=3.0", "setuptools>=40.8.0", "wheel"] -build-backend = "setuptools.build_meta" +requires = ["jupyter_packaging~=0.10,<2", "jupyterlab~=3.0"] +build-backend = "jupyter_packaging.build_api" + +[tool.jupyter-packaging.options] +skip-if-exists = ["jupyterlab_widgets/labextension/package.json"] +ensured-targets = ["jupyterlab_widgets/labextension/package.json"] + +[tool.jupyter-packaging.builder] +factory = "jupyter_packaging.npm_builder" + +[tool.jupyter-packaging.build-args] +build_cmd = "build:prod" +npm = ["jlpm"] + +[tool.check-manifest] +ignore = ["jupyterlab_widgets/labextension/**", "yarn.lock", ".*", "package-lock.json"] \ No newline at end of file Index: jupyterlab_widgets-1.0.2/setup.cfg =================================================================== --- jupyterlab_widgets-1.0.2.orig/setup.cfg +++ jupyterlab_widgets-1.0.2/setup.cfg @@ -1,4 +1,37 @@ -[egg_info] -tag_build = -tag_date = 0 +[metadata] +name = jupyterlab_widgets +version = attr: jupyterlab_widgets._version.__version__ +author = Jupyter Development Team +author_email = jupyter@googlegroups.com +url = https://github.com/jupyter-widgets/ipywidgets +description = Jupyter interactive widgets for JupyterLab +long_description = file: README.md +long_description_content_type = text/markdown +license_file = LICENSE +license = BSD-3-Clause +platforms = Linux, Mac OS X, Windows +keywords = Interactive, Interpreter, Shell, Web, notebook, widgets, Jupyter, JupyterLab, JupyterLab3 +classifiers = + Intended Audience :: Developers + Intended Audience :: System Administrators + Intended Audience :: Science/Research + License :: OSI Approved :: BSD License + Programming Language :: Python + Programming Language :: Python :: 3 + Programming Language :: Python :: 3.6 + Programming Language :: Python :: 3.7 + Programming Language :: Python :: 3.8 + Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 + Programming Language :: Python :: 3 :: Only + Framework :: Jupyter + Framework :: Jupyter :: JupyterLab + Framework :: Jupyter :: JupyterLab :: 3 + Framework :: Jupyter :: JupyterLab :: Extensions + Framework :: Jupyter :: JupyterLab :: Extensions :: Prebuilt +[options] +python_requires = >=3.6 +zip_safe=False +include_package_data = True +packages = find: \ No newline at end of file Index: jupyterlab_widgets-1.0.2/setup.py =================================================================== --- jupyterlab_widgets-1.0.2.orig/setup.py +++ jupyterlab_widgets-1.0.2/setup.py @@ -1,96 +1,38 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + """ jupyterlab_widgets setup """ -import os - from jupyter_packaging import ( - create_cmdclass, install_npm, ensure_targets, - combine_commands, ensure_python, get_version, + wrap_installers, + npm_builder, + get_data_files ) -import setuptools +from pathlib import Path +from setuptools import setup -HERE = os.path.abspath(os.path.dirname(__file__)) +HERE = Path(__file__).parent.resolve() +IS_REPO = (HERE.parent / '.git').exists() +LAB_PATH = HERE / "jupyterlab_widgets" / "labextension" # The name of the project name = "jupyterlab_widgets" - -# Ensure a valid python version -ensure_python(">=3.6") - -# Get our version -version = get_version(os.path.join(name, "_version.py")) - -lab_path = os.path.join(HERE, name, "labextension") - -# Representative files that should exist after a successful build -jstargets = [ - os.path.join(lab_path, "package.json"), -] - -package_data_spec = { - name: [ - "*" - ] -} - labext_name = "@jupyter-widgets/jupyterlab-manager" data_files_spec = [ - ("share/jupyter/labextensions/%s" % labext_name, lab_path, "**"), - ("share/jupyter/labextensions/%s" % labext_name, HERE, "install.json"), + (f"share/jupyter/labextensions/{labext_name}", LAB_PATH, "**"), + (f"share/jupyter/labextensions/{labext_name}", HERE, "install.json"), ] -cmdclass = create_cmdclass( - "jsdeps", - package_data_spec=package_data_spec, - data_files_spec=data_files_spec -) - -# if the static assets already exist, do not invoke npm so we can make a wheel -# from the sdist package, since the npm build really only works from this -# repo. -jsbuild = [] -if all(os.path.exists(f) for f in jstargets): - jsbuild.append(install_npm(HERE, build_cmd="build:prod", npm=["jlpm"])) -jsbuild.append(ensure_targets(jstargets)) - -cmdclass["jsdeps"] = combine_commands(*jsbuild) - -with open("README.md", "r") as fh: - long_description = fh.read() - -setup_args = dict( - name=name, - version=version, - url="https://github.com/jupyter-widgets/ipywidgets", - author="Jupyter Development Team", - description="A JupyterLab extension.", - long_description= long_description, - long_description_content_type="text/markdown", - cmdclass=cmdclass, - packages=setuptools.find_packages(), - install_requires=[], - zip_safe=False, - include_package_data=True, - python_requires=">=3.6", - license="BSD-3-Clause", - platforms="Linux, Mac OS X, Windows", - keywords=["Jupyter", "JupyterLab", "JupyterLab3"], - classifiers=[ - "License :: OSI Approved :: BSD License", - "Programming Language :: Python", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.6", - "Programming Language :: Python :: 3.7", - "Programming Language :: Python :: 3.8", - "Framework :: Jupyter", - "Framework :: Jupyter :: JupyterLab", - "Framework :: Jupyter :: JupyterLab :: 3", - "Framework :: Jupyter :: JupyterLab :: Extensions", - "Framework :: Jupyter :: JupyterLab :: Extensions :: Prebuilt", - ], +post_develop = npm_builder( + build_cmd="install:extension", source_dir="src", build_dir=LAB_PATH ) +cmdclass = wrap_installers(post_develop=post_develop) if __name__ == "__main__": - setuptools.setup(**setup_args) + setup( + cmdclass=cmdclass, + data_files=get_data_files(data_files_spec), + ) \ No newline at end of file