The patches don't apply to the devel branch. You've made patches on
top of the master branch, but the master branch of Bash is just a
release branch, where each commit corresponds to a release. You should
normally work based on the devel branch.

2024年5月5日(日) 18:56 Matheus Afonso Martins Moreira
<matheus.a.m.more...@gmail.com>:
> Extract into a dedicated helper function the code which loads
> [...]

This patch is independent of the present change for the source option.
This is unrelated.

Also, you've factored out one function from `source_builtin(...)' and
moved another function and it to common.c. However, the new function
`execute_file_contents' is still called from only one place of the
original location.

I think you will not be satisfied by just this comment, so I'd explain
it in more detail. By exposing this function in `common.h', this
effectively becomes a part of the public interface for loadable
builtins. However, this abstraction is not motivated by the actual use
cases. Without any actual uses, we cannot make sure this specific way
of abstraction (such as the set of parameters that the function should
receive) would be fine. There is a possibility that we want to later
add other parameters after seeing the actual uses. However, once it
becomes a part of the public interface, we wouldn't be able to modify
it later easily. Otherwise, a loadable builtin makes the process
crash. Then, you'll have to prepare `execute_file_contents_v2(...)' or
something when the actual use cases reveal a necessity of new
parameters or a change of the interface. I think this is a premature
abstraction and should be avoided.

At least the new function should still be defined in
`builtins/source.def' with the static keyword, but even that way, the
change is completely unrelated to the addition of the new flag to the
source builtin.

You might try to claim the usefulness or the validity of this change,
but I don't have any objection to its usefulness. It's not the problem
of usefulness.

> Signed-off-by: Matheus Afonso Martins Moreira <math...@matheusmoreira.com>

To what you are signing off... By putting this line, you imply that
you agree on the rules that the project defines for copyright, etc.,
but Bash doesn't specify it as far as I know. Then, you've signed off
what you haven't even checked the existence. Instead, FSF requires the
copyright assignment to FSF (which is more strict than just e.g. DCO
or anything), which shouldn't be exempted just by "Signed-off-by".
Once the patches are accepted with a non-trivial amount of codes, Chet
will explain it to you.

Reply via email to