summaryrefslogtreecommitdiff
path: root/bin
AgeCommit message (Collapse)AuthorFilesLines
2020-02-03bin/pick-ui: Add a new maintainer script for picking patchesDylan Baker5-0/+1129
In the long term the goal of this script is to nearly completely automate the process of picking stable nominations, in a well tested way. In the short term the goal is to provide a better, faster UI to interact with stable nominations.
2020-01-15cherry-ignore: Update for 19.3.3Dylan Baker1-0/+2
2020-01-07cherry-ignore: update for 19.3.2Dylan Baker1-0/+3
2019-12-12cherry-ignore: update for the 19.3.1 cycleDylan Baker1-0/+4
2019-12-04cherry-ignore: update for 19.3-rc7Dylan Baker1-1/+2
2019-11-19cherry-ignore: update for 19.3.0-rc4 cycleDylan Baker1-0/+4
2019-11-11cherry-ignore: Update for 19.3-rc3 cycleDylan Baker2-2/+4
2019-10-25bin/gen_release_notes.py: Add a warning if new features are introduced in a ↵Dylan Baker1-2/+5
point release Fixes: 86079447da1e00d49db0cbff9a102eb4e71e8702 ("scripts: Add a gen_release_notes.py script") Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
2019-10-25bin/gen_release_notes.py: html escape all external dataDylan Baker1-4/+7
All of these (bug titles, patch titles, features, and people's names) can contain characters that are not valid html. Just escape everything for safety. Fixes: 86079447da1e00d49db0cbff9a102eb4e71e8702 ("scripts: Add a gen_release_notes.py script") Reviewed-by: Eric Engestrom <eric@engestrom.ch> Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
2019-10-25bin/post_release.py: Add .html to hrefsDylan Baker1-2/+3
oops. Fixes: 3226b12a09bbcbd25526fd6da6257057d26ddb31 ("release: Add an update_release_calendar.py script") Reviewed-by: Eric Engestrom <eric@engestrom.ch> Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
2019-10-25bin/post_version.py: white space fixesDylan Baker1-1/+1
Fixes: 3226b12a09bbcbd25526fd6da6257057d26ddb31 ("release: Add an update_release_calendar.py script") Reviewed-by: Eric Engestrom <eric@engestrom.ch> Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
2019-10-25bin/post_version.py: Pass version as an argumentDylan Baker1-16/+10
I made a bad assumption; I assumed this would be run in the release branch. But we don't do that, we run in the master branch. As a result we need to pass the version as an argument. Fixes: 3226b12a09bbcbd25526fd6da6257057d26ddb31 ("release: Add an update_release_calendar.py script") Reviewed-by: Eric Engestrom <eric@engestrom.ch> Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
2019-10-25bin/gen_release_notes.py: Return "None" if there are no new featuresDylan Baker1-0/+2
Which is very likely .Z > 0 releases. Fixes: 86079447da1e00d49db0cbff9a102eb4e71e8702 ("scripts: Add a gen_release_notes.py script") Reviewed-by: Eric Engestrom <eric@engestrom.ch> Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
2019-10-25bin/gen_release_notes.py: strip '#' from gitlab bugsDylan Baker1-1/+1
If they use the `Fixes: #1` form. Fixes: 86079447da1e00d49db0cbff9a102eb4e71e8702 ("scripts: Add a gen_release_notes.py script") Reviewed-by: Eric Engestrom <eric@engestrom.ch> Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
2019-10-25bin/gen_release_notes.py: fix conditional of bugfixDylan Baker1-1/+1
Previously this would result in the .0 warning be generated for .z > 0 and the .z == 0 would get the other message. Fixes: 86079447da1e00d49db0cbff9a102eb4e71e8702 ("scripts: Add a gen_release_notes.py script") Reviewed-by: Eric Engestrom <eric@engestrom.ch> Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
2019-10-13symbols-check: ignore exported C++ symbolsEric Engestrom1-0/+4
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2019-10-03bin: delete unused releasing scriptsDylan Baker2-64/+0
Acked-by: Eric Engestrom <eric.engestrom@intel.com> Acked-by: Juan A. Suarez <jasuarez@igalia.com>
2019-10-03release: Add an update_release_calendar.py scriptDylan Baker1-0/+122
This script is for updating post version bump. Acked-by: Eric Engestrom <eric.engestrom@intel.com> Acked-by: Juan A. Suarez <jasuarez@igalia.com>
2019-10-03scripts: Add a gen_release_notes.py scriptDylan Baker3-0/+326
This script is responsible for generating an entire page in the docs/relnotes/ directory. It includes a template for the page, and uses mako to fill in the necessary bits. It is designed to be purely fire and forget, calculating previous versions, shortlogs, bug fixes, and dates. Acked-by: Eric Engestrom <eric.engestrom@intel.com> Acked-by: Juan A. Suarez <jasuarez@igalia.com>
2019-09-25bin/get-pick-list: use --oneline=pretty instead of --onelineDylan Baker1-1/+1
--oneline shortens hashes, while --oneline=pretty doesn't, otherwise they are the same. Having full hashes is convenient as that is the format that the bin/.cherry-ignore script requires to work correctly. Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
2019-09-24bin/get-pick-list.sh: sha1 commits can be smaller than 8 charsJuan A. Suarez Romero1-1/+1
The script only handles commits with "Fixes: <sha1>" where <sha1> is equal or great than 8 chars. But <sha1> can be smaller, like 7 chars. This commit relax the restriction to handle <sha1> 4 or more chars. Fixes: 533fead4236 ("bin/get-pick-list.sh: tweak the commit sha matching pattern") Acked-by: Eric Engestrom <eric.engestrom@intel.com> Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
2019-08-04symbols-check: fix `nm` invocation on MacOSEric Engestrom1-4/+14
According to Mac OSX's man page [1], this is how we should get the list of exported symbols: nm -g -P foo.dylib -g to only show the exported symbols -P to show it in a "portable" format, ie. readable by a script Since this is supported by GNU nm as well, let's use that everywhere, although some care needs to be taken as there are some differences in the output. [1] https://www.unix.com/man-page/osx/1/nm/ Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Tested-by: Vinson Lee <vlee@freedesktop.org>
2019-08-04symbols-check: discard platform symbols earlyEric Engestrom1-2/+2
(as the comment there already claimed) Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Tested-by: Vinson Lee <vlee@freedesktop.org>
2019-08-04symbols-check: skip test if we can't get the symbols listEric Engestrom1-1/+6
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Tested-by: Vinson Lee <vlee@freedesktop.org>
2019-07-10symbols-check: introduce new python scriptEric Engestrom2-0/+116
I've re-written this in bash a couple times over the years, and then I realised python is much more portable and already required by Mesa, so we might as well make use of it. I decided to still use the build system's NM instead of re-implementing symbols extraction, to offload the complexity of keeping it compatible with many systems (Linux, Unix, BSD, MacOS, etc.), especially when cross-building. This new script checks not only that nothing is exported when it shouldn't be, but also that everything that should be exported is. Sometimes, some symbols _can_ be exported but don't have to be, in which case they can be prefixed with `(optional)`. Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by Dylan Baker <dylan@pnwbakers.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2019-04-29delete autotools .gitignore filesEric Engestrom1-9/+0
One special case, `src/util/xmlpool/.gitignore` is not entirely deleted, as `xmlpool.pot` still gets generated (eg. by `ninja xmlpool-pot`). Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
2019-04-11meson: remove meson-created megadrivers symlinksEric Engestrom1-0/+7
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110356 Fixes: aa7afe324c2092fb31f9 "meson: strip rpath from megadrivers" Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Tested-by: Mike Lothian <mike@fireburn.co.uk> Reviewed-by: Eric Anholt <eric@anholt.net>
2019-04-09bin: drop unused import from install_megadrivers.pyEric Engestrom1-1/+0
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Eric Anholt <eric@anholt.net>
2019-04-01meson: strip rpath from megadriversEric Engestrom1-1/+0
More specifically, use the library file that has been post-processed by Meson when creating the hardlinks. Bugs: https://bugs.freedesktop.org/show_bug.cgi?id=108766 Fixes: 3218056e0eb375eeda47 "meson: Build i965 and dri stack" Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
2019-03-22bin/install_megadrivers.py: Fix regression for set DESTDIRDylan Baker1-1/+5
The previous patch tried to address a bug when DESTDIR is '', however, it introduces a bug when DESTDIR is not '', and fakeroot is used. This patch does fix that, and has been tested with the arch pkg-build to ensure it isn't regressed. Fixes: 093a1ade4e24b7dd701a093d30a71efd669fe9c8 ("bin/install_megadrivers.py: Correctly handle DESTDIR=''") Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110221 Reviewed-by: Eric Engestrom <eric@engestrom.ch>
2019-03-20bin/install_megadrivers.py: Correctly handle DESTDIR=''Dylan Baker1-1/+1
Currently if destdir is set to '' then the resulting libdir will have it's first character replaced by / instead of / being prepended to the string. This was the result of ensuring that that DESTDIR wouldn't be ignored if libdir was absolute, since the only cases that meson allows the libdir to be absolute is if the prefix is /, this won't be a problem. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110211 Fixes: ae3f45c11e3f934939b90445471da8f18b057bc5 ("bin/install_megadrivers: fix DESTDIR and -D*-path") Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
2019-02-13get-pick-list: Add --pretty=medium to the arguments for Cc patchesDylan Baker1-2/+2
Because none of them have been picked up for 19.0 due to this bug being reintroduced. v2: - Fix fixes tags Fixes: e6b3a3b2014413366110f6deeced8095e7262b1d ("bin/get-pick-list.sh: handle "typod" usecase.") Fixes: fac10169bbad2da918ef07a62c01e0b321508cfe ("bin/get-pick-list.sh: prefix output with "[stable] "") Reviewed-by: Andres Gomez <agomez@igalia.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2019-02-07meson: add script to print the options before configuring a builddirEric Engestrom1-0/+63
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
2019-01-18bin/meson-cmd-extract: Also handle cross and native filesDylan Baker1-0/+11
Native file support in command line serialization isn't present in meson 0.49, but will be for 0.49.1 and 0.50 Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
2019-01-15meson: Add a script to extract the cmd line used for mesonDylan Baker1-0/+77
Upstream I'm persuing a more comprehensive solution, but this should prove a suitable stop-gap measure in the meantime. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109325 Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Acked-by: Eric Engestrom <eric@engestrom.ch> Acked-by: Tapani Pälli <tapani.palli@intel.com>
2019-01-14bin/get-pick-list.sh: fix redirection in shAndres Gomez1-1/+1
"&>" is bash specific. Fixes: e0dbfc99537 ("bin/get-pick-list.sh: warn when commit lists invalid sha") Cc: Juan A. Suarez <jasuarez@igalia.com> Cc: Eric Engestrom <eric.engestrom@intel.com> Cc: Dylan Baker <dylan@pnwbakers.com> Cc: Emil Velikov <emil.velikov@collabora.com> Signed-off-by: Andres Gomez <agomez@igalia.com> Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
2019-01-14bin/get-pick-list.sh: fix the oneline printingAndres Gomez1-1/+1
"--summary" will also print extended header information such as creations, renames and mode changes. Let's just use "--no-patch", which suppresses the diff output. v2: Use "--no-patch" instead of the "-s" abbreviation (Eric). Fixes: 559c32d2412 ("bin/get-pick-list.sh: simplify git oneline printing") Cc: Juan A. Suarez <jasuarez@igalia.com> Cc: Eric Engestrom <eric.engestrom@intel.com> Cc: Dylan Baker <dylan@pnwbakers.com> Cc: Emil Velikov <emil.velikov@collabora.com> Signed-off-by: Andres Gomez <agomez@igalia.com> Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
2018-12-21bin/get-pick-list.sh: warn when commit lists invalid shaEmil Velikov1-0/+11
We had cases where people would list old/invalid sha in the commit. Add a trivial checker to catch those and throw a warning. CC: Juan A. Suarez <jasuarez@igalia.com> CC: Dylan Baker <dylan@pnwbakers.com> CC: mesa-stable@lists.freedesktop.org Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Andres Gomez <agomez@igalia.com>
2018-12-21bin/get-pick-list.sh: rework handing of sha nominationsEmil Velikov1-16/+30
Currently our is_sha_nomination does: - folds any whitespace, attempting to extract sha-like information - checks that at least one of the shas has landed Split it in two and do sha-like validation first. This way, commits with mesa-stable and sha nominations will feature the fixes/revert/etc instead of stable (a) or will be omitted if not applicable for the respective branch (b). Misc examples from 18.3 (a) -[ stable ] 5bc509363b6 glx: make xf86vidmode mandatory for direct rendering +[ fixes ] 5bc509363b6 glx: make xf86vidmode mandatory for direct rendering (b) -[ stable ] 9a7b3199037 anv/query: flush render target before copying results CC: Juan A. Suarez <jasuarez@igalia.com> CC: Dylan Baker <dylan@pnwbakers.com> CC: mesa-stable@lists.freedesktop.org Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Andres Gomez <agomez@igalia.com>
2018-11-15bin/get-pick-list.sh: handle reverts prior to the branchpointEmil Velikov1-1/+8
Currently we detect when a breaking commit: - has landed in stable, and - is referenced by a untagged fix in master Yet we did not consider the case of breaking commit: - prior to the branchpoint, and - is referenced by a untagged fix in master Addressing the latter is extremely slow, due to the size of the lookup. That said, we can trivially use the existing is_sha_nomination() helper to catch reverts. Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Juan A. Suarez <jasuarez@igalia.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2018-11-15bin/get-pick-list.sh: use test instead of [ ]Emil Velikov1-4/+4
Latter is rather picky wrt surrounding white space. The explicit `test` doesn't have that problem, plus the statements read a bit easier. Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Juan A. Suarez <jasuarez@igalia.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2018-11-15bin/get-pick-list.sh: handle unofficial "broken by" tagEmil Velikov1-1/+8
We have a number of cases were devs will use a tag "broken by". While it's not something officially documented or recommended, checking for it is trivial enough. Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Juan A. Suarez <jasuarez@igalia.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2018-11-15bin/get-pick-list.sh: handle fixes tag with missing colonEmil Velikov1-1/+5
Every so often, we forget to add the colon after "fixes". Trivially tweak the script to catch it. Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Juan A. Suarez <jasuarez@igalia.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2018-11-15bin/get-pick-list.sh: flesh out is_sha_nominationEmil Velikov1-2/+9
Refactor is_fixes_nomination into a is_sha_nomination helper. This way we can reuse it for more than the usual "Fixes:" tag. Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Juan A. Suarez <jasuarez@igalia.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2018-11-15bin/get-pick-list.sh: tweak the commit sha matching patternEmil Velikov1-1/+1
Currently we match on: - any arbitrary length of, - any a-z A-Z and 0-9 characters At the same time, a commit sha consists of lowercase hexadecimal numbers. Any sha shorter than 8 characters is ambiguous - in some cases even 11+ are required. So change the pattern to a-f0-9 and adjust the length to 8-40. As we're here we could use a single grep, instead of the grep/sed combo. Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Juan A. Suarez <jasuarez@igalia.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2018-11-15bin/get-pick-list.sh: handle the fixes tagEmil Velikov2-84/+43
Having a separate script to handle the fixes tag, brings a number of issues, so let's fold it in get-pick-list.sh. v2: - pass the sha as argument to the function - Keep original sed pattern Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Juan A. Suarez <jasuarez@igalia.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2018-11-15bin/get-pick-list.sh: handle "typod" usecase.Emil Velikov2-43/+8
As the comment in get-typod-pick-list.sh says, there's little point in having a duplicate file. Add the new pattern + tag to get-pick-list.sh and nuke this file. v2: - pass the sha as argument to the function - grep -q instead of using a variable (Eric) Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Juan A. Suarez <jasuarez@igalia.com> Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2018-11-15bin/get-pick-list.sh: prefix output with "[stable] "Emil Velikov1-0/+15
With later commits we'll fold all the different scripts into one. Add the explicit prefix, so that we know the origin of the nomination v2: - pass the sha as argument to the function - swap $tag = none for an else statment (Juan) - grep -q instead of using a variable (Eric) - print the tag and commit oneline separately (Eric) v3: - drop unused "tag=none" assignment (Juan) - typo nomination Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Juan A. Suarez <jasuarez@igalia.com> Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> (v2) Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2018-11-15bin/get-pick-list.sh: simplify git oneline printingEmil Velikov1-1/+1
Currently we force disable the pager via "|cat" where --no-pager exists. Additionally we could use git show instead of git log -n1. Use those for a slightly more understandable code. Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Juan A. Suarez <jasuarez@igalia.com> Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2018-08-23bin/git_sha1_gen.py: remove execute bit/shebangEmil Velikov1-2/+0
The script is executed explicitly via the build system, that uses PYTHON/prog_python and equivalent. Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>