From b97949f076b98cb6947c028d167bc01242b034ce Mon Sep 17 00:00:00 2001 From: pradal Date: Wed, 5 Nov 2025 14:58:13 +0100 Subject: [PATCH 1/9] Remove scons files --- options_conda_win.py | 8 -------- options_linux.py | 6 ------ 2 files changed, 14 deletions(-) delete mode 100644 options_conda_win.py delete mode 100644 options_linux.py 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' From 0816be2e5cc552af52f783aa65d3c6032e122fd7 Mon Sep 17 00:00:00 2001 From: pradal Date: Wed, 5 Nov 2025 14:59:17 +0100 Subject: [PATCH 2/9] remove uneeded files --- modularityspecification.docx | Bin 14716 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 modularityspecification.docx diff --git a/modularityspecification.docx b/modularityspecification.docx deleted file mode 100644 index b66d9639355ef8e14d8a0d57f5cdb1e5adf20d14..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14716 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 Date: Wed, 5 Nov 2025 15:01:06 +0100 Subject: [PATCH 3/9] Update build instructions --- bckup_setup.py | 120 ------------------------------------------------- build.sh | 2 +- 2 files changed, 1 insertion(+), 121 deletions(-) delete mode 100644 bckup_setup.py 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 From bcb6f774a4bd498d9da64c6986a0318467179524 Mon Sep 17 00:00:00 2001 From: pradal Date: Wed, 5 Nov 2025 15:03:21 +0100 Subject: [PATCH 4/9] Update RTFD conf --- .readthedocs.yaml | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 .readthedocs.yaml 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 From 98cf345a8c1e71b34d689ac986fbf7ff40cf7e56 Mon Sep 17 00:00:00 2001 From: pradal Date: Wed, 5 Nov 2025 15:08:29 +0100 Subject: [PATCH 5/9] add the new environment --- doc/conf.py.bak | 290 -------------------------------------------- doc/environment.yml | 19 +++ 2 files changed, 19 insertions(+), 290 deletions(-) delete mode 100644 doc/conf.py.bak create mode 100644 doc/environment.yml 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..e2ebf14e --- /dev/null +++ b/doc/environment.yml @@ -0,0 +1,19 @@ +name: lpy-doc +channels: + - openalea3/label/dev + - openalea3/label/rc + - openalea3 + - conda-forge +dependencies: + - openalea.lpy + - oawidgets + - pip + - pip: + - pydata-sphinx-theme + - myst-parser + - sphinx-favicon + - nbsphinx + - pandoc + - ipykernel + - sphinx-copybutton + - ipython_genutils From 0bd246bf55bf28caf3a54dd001345e220c6570d1 Mon Sep 17 00:00:00 2001 From: baugetfa Date: Wed, 5 Nov 2025 15:23:03 +0100 Subject: [PATCH 6/9] [no ci] conf environment.yml --- doc/conf.py | 311 +++++++++++++------------------------------- doc/environment.yml | 13 +- 2 files changed, 93 insertions(+), 231 deletions(-) diff --git a/doc/conf.py b/doc/conf.py index a694695d..f1a765f1 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 = ['_static'] +html_logo = "_static/openalea_web.svg" +html_favicon = "_static/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/environment.yml b/doc/environment.yml index e2ebf14e..c7d0a911 100644 --- a/doc/environment.yml +++ b/doc/environment.yml @@ -6,14 +6,13 @@ channels: - conda-forge dependencies: - openalea.lpy - - oawidgets + - openalea.widgets - pip - pip: + - sphinx + - sphinx-autoapi + - sphinx-copybutton + - nbsphinx - pydata-sphinx-theme - myst-parser - - sphinx-favicon - - nbsphinx - - pandoc - - ipykernel - - sphinx-copybutton - - ipython_genutils + - sphinx-favicon" From 6900058bb743efda3eebe6ad95e0432213a8a96d Mon Sep 17 00:00:00 2001 From: baugetfa Date: Wed, 5 Nov 2025 15:45:10 +0100 Subject: [PATCH 7/9] [no ci] removed error --- doc/environment.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/environment.yml b/doc/environment.yml index c7d0a911..68805b29 100644 --- a/doc/environment.yml +++ b/doc/environment.yml @@ -15,4 +15,4 @@ dependencies: - nbsphinx - pydata-sphinx-theme - myst-parser - - sphinx-favicon" + - sphinx-favicon From 6531525da014ae59cae2f1c38ce8a92614ebf345 Mon Sep 17 00:00:00 2001 From: baugetfa Date: Wed, 5 Nov 2025 17:02:02 +0100 Subject: [PATCH 8/9] [no ci] WIP --- README.rst | 7 ++----- doc/index.rst | 12 ++---------- doc/user/installing.rst | 8 +++----- 3 files changed, 7 insertions(+), 20 deletions(-) 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/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 From 197d4b432fa02c574cd4185b908334cfcdff6bad Mon Sep 17 00:00:00 2001 From: baugetfa Date: Wed, 5 Nov 2025 17:08:50 +0100 Subject: [PATCH 9/9] [no ci] WIP --- doc/_images/openalea_web.svg | 108 +++++++++++++++++++++++++++++++++++ doc/conf.py | 6 +- 2 files changed, 111 insertions(+), 3 deletions(-) create mode 100644 doc/_images/openalea_web.svg 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 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + OpenAlea + + + diff --git a/doc/conf.py b/doc/conf.py index f1a765f1..3d05835d 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -98,9 +98,9 @@ # 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'] -html_logo = "_static/openalea_web.svg" -html_favicon = "_static/openalea_web.svg" +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 # If false, no index is generated.