diff --git a/.readthedocs.yaml b/.readthedocs.yaml
new file mode 100644
index 00000000..162aeb6b
--- /dev/null
+++ b/.readthedocs.yaml
@@ -0,0 +1,35 @@
+# Read the Docs configuration file for Sphinx projects
+# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
+
+# Required
+version: 2
+
+# Set the OS, Python version and other tools you might need
+build:
+ os: "ubuntu-22.04"
+ tools:
+ python: "mambaforge-22.9"
+
+conda:
+ environment: "doc/environment.yml"
+
+# Build documentation in the "docs/" directory with Sphinx
+sphinx:
+ builder: html
+ configuration: doc/conf.py
+ # You can configure Sphinx to use a different builder, for instance use the dirhtml builder for simpler URLs
+ # builder: "dirhtml"
+ # Fail on all warnings to avoid broken references
+ # fail_on_warning: true
+
+# Optionally build your docs in additional formats such as PDF and ePub
+# formats:
+# - pdf
+# - epub
+
+# Optional but recommended, declare the Python requirements required
+# to build your documentation
+# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html
+python:
+ install:
+ - requirements: doc/requirements.txt
\ No newline at end of file
diff --git a/README.rst b/README.rst
index 14d1a4c9..0b2c68ac 100644
--- a/README.rst
+++ b/README.rst
@@ -52,9 +52,9 @@ To install L-Py, you need to create an environment (named for instance lpy) :
.. code-block:: bash
- >>> conda create -n lpy openalea.lpy -c fredboudon -c conda-forge
+ >>> conda create -n lpy openalea.lpy -c openalea3 -c conda-forge
-The package ``openalea.lpy`` is retrieved from the ``fredboudon`` channel (developement) and its dependencies will be taken from ``conda-forge`` channel.
+The package ``openalea.lpy`` is retrieved from the ``openalea3`` channel (developement) and its dependencies will be taken from ``conda-forge`` channel.
Then, you need to activate the L-Py environment
@@ -74,9 +74,6 @@ Documentation
Documentation is available at ``_
-
-A previous version of the documentation was also available on `OpenAlea website `_
-
Help and Support
----------------
diff --git a/bckup_setup.py b/bckup_setup.py
deleted file mode 100644
index 942815fc..00000000
--- a/bckup_setup.py
+++ /dev/null
@@ -1,120 +0,0 @@
-# -*- coding: utf-8 -*-
-__revision__ = "$Id$"
-
-# Header
-import os, sys
-pj = os.path.join
-
-project = 'openalea'
-package = 'lpy'
-name = 'openalea.Lpy'
-namespace = 'openalea'
-pkg_name = 'openalea.lpy'
-description = 'Lindenmayer Systems in Python package for OpenAlea.'
-long_description= 'L-Py is a simulation software that mixes L-systems construction with the Python high-level modeling language. '
-authors = 'Frederic Boudon'
-authors_email = 'frederic.boudon@cirad.fr'
-url= 'https://github.com/openalea/lpy'
-# LGPL compatible INRIA license
-license = 'Cecill-C'
-
-##############
-# Setup script
-
-# Package name
-pkg_name= namespace + '.' + package
-
-# check that meta version is updated
-lpydir = pj(os.path.dirname(__file__),'src', 'openalea', 'lpy')
-versionfile = pj(lpydir,'__version__.py')
-
-versioninfo = {}
-with open(versionfile) as fp:
- exec(fp.read(), versioninfo)
-
-version= versioninfo['LPY_VERSION_STR']
-#print (pkg_name+': version = '+version)
-
-
-def compile_interface():
- cwd = os.getcwd()
- os.chdir(pj(lpydir,'gui'))
- sys.path = ['']+sys.path
- import generate_ui
- os.chdir(cwd)
-
- py2exe_file = pj(lpydir,'gui','py2exe_release.py')
- if not os.path.exists(py2exe_file):
- open(py2exe_file,'w').close()
-
-if 'install' in sys.argv:
- compile_interface()
-
-
-from setuptools import setup
-
-
-# Scons build directory
-build_prefix= "build-cmake"
-
-if 'CONDA_PREFIX' in os.environ or 'PREFIX' in os.environ :
- deploy_args = dict(namespace_packages = [namespace])
-else:
- currentdir = os.path.dirname(__file__)
- deploy_args = dict(
- # Specific options of openalea.deploy
- lib_dirs = {'lib' : pj(currentdir, build_prefix, 'lib'),},
- bin_dirs = {'bin': pj(currentdir, build_prefix, 'bin'),},
- inc_dirs = { 'include' : pj(currentdir, build_prefix, 'include') },
- share_dirs = { 'share' : 'share'},
- postinstall_scripts = ['pgl_postinstall',],
- # namespace_packages = [namespace],
- # create_namespaces = False,
- )
-
-setup(
- name=name,
- version=version,
- description=description,
- long_description=long_description,
- author=authors,
- author_email=authors_email,
- url=url,
- license=license,
-
- use_scm_version=True,
- setup_requires=['setuptools_scm'],
-
- # pure python packages
- packages = [
- pkg_name,
- pkg_name + '_wralea',
- pkg_name + '.gui',
- pkg_name + '.gui.icons',
- pkg_name + '.lsysparameters',
- pkg_name + '.lsysparameters.schema',
- pkg_name + '.gui.plugins',
- pkg_name + '.cpfg_compat'
- ],
-
- # python packages directory
- package_dir = { '' : 'src',},
-
- package_data={
- "": ['*.pyd', '*.so', '*.dylib', '*.lpy','*.ui','*.qrc','*.json','*.png'],
- },
-
- # Add package platform libraries if any
- include_package_data = True,
- #package_data = {'' : ['*.pyd', '*.so', '*.dylib', '*.lpy','*.ui','*.qrc'],},
- zip_safe = False,
-
- # Dependencies
- entry_points = {
- "wralea": ["lpy = openalea.lpy_wralea",],
- 'gui_scripts': ['lpy = openalea.lpy.gui.lpystudio:main',],
- 'console_scripts': ['cpfg2lpy = openalea.lpy.cpfg_compat.cpfg2lpy:main',],
- },
-
- **deploy_args
-)
diff --git a/build.sh b/build.sh
index 934bb7db..e8171cda 100755
--- a/build.sh
+++ b/build.sh
@@ -1 +1 @@
-conda mambabuild . -c conda-forge -c fredboudon --python=3.10 --no-test
+conda mambabuild . -c conda-forge -c openalea3/label/dev -c openalea3/label/rc -c openalea3 --python=3.13 --no-test
diff --git a/doc/_images/openalea_web.svg b/doc/_images/openalea_web.svg
new file mode 100644
index 00000000..1e3527c9
--- /dev/null
+++ b/doc/_images/openalea_web.svg
@@ -0,0 +1,108 @@
+
+
+
+
diff --git a/doc/conf.py b/doc/conf.py
index a694695d..3d05835d 100644
--- a/doc/conf.py
+++ b/doc/conf.py
@@ -1,290 +1,153 @@
# -*- coding: utf-8 -*-
-#
-# LPy documentation build configuration file, created by
-# sphinx-quickstart on Fri Oct 6 12:50:27 2017.
-#
-# This file is execfile()d with the current directory set to its
-# containing dir.
-#
-# Note that not all possible configuration values are present in this
-# autogenerated file.
-#
-# All configuration values have a default; values that are commented out
-# serve to show the default.
-
import sys
import os
-from os.path import join as pj
+
+import pydata_sphinx_theme # Pydata theme: https://pydata-sphinx-theme.readthedocs.io/en/stable/index.html
+
+from importlib.metadata import metadata
+project='lpy'
+meta = metadata('openalea.' + project)
+release = meta.get("version")
+# for example take major/minor
+version = ".".join(release.split('.')[:3])
+author = meta['Author'].split(' <')[0]
+desc = meta['Summary']
+urls = {k:v for k,v in [item.split(',') for item in meta.get_all('Project-URL')]}
+
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
-#sys.path.insert(0, os.path.abspath('.'))
+# sys.path.insert(0, os.path.abspath('.'))
+sys.path.insert(0, os.path.abspath('..')) # to include the root of the package
# -- General configuration ------------------------------------------------
-f = pj(os.path.dirname(__file__),'..','src', 'openalea', 'lpy','__version__.py')
-d = {}
-exec(compile(open(f, "rb").read(), f, 'exec'),d,d)
-version= d['LPY_VERSION_STR']
-
-# If your documentation needs a minimal Sphinx version, state it here.
-#needs_sphinx = '1.0'
-
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
-extensions = []
-
+extensions = [
+ 'sphinx.ext.autodoc', # support for automatic inclusion of docstring
+ 'sphinx.ext.autosummary', # generates autodoc summaries
+ 'sphinx.ext.doctest', # inclusion and testing of doctest code snippets
+ 'sphinx.ext.intersphinx', # support for linking to other projects
+ 'sphinx.ext.mathjax', # support for math equations
+ 'sphinx.ext.ifconfig', # support for conditional content
+ 'sphinx.ext.viewcode', # support for links to source code
+ 'sphinx.ext.coverage', # includes doc coverage stats in the documentation
+ 'sphinx.ext.todo', # support for todo items
+ 'sphinx.ext.napoleon', # support for numpy and google style docstrings
+ "sphinx_favicon", # support for favicon
+ "sphinx_copybutton", # support for copybutton in code blocks
+ "nbsphinx", # for integrating jupyter notebooks
+ "myst_parser" # for parsing .md files
+]
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
-
+autosummary_generate = True
+exclude_patterns = ['build', '_build', '_templates']
# The suffix(es) of source filenames.
# You can specify multiple suffix as a list of string:
-# source_suffix = ['.rst', '.md']
-source_suffix = '.rst'
-
-# The encoding of source files.
-#source_encoding = 'utf-8-sig'
-
+source_suffix = {
+ '.rst': 'restructuredtext',
+ '.md': 'markdown',
+}
# The master toctree document.
master_doc = 'index'
-
# General information about the project.
-project = 'L-Py'
-copyright = 'F. Boudon for Cirad-Inria-Inra under Cecill-C license'
-author = 'F. Boudon, C. Godin et al.'
-
-# The version info for the project you're documenting, acts as replacement for
-# |version| and |release|, also used in various other places throughout the
-# built documents.
-#
-# The short X.Y version.
-#version = u'1'
-# The full version, including alpha/beta/rc tags.
-release = '0'
-
+copyright = u'Cecill-C INRAE / INRIA / CIRAD'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
-language = None
-
-# There are two options for replacing |today|: either, you set today to some
-# non-false value, then it is used:
-#today = ''
-# Else, today_fmt is used as the format for a strftime call.
-#today_fmt = '%B %d, %Y'
-
-# List of patterns, relative to source directory, that match files and
-# directories to ignore when looking for source files.
-exclude_patterns = ['_build']
-
-# The reST default role (used for this markup: `text`) to use for all
-# documents.
-#default_role = None
-
-# If true, '()' will be appended to :func: etc. cross-reference text.
-#add_function_parentheses = True
-
-# If true, the current module name will be prepended to all description
-# unit titles (such as .. function::).
-#add_module_names = True
-
-# If true, sectionauthor and moduleauthor directives will be shown in the
-# output. They are ignored by default.
-#show_authors = False
-
+language = "en"
# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'
-
-# A list of ignored prefixes for module index sorting.
-#modindex_common_prefix = []
-
-# If true, keep warnings as "system message" paragraphs in the built documents.
-#keep_warnings = False
-
# If true, `todo` and `todoList` produce output, else they produce nothing.
todo_include_todos = False
-
# -- Options for HTML output ----------------------------------------------
-
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
-#html_theme = 'classic'
-#html_theme = "sphinx_rtd_theme"
-#html_theme_path = ["_themes", ]
-
+html_theme = 'pydata_sphinx_theme'
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
-#html_theme_options = {}
-
-# Add any paths that contain custom themes here, relative to this directory.
-#html_theme_path = []
-
-# The name for this set of Sphinx documents. If None, it defaults to
-# " v documentation".
-#html_title = None
-
-# A shorter title for the navigation bar. Default is the same as html_title.
-#html_short_title = None
-
-# The name of an image file (relative to this directory) to place at the top
-# of the sidebar.
-#html_logo = None
-
-# The name of an image file (relative to this directory) to use as a favicon of
-# the docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
-# pixels large.
-#html_favicon = None
-
+html_theme_options = {
+ "header_links_before_dropdown": 6,
+ "sidebarwidth": 200,
+ "sticky_navigation": "false",
+ "collapse_navigation": "false",
+ "display_version": "true",
+ "icon_links": [
+ {
+ "name": "GitHub",
+ "url": "https://github.com/openalea/lpy", # do not want urls['Repository']
+ "icon": "fa-brands fa-github",
+ },
+ ],
+ "show_version_warning_banner": True,
+ "footer_start": ["copyright"],
+ "footer_center": ["sphinx-version"],
+ "secondary_sidebar_items": {
+ "**/*": ["page-toc", "edit-this-page", "sourcelink"],
+ "examples/no-sidebar": [],
+ },
+ "use_edit_page_button": True,
+ }
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
-#html_static_path = ['_static']
-
-# Add any extra paths that contain custom files (such as robots.txt or
-# .htaccess) here, relative to this directory. These files are copied
-# directly to the root of the documentation.
-#html_extra_path = []
-
-# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
-# using the given strftime format.
-#html_last_updated_fmt = '%b %d, %Y'
-
-# If true, SmartyPants will be used to convert quotes and dashes to
-# typographically correct entities.
-#html_use_smartypants = True
-
-# Custom sidebar templates, maps document names to template names.
-#html_sidebars = {}
-
-# Additional templates that should be rendered to pages, maps page names to
-# template names.
-#html_additional_pages = {}
-
+html_static_path = ['_images']
+html_logo = "_images/openalea_web.svg"
+html_favicon = "_images/openalea_web.svg"
# If false, no module index is generated.
-#html_domain_indices = True
-
+html_domain_indices = True
# If false, no index is generated.
-#html_use_index = True
-
+html_use_index = True
# If true, the index is split into individual pages for each letter.
-#html_split_index = False
-
+html_split_index = False
# If true, links to the reST sources are added to the pages.
-#html_show_sourcelink = True
-
+html_show_sourcelink = True
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
-#html_show_sphinx = True
-
+html_show_sphinx = True
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
-#html_show_copyright = True
-
-# If true, an OpenSearch description file will be output, and all pages will
-# contain a tag referring to it. The value of this option must be the
-# base URL from which the finished HTML is served.
-#html_use_opensearch = ''
-
-# This is the file name suffix for HTML files (e.g. ".xhtml").
-#html_file_suffix = None
-
-# Language to be used for generating the HTML full-text search index.
-# Sphinx supports the following languages:
-# 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja'
-# 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr'
-#html_search_language = 'en'
-
-# A dictionary with options for the search language support, empty by default.
-# Now only 'ja' uses this config value
-#html_search_options = {'type': 'default'}
-
-# The name of a javascript file (relative to the configuration directory) that
-# implements a search results scorer. If empty, the default will be used.
-#html_search_scorer = 'scorer.js'
-
+html_show_copyright = True
# Output file base name for HTML help builder.
-htmlhelp_basename = 'LPy'
+htmlhelp_basename = project + '_documentation'
+# Add infomation about github repository
+html_context = {
+ # "github_url": "https://github.com", # or your GitHub Enterprise site
+ "github_user": "openalea",
+ "github_repo": "lpy",
+ "github_version": "master",
+ "doc_path": "doc",
+}
# -- Options for LaTeX output ---------------------------------------------
-
latex_elements = {
-# The paper size ('letterpaper' or 'a4paper').
-#'papersize': 'letterpaper',
-
-# The font size ('10pt', '11pt' or '12pt').
-#'pointsize': '10pt',
-
-# Additional stuff for the LaTeX preamble.
-#'preamble': '',
-
-# Latex figure (float) alignment
-#'figure_align': 'htbp',
}
-
-# Grouping the document tree into LaTeX files. List of tuples
-# (source start file, target name, title,
-# author, documentclass [howto, manual, or own class]).
latex_documents = [
- (master_doc, 'LPy.tex', 'L-Py Documentation',
- author, 'manual'),
+ (master_doc, 'lpy.tex', u'lpy Documentation',
+ u'INRA / INRIA / CIRAD', 'manual'),
]
-# The name of an image file (relative to this directory) to place at the top of
-# the title page.
-#latex_logo = None
-
-# For "manual" documents, if this is true, then toplevel headings are parts,
-# not chapters.
-#latex_use_parts = False
-
-# If true, show page references after internal links.
-#latex_show_pagerefs = False
-
-# If true, show URL addresses after external links.
-#latex_show_urls = False
-
-# Documents to append as an appendix to all manuals.
-#latex_appendices = []
-
-# If false, no module index is generated.
-#latex_domain_indices = True
-
-
# -- Options for manual page output ---------------------------------------
-
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
- (master_doc, 'lpy', 'L-Py Documentation',
+ (master_doc, project, project + ' Documentation',
[author], 1)
]
-# If true, show URL addresses after external links.
-#man_show_urls = False
-
-
# -- Options for Texinfo output -------------------------------------------
-
# Grouping the document tree into Texinfo files. List of tuples
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
- (master_doc, 'L-Py', 'L-Py Documentation',
- author, 'L-Py', ' L-Py is a simulation software that mixes L-systems construction with the Python high-level modeling language.',
+ (master_doc, project, project + ' Documentation',
+ author, project, desc,
'Miscellaneous'),
]
-
-# Documents to append as an appendix to all manuals.
-#texinfo_appendices = []
-
-# If false, no module index is generated.
-#texinfo_domain_indices = True
-
-# How to display URL addresses: 'footnote', 'no', or 'inline'.
-#texinfo_show_urls = 'footnote'
-
-# If true, do not generate a @detailmenu in the "Top" node's menu.
-#texinfo_no_detailmenu = False
+# Example configuration for intersphinx: refer to the Python standard library.
+intersphinx_mapping = {'python': ('https://docs.python.org/', None)}
\ No newline at end of file
diff --git a/doc/conf.py.bak b/doc/conf.py.bak
deleted file mode 100644
index 46c9de37..00000000
--- a/doc/conf.py.bak
+++ /dev/null
@@ -1,290 +0,0 @@
-# -*- coding: utf-8 -*-
-#
-# LPy documentation build configuration file, created by
-# sphinx-quickstart on Fri Oct 6 12:50:27 2017.
-#
-# This file is execfile()d with the current directory set to its
-# containing dir.
-#
-# Note that not all possible configuration values are present in this
-# autogenerated file.
-#
-# All configuration values have a default; values that are commented out
-# serve to show the default.
-
-import sys
-import os
-from os.path import join as pj
-
-# If extensions (or modules to document with autodoc) are in another directory,
-# add these directories to sys.path here. If the directory is relative to the
-# documentation root, use os.path.abspath to make it absolute, like shown here.
-#sys.path.insert(0, os.path.abspath('.'))
-
-# -- General configuration ------------------------------------------------
-f = pj(os.path.dirname(__file__),'..','src', 'openalea', 'lpy','__version__.py')
-d = {}
-execfile(f,d,d)
-version= d['LPY_VERSION_STR']
-
-# If your documentation needs a minimal Sphinx version, state it here.
-#needs_sphinx = '1.0'
-
-# Add any Sphinx extension module names here, as strings. They can be
-# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
-# ones.
-extensions = []
-
-# Add any paths that contain templates here, relative to this directory.
-templates_path = ['_templates']
-
-# The suffix(es) of source filenames.
-# You can specify multiple suffix as a list of string:
-# source_suffix = ['.rst', '.md']
-source_suffix = '.rst'
-
-# The encoding of source files.
-#source_encoding = 'utf-8-sig'
-
-# The master toctree document.
-master_doc = 'index'
-
-# General information about the project.
-project = u'LPy'
-copyright = u'2017, F. Boudon, T. Cokelaer, C. Pradal and C. Godin'
-author = u'F. Boudon, T. Cokelaer, C. Pradal and C. Godin'
-
-# The version info for the project you're documenting, acts as replacement for
-# |version| and |release|, also used in various other places throughout the
-# built documents.
-#
-# The short X.Y version.
-#version = u'1'
-# The full version, including alpha/beta/rc tags.
-release = u'0'
-
-# The language for content autogenerated by Sphinx. Refer to documentation
-# for a list of supported languages.
-#
-# This is also used if you do content translation via gettext catalogs.
-# Usually you set "language" from the command line for these cases.
-language = None
-
-# There are two options for replacing |today|: either, you set today to some
-# non-false value, then it is used:
-#today = ''
-# Else, today_fmt is used as the format for a strftime call.
-#today_fmt = '%B %d, %Y'
-
-# List of patterns, relative to source directory, that match files and
-# directories to ignore when looking for source files.
-exclude_patterns = ['_build']
-
-# The reST default role (used for this markup: `text`) to use for all
-# documents.
-#default_role = None
-
-# If true, '()' will be appended to :func: etc. cross-reference text.
-#add_function_parentheses = True
-
-# If true, the current module name will be prepended to all description
-# unit titles (such as .. function::).
-#add_module_names = True
-
-# If true, sectionauthor and moduleauthor directives will be shown in the
-# output. They are ignored by default.
-#show_authors = False
-
-# The name of the Pygments (syntax highlighting) style to use.
-pygments_style = 'sphinx'
-
-# A list of ignored prefixes for module index sorting.
-#modindex_common_prefix = []
-
-# If true, keep warnings as "system message" paragraphs in the built documents.
-#keep_warnings = False
-
-# If true, `todo` and `todoList` produce output, else they produce nothing.
-todo_include_todos = False
-
-
-# -- Options for HTML output ----------------------------------------------
-
-# The theme to use for HTML and HTML Help pages. See the documentation for
-# a list of builtin themes.
-#html_theme = 'classic'
-#html_theme = "sphinx_rtd_theme"
-#html_theme_path = ["_themes", ]
-
-# Theme options are theme-specific and customize the look and feel of a theme
-# further. For a list of options available for each theme, see the
-# documentation.
-#html_theme_options = {}
-
-# Add any paths that contain custom themes here, relative to this directory.
-#html_theme_path = []
-
-# The name for this set of Sphinx documents. If None, it defaults to
-# " v documentation".
-#html_title = None
-
-# A shorter title for the navigation bar. Default is the same as html_title.
-#html_short_title = None
-
-# The name of an image file (relative to this directory) to place at the top
-# of the sidebar.
-#html_logo = None
-
-# The name of an image file (relative to this directory) to use as a favicon of
-# the docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
-# pixels large.
-#html_favicon = None
-
-# Add any paths that contain custom static files (such as style sheets) here,
-# relative to this directory. They are copied after the builtin static files,
-# so a file named "default.css" will overwrite the builtin "default.css".
-#html_static_path = ['_static']
-
-# Add any extra paths that contain custom files (such as robots.txt or
-# .htaccess) here, relative to this directory. These files are copied
-# directly to the root of the documentation.
-#html_extra_path = []
-
-# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
-# using the given strftime format.
-#html_last_updated_fmt = '%b %d, %Y'
-
-# If true, SmartyPants will be used to convert quotes and dashes to
-# typographically correct entities.
-#html_use_smartypants = True
-
-# Custom sidebar templates, maps document names to template names.
-#html_sidebars = {}
-
-# Additional templates that should be rendered to pages, maps page names to
-# template names.
-#html_additional_pages = {}
-
-# If false, no module index is generated.
-#html_domain_indices = True
-
-# If false, no index is generated.
-#html_use_index = True
-
-# If true, the index is split into individual pages for each letter.
-#html_split_index = False
-
-# If true, links to the reST sources are added to the pages.
-#html_show_sourcelink = True
-
-# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
-#html_show_sphinx = True
-
-# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
-#html_show_copyright = True
-
-# If true, an OpenSearch description file will be output, and all pages will
-# contain a tag referring to it. The value of this option must be the
-# base URL from which the finished HTML is served.
-#html_use_opensearch = ''
-
-# This is the file name suffix for HTML files (e.g. ".xhtml").
-#html_file_suffix = None
-
-# Language to be used for generating the HTML full-text search index.
-# Sphinx supports the following languages:
-# 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja'
-# 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr'
-#html_search_language = 'en'
-
-# A dictionary with options for the search language support, empty by default.
-# Now only 'ja' uses this config value
-#html_search_options = {'type': 'default'}
-
-# The name of a javascript file (relative to the configuration directory) that
-# implements a search results scorer. If empty, the default will be used.
-#html_search_scorer = 'scorer.js'
-
-# Output file base name for HTML help builder.
-htmlhelp_basename = 'LPydoc'
-
-# -- Options for LaTeX output ---------------------------------------------
-
-latex_elements = {
-# The paper size ('letterpaper' or 'a4paper').
-#'papersize': 'letterpaper',
-
-# The font size ('10pt', '11pt' or '12pt').
-#'pointsize': '10pt',
-
-# Additional stuff for the LaTeX preamble.
-#'preamble': '',
-
-# Latex figure (float) alignment
-#'figure_align': 'htbp',
-}
-
-# Grouping the document tree into LaTeX files. List of tuples
-# (source start file, target name, title,
-# author, documentclass [howto, manual, or own class]).
-latex_documents = [
- (master_doc, 'LPy.tex', u'LPy Documentation',
- u'F. Boudon and C. Godin', 'manual'),
-]
-
-# The name of an image file (relative to this directory) to place at the top of
-# the title page.
-#latex_logo = None
-
-# For "manual" documents, if this is true, then toplevel headings are parts,
-# not chapters.
-#latex_use_parts = False
-
-# If true, show page references after internal links.
-#latex_show_pagerefs = False
-
-# If true, show URL addresses after external links.
-#latex_show_urls = False
-
-# Documents to append as an appendix to all manuals.
-#latex_appendices = []
-
-# If false, no module index is generated.
-#latex_domain_indices = True
-
-
-# -- Options for manual page output ---------------------------------------
-
-# One entry per manual page. List of tuples
-# (source start file, name, description, authors, manual section).
-man_pages = [
- (master_doc, 'lpy', u'LPy Documentation',
- [author], 1)
-]
-
-# If true, show URL addresses after external links.
-#man_show_urls = False
-
-
-# -- Options for Texinfo output -------------------------------------------
-
-# Grouping the document tree into Texinfo files. List of tuples
-# (source start file, target name, title, author,
-# dir menu entry, description, category)
-texinfo_documents = [
- (master_doc, 'LPy', u'LPy Documentation',
- author, 'LPy', 'One line description of project.',
- 'Miscellaneous'),
-]
-
-# Documents to append as an appendix to all manuals.
-#texinfo_appendices = []
-
-# If false, no module index is generated.
-#texinfo_domain_indices = True
-
-# How to display URL addresses: 'footnote', 'no', or 'inline'.
-#texinfo_show_urls = 'footnote'
-
-# If true, do not generate a @detailmenu in the "Top" node's menu.
-#texinfo_no_detailmenu = False
diff --git a/doc/environment.yml b/doc/environment.yml
new file mode 100644
index 00000000..68805b29
--- /dev/null
+++ b/doc/environment.yml
@@ -0,0 +1,18 @@
+name: lpy-doc
+channels:
+ - openalea3/label/dev
+ - openalea3/label/rc
+ - openalea3
+ - conda-forge
+dependencies:
+ - openalea.lpy
+ - openalea.widgets
+ - pip
+ - pip:
+ - sphinx
+ - sphinx-autoapi
+ - sphinx-copybutton
+ - nbsphinx
+ - pydata-sphinx-theme
+ - myst-parser
+ - sphinx-favicon
diff --git a/doc/index.rst b/doc/index.rst
index 9557f9b6..96690362 100644
--- a/doc/index.rst
+++ b/doc/index.rst
@@ -1,15 +1,7 @@
-.. Do not edit.
-.. File automatically generated by sphinx_tools.py, revision 1695, on Thu Jun 18 14:16:07 2009
-
-.. _lpy_user:
-
-Lpy User Guide
+Welcome to Lpy's documentation!
##############
-.. sidebar:: Version
-
- :Version: |version|
- :Date: |today|
+.. figure:: _images/gallery/tomato.png
L-systems were conceived as a mathematical framework for modeling growth of plants.
L-Py is a simulation software that mixes L-systems construction with the Python high-level modeling language.
diff --git a/doc/user/installing.rst b/doc/user/installing.rst
index 34ea5b6c..7f402c7c 100644
--- a/doc/user/installing.rst
+++ b/doc/user/installing.rst
@@ -14,9 +14,7 @@ To install L-Py, you need to create an environment (named lpy in this case) :
.. code-block:: bash
- conda create -n lpy openalea.lpy -c fredboudon -c conda-forge
-
-The package is retrieved from the ``fredboudon`` channel (developement) and its dependencies will be taken from ``conda-forge`` channel.
+ conda create -n lpy openalea.lpy -c openalea3 -c conda-forge
Then, you need to activate the L-Py environment
@@ -40,14 +38,14 @@ You should first install all dependencies in a conda environment. The simplest w
conda create -n lpydev
conda activate lpydev
- conda install --only-deps openalea.lpy -c fredboudon -c conda-forge
+ conda install --only-deps openalea.lpy -c openalea3 -c conda-forge
conda install
You should clone the lpy project into your computer
.. code-block:: bash
- git clone https://github.com/fredboudon/lpy.git
+ git clone https://github.com/openalea/lpy.git
Compiling on macOS and Linux
diff --git a/modularityspecification.docx b/modularityspecification.docx
deleted file mode 100644
index b66d9639..00000000
Binary files a/modularityspecification.docx and /dev/null differ
diff --git a/options_conda_win.py b/options_conda_win.py
deleted file mode 100644
index 1247c9ca..00000000
--- a/options_conda_win.py
+++ /dev/null
@@ -1,8 +0,0 @@
-import os
-
-if 'CPU_COUNT' in os.environ:
- num_jobs = os.environ['CPU_COUNT']
-
-compiler = 'msvc'
-qhull_libs_suffix = 'static'
-boost_libs_suffix = ''
diff --git a/options_linux.py b/options_linux.py
deleted file mode 100644
index f7d3a409..00000000
--- a/options_linux.py
+++ /dev/null
@@ -1,6 +0,0 @@
-import os
-compiler='gcc'
-plantgl_dir = os.path.abspath('../PlantGL')
-plantgl_lib=plantgl_dir+'/build-scons/lib'
-plantgl_include=plantgl_dir+'/src/cpp'
-QTDIR='/usr'