| Age | Commit message (Collapse) | Author |
|
CVE-2025-47273 describes a path traversal vulnerability.
Signed-off-by: Heinrich Schuchardt <[email protected]>
Reviewed-by: Tom Rini <[email protected]>
|
|
Support for using "u-boot,dm-..." rather than "bootph-..." has been
deprecated since February 2023. Any platforms using this have had a
console message saying to migrate by 2023.07. Go and remove all support
here now, for the v2026.01 release.
The results of this change that aren't clear from the above are that we
still have a checkpatch.pl error message, and document in
doc/develop/spl.rst that they have been migrated since 2023. We also
change the key2dtsi.py tool to use the correct bootph phase rather than
the legacy phase.
Signed-off-by: Tom Rini <[email protected]>
|
|
This test was failing due to matching on Anatolij's old email address.
Switch to the new one.
Signed-off-by: Tom Rini <[email protected]>
|
|
The GitHub dependabot tool has reported a number of issues recently with
some modules that we use. While unlikely to be exploitable in the way we
use them, update various libraries to the latest.
Reported-by: GitHub dependabot
Signed-off-by: Tom Rini <[email protected]>
|
|
Describe the new subcommands and how they should be used in a normal
workflow.
Note that the naming of branches is very rigid, or 'opinionated' in
marketing terms. Patman can track a single branch for each version of a
series and they must all be named the same, except for the
version-number suffix. Version 1 series have no suffix.
This description is fairly bare-bones but should be enough for some
initial testing and comments.
Signed-off-by: Simon Glass <[email protected]>
|
|
Add various tests for the Cseries functionality, including both direct
and via-cmdline variants.
Signed-off-by: Simon Glass <[email protected]>
|
|
Add a command to allow managing the upstream tree. This is very basic
so far, only allowing setting the name and URL. Further work may allow
checking whether series apply cleaning on the upstream tree, etc.
Signed-off-by: Simon Glass <[email protected]>
|
|
Add a command to support management of series. These are local branches
which may have been sent to the mailing list, so may appear on the
patchwork server.
The new functionality uses a database, stored in a local file.
Various operations are supported:
- add a new series
- send a series and automatically link it with patchwork
- 'increment' the version, to prepare to send an updated series
- gather review/test tags from patchwork
- check on progress, i.e. patches which are received new tags or
comments
- show comments on patches and cover letters
Signed-off-by: Simon Glass <[email protected]>
|
|
Indicate whether 'git send-email' was actually called, so that we don't
bother waiting for patchwork to receive our series if it wasn't.
The 'git send-email' seems to always return a code of 0 even if nothing
was sent, so we cannot use clues there. Ideally we would watch the
output to determine which patches were sent and which not, but that is
left for another day.
Signed-off-by: Simon Glass <[email protected]>
|
|
It is laborious to type long commands, so add some aliases to speed up
use of patman. For now, allow 'pw' for patchwork and 'st' for status.
Signed-off-by: Simon Glass <[email protected]>
|
|
Add a command to allow setting and getting the patchwork project. This
is needed so that patman can use the correct ID when talking to the
patchwork server.
To support testing, allow passing in the test database, patchwork
object and Cseries object. Fake versions can then easily be provided for
certain test cases.
Signed-off-by: Simon Glass <[email protected]>
|
|
Update Series with a way to better manage the Series-links lines in
patches. Use this in the 'status' subcommand instead of the existing
primitive method of expecting a link without a version prefix.
Signed-off-by: Simon Glass <[email protected]>
|
|
This class manages a series, i.e. a group of patches with a possible
cover letter. Add some properties for recording basic patchwork info,
including the database ID.
Signed-off-by: Simon Glass <[email protected]>
|
|
The parsing tests need to be able to try invalid arguments to make sure
that these are handled correctly. Provide a way to return the parsers
being used, as well as to pass in the parsers to use. This feature is
needed in test_series_no_subcmd(), for example.
Signed-off-by: Simon Glass <[email protected]>
|
|
We chose -C as the flag to enable showing comments because -c was used
in 'patman send' to specify the patch count. Now that the 'send' parser
is separated we don't need to do this and it is OK to use the same flag
in a different subcommand.
We want to have a flag for cover-letter comments, so it makes most sense
to have -C for that and -c for patch comments. Update the latter.
Put this in a function since the new 'series' command will add this flag
too.
Signed-off-by: Simon Glass <[email protected]>
|
|
Patman allows defaults for its command-line flags to be read from a
file. The implementation of this does not fully work with subcommands,
since we don't want a default for those.
Also, it relies on being able to parse any sort of cmdline in order to
figure out the options that are available. But in some cases, the
cmdline may not parse, e.g. if there are required options, or
conflicting options.
Add a class which can be safely used to parse any cmdline, since it
allows execution to continue even when errors are obtained. Use this to
determine the defaults, being careful to skip sub/commands.
Another way to handle all of this would be to maintain the defaults
separately and insert them into the parser manually. For now, I'm not
sure which is best.
Signed-off-by: Simon Glass <[email protected]>
|
|
Add various new requests to the Patchwork class, so we can obtain the
required information. This includes cover letters and comments.
Signed-off-by: Simon Glass <[email protected]>
|
|
Add support to the status module for reading and supporting cover
letters, including comments. Plumb this through to the patchwork module.
The actual support in the latter is not yet integrated.
Signed-off-by: Simon Glass <[email protected]>
|
|
This is the main class for dealing with series, across branches and the
database.
Signed-off-by: Simon Glass <[email protected]>
|
|
Add a module which includes helper functions for dealing with Cseries
objects.
Signed-off-by: Simon Glass <[email protected]>
|
|
For recording series information, patman needs a database. Add a module
which uses sqlite3 for this. It has a basic schema, enough to support a
series subcommand.
Signed-off-by: Simon Glass <[email protected]>
|
|
Set the git variables to ensure that any local gitconfig is not used or
affected by the tests.
Signed-off-by: Simon Glass <[email protected]>
|
|
Create one more series to use for testing. This one has four separate
patches.
Signed-off-by: Simon Glass <[email protected]>
|
|
The func_test file is quite large. In order to allow new tests to be
added to a separate file, move the common test code into a separate
class, to be inherited by other classes.
Drop unnecessary imports in func_test
Signed-off-by: Simon Glass <[email protected]>
|
|
Add one more test for completeness, since this occurs commonly.
Signed-off-by: Simon Glass <[email protected]>
|
|
If python2 is available then we must specify python3 here. Update the
test to handle this.
Signed-off-by: Simon Glass <[email protected]>
|
|
When running tests where the .git directory is not owned by the current
user, various warnings are produced and the tests fail. This happens in
CI.
For patman itself, modify the gitutil.get_top_level() function to return
None in this case. Ensure that the warning is not shown, since it creates
about 1000 lines of output.
For checkpatch, the same warning is produced even though --no-tree is
given. Suppress that as well.
Signed-off-by: Simon Glass <[email protected]>
|
|
In some cases we want to collect all lines in the commit message so that
the commit can be recreated with the same message as before, or perhaps
with light filtering.
Add support for this.
Series-to: u-boot
Cover-letter:
patman: Minor improvements to prepare for series handling
This series includes a number of internal improvements to patman:
- Tidy-up of parsing
- Adjust how tests create the git tree
- Support for creating patches in a different git directory
- Faster determination of the upstream branch
- Ability to collect the body of a commit message as a series of lines
END
Signed-off-by: Simon Glass <[email protected]>
|
|
This module is missing some comments, so add them.
Signed-off-by: Simon Glass <[email protected]>
|
|
This is the help for the whole of patman, so move it to the start of the
control function, rather than being inside 'patman send'.
Signed-off-by: Simon Glass <[email protected]>
|
|
Most of the arguments for the main parser are actually arguments for the
'send' parser. Move them there, in a separate function.
Fix a pylint warning for -D and the imports while here.
Signed-off-by: Simon Glass <[email protected]>
|
|
Simplify the main parser by moving subparser code into separate
functions. Fix a few pylint warnings while here.
Signed-off-by: Simon Glass <[email protected]>
|
|
Add a few tests to make sure that help is provided when requested.
Signed-off-by: Simon Glass <[email protected]>
|
|
Tests may want to parse their own arguments. Refactor the parser code to
support this and allow settings to receive arguments as well.
Signed-off-by: Simon Glass <[email protected]>
|
|
Correct some pylint warnings in this file. Make use of the existing
asyncio event loop, instead of creating a new one, since this also
destroys it afterwards, making it unavailable for tests which want to
share an event loop. Use tools.write_file() to avoid a warning about
encoding.
Signed-off-by: Simon Glass <[email protected]>
|
|
At present the branch information is dropped when writing the
configuration. It is easier to get git to set up the config anyway, so
update the test to do this.
Signed-off-by: Simon Glass <[email protected]>
|
|
The test starts with the HEAD pointing to the wrong place, so that the
created files appear to be deleted. Fix this by resetting the tree
before tests start. Add a check that the tree is clean.
Update pygit2 so that the enums are available.
|
|
Rather than hard-coding these values in the sample patches, use
variables so that we can refer to these in tests.
Signed-off-by: Simon Glass <[email protected]>
|
|
In tests, the 'git' directory is a subdirectory of the temporary
directory. Rename it to '.git' so that git will automatically find it
when git operations are done in the temporary directory. Set up the
config before the first git operation, so that this works correctly.
Signed-off-by: Simon Glass <[email protected]>
|
|
The variables 'lines' is used to hold a list of output lines within a
test, but also to hold an iterator through those lines. Use 'itr' for
the latter, to avoid confusion.
Signed-off-by: Simon Glass <[email protected]>
|
|
Since str() is a reserved function we should not use it as a variable.
Fix this in the send module.
Signed-off-by: Simon Glass <[email protected]>
|
|
Support specifying the git-directory when creating and sending patches.
This will allow better testing of this functionality, since we can use a
test directory.
For count_commits_to_branch() support an end commit while we are here.
Signed-off-by: Simon Glass <[email protected]>
|
|
Plumb a current-working-directory (cwd) through from send all the way to
the command gitutil libraries. This will allow better testing of this
functionality, since we can use a test directory.
Signed-off-by: Simon Glass <[email protected]>
|
|
Some files are missing from the __all__ list, so add then. Reformat the
list to use more of the width of each line.
Signed-off-by: Simon Glass <[email protected]>
|
|
The current approach to calling 'git send-email' puts double quotes
around each email address to ensure that it will pass the shell
correctly. This is a bit cumbersome and requires using a shell to sort
it all out.
Drop the quotes and use command.run() instead, to simplify things. This
will also make it possible to (later) set the current directory.
Signed-off-by: Simon Glass <[email protected]>
|
|
Instead of using settings.alias pass this value in. This allows tests to
work without using settings.alias
Signed-off-by: Simon Glass <[email protected]>
|
|
Rather than accessing settings directly, pass the aliases in, so that
we can do the same from tests. With further work this will allow the
tests to work without using settings.alias
Signed-off-by: Simon Glass <[email protected]>
|
|
Rather than accessing the settings module in this function, require the
alias dict to be passed in.
Signed-off-by: Simon Glass <[email protected]>
|
|
Rather than accessing the settings module in this function, require the
alias dict to be passed in.
Signed-off-by: Simon Glass <[email protected]>
|
|
The gitutil module is supposed to be independent from patman but one
piece was missed in the series which separated them.
Move the settings setup out of gitutil
Signed-off-by: Simon Glass <[email protected]>
|