diff options
author | Andrew Geissler <geissonator@yahoo.com> | 2023-01-28 01:10:19 +0300 |
---|---|---|
committer | Andrew Geissler <geissonator@yahoo.com> | 2023-01-28 01:19:05 +0300 |
commit | c5535c91408e2c3f8231c10f6b00eaaee7c88717 (patch) | |
tree | 9ec42908f2cb40cc01d8a1b17487da2b106e6946 /poky/bitbake/lib | |
parent | ea144b037776e892b9e05c4d22be842901e2138c (diff) | |
download | openbmc-c5535c91408e2c3f8231c10f6b00eaaee7c88717.tar.xz |
subtree updates:openembedded:poky: Jan 27 2023
poky: 0ce159991d..5e249ec855:
Alex Kiernan (2):
rust: Upgrade 1.66.0 -> 1.66.1
rust: Remove CARGO_VERSION
Alexander Kanavin (7):
selftest/virgl: use pkg-config from the host
ethtool: upgrade 6.0 -> 6.1
man-pages: upgrade 6.01 -> 6.02
mesa: update 22.2.3 -> 22.3.3
webkitgtk: submit a patch upstream
python3-sphinxcontrib-applehelp: update 1.0.2 -> 1.0.3
vulkan-samples: branch rename master -> main
Benoît Mauduit (1):
lib/oe/reproducible: Use git log without gpg signature
Bruce Ashfield (6):
linux-yocto/6.1: edgerouter: Replace OCTEON_USB with USB_OCTEON_HCD
linux-yocto/6.1: qemuriscv32: Enable CONFIG_NONPORTABLE
linux-yocto/6.1: update to v6.1.5
linux-yocto/5.15: update to v5.15.87
conf/qemu: bump preferred kernel version to 6.1
poky/poky-tiny: bump preferred version to 6.1
Changqing Li (1):
cmake-native: use internal cmcurl library
Chen Qi (2):
file: export MAGIC in SDK
rpm: do not export MAGIC in SDK
Chuck Wolber (1):
scripts/oe-setup-layers: Make efficiently idempotent
Fabio Estevam (2):
u-boot: Upgrade to 2023.01
u-boot: Update Upstream-Status
He Zhe (1):
lttng-modules: update 2.13.7 -> 2.13.8
Jan Luebbe (1):
p11-kit: add native to BBCLASSEXTEND
Jermain Horsman (1):
cve-check: write the cve manifest to IMGDEPLOYDIR
Kevin Hao (1):
meta-yocto-bsp: Update the default kernel to 6.1
Khem Raj (31):
createrepo-c: Include missing rpm/rpmstring.h
libglu: Remove deprecated register in C++17
cpio: Do not use _Noreturn in gnulib
groff: Drop use of `register` storage class
vulkan-samples: Update to the tip of trunk
unfs3: Fix implicit function declarations of fix_dir_times()
gperf: Make the code C++17 compliant
libxcb: Fixed c2x standard undefined behaviour
dbus: Use Alignof when using C11 or newer standard
m4: Define alignof_slot using _Alignof when using C11 or newer
opkg: Define alignof using _Alignof when using C11 or newer
cpio: Fix gnulib alignof implementation on clang
python3-numpy: Define _ALIGN using _Alignof when using C11 or newer
vulkan-samples: Drop using u8string_view
musl-obstack: Update to 1.2.3
mdadm: Define alignof using _Alignof when using C11 or newer
lttng-tools: Switch to alternative upstream submitted patch
libtirpc: Check if file exists before operating on it
ruby: Use C11 _Alignof to define ALIGN_OF when possible
libusb1: Link with latomic only if compiler has no atomic builtins
libusb1: Strip trailing whitespaces
elfutils: Fix build with libcurl >= 7.87
stress-ng: Robustify test-float test
harfbuzz: Add missing <cstdio> and <cstdlib> includes
apt: add missing <cstdint> for uint16_t
vulkan-samples: Include missing header cstdint for uint32_t
ruby: Update the patch status
systemd: Add another fix for using XSI strerror_r
elfutils: Remove funcretval test from run-native-test.sh for now
binutils: Upgrade to 2.40 release
binutils: Package libsframe
Lee Chee Yang (1):
migration-guides: add release-notes for 4.1.2
Luca Boccassi (1):
systemd: add PACKAGECONFIG to select default compression format
Luca Ceresoli (1):
manuals: fix typo in the MLPREFIX description
Markus Volk (3):
gptfdisk: add follow-up patch to fix with current popt
gtk+3: add PACKAGECONFIG for libcloudservice and tracker; fix cups backend
gtk4: add PACKAGECONFIG for cloudproviders
Martin Jansa (1):
mesa: update submitted patch with backported version
Michael Opdenacker (3):
rust-bin.bbclass: remove unused class
meta/classes-global: remove package_tar.bbclass
ref-manual: initial documentation for go and go-mod classes
Mikko Rapeli (1):
kmod: enable openssl support by default
Niko Mauno (1):
Fix missing leading whitespace with ':append'
Ovidiu Panait (1):
webkitgtk: fix perl-native dependency
Paulo Neves (1):
bitbake: bitbake-getvar: Add a quiet command line argument
Pavel Zhukov (3):
bitbake: fetch2: kill parameters in uri_find_decoded
bitbake: fetch2/tests: Add test for Mercurial
bitbake: fetch2/tests: Add parameter to recipe_uri
Pawel Zalewski (1):
classes/fs-uuid: Fix command output decoding issue
Peter Kjellerstedt (2):
librsvg: Only enable the Vala bindings if GObject Introspection is enabled
cargo-update-recipe-crates.bbclass: Mark the update_crates task as nostamp
Peter Marko (1):
iproute2: separate routel and add python dependency
Quentin Schulz (1):
packagegroup-core-boot: make init-ifupdown package a recommendation
Randy MacLeod (1):
vim: upgrade 9.0.0947 -> 9.0.1211
Richard Purdie (23):
bitbake: server/process: Improve lockfile handling at exit
pseudo: Update to pull in linux-libc-headers race fix
pseudo: Switch back to the master branch
insane: Improve patch warning/error handling
poky: Set INIT_MANAGER by a separate variable
bitbake: server/process: Fix lockfile contents check bug
bitbake: cooker: Fix siggen recipe cache race issue
bitbake: cache: Only write files if we have data
bitbake: cooker: Fix parsing race around cache handling
bitbake: data: Add support for new BB_HASH_CODEPARSER_VALS for cache optimisation
bitbake: data_smart: Small optimisation to _findVar()
native: Drop special variable handling
bitbake.conf: Add BB_HASH_CODEPARSER_VALS
pseudo: Update to include logic fix
bitbake.conf: Add METADATA_REVISION to BB_HASH_CODEPARSER_VALS
native: Implement BBCLASSEXTEND PACKAGES_DYNAMIC handling
conf/sdk/x86-64: Set march specifically
bitbake: cache/codeparser: Switch to a new BB_CACHEDIR variable for cache location
oeqa/selftest/devtool: Fix for linux 6.1 versions onwards
wic/efi-bootdisk.wks: Fix for 6.1 kernel versions
kernel/linux-kernel-base: Fix kernel build artefact determinism issues
build-appliance-image: Update to master head revision
build-appliance: Fix merge error
Ross Burton (12):
python3-pyproject-hooks: add new recipe
python3-build: add 0.10.0
python_pep517: use python3-build, not picobuild
python3-picobuild: remove
cve-update-db-native: show IP on failure
quilt: rewrite ptest glue
quilt: fix intermittent failure in faildiff.test
spirv-headers/spirv-tools: set correct branch name
quilt: use upstreamed faildiff.test fix
ppp: backport fix for CVE-2022-4603
bitbake: bb/utils: include SSL certificate paths in export_proxies
buildtools-tarball: set pkg-config search path
Thomas Roos (1):
devtool: fix devtool finish when gitmodules file is empty
Tim Orling (3):
bitbake: bitbake: fix deprecated threading.Thread.setDaemon
python3-cryptography{-vectors}: 38.0.4 -> 39.0.0
bitbake: toaster: update fixtures
Tom Hochstein (1):
gstreamer1.0-plugins-good: Fix libsoup runtime dependency
Vincent Davis Jr (1):
mesa: allow mesa (gbm) to compile without backend
Wang Mingyu (20):
btrfs-tools: upgrade 6.1 -> 6.1.2
libpcap: upgrade 1.10.2 -> 1.10.3
libwebp: upgrade 1.2.4 -> 1.3.0
man-db: upgrade 2.11.1 -> 2.11.2
dpkg: upgrade 1.21.17 -> 1.21.18
ed: upgrade 1.18 -> 1.19
gi-docgen: upgrade 2022.2 -> 2023.1
python3-alabaster: upgrade 0.7.12 -> 0.7.13
python3-setuptools: upgrade 65.6.3 -> 65.7.0
patchelf: upgrade 0.17.0 -> 0.17.2
python3-cython: upgrade 0.29.32 -> 0.29.33
python3-dbusmock: upgrade 0.28.6 -> 0.28.7
python3-hatchling: upgrade 1.12.1 -> 1.12.2
python3-hypothesis: upgrade 6.61.0 -> 6.62.0
python3-importlib-metadata: upgrade 5.2.0 -> 6.0.0
python3-packaging: upgrade 22.0 -> 23.0
python3-pbr: upgrade 5.11.0 -> 5.11.1
python3-pygments: upgrade 2.13.0 -> 2.14.0
stress-ng: upgrade 0.15.01 -> 0.15.02
xz: upgrade 5.4.0 -> 5.4.1
Xiangyu Chen (4):
numactl: skip test case when target platform doesn't have 2 CPU node
qemuboot.bbclass: add QB_NFSROOTFS_EXTRA_OPT for nfs rootfs extra option
runqemu: add process of option QB_NFSROOTFS_EXTRA_OPT
qemuppc64: set the qemuppc64 nfs r/wsize mount options to 524288
Yoann Congal (2):
bitbake: persist_data: Handle sqlite error when cachefile path is too long
sanity: Fix small typos
meta-openembedded: cd13881611..2ab113e8be:
Alejandro Enedino Hernandez Samaniego (1):
weechat: Update 3.4.1 -> 3.8
Alex Kiernan (4):
dnsmasq: Merge .inc into .bb
dnsmasq: Expand configuration options
ntpsec: Upgrade 1.2.1 -> 1.2.2
keyutils: Upgrade 1.6.1 -> 1.6.3
Archana Polampalli (1):
Nodejs: Upgrade to 18.12.1
Bartosz Golaszewski (1):
libgpiod: fix python bindings build
Chee Yang Lee (5):
opencv: fix reproducible builds
xerces-c: upgrade to 3.2.4
zsh: Fix CVE-2021-45444
redis: Upgrade to 7.0.8
redis: Upgrade to 6.2.9
Dmitry Baryshkov (1):
edid-decode: an utility to parse EDID information
Etienne Cordonnier (1):
uutils-coreutils: upgrade 0.0.16 -> 0.0.17
Fabio Estevam (1):
lvgl-demo-fb: Add recipe
Gianfranco Costamagna (1):
boinc-client: Update boinc from 7.20.4 to 7.20.5
Hermes Zhang (1):
kernel_add_regdb: Change the task order
Jan Luebbe (3):
pcsc-lite: fix native build
pcsc-lite: fix homepage URL
opensc: fix homepage URL
Kai Kang (2):
mozjs: fix compile error for arm
crda: 3.18 -> 4.15
Khem Raj (65):
packagegroup-meta-oe: Remove boost-url from comments
trace-cmd: Update to upstream submitted patches
packagegroup-meta-oe: Update to reflect latest recipes
freeglut: Add packageconfigs for x11/wayland/gles
xdg-desktop-portal-wlr: Add wayland to REQUIRED_DISTRO_FEATURES
ipmitool: Remove unneeded patch
dibbler: Fix build with c++17 and newer std
libtevent: Package cmocka tests into ptest package
netkit-telnet: Drop using register storage class keyword
libxml-libxml-perl: Fix function pointer types
fatcat: Fix build with std=c++17
ncmpc: Upgrade to 0.47
python3-matplotlib: Upgrade to 3.6.3
python3-matplotlib: Fix build with c++17
python3-greenlet: Drop using register keyword
libmodplug: Fix build with c++17
xmlrpc-c: Upgrade to 1.54.06
satyr: Fix build with musl
p8platform: Fix build with c++17 clang
freerdp: Fix incompatible function pointer type
libtorrent: Update to tip of trunk
gnuchess: Fix build with c++17
ippool: Use unsigned int type for 1-bit integer bitfield
audiofile: Stick to c++14 std
ssiapi: Use c++14 standard
log4cpp: Keep using std=c++14
gengetopt: Use std=c++14
libmimetic: Pin to using -std=c++14
ace: Upgrade to 6.5.19
pipewire-media-session: Use PW_ENABLE_DEPRECATED
rtorrent: Update to latest tip of trunk
nspr: Fix build with clang16
net-snmp: Fix build with clang16
xmlstarlet: Fix build with clang16
libol: Drop recipe
hplip: Update to 3.22.10
espeak: Drop using 'register' keyword for storage classifier
uw-imap: Fix build with clang 16
xmlsec1: Include xmlsec/parser.h for xmlSecParserSetDefaultOptions()
exiv2: Upgrade to 0.27.6
packagegroup-meta-oe: Remove mongodb for upsupported arches
rtorrent: Add missing dependency on autoconf-archive
thrift: Fix c++ and system header include order problem
libcereal: Use -idirafter instead of -isystem
poppler: cmake: Do not use -isystem
uftreace: Fix a build race
sdbus-c++: Disable ccache
libcamera: Fix build with gcc-13
mariadb: Fix build with gcc-13
vulkan-cts,opengl-es-cts: Fix build with gcc-13
rocksdb: Fix build with gcc13
rocksdb: Upgrade to 7.9.2
redis-plus-plus: Upgrade to 1.3.7
redis-plus-plus: Fix build with gcc13
rdfind: Upgrade to 1.5.0 release
rdfind: Fix build with gcc13
libiodbc: Fix SRC_URI to not use gitlab archives
opensaf: Fix build with gcc13
crossguid: Fix build with gcc13
dbus-cxx: Fix build with gcc13
dbus-cxx: Upgrade to 2.3.1
msktutil: Upgrade to 1.2.1
hiredis: Enable SSL/TLS support by default
redis-plus-plus: Enable SSL/TLS by default
rocksdb: Fix build with clang compiler
Lei Maohui (2):
biodbc: Added a new recipe.
trace-cmd: Fix QA Issue of do_package when enable multilib:
Leon Anavi (14):
python3-traitlets: Upgrade 5.8.0 -> 5.8.1
python3-prettytable: Upgrade 3.4.1 -> 3.6.0
python3-cantools: Upgrade 38.0.0 -> 38.0.1
python3-imageio: Upgrade 2.23.0 -> 2.24.0
python3-astroid: Upgrade 2.12.13 -> 2.13.2
python3-alembic: Upgrade 1.9.1 -> 1.9.2
python3-autobahn: Upgrade 22.12.1 -> 23.1.1
python3-eventlet: Upgrade 0.33.2 -> 0.33.3
python3-configobj: Upgrade 5.0.6 -> 5.0.8
python3-nocaselist: Upgrade 1.0.6 -> 1.1.0
python3-nocasedict: Upgrade 1.0.4 -> 1.1.0
python3-email-validator: Upgrade 1.3.0 -> 1.3.1
python3-imageio: Upgrade 2.24.0 -> 2.25.0
python3-cachetools: Upgrade 5.2.1 -> 5.3.0
Markus Volk (8):
webp-pixbuf-loader: add recipe
freerdp: build the rdp server
nv-codec-headers: add recipe
gnome-chess: import recipe
gnome-shell: update 43.1 -> 43.2
pipewire: update 0.3.63 -> 0.3.64
cups-filters: build with dbus support
cups-pk-helper: add recipe
Martin Jansa (3):
s-nail: fix Upstream-Status format
smartmontools: fix Upstream-Status format
htop: fix Upstream-Status format
Niko Mauno (2):
Fix missing leading whitespace with ':append'
nftables: Fix missing leading whitespace with ':append'
Peter Bašista (1):
Make tvheadend recipe compatible with the latest tvheadend version
Quentin Schulz (1):
python3-reedsolo: Add recipe
Randy MacLeod (2):
librelp: update to 1.11.0
rsyslog: update to 8.2212.0
Richard Hughes (1):
fwupd: Upgrade to 1.8.9
Robert Yang (1):
tftpy: Add it for python tftp server and client
Ross Burton (3):
khronos-cts: fix build when python3-build-native is present
python3-pytest-forked: update for move from picobuild to build
mbedtls: add option to use PSA for X.509/TLS operations
Stefan Ghinea (1):
mbedtls: upgrade to 2.28.2 to fix CVE-2022-46392, CVE-2022-46393
Trevor Woerner (1):
psqlodbc: fix HOMEPAGE
Wang Mingyu (62):
ctags: upgrade 6.0.20230101.0 -> 6.0.20230108.0
flatbuffers: upgrade 22.12.06 -> 23.1.4
libadwaita: upgrade 1.2.0 -> 1.2.1
hwdata: upgrade 0.365 -> 0.366
libmoo-perl: upgrade 2.005004 -> 2.005005
evolution-data-server-native: upgrade 3.46.2 -> 3.46.3
cli11: upgrade 2.3.1 -> 2.3.2
imapfilter: upgrade 2.7.6 -> 2.8.1
libcgi-perl: upgrade 4.54 -> 4.55
hidapi: upgrade 0.12.0 -> 0.13.0
python3-lazy-object-proxy: upgrade 1.8.0 -> 1.9.0
xfsprogs: upgrade 6.0.0 -> 6.1.0
tbb: upgrade 2021.7.0 -> 2021.8.0
python3-networkx: upgrade 2.8.8 -> 3.0
python3-sqlalchemy: upgrade 1.4.45 -> 1.4.46
python3-aiohue: upgrade 4.5.0 -> 4.6.1
python3-cachetools: upgrade 5.2.0 -> 5.2.1
python3-google-api-python-client: upgrade 2.70.0 -> 2.71.0
python3-flask-migrate: upgrade 4.0.0 -> 4.0.1
python3-coverage: upgrade 7.0.3 -> 7.0.4
python3-googleapis-common-protos: upgrade 1.57.0 -> 1.58.0
python3-ipython: upgrade 8.7.0 -> 8.8.0
python3-redis: upgrade 4.4.0 -> 4.4.1
python3-robotframework: upgrade 6.0.1 -> 6.0.2
python3-uefi-firmware: upgrade 1.9 -> 1.10
python3-ujson: upgrade 5.6.0 -> 5.7.0
python3-xlsxwriter: upgrade 3.0.5 -> 3.0.6
xfsprogs: upgrade 6.1.0 -> 6.1.1
xfstests: upgrade 2022.12.18 -> 2023.01.01
eog: upgrade 43.1 -> 43.2
gvfs: upgrade 1.50.2 -> 1.50.3
libnma: upgrade 1.10.4 -> 1.10.6
nautilus: upgrade 43.1 -> 43.2
nbdkit: upgrade 1.33.4 -> 1.33.7
networkmanager: upgrade 1.40.0 -> 1.40.10
tcpdump: upgrade 4.99.2 -> 4.99.3
unbound: upgrade 1.17.0 -> 1.17.1
ctags: upgrade 6.0.20230108.0 -> 6.0.20230115.0
dnfdragora: upgrade 2.1.3 -> 2.1.4
gensio: upgrade 2.6.1 -> 2.6.2
hidapi: upgrade 0.13.0 -> 0.13.1
librelp: upgrade 1.10.0 -> 1.11.0
libtraceevent: upgrade 1.7.0 -> 1.7.1
libtracefs: upgrade 1.6.3 -> 1.6.4
uftrace: upgrade 0.12 -> 0.13
xterm: upgrade 377 -> 378
python3-absl: upgrade 1.3.0 -> 1.4.0
python3-coverage: upgrade 7.0.4 -> 7.0.5
python3-dateparser: upgrade 1.1.5 -> 1.1.6
python3-decouple: upgrade 3.6 -> 3.7
python3-dnspython: upgrade 2.2.1 -> 2.3.0
python3-flask-wtf: upgrade 1.0.1 -> 1.1.0
python3-future: upgrade 0.18.2 -> 0.18.3
python3-google-api-python-client: upgrade 2.71.0 -> 2.72.0
python3-google-auth: upgrade 2.15.0 -> 2.16.0
python3-mock: upgrade 5.0.0 -> 5.0.1
python3-pymodbus: upgrade 3.0.2 -> 3.1.0
python3-pyzmq: upgrade 24.0.1 -> 25.0.0
python3-redis: upgrade 4.4.1 -> 4.4.2
python3-sentry-sdk: upgrade 1.12.1 -> 1.13.0
python3-txaio: upgrade 22.2.1 -> 23.1.1
python3-xlsxwriter: upgrade 3.0.6 -> 3.0.7
Yi Zhao (2):
freeradius: upgrade 3.0.21 -> 3.0.26
strongswan: upgrade 5.9.8 -> 5.9.9
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I625cfaa0bd5052cd72a121f010db3ecd2f274caf
Diffstat (limited to 'poky/bitbake/lib')
-rw-r--r-- | poky/bitbake/lib/bb/cache.py | 21 | ||||
-rw-r--r-- | poky/bitbake/lib/bb/codeparser.py | 8 | ||||
-rw-r--r-- | poky/bitbake/lib/bb/cooker.py | 21 | ||||
-rw-r--r-- | poky/bitbake/lib/bb/cookerdata.py | 9 | ||||
-rw-r--r-- | poky/bitbake/lib/bb/data.py | 15 | ||||
-rw-r--r-- | poky/bitbake/lib/bb/data_smart.py | 16 | ||||
-rw-r--r-- | poky/bitbake/lib/bb/fetch2/__init__.py | 3 | ||||
-rw-r--r-- | poky/bitbake/lib/bb/persist_data.py | 21 | ||||
-rw-r--r-- | poky/bitbake/lib/bb/server/process.py | 9 | ||||
-rw-r--r-- | poky/bitbake/lib/bb/tests/codeparser.py | 14 | ||||
-rw-r--r-- | poky/bitbake/lib/bb/tests/fetch.py | 46 | ||||
-rw-r--r-- | poky/bitbake/lib/bb/ui/taskexp.py | 2 | ||||
-rw-r--r-- | poky/bitbake/lib/bb/ui/uievent.py | 2 | ||||
-rw-r--r-- | poky/bitbake/lib/bb/utils.py | 21 | ||||
-rwxr-xr-x | poky/bitbake/lib/toaster/orm/fixtures/gen_fixtures.py | 18 | ||||
-rw-r--r-- | poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml | 16 | ||||
-rw-r--r-- | poky/bitbake/lib/toaster/orm/fixtures/poky.xml | 62 | ||||
-rw-r--r-- | poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py | 2 | ||||
-rw-r--r-- | poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py | 2 |
19 files changed, 222 insertions, 86 deletions
diff --git a/poky/bitbake/lib/bb/cache.py b/poky/bitbake/lib/bb/cache.py index ee924b2d2b..b309775bb9 100644 --- a/poky/bitbake/lib/bb/cache.py +++ b/poky/bitbake/lib/bb/cache.py @@ -838,11 +838,10 @@ class MultiProcessCache(object): self.cachedata = self.create_cachedata() self.cachedata_extras = self.create_cachedata() - def init_cache(self, d, cache_file_name=None): - cachedir = (d.getVar("PERSISTENT_DIR") or - d.getVar("CACHE")) - if cachedir in [None, '']: + def init_cache(self, cachedir, cache_file_name=None): + if not cachedir: return + bb.utils.mkdirhier(cachedir) self.cachefile = os.path.join(cachedir, cache_file_name or self.__class__.cache_file_name) @@ -873,6 +872,10 @@ class MultiProcessCache(object): if not self.cachefile: return + have_data = any(self.cachedata_extras) + if not have_data: + return + glf = bb.utils.lockfile(self.cachefile + ".lock", shared=True) i = os.getpid() @@ -907,6 +910,8 @@ class MultiProcessCache(object): data = self.cachedata + have_data = False + for f in [y for y in os.listdir(os.path.dirname(self.cachefile)) if y.startswith(os.path.basename(self.cachefile) + '-')]: f = os.path.join(os.path.dirname(self.cachefile), f) try: @@ -921,12 +926,14 @@ class MultiProcessCache(object): os.unlink(f) continue + have_data = True self.merge_data(extradata, data) os.unlink(f) - with open(self.cachefile, "wb") as f: - p = pickle.Pickler(f, -1) - p.dump([data, self.__class__.CACHE_VERSION]) + if have_data: + with open(self.cachefile, "wb") as f: + p = pickle.Pickler(f, -1) + p.dump([data, self.__class__.CACHE_VERSION]) bb.utils.unlockfile(glf) diff --git a/poky/bitbake/lib/bb/codeparser.py b/poky/bitbake/lib/bb/codeparser.py index ecae7b0808..d6b8102585 100644 --- a/poky/bitbake/lib/bb/codeparser.py +++ b/poky/bitbake/lib/bb/codeparser.py @@ -184,12 +184,12 @@ class CodeParserCache(MultiProcessCache): self.shellcachelines[h] = cacheline return cacheline - def init_cache(self, d): + def init_cache(self, cachedir): # Check if we already have the caches if self.pythoncache: return - MultiProcessCache.init_cache(self, d) + MultiProcessCache.init_cache(self, cachedir) # cachedata gets re-assigned in the parent self.pythoncache = self.cachedata[0] @@ -201,8 +201,8 @@ class CodeParserCache(MultiProcessCache): codeparsercache = CodeParserCache() -def parser_cache_init(d): - codeparsercache.init_cache(d) +def parser_cache_init(cachedir): + codeparsercache.init_cache(cachedir) def parser_cache_save(): codeparsercache.save_extras() diff --git a/poky/bitbake/lib/bb/cooker.py b/poky/bitbake/lib/bb/cooker.py index cfaa7cbe6c..c5e9fa2941 100644 --- a/poky/bitbake/lib/bb/cooker.py +++ b/poky/bitbake/lib/bb/cooker.py @@ -2187,12 +2187,11 @@ class CookerParser(object): self.num_processes = min(int(self.cfgdata.getVar("BB_NUMBER_PARSE_THREADS") or multiprocessing.cpu_count()), self.toparse) + bb.cache.SiggenRecipeInfo.reset() self.start() self.haveshutdown = False self.syncthread = None - bb.cache.SiggenRecipeInfo.reset() - def start(self): self.results = self.load_cached() self.processes = [] @@ -2231,6 +2230,14 @@ class CookerParser(object): else: bb.error("Parsing halted due to errors, see error messages above") + # Cleanup the queue before call process.join(), otherwise there might be + # deadlocks. + while True: + try: + self.result_queue.get(timeout=0.25) + except queue.Empty: + break + def sync_caches(): for c in self.bb_caches.values(): bb.cache.SiggenRecipeInfo.reset() @@ -2241,14 +2248,6 @@ class CookerParser(object): self.parser_quit.set() - # Cleanup the queue before call process.join(), otherwise there might be - # deadlocks. - while True: - try: - self.result_queue.get(timeout=0.25) - except queue.Empty: - break - for process in self.processes: process.join(0.5) @@ -2269,7 +2268,7 @@ class CookerParser(object): if hasattr(process, "close"): process.close() - + bb.codeparser.parser_cache_save() bb.codeparser.parser_cache_savemerge() bb.cache.SiggenRecipeInfo.reset() bb.fetch.fetcher_parse_done() diff --git a/poky/bitbake/lib/bb/cookerdata.py b/poky/bitbake/lib/bb/cookerdata.py index c6b5658d75..1658bee93c 100644 --- a/poky/bitbake/lib/bb/cookerdata.py +++ b/poky/bitbake/lib/bb/cookerdata.py @@ -271,7 +271,6 @@ class CookerDataBuilder(object): if self.data.getVar("BB_WORKERCONTEXT", False) is None and not worker: bb.fetch.fetcher_init(self.data) bb.parse.init_parser(self.data) - bb.codeparser.parser_cache_init(self.data) bb.event.fire(bb.event.ConfigParsed(), self.data) @@ -370,6 +369,11 @@ class CookerDataBuilder(object): data.setVar("TOPDIR", os.path.dirname(os.path.dirname(layerconf))) data = parse_config_file(layerconf, data) + if not data.getVar("BB_CACHEDIR"): + data.setVar("BB_CACHEDIR", "${TOPDIR}/cache") + + bb.codeparser.parser_cache_init(data.getVar("BB_CACHEDIR")) + layers = (data.getVar('BBLAYERS') or "").split() broken_layers = [] @@ -473,6 +477,9 @@ class CookerDataBuilder(object): if not data.getVar("TOPDIR"): data.setVar("TOPDIR", os.path.abspath(os.getcwd())) + if not data.getVar("BB_CACHEDIR"): + data.setVar("BB_CACHEDIR", "${TOPDIR}/cache") + bb.codeparser.parser_cache_init(data.getVar("BB_CACHEDIR")) data = parse_config_file(os.path.join("conf", "bitbake.conf"), data) diff --git a/poky/bitbake/lib/bb/data.py b/poky/bitbake/lib/bb/data.py index 841369699e..f3ae062022 100644 --- a/poky/bitbake/lib/bb/data.py +++ b/poky/bitbake/lib/bb/data.py @@ -261,7 +261,7 @@ def emit_func_python(func, o=sys.__stdout__, d = init()): newdeps |= set((d.getVarFlag(dep, "vardeps") or "").split()) newdeps -= seen -def build_dependencies(key, keys, mod_funcs, shelldeps, varflagsexcl, ignored_vars, d): +def build_dependencies(key, keys, mod_funcs, shelldeps, varflagsexcl, ignored_vars, d, codeparsedata): def handle_contains(value, contains, exclusions, d): newvalue = [] if value: @@ -312,14 +312,14 @@ def build_dependencies(key, keys, mod_funcs, shelldeps, varflagsexcl, ignored_va value = varflags.get("vardepvalue") elif varflags.get("func"): if varflags.get("python"): - value = d.getVarFlag(key, "_content", False) + value = codeparsedata.getVarFlag(key, "_content", False) parser = bb.codeparser.PythonParser(key, logger) parser.parse_python(value, filename=varflags.get("filename"), lineno=varflags.get("lineno")) deps = deps | parser.references deps = deps | (keys & parser.execs) value = handle_contains(value, parser.contains, exclusions, d) else: - value, parsedvar = d.getVarFlag(key, "_content", False, retparser=True) + value, parsedvar = codeparsedata.getVarFlag(key, "_content", False, retparser=True) parser = bb.codeparser.ShellParser(key, logger) parser.parse_shell(parsedvar.value) deps = deps | shelldeps @@ -378,12 +378,17 @@ def generate_dependencies(d, ignored_vars): shelldeps = set(key for key in d.getVar("__exportlist", False) if d.getVarFlag(key, "export", False) and not d.getVarFlag(key, "unexport", False)) varflagsexcl = d.getVar('BB_SIGNATURE_EXCLUDE_FLAGS') + codeparserd = d.createCopy() + for forced in (d.getVar('BB_HASH_CODEPARSER_VALS') or "").split(): + key, value = forced.split("=", 1) + codeparserd.setVar(key, value) + deps = {} values = {} tasklist = d.getVar('__BBTASKS', False) or [] for task in tasklist: - deps[task], values[task] = build_dependencies(task, keys, mod_funcs, shelldeps, varflagsexcl, ignored_vars, d) + deps[task], values[task] = build_dependencies(task, keys, mod_funcs, shelldeps, varflagsexcl, ignored_vars, d, codeparserd) newdeps = deps[task] seen = set() while newdeps: @@ -392,7 +397,7 @@ def generate_dependencies(d, ignored_vars): newdeps = set() for dep in nextdeps: if dep not in deps: - deps[dep], values[dep] = build_dependencies(dep, keys, mod_funcs, shelldeps, varflagsexcl, ignored_vars, d) + deps[dep], values[dep] = build_dependencies(dep, keys, mod_funcs, shelldeps, varflagsexcl, ignored_vars, d, codeparserd) newdeps |= deps[dep] newdeps -= seen #print "For %s: %s" % (task, str(deps[task])) diff --git a/poky/bitbake/lib/bb/data_smart.py b/poky/bitbake/lib/bb/data_smart.py index e2c93597e5..c597dbade8 100644 --- a/poky/bitbake/lib/bb/data_smart.py +++ b/poky/bitbake/lib/bb/data_smart.py @@ -515,18 +515,18 @@ class DataSmart(MutableMapping): dest = self.dict while dest: if var in dest: - return dest[var], self.overridedata.get(var, None) + return dest[var] if "_data" not in dest: break dest = dest["_data"] - return None, self.overridedata.get(var, None) + return None def _makeShadowCopy(self, var): if var in self.dict: return - local_var, _ = self._findVar(var) + local_var = self._findVar(var) if local_var: self.dict[var] = copy.copy(local_var) @@ -782,10 +782,12 @@ class DataSmart(MutableMapping): if expand and cachename in self.expand_cache: return self.expand_cache[cachename].value - local_var, overridedata = self._findVar(var) + local_var = self._findVar(var) value = None removes = set() - if flag == "_content" and overridedata is not None and not parsing: + if flag == "_content" and not parsing: + overridedata = self.overridedata.get(var, None) + if flag == "_content" and not parsing and overridedata is not None: match = False active = {} self.need_overrides() @@ -900,7 +902,7 @@ class DataSmart(MutableMapping): def delVarFlag(self, var, flag, **loginfo): self.expand_cache = {} - local_var, _ = self._findVar(var) + local_var = self._findVar(var) if not local_var: return if not var in self.dict: @@ -943,7 +945,7 @@ class DataSmart(MutableMapping): self.dict[var][i] = flags[i] def getVarFlags(self, var, expand = False, internalflags=False): - local_var, _ = self._findVar(var) + local_var = self._findVar(var) flags = {} if local_var: diff --git a/poky/bitbake/lib/bb/fetch2/__init__.py b/poky/bitbake/lib/bb/fetch2/__init__.py index 893ec6f6bd..5a7a6024d1 100644 --- a/poky/bitbake/lib/bb/fetch2/__init__.py +++ b/poky/bitbake/lib/bb/fetch2/__init__.py @@ -469,6 +469,7 @@ def uri_replace(ud, uri_find, uri_replace, replacements, d, mirrortarball=None): basename = os.path.basename(mirrortarball) # Kill parameters, they make no sense for mirror tarballs uri_decoded[5] = {} + uri_find_decoded[5] = {} elif ud.localpath and ud.method.supports_checksum(ud): basename = os.path.basename(ud.localpath) if basename: @@ -517,7 +518,7 @@ def fetcher_init(d): else: raise FetchError("Invalid SRCREV cache policy of: %s" % srcrev_policy) - _checksum_cache.init_cache(d) + _checksum_cache.init_cache(d.getVar("BB_CACHEDIR")) for m in methods: if hasattr(m, "init"): diff --git a/poky/bitbake/lib/bb/persist_data.py b/poky/bitbake/lib/bb/persist_data.py index ce84a15825..bcca791edf 100644 --- a/poky/bitbake/lib/bb/persist_data.py +++ b/poky/bitbake/lib/bb/persist_data.py @@ -249,4 +249,23 @@ def persist(domain, d): bb.utils.mkdirhier(cachedir) cachefile = os.path.join(cachedir, "bb_persist_data.sqlite3") - return SQLTable(cachefile, domain) + + try: + return SQLTable(cachefile, domain) + except sqlite3.OperationalError: + # Sqlite fails to open database when its path is too long. + # After testing, 504 is the biggest path length that can be opened by + # sqlite. + # Note: This code is called before sanity.bbclass and its path length + # check + max_len = 504 + if len(cachefile) > max_len: + logger.critical("The path of the cache file is too long " + "({0} chars > {1}) to be opened by sqlite! " + "Your cache file is \"{2}\"".format( + len(cachefile), + max_len, + cachefile)) + sys.exit(1) + else: + raise diff --git a/poky/bitbake/lib/bb/server/process.py b/poky/bitbake/lib/bb/server/process.py index 529196b78c..916ee0a0e5 100644 --- a/poky/bitbake/lib/bb/server/process.py +++ b/poky/bitbake/lib/bb/server/process.py @@ -361,20 +361,21 @@ class ProcessServer(): except FileNotFoundError: return None - lockcontents = get_lock_contents(lockfile) - serverlog("Original lockfile contents: " + str(lockcontents)) - lock.close() lock = None while not lock: i = 0 lock = None + if not os.path.exists(os.path.basename(lockfile)): + serverlog("Lockfile directory gone, exiting.") + return + while not lock and i < 30: lock = bb.utils.lockfile(lockfile, shared=False, retry=False, block=False) if not lock: newlockcontents = get_lock_contents(lockfile) - if newlockcontents != lockcontents: + if not newlockcontents[0].startswith([os.getpid() + "\n", os.getpid() + " "]): # A new server was started, the lockfile contents changed, we can exit serverlog("Lockfile now contains different contents, exiting: " + str(newlockcontents)) return diff --git a/poky/bitbake/lib/bb/tests/codeparser.py b/poky/bitbake/lib/bb/tests/codeparser.py index a508f23bcb..7f5d59ca74 100644 --- a/poky/bitbake/lib/bb/tests/codeparser.py +++ b/poky/bitbake/lib/bb/tests/codeparser.py @@ -318,7 +318,7 @@ d.getVar(a(), False) "filename": "example.bb", }) - deps, values = bb.data.build_dependencies("FOO", set(self.d.keys()), set(), set(), set(), set(), self.d) + deps, values = bb.data.build_dependencies("FOO", set(self.d.keys()), set(), set(), set(), set(), self.d, self.d) self.assertEqual(deps, set(["somevar", "bar", "something", "inexpand", "test", "test2", "a"])) @@ -365,7 +365,7 @@ esac self.d.setVarFlags("FOO", {"func": True}) self.setEmptyVars(execs) - deps, values = bb.data.build_dependencies("FOO", set(self.d.keys()), set(), set(), set(), set(), self.d) + deps, values = bb.data.build_dependencies("FOO", set(self.d.keys()), set(), set(), set(), set(), self.d, self.d) self.assertEqual(deps, set(["somevar", "inverted"] + execs)) @@ -375,7 +375,7 @@ esac self.d.setVar("FOO", "foo=oe_libinstall; eval $foo") self.d.setVarFlag("FOO", "vardeps", "oe_libinstall") - deps, values = bb.data.build_dependencies("FOO", set(self.d.keys()), set(), set(), set(), set(), self.d) + deps, values = bb.data.build_dependencies("FOO", set(self.d.keys()), set(), set(), set(), set(), self.d, self.d) self.assertEqual(deps, set(["oe_libinstall"])) @@ -384,7 +384,7 @@ esac self.d.setVar("FOO", "foo=oe_libinstall; eval $foo") self.d.setVarFlag("FOO", "vardeps", "${@'oe_libinstall'}") - deps, values = bb.data.build_dependencies("FOO", set(self.d.keys()), set(), set(), set(), set(), self.d) + deps, values = bb.data.build_dependencies("FOO", set(self.d.keys()), set(), set(), set(), set(), self.d, self.d) self.assertEqual(deps, set(["oe_libinstall"])) @@ -399,7 +399,7 @@ esac # Check dependencies self.d.setVar('ANOTHERVAR', expr) self.d.setVar('TESTVAR', 'anothervalue testval testval2') - deps, values = bb.data.build_dependencies("ANOTHERVAR", set(self.d.keys()), set(), set(), set(), set(), self.d) + deps, values = bb.data.build_dependencies("ANOTHERVAR", set(self.d.keys()), set(), set(), set(), set(), self.d, self.d) self.assertEqual(sorted(values.splitlines()), sorted([expr, 'TESTVAR{anothervalue} = Set', @@ -418,14 +418,14 @@ esac self.d.setVar('ANOTHERVAR', varval) self.d.setVar('TESTVAR', 'anothervalue testval testval2') self.d.setVar('TESTVAR2', 'testval3') - deps, values = bb.data.build_dependencies("ANOTHERVAR", set(self.d.keys()), set(), set(), set(), set(["TESTVAR"]), self.d) + deps, values = bb.data.build_dependencies("ANOTHERVAR", set(self.d.keys()), set(), set(), set(), set(["TESTVAR"]), self.d, self.d) self.assertEqual(sorted(values.splitlines()), sorted([varval])) self.assertEqual(deps, set(["TESTVAR2"])) self.assertEqual(self.d.getVar('ANOTHERVAR').split(), ['testval3', 'anothervalue']) # Check the vardepsexclude flag is handled by contains functionality self.d.setVarFlag('ANOTHERVAR', 'vardepsexclude', 'TESTVAR') - deps, values = bb.data.build_dependencies("ANOTHERVAR", set(self.d.keys()), set(), set(), set(), set(), self.d) + deps, values = bb.data.build_dependencies("ANOTHERVAR", set(self.d.keys()), set(), set(), set(), set(), self.d, self.d) self.assertEqual(sorted(values.splitlines()), sorted([varval])) self.assertEqual(deps, set(["TESTVAR2"])) self.assertEqual(self.d.getVar('ANOTHERVAR').split(), ['testval3', 'anothervalue']) diff --git a/poky/bitbake/lib/bb/tests/fetch.py b/poky/bitbake/lib/bb/tests/fetch.py index ad3d4dea7d..f3890321d6 100644 --- a/poky/bitbake/lib/bb/tests/fetch.py +++ b/poky/bitbake/lib/bb/tests/fetch.py @@ -2852,7 +2852,7 @@ class FetchPremirroronlyLocalTest(FetcherTest): os.mkdir(self.mirrordir) self.reponame = "bitbake" self.gitdir = os.path.join(self.tempdir, "git", self.reponame) - self.recipe_url = "git://git.fake.repo/bitbake" + self.recipe_url = "git://git.fake.repo/bitbake;branch=master" self.d.setVar("BB_FETCH_PREMIRRORONLY", "1") self.d.setVar("BB_NO_NETWORK", "1") self.d.setVar("PREMIRRORS", self.recipe_url + " " + "file://{}".format(self.mirrordir) + " \n") @@ -2936,6 +2936,50 @@ class FetchPremirroronlyNetworkTest(FetcherTest): with self.assertRaises(bb.fetch2.NetworkAccess): fetcher.download() +class FetchPremirroronlyMercurialTest(FetcherTest): + """ Test for premirrors with mercurial repos + the test covers also basic hg:// clone (see fetch_and_create_tarball + """ + def skipIfNoHg(): + import shutil + if not shutil.which('hg'): + return unittest.skip('Mercurial not installed') + return lambda f: f + + def setUp(self): + super(FetchPremirroronlyMercurialTest, self).setUp() + self.mirrordir = os.path.join(self.tempdir, "mirrors") + os.mkdir(self.mirrordir) + self.reponame = "libgnt" + self.clonedir = os.path.join(self.tempdir, "hg") + self.recipe_url = "hg://keep.imfreedom.org/libgnt;module=libgnt" + self.d.setVar("SRCREV", "53e8b422faaf") + self.mirrorname = "hg_libgnt_keep.imfreedom.org_.libgnt.tar.gz" + + def fetch_and_create_tarball(self): + """ + Ask bitbake to download repo and prepare mirror tarball for us + """ + self.d.setVar("BB_GENERATE_MIRROR_TARBALLS", "1") + fetcher = bb.fetch.Fetch([self.recipe_url], self.d) + fetcher.download() + mirrorfile = os.path.join(self.d.getVar("DL_DIR"), self.mirrorname) + self.assertTrue(os.path.exists(mirrorfile), "Mirror tarball {} has not been created".format(mirrorfile)) + ## moving tarball to mirror directory + os.rename(mirrorfile, os.path.join(self.mirrordir, self.mirrorname)) + self.d.setVar("BB_GENERATE_MIRROR_TARBALLS", "0") + + + @skipIfNoNetwork() + @skipIfNoHg() + def test_premirror_mercurial(self): + self.fetch_and_create_tarball() + self.d.setVar("PREMIRRORS", self.recipe_url + " " + "file://{}".format(self.mirrordir) + " \n") + self.d.setVar("BB_FETCH_PREMIRRORONLY", "1") + self.d.setVar("BB_NO_NETWORK", "1") + fetcher = bb.fetch.Fetch([self.recipe_url], self.d) + fetcher.download() + class FetchPremirroronlyBrokenTarball(FetcherTest): def setUp(self): diff --git a/poky/bitbake/lib/bb/ui/taskexp.py b/poky/bitbake/lib/bb/ui/taskexp.py index c00eaf6638..bedfd69b09 100644 --- a/poky/bitbake/lib/bb/ui/taskexp.py +++ b/poky/bitbake/lib/bb/ui/taskexp.py @@ -177,7 +177,7 @@ class gtkthread(threading.Thread): quit = threading.Event() def __init__(self, shutdown): threading.Thread.__init__(self) - self.setDaemon(True) + self.daemon = True self.shutdown = shutdown if not Gtk.init_check()[0]: sys.stderr.write("Gtk+ init failed. Make sure DISPLAY variable is set.\n") diff --git a/poky/bitbake/lib/bb/ui/uievent.py b/poky/bitbake/lib/bb/ui/uievent.py index adbe698939..c2f830d530 100644 --- a/poky/bitbake/lib/bb/ui/uievent.py +++ b/poky/bitbake/lib/bb/ui/uievent.py @@ -65,7 +65,7 @@ class BBUIEventQueue: self.server = server self.t = threading.Thread() - self.t.setDaemon(True) + self.t.daemon = True self.t.run = self.startCallbackHandler self.t.start() diff --git a/poky/bitbake/lib/bb/utils.py b/poky/bitbake/lib/bb/utils.py index 8c79159573..4446997e42 100644 --- a/poky/bitbake/lib/bb/utils.py +++ b/poky/bitbake/lib/bb/utils.py @@ -1699,23 +1699,20 @@ def disable_network(uid=None, gid=None): def export_proxies(d): """ export common proxies variables from datastore to environment """ - import os variables = ['http_proxy', 'HTTP_PROXY', 'https_proxy', 'HTTPS_PROXY', 'ftp_proxy', 'FTP_PROXY', 'no_proxy', 'NO_PROXY', - 'GIT_PROXY_COMMAND'] - exported = False + 'GIT_PROXY_COMMAND', 'SSL_CERT_FILE', 'SSL_CERT_DIR'] - for v in variables: - if v in os.environ.keys(): - exported = True - else: - v_proxy = d.getVar(v) - if v_proxy is not None: - os.environ[v] = v_proxy - exported = True + origenv = d.getVar("BB_ORIGENV") + + for name in variables: + value = d.getVar(name) + if not value and origenv: + value = origenv.getVar(name) + if value: + os.environ[name] = value - return exported def load_plugins(logger, plugins, pluginpath): diff --git a/poky/bitbake/lib/toaster/orm/fixtures/gen_fixtures.py b/poky/bitbake/lib/toaster/orm/fixtures/gen_fixtures.py index ad20d6bdd5..69f557657a 100755 --- a/poky/bitbake/lib/toaster/orm/fixtures/gen_fixtures.py +++ b/poky/bitbake/lib/toaster/orm/fixtures/gen_fixtures.py @@ -35,26 +35,18 @@ verbose = False # [Codename, Yocto Project Version, Release Date, Current Version, Support Level, Poky Version, BitBake branch] current_releases = [ # Release slot #1 - ['Kirkstone','4.0','April 2022','4.0.5 (October 2022)','Stable - Long Term Support (until Apr. 2024)','','2.0'], + ['Kirkstone','4.0','April 2022','4.0.6 (December 2022)','Stable - Long Term Support (until Apr. 2024)','','2.0'], # Release slot #2 'local' ['HEAD','HEAD','','Local Yocto Project','HEAD','','HEAD'], # Release slot #3 'master' ['Master','master','','Yocto Project master','master','','master'], # Release slot #4 - ['Langdale','4.1','October 2022','4.1.1 (November 2022)','Support for 7 months (until May 2023)','','2.2'], + ['Langdale','4.1','October 2022','4.1.2 (January 2023)','Support for 7 months (until May 2023)','','2.2'], # ['Honister','3.4','October 2021','3.4.2 (February 2022)','Support for 7 months (until May 2022)','26.0','1.52'], -# ['Gatesgarth','3.2','Oct 2020','3.2.4 (May 2021)','EOL','24.0','1.48'], - # Optional Release slot #4 - # 'dunfell' seems to have a bug: - # Bitbake crash - # Traceback (most recent call last): - # File "/home/usersetup/poky/bitbake/lib/bb/ui/toasterui.py", line 337, in main - # buildinfohelper.update_and_store_task(event) - # File "/home/usersetup/poky/bitbake/lib/bb/ui/buildinfohelper.py", line 1267, in update_and_store_task - # assert identifier in self.internal_state['taskdata'] - # AssertionError -# ['Dunfell','3.1','April 2021','3.1.20 (October 2022)','Stable - Long Term Support (until Apr. 2024)','23.0','1.46'], # ['Hardknott','3.3','April 2021','3.3.5 (March 2022)','Stable - Support for 13 months (until Apr. 2022)','25.0','1.50'], +# ['Gatesgarth','3.2','Oct 2020','3.2.4 (May 2021)','EOL','24.0','1.48'], + # Optional Release slot #5 + ['Dunfell','3.1','April 2020','3.1.22 (January 2023)','Stable - Long Term Support (until Apr. 2024)','23.0','1.46'], ] default_poky_layers = [ diff --git a/poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml b/poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml index b83b94d5ff..615e88aba1 100644 --- a/poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml +++ b/poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml @@ -27,6 +27,11 @@ <field type="CharField" name="giturl">git://git.openembedded.org/bitbake</field> <field type="CharField" name="branch">2.2</field> </object> + <object model="orm.bitbakeversion" pk="5"> + <field type="CharField" name="name">dunfell</field> + <field type="CharField" name="giturl">git://git.openembedded.org/bitbake</field> + <field type="CharField" name="branch">1.46</field> + </object> <!-- Releases available --> <object model="orm.release" pk="1"> @@ -57,6 +62,13 @@ <field type="CharField" name="branch_name">langdale</field> <field type="TextField" name="helptext">Toaster will run your builds using the tip of the <a href=\"https://cgit.openembedded.org/openembedded-core/log/?h=langdale\">OpenEmbedded Langdale</a> branch.</field> </object> + <object model="orm.release" pk="5"> + <field type="CharField" name="name">dunfell</field> + <field type="CharField" name="description">Openembedded Dunfell</field> + <field rel="ManyToOneRel" to="orm.bitbakeversion" name="bitbake_version">5</field> + <field type="CharField" name="branch_name">dunfell</field> + <field type="TextField" name="helptext">Toaster will run your builds using the tip of the <a href=\"https://cgit.openembedded.org/openembedded-core/log/?h=dunfell\">OpenEmbedded Dunfell</a> branch.</field> + </object> <!-- Default layers for each release --> <object model="orm.releasedefaultlayer" pk="1"> @@ -75,6 +87,10 @@ <field rel="ManyToOneRel" to="orm.release" name="release">4</field> <field type="CharField" name="layer_name">openembedded-core</field> </object> + <object model="orm.releasedefaultlayer" pk="5"> + <field rel="ManyToOneRel" to="orm.release" name="release">5</field> + <field type="CharField" name="layer_name">openembedded-core</field> + </object> <!-- Layer for the Local release --> diff --git a/poky/bitbake/lib/toaster/orm/fixtures/poky.xml b/poky/bitbake/lib/toaster/orm/fixtures/poky.xml index 6d58a4fdb8..04e12f96fd 100644 --- a/poky/bitbake/lib/toaster/orm/fixtures/poky.xml +++ b/poky/bitbake/lib/toaster/orm/fixtures/poky.xml @@ -31,6 +31,12 @@ <field type="CharField" name="branch">langdale</field> <field type="CharField" name="dirpath">bitbake</field> </object> + <object model="orm.bitbakeversion" pk="5"> + <field type="CharField" name="name">dunfell</field> + <field type="CharField" name="giturl">git://git.yoctoproject.org/poky</field> + <field type="CharField" name="branch">dunfell</field> + <field type="CharField" name="dirpath">bitbake</field> + </object> <!-- Releases available --> @@ -62,6 +68,13 @@ <field type="CharField" name="branch_name">langdale</field> <field type="TextField" name="helptext">Toaster will run your builds using the tip of the <a href="https://git.yoctoproject.org/cgit/cgit.cgi/poky/log/?h=langdale">Yocto Project Langdale branch</a>.</field> </object> + <object model="orm.release" pk="5"> + <field type="CharField" name="name">dunfell</field> + <field type="CharField" name="description">Yocto Project 3.1 "Dunfell"</field> + <field rel="ManyToOneRel" to="orm.bitbakeversion" name="bitbake_version">5</field> + <field type="CharField" name="branch_name">dunfell</field> + <field type="TextField" name="helptext">Toaster will run your builds using the tip of the <a href="https://git.yoctoproject.org/cgit/cgit.cgi/poky/log/?h=dunfell">Yocto Project Dunfell branch</a>.</field> + </object> <!-- Default project layers for each release --> <object model="orm.releasedefaultlayer" pk="1"> @@ -112,6 +125,18 @@ <field rel="ManyToOneRel" to="orm.release" name="release">4</field> <field type="CharField" name="layer_name">meta-yocto-bsp</field> </object> + <object model="orm.releasedefaultlayer" pk="13"> + <field rel="ManyToOneRel" to="orm.release" name="release">5</field> + <field type="CharField" name="layer_name">openembedded-core</field> + </object> + <object model="orm.releasedefaultlayer" pk="14"> + <field rel="ManyToOneRel" to="orm.release" name="release">5</field> + <field type="CharField" name="layer_name">meta-poky</field> + </object> + <object model="orm.releasedefaultlayer" pk="15"> + <field rel="ManyToOneRel" to="orm.release" name="release">5</field> + <field type="CharField" name="layer_name">meta-yocto-bsp</field> + </object> <!-- Default layers provided by poky openembedded-core @@ -155,6 +180,13 @@ <field type="CharField" name="branch">langdale</field> <field type="CharField" name="dirpath">meta</field> </object> + <object model="orm.layer_version" pk="5"> + <field rel="ManyToOneRel" to="orm.layer" name="layer">1</field> + <field type="IntegerField" name="layer_source">0</field> + <field rel="ManyToOneRel" to="orm.release" name="release">5</field> + <field type="CharField" name="branch">dunfell</field> + <field type="CharField" name="dirpath">meta</field> + </object> <object model="orm.layer" pk="2"> <field type="CharField" name="name">meta-poky</field> @@ -164,14 +196,14 @@ <field type="CharField" name="vcs_web_tree_base_url">https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/%path%?h=%branch%</field> <field type="CharField" name="vcs_web_file_base_url">https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/%path%?h=%branch%</field> </object> - <object model="orm.layer_version" pk="5"> + <object model="orm.layer_version" pk="6"> <field rel="ManyToOneRel" to="orm.layer" name="layer">2</field> <field type="IntegerField" name="layer_source">0</field> <field rel="ManyToOneRel" to="orm.release" name="release">1</field> <field type="CharField" name="branch">kirkstone</field> <field type="CharField" name="dirpath">meta-poky</field> </object> - <object model="orm.layer_version" pk="6"> + <object model="orm.layer_version" pk="7"> <field rel="ManyToOneRel" to="orm.layer" name="layer">2</field> <field type="IntegerField" name="layer_source">0</field> <field rel="ManyToOneRel" to="orm.release" name="release">2</field> @@ -179,20 +211,27 @@ <field type="CharField" name="commit">HEAD</field> <field type="CharField" name="dirpath">meta-poky</field> </object> - <object model="orm.layer_version" pk="7"> + <object model="orm.layer_version" pk="8"> <field rel="ManyToOneRel" to="orm.layer" name="layer">2</field> <field type="IntegerField" name="layer_source">0</field> <field rel="ManyToOneRel" to="orm.release" name="release">3</field> <field type="CharField" name="branch">master</field> <field type="CharField" name="dirpath">meta-poky</field> </object> - <object model="orm.layer_version" pk="8"> + <object model="orm.layer_version" pk="9"> <field rel="ManyToOneRel" to="orm.layer" name="layer">2</field> <field type="IntegerField" name="layer_source">0</field> <field rel="ManyToOneRel" to="orm.release" name="release">4</field> <field type="CharField" name="branch">langdale</field> <field type="CharField" name="dirpath">meta-poky</field> </object> + <object model="orm.layer_version" pk="10"> + <field rel="ManyToOneRel" to="orm.layer" name="layer">2</field> + <field type="IntegerField" name="layer_source">0</field> + <field rel="ManyToOneRel" to="orm.release" name="release">5</field> + <field type="CharField" name="branch">dunfell</field> + <field type="CharField" name="dirpath">meta-poky</field> + </object> <object model="orm.layer" pk="3"> <field type="CharField" name="name">meta-yocto-bsp</field> @@ -202,14 +241,14 @@ <field type="CharField" name="vcs_web_tree_base_url">https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/%path%?h=%branch%</field> <field type="CharField" name="vcs_web_file_base_url">https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/%path%?h=%branch%</field> </object> - <object model="orm.layer_version" pk="9"> + <object model="orm.layer_version" pk="11"> <field rel="ManyToOneRel" to="orm.layer" name="layer">3</field> <field type="IntegerField" name="layer_source">0</field> <field rel="ManyToOneRel" to="orm.release" name="release">1</field> <field type="CharField" name="branch">kirkstone</field> <field type="CharField" name="dirpath">meta-yocto-bsp</field> </object> - <object model="orm.layer_version" pk="10"> + <object model="orm.layer_version" pk="12"> <field rel="ManyToOneRel" to="orm.layer" name="layer">3</field> <field type="IntegerField" name="layer_source">0</field> <field rel="ManyToOneRel" to="orm.release" name="release">2</field> @@ -217,18 +256,25 @@ <field type="CharField" name="commit">HEAD</field> <field type="CharField" name="dirpath">meta-yocto-bsp</field> </object> - <object model="orm.layer_version" pk="11"> + <object model="orm.layer_version" pk="13"> <field rel="ManyToOneRel" to="orm.layer" name="layer">3</field> <field type="IntegerField" name="layer_source">0</field> <field rel="ManyToOneRel" to="orm.release" name="release">3</field> <field type="CharField" name="branch">master</field> <field type="CharField" name="dirpath">meta-yocto-bsp</field> </object> - <object model="orm.layer_version" pk="12"> + <object model="orm.layer_version" pk="14"> <field rel="ManyToOneRel" to="orm.layer" name="layer">3</field> <field type="IntegerField" name="layer_source">0</field> <field rel="ManyToOneRel" to="orm.release" name="release">4</field> <field type="CharField" name="branch">langdale</field> <field type="CharField" name="dirpath">meta-yocto-bsp</field> </object> + <object model="orm.layer_version" pk="15"> + <field rel="ManyToOneRel" to="orm.layer" name="layer">3</field> + <field type="IntegerField" name="layer_source">0</field> + <field rel="ManyToOneRel" to="orm.release" name="release">5</field> + <field type="CharField" name="branch">dunfell</field> + <field type="CharField" name="dirpath">meta-yocto-bsp</field> + </object> </django-objects> diff --git a/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py b/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py index eb097555e2..6d64830ebd 100644 --- a/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py +++ b/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py @@ -40,7 +40,7 @@ class Spinner(threading.Thread): """ A simple progress spinner to indicate download/parsing is happening""" def __init__(self, *args, **kwargs): super(Spinner, self).__init__(*args, **kwargs) - self.setDaemon(True) + self.daemon = True self.signal = True def run(self): diff --git a/poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py b/poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py index e223b95fcb..c77d6cf490 100644 --- a/poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py +++ b/poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py @@ -24,7 +24,7 @@ class KillRunbuilds(threading.Thread): """ Kill the runbuilds process after an amount of time """ def __init__(self, *args, **kwargs): super(KillRunbuilds, self).__init__(*args, **kwargs) - self.setDaemon(True) + self.daemon = True def run(self): time.sleep(5) |