Giter Site home page Giter Site logo

Comments (7)

pedrobaeza avatar pedrobaeza commented on September 28, 2024

Thanks for the suggestion. It's a good idea. Though, I have used INSTALL.rst in some occasions to mention that a field is computed and stored to warn about the installation time, so I would propose to always append to the content of the INSTALL.rst the auto-generated part (although having the possibility to double content for those existing ones).

from maintainer-tools.

legalsylvain avatar legalsylvain commented on September 28, 2024

thanks a lot for your comment @pedrobaeza.

the "append" is OK for me and it's better to maintain. It just means three thinks :

  • Once deployed, it will regenerate all the README.rst file and most of them will have duplicated information. (autogenerated, and coming from INSTALL.rst). So we will have to delete / update them manually. Not a big deal though, and repo maintainers can spend 5 minutes to do it on their repo.

  • Maybe the autogenerated text and the manual one will be complicated to concat. Here is for exemple a "complicated sample". (I think it the most complicated one)

  • We have to be sure that the autogenerated text is OK (in every case) and I'm not sure, regarding bin part. here is a proposal :

1 You need to install the following python libraries :

pip install bokeh==1.1.0
pip install py3o.formats
pip install xxx
...

2 You need to install the following system librairies :

sudo apt-get install default-jre
sudo apt-get install xxx
sudo apt-get install postgis
...

Other general question : some contributors includes in INSTALL.rst file, the list of the other OCA modules on which the module depends. Exemple. My PoV is that it's unecessary and I don't do it, when I contribute a module. Do you think it's interesting to autogenerate that text ?

from maintainer-tools.

pedrobaeza avatar pedrobaeza commented on September 28, 2024

I don't think the concatenation will suppose any problem, as you only need to append the new paragraphs making sure 2 carrier line as provided for being detected as a new block.

About putting the module dependencies in the INSTALL, I do it when the module doesn't belong to the same repository, as newcomers (or not so new) don't know where to look for finding such dependencies. I know that with pip, such problem doesn't exist (it's the only advantage of this deploy system I appreciate), but we should do such tips. But generating it automatically is not possible, so let's keep it as manual.

from maintainer-tools.

legalsylvain avatar legalsylvain commented on September 28, 2024

I don't think the concatenation will suppose any problem, as you only need to append the new paragraphs making sure 2 carrier line as provided for being detected as a new block.

OK for me !

I do it when the module doesn't belong to the same repository, as newcomers (or not so new) don't know where to look for finding such dependencies.

Well, regarding that point, indeed, if the module is present in another repository (OCA has > 200 repositories), it's great to mention it.

[...] But generating it automatically is not possible, so let's keep it as manual.

What about to call pypi (https://warehouse.pypa.io/api-reference/) Let's imagine an OCA/web 12.0 module, dependending on product, base_technical_features and web_responsive. If we look at pypi :

-> https://pypi.org/project/odoo12-addon-product/ doesn't exists -> Odoo
-> https://pypi.org/project/odoo12-addon-base-technical-features/ exists -> OCA
-> https://pypi.org/project/odoo12-addon-web-responsive/ exists -> OCA

Then, scanning current repo, we know easily that web_responsive is in current repo.

I think it's possible to generate automatically a text like :

This module depends on other OCA modules:

Note : the url can be found in the website key of the package.

That could save time for developpers and avoid obsolete INSTALL.rst text, when dependencies are changing.

from maintainer-tools.

pedrobaeza avatar pedrobaeza commented on September 28, 2024

If you think that can be feasible, it's OK. Not sure if we are avoiding the online connection in the generator or other point of failure.

from maintainer-tools.

legalsylvain avatar legalsylvain commented on September 28, 2024

Not sure if we are avoiding the online connection in the generator or other point of failure.

When executed locally, it could be a problem. If we don't have access to Internet or if pypi is down, it will prevent to generate readme files.
That is a choice. Don't have a clear point of view on that topic. Let's wait what other @OCA/tools-maintainers think.

When executed on the github CI or by the @OCA-git-bot, not a problem in my opinion as the process will fail if pypi is not available.

from maintainer-tools.

gurneyalex avatar gurneyalex commented on September 28, 2024

The one thing I struggle a lot with when installing OCA addons is not the external dependencies, it's the Odoo dependencies, and especially the other OCA dependencies from other repositories, because, in a context where pip is not used for OCA addons, getting all the required OCA repositories in the addons path can be tedious. So please make sure this is part of this feature.

from maintainer-tools.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.