W S commented on a discussion: 
https://gitlab.rtems.org/rtems/docs/rtems-docs/-/merge_requests/108#note_117531


> Would you like to make the collection?

What do you mean? It's already made, isn't it?

> Maybe I am not understanding the purpose of the list. If the docs build does 
> it matter if the version of the packages used is not an exact match? I can 
> see a role for a list that is equal or greater than a version as we do 
> require some packages be at a specific level.

The purpose of the list is to:

1. Give anyone who wishes to run the software (in this case the docs builder) a 
very convenient way to install the required dependencies. They do not need to 
figure out how it can be done on their specific environment. The README already 
specifies some instructions on how to install them, but of course they can't 
cover all possible environments, machines and operating systems. They are also 
bound to break at one point or another, when packages are removed or renamed 
from those repositories, or when technologies change. A Python 
virtualenvironment in combination with pip and a requirements.txt prevents 
this. It is supposed to work indefinitely.
2. Prevent future updated packages from silently (or not silently) breaking 
things.
3. Guarantee that everyone who builds the software (docs in this case) has the 
exact same outcome. Maybe version 1.1 of package foo draws a green circle, 
while version 1.2 draws a red circle. Maybe 1.3 won't build anymore at all. 
That's not desirable of course.


> The other issue with a list is who maintains it?

That's the beauty of it. It doesn't need maintaining. You can stick with the 
frozen versions of the packages because those are known to work. Only if 
someone wishes to use a new feature of a used package (or if they wish to use 
an entirely new package) they will have to update the requirements.txt. It will 
be their responsibility to figure out what new configuration works with 
whatever it is they wish to do.

This might sound a lot of work for this individual. Sure. But think of the 
alternative: he installs some version on his system that work for him. The docs 
build, they look fine. He pushes and the commit gets merged. Then... it appears 
that no one else can reproduce what he did? Everyone else now has to figure out 
what configuration they have to install to get it working.

Of course, this last part is a worst case scenario and is unlikely to happen. 
Especially not for a repository that only builds some docs. Like amar said: it 
hasn't broken out of itself for 10+ years and is unlikely to break in the near 
future. Yet, this approach is pretty much standard in any FOSS project that 
uses Python. For the reasons described above.

(all that being said: this really is becoming bikeshedding :smile: It's just 
docs, it's not a hill to die on :D )

-- 
View it on GitLab: 
https://gitlab.rtems.org/rtems/docs/rtems-docs/-/merge_requests/108#note_117531
You're receiving this email because of your account on gitlab.rtems.org.


_______________________________________________
bugs mailing list
[email protected]
http://lists.rtems.org/mailman/listinfo/bugs

Reply via email to