summaryrefslogtreecommitdiff
path: root/cron-jobs/check_archlinux/parse_pkgbuilds.sh
AgeCommit message (Collapse)Author
2016-04-17Normalize to tab indent.Luke Shumaker
2016-04-16Fix quoting around variables, especially arrays.Luke Shumaker
Other than pure quoting, this involved: - swapping */@ for array access in a few places - fiddling with printf in a pipeline - replacing `$(echo ${array[@]})` with `${array[*]}` - replacing `echo $(...)` with `...` When searching for these things, I used the command: grep -Prn --exclude-dir=.git '(?<!["=]|\[\[ |\[\[ -[zn] )\$(?!{?#|\(|\? )' and ignored a bunch of false positives.
2011-07-24Add epoch support to integrity check cron jobEric Bélanger
Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2009-09-18parse_pkgbuilds.sh : fix pkgbase handlingXavier Chantry
add the default value for pkgbase also rework slightly how variables are handled (better distinction between splitpkg variables and the rest) Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2009-09-18parse_pkgbuilds : simple performance tweakXavier Chantry
this simple tweak gives a nice perf boost : from 10s to 7s to parse extra repo. indeed calling basename caused a fork to happen for the thousand of files being considered Now the major bottleneck is parsing split pkgbuilds, but I am afraid there is no magical solution for that :( Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2009-08-28check_packages : add support for split packages.Xavier Chantry
I just found a way to support split packages, by using $(type package_${pkg}), parsing that output and running eval on the relevant lines. This is a bit ugly, and while it works fine on my machine and my current abs tree, I cannot guarantee this code is bug free :) Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2009-05-08check_archlinux: Skip searching CVS and .svn dirsAaron Griffin
Prevents some errors in the community scripts due to scanning of CVS dirs. Also skipping .svn dirs for the future (dotglob may be set, in which case we'd scan .svn dirs as well) Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2009-01-09check_packages : add --arch option.Xavier Chantry
The parsing script didn't set CARCH previously, and the flashplugin PKGBUILD exited in this case. First override the exit function to prevent the whole script to exit, and add a --arch option to be able to set CARCH correctly. To be used like this : For core and extra : ./check_packages.py --abs-tree=/home/abs/rsync/i686 --repos=core,extra --arch=i686 ./check_packages.py --abs-tree=/home/abs/rsync/x86_64 --repos=core,extra --arch=x86_64 For community : ./check_packages.py --abs-tree=/home/abs/rsync/i686 --repos=community --arch=i686 ./check_packages.py --abs-tree=/home/abs/rsync/x86_64 --repos=community --arch=x86_64 Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2008-08-30Replace check_archlinux.py by check_archlinux/check_packages.pyXavier Chantry
The old script had several problems so I decided to do a full rewrite. The improvements include : * better and safer parsing of PKGBUILDs It now uses separate parse_pkgbuilds.sh bash script (inspired from namcap) * much better performance A python module for calling vercmp natively, and the algorithm for checking circular dependencies was greatly improved * more accurate dependency and provision handling Now versioned dependencies and provisions are handled correctly. After building the python module and moving it next to the main script, it should be possible to use it like this : For core and extra : ./check_packages.py --abs-tree=/home/abs/rsync/i686 --repos=core,extra ./check_packages.py --abs-tree=/home/abs/rsync/x86_64 --repos=core,extra For community : ./check_packages.py --abs-tree=/home/abs/rsync/i686 --repos=community ./check_packages.py --abs-tree=/home/abs/rsync/x86_64 --repos=community Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>