From 4ddd5d2c647a2940c976b9a888f5f95bfc57d655 Mon Sep 17 00:00:00 2001 From: ValentinS4t1qbit <41597680+ValentinS4t1qbit@users.noreply.github.com> Date: Thu, 16 Jun 2022 11:14:43 -0700 Subject: [PATCH] Fixes for docs and readme, files for Pypi (#166) * Docs and readme fixed with feedback. Pypi file removed as it hinders the installation from source process: a guide will be provided to maintainer team for pypi update. Co-authored-by: AlexandreF-1qbit <76115575+AlexandreF-1qbit@users.noreply.github.com> --- README.rst | 67 ++++++++++-------- .../source/_static/img/tangelo_logo_white.png | Bin 0 -> 28943 bytes docs/source/conf.py | 2 +- .../source/_static/img/curve_dmet_qcc.png | 1 + .../source/_static/img/quantum_workflow.png | 1 + .../_static/img/tangelo_logo_gradient.png | 1 + docs/source/index.rst | 6 +- docs/source/overview.rst | 4 ++ setup.py | 15 ++-- 9 files changed, 56 insertions(+), 41 deletions(-) create mode 100644 docs/source/_static/img/tangelo_logo_white.png create mode 120000 docs/source/docs/source/_static/img/curve_dmet_qcc.png create mode 120000 docs/source/docs/source/_static/img/quantum_workflow.png create mode 120000 docs/source/docs/source/_static/img/tangelo_logo_gradient.png create mode 100644 docs/source/overview.rst diff --git a/README.rst b/README.rst index ade396c6c..71f7e196f 100644 --- a/README.rst +++ b/README.rst @@ -1,8 +1,8 @@ -.. raw:: html +|tangelo_logo| - tangelo_logo - -| +.. |tangelo_logo| image:: ./docs/source/_static/img/tangelo_logo_gradient.png + :width: 600 + :alt: tangelo_logo |maintainer| |licence| |systems| |dev_branch| @@ -36,18 +36,20 @@ help. This package provides a growing collection of algorithms and toolboxes, including problem decomposition, to support the development of and the design of successful experiments on quantum devices. Tangelo is backend-agnostic, so that users can write code once and experiment with current and future platforms with minimal changes. -.. raw:: html - - curve - Tangelo was used to perform quantum experiments that led to `peer-reviewed work `_ published in scientific journals, co-authored by professionals from the chemical industry and quantum hardware manufacturers. +|curve| + +.. |curve| image:: ./docs/source/_static/img/curve_dmet_qcc.png + :width: 400 + :alt: curve + We hope to grow a healthy community around Tangelo, collaborate, and together leverage the best of what the field has to offer. - Our paper on arXiv (link updated as soon as available) -- `Sphinx documentation `_. +- Our `Sphinx documentation `_. What will you do with Tangelo ? @@ -60,27 +62,15 @@ This package requires a Python 3 environment. We recommend: * installing the "dev" version of Python3 if you encounter missing header errors, such as ``python.h file not found``. * having good C/C++ compilers and BLAS libraries to ensure good overall performance of computation-intensive code. -Quick note for Windows users -^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -Our installation instructions will work on Linux and MacOS systems. If you are using Windows, we recommend -you install the `Windows Linux Subsystem `_, which allows you -to run Ubuntu as an application. Once it has been installed, you can type ``explorer.exe`` in your Ubuntu terminal to -drag and drop files between your Windows and Linux environment. +Using pip +^^^^^^^^^ -Here are a few essentials to install inside a brand new Ubuntu environment, before trying to install Tangelo: +The easiest way to install Tangelo in your environment. We recommend upgrading pip first: .. code-block:: - sudo apt update && sudo apt upgrade - sudo apt-get install python3-dev - sudo apt-get install python3-venv - sudo apt-get install cmake unzip - -Using pip -^^^^^^^^^ - -TODO: once this package is available on pypi, give the command. + python -m pip install -–upgrade pip. + pip install tangelo-gc From source, using setuptools ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -99,7 +89,7 @@ separately with ``pip``\ , before trying again. Optional dependencies ^^^^^^^^^^^^^^^^^^^^^ -Tangelo enables users to target various backends. In particular, it integrates quantum circuit simulators such as +Tangelo enables users to target various backends. In particular, it integrates quantum circuit simulators such as ``qulacs``\ , ``qiskit``\ , ``cirq`` or ``qdk``. We leave it to you to install the packages of your choice. Most packages can be installed through pip in a straightforward way: @@ -110,9 +100,28 @@ Most packages can be installed through pip in a straightforward way: pip install cirq ... -Depending on your OS and environment, some of these packages may be more challenging to install. For installing Microsoft's QDK +Depending on your OS and environment, some of these packages may be more challenging to install. For installing Microsoft's QDK or any issue regarding the above packages, please check their respective documentation. + +Quick note for Windows users +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Our installation instructions will work on Linux and MacOS systems. If you are using Windows, we recommend +you install the `Windows Linux Subsystem `_, which allows you +to run Ubuntu as an application. Once it has been installed, you can type ``explorer.exe`` in your Ubuntu terminal to +drag and drop files between your Windows and Linux environment. + +Here are a few essentials to install inside a brand new Ubuntu environment, before trying to install Tangelo: + +.. code-block:: + + sudo apt update && sudo apt upgrade + sudo apt-get install python3-dev + sudo apt-get install python3-venv + sudo apt-get install cmake unzip + + Optional: environment variables ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -171,4 +180,4 @@ If you use Tangelo in your research, please cite: [TODO: Placeholder Tangelo for arXiv paper] -© Good Chemistry Company 2021. This software is released under the Apache Software License version 2.0. +© Good Chemistry Company 2022. This software is released under the Apache Software License version 2.0. diff --git a/docs/source/_static/img/tangelo_logo_white.png b/docs/source/_static/img/tangelo_logo_white.png new file mode 100644 index 0000000000000000000000000000000000000000..c9fd6395193387025588f3101881d3ebb8713d3d GIT binary patch literal 28943 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 literal 0 HcmV?d00001 diff --git a/docs/source/conf.py b/docs/source/conf.py index 810935456..2d4d6fc13 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -58,6 +58,6 @@ # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] html_css_files = ['css/custom.css'] # works (path relative to html_static_path) -html_logo = './_static/img/tangelo_name_white.png' # works (path relative to conf.py) +html_logo = './_static/img/tangelo_logo_white.png' # works (path relative to conf.py) autodoc_mock_imports = ['qemist-client', 'PIL', 'Pillow', 'qsharp'] diff --git a/docs/source/docs/source/_static/img/curve_dmet_qcc.png b/docs/source/docs/source/_static/img/curve_dmet_qcc.png new file mode 120000 index 000000000..be2797194 --- /dev/null +++ b/docs/source/docs/source/_static/img/curve_dmet_qcc.png @@ -0,0 +1 @@ +../../../../_static/img/curve_dmet_qcc.png \ No newline at end of file diff --git a/docs/source/docs/source/_static/img/quantum_workflow.png b/docs/source/docs/source/_static/img/quantum_workflow.png new file mode 120000 index 000000000..497d595dc --- /dev/null +++ b/docs/source/docs/source/_static/img/quantum_workflow.png @@ -0,0 +1 @@ +../../../../_static/img/quantum_workflow.png \ No newline at end of file diff --git a/docs/source/docs/source/_static/img/tangelo_logo_gradient.png b/docs/source/docs/source/_static/img/tangelo_logo_gradient.png new file mode 120000 index 000000000..f5e7a4e66 --- /dev/null +++ b/docs/source/docs/source/_static/img/tangelo_logo_gradient.png @@ -0,0 +1 @@ +../../../../_static/img/tangelo_logo_gradient.png \ No newline at end of file diff --git a/docs/source/index.rst b/docs/source/index.rst index 79c6ad37a..7d1426478 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -3,14 +3,14 @@ You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. -Welcome to tangelo's documentation! -================================ +Welcome to Tangelo's documentation! +=================================== .. toctree:: :maxdepth: 2 :caption: Contents: - README + overview tangelo Indices and tables diff --git a/docs/source/overview.rst b/docs/source/overview.rst new file mode 100644 index 000000000..c19b25a00 --- /dev/null +++ b/docs/source/overview.rst @@ -0,0 +1,4 @@ +Overview +======== + +.. include:: README.rst diff --git a/setup.py b/setup.py index d5ef02243..788395212 100755 --- a/setup.py +++ b/setup.py @@ -6,9 +6,7 @@ def install(package): subprocess.check_call([sys.executable, "-m", "pip", "install", package]) - -with open("tangelo/_version.py") as f: - version = f.readlines()[-1].split()[-1].strip("\"'") +version = '0.3.0' with open('README.rst', 'r') as f: long_description = f.read() @@ -17,14 +15,15 @@ def install(package): install('pyscf') install('git+https://github.com/pyscf/semiempirical') +description = "Maintained by Good Chemistry Company, focusing on the development of end-to-end materials simulation workflows on quantum computers." + setuptools.setup( - name="tangelo", + name="tangelo-gc", author="The Tangelo developers", version=version, - description="Tangelo is a python package developed by Good Chemistry Company, focusing on the development " - "of end-to-end materials simulation workflows on quantum computers.", - long_description=long_description, - long_description_content_type="text/x-rst", + description=description, + long_description=description, + #long_description_content_type=description, url="https://github.com/goodchemistryco/Tangelo", packages=setuptools.find_packages(), test_suite="tangelo",