1 Changes in BitBake 1.8.x:
2 - Add bb.utils.prune_suffix function
4 Changes in BitBake 1.8.12:
5 - Fix -f (force) in conjunction with -b
6 - Fix exit code for build failures in --continue mode
7 - Fix git branch tags fetching
8 - Change parseConfigurationFile so it works on real data, not a copy
9 - Handle 'base' inherit and all other INHERITs from parseConfigurationFile
11 - Fix getVarFlags bug in data_smart
12 - Optmise cache handling by more quickly detecting an invalid cache, only
13 saving the cache when its changed, moving the cache validity check into
14 the parsing loop and factoring some getVar calls outside a for loop
15 - Cooker: Remove a debug message from the parsing loop to lower overhead
16 - Convert build.py exec_task to use getVarFlags
17 - Update shell to use cooker.buildFile
18 - Add StampUpdate event
19 - Convert -b option to use taskdata/runqueue
20 - Remove digraph and switch to new stamp checking code. exec_task no longer
22 - Make fetcher timestamp updating non-fatal when permissions don't allow
24 - Add BB_SCHEDULER variable/option ("completion" or "speed") controlling
25 the way bitbake schedules tasks
26 - Add BB_STAMP_POLICY variable/option ("perfile" or "full") controlling
27 how extensively stamps are looked at for validity
28 - When handling build target failures make sure idepends are checked and
29 failed where needed. Fixes --continue mode crashes.
30 - Fix problems with recrdeptask handling where some idepends weren't handled
32 - Work around refs/HEAD issues with git over http (#3410)
33 - Add proxy support to the CVS fetcher (from Cyril Chemparathy)
34 - Improve runfetchcmd so errors are seen and various GIT variables are exported
35 - Add ability to fetchers to check URL validity without downloading
36 - Improve runtime PREFERRED_PROVIDERS warning message
37 - Add BB_STAMP_WHITELIST option which contains a list of stamps to ignore when
38 checking stamp dependencies and using a BB_STAMP_POLICY of "whitelist"
39 - No longer weight providers on the basis of a package being "already staged". This
40 leads to builds being non-deterministic.
41 - Flush stdout/stderr before forking to fix duplicate console output
42 - Make sure recrdeps tasks include all inter-task dependencies of a given fn
43 - Add bb.runqueue.check_stamp_fn() for use by packaged-staging
44 - Add PERSISTENT_DIR to store the PersistData in a persistent
45 directory != the cache dir.
46 - Add md5 and sha256 checksum generation functions to utils.py
47 - Make sure Build Completed events are generated even when tasks fail
48 - Correctly handle '-' characters in class names (#2958)
49 - Make sure expandKeys has been called on the data dictonary before running tasks
50 - Correctly add a task override in the form task-TASKNAME.
51 - Revert the '-' character fix in class names since it breaks things
52 - When a regexp fails to compile for PACKAGES_DYNAMIC, print a more useful error (#4444)
53 - Allow to checkout CVS by Date and Time. Just add HHmm to the SRCDATE.
54 - Move prunedir function to utils.py and add explode_dep_versions function
55 - Raise an exception if SRCREV == 'INVALID'
56 - Fix hg fetcher username/password handling and fix crash
57 - Fix PACKAGES_DYNAMIC handling of packages with '++' in the name
58 - Rename __depends to __base_depends after configuration parsing so we don't
59 recheck the validity of the config files time after time
60 - Add better environmental variable handling. By default it will now only pass certain
61 whitelisted variables into the data store. If BB_PRESERVE_ENV is set bitbake will use
62 all variable from the environment. If BB_ENV_WHITELIST is set, that whitelist will be
63 used instead of the internal bitbake one. Alternatively, BB_ENV_EXTRAWHITE can be used
64 to extend the internal whitelist.
65 - Perforce fetcher fix to use commandline options instead of being overriden by the environment
66 - use @rev when doing a svn checkout
67 - Add osc fetcher (from Joshua Lock in Poky)
68 - When SRCREV autorevisioning for a recipe is in use, don't cache the recipe
69 - Add tryaltconfigs option to control whether bitbake trys using alternative providers
70 to fulfil failed dependencies. It defaults to off, changing the default since this
71 behaviour confuses many users and isn't often useful.
72 - Improve lock file function error handling
73 - Add username handling to the git fetcher (Robert Bragg)
74 - Add support for HTTP_PROXY and HTTP_PROXY_IGNORE variables to the wget fetcher
75 - Export more variables to the fetcher commands to allow ssh checkouts and checkouts through
76 proxies to work better. (from Poky)
77 - Also allow user and pswd options in SRC_URIs globally (from Poky)
78 - Improve proxy handling when using mirrors (from Poky)
79 - Fix hg checkouts of specific revisions
81 Changes in BitBake 1.8.10:
82 - Psyco is available only for x86 - do not use it on other architectures.
83 - Fix a bug in bb.decodeurl where http://some.where.com/somefile.tgz decoded to host="" (#1530)
84 - Warn about malformed PREFERRED_PROVIDERS (#1072)
85 - Add support for BB_NICE_LEVEL option (#1627)
86 - Sort initial providers list by default preference (#1145, #2024)
87 - Improve provider sorting so prefered versions have preference over latest versions (#768)
88 - Detect builds of tasks with overlapping providers and warn (will become a fatal error) (#1359)
89 - Add MULTI_PROVIDER_WHITELIST variable to allow known safe multiple providers to be listed
90 - Handle paths in svn fetcher module parameter
91 - Support the syntax "export VARIABLE"
93 - Add support for cleaning directories before a task in the form:
94 do_taskname[cleandirs] = "dir"
95 - bzr fetcher tweaks from Robert Schuster (#2913)
96 - Add mercurial (hg) fetcher from Robert Schuster (#2913)
97 - Fix bogus preferred_version return values
98 - Fix 'depends' flag splitting
99 - Fix unexport handling (#3135)
100 - Add bb.copyfile function similar to bb.movefile (and improve movefile error reporting)
101 - Allow multiple options for deptask flag
102 - Use git-fetch instead of git-pull removing any need for merges when
103 fetching (we don't care about the index). Fixes fetch errors.
104 - Add BB_GENERATE_MIRROR_TARBALLS option, set to 0 to make git fetches
105 faster at the expense of not creating mirror tarballs.
106 - SRCREV handling updates, improvements and fixes from Poky
107 - Add bb.utils.lockfile() and bb.utils.unlockfile() from Poky
108 - Add support for task selfstamp and lockfiles flags
109 - Disable task number acceleration since it can allow the tasks to run
111 - Improve runqueue code comments
112 - Add task scheduler abstraction and some example schedulers
113 - Improve circular dependency chain debugging code and user feedback
114 - Don't give a stacktrace for invalid tasks, have a user friendly message (#3431)
115 - Add support for "-e target" (#3432)
116 - Fix shell showdata command (#3259)
117 - Fix shell data updating problems (#1880)
118 - Properly raise errors for invalid source URI protocols
119 - Change the wget fetcher failure handling to avoid lockfile problems
120 - Add git branch support
121 - Add support for branches in git fetcher (Otavio Salvador, Michael Lauer)
122 - Make taskdata and runqueue errors more user friendly
123 - Add norecurse and fullpath options to cvs fetcher
124 - bb.utils.prunedir can cope with symlinks to directories without exceptions
126 Changes in Bitbake 1.8.8:
127 - Rewrite svn fetcher to make adding extra operations easier
128 as part of future SRCDATE="now" fixes
129 (requires new FETCHCMD_svn definition in bitbake.conf)
130 - Change SVNDIR layout to be more unique (fixes #2644 and #2624)
131 - Import persistent data store from trunk
132 - Sync fetcher code with that in trunk, adding SRCREV support for svn
133 - Add ConfigParsed Event after configuration parsing is complete
134 - data.emit_var() - only call getVar if we need the variable
135 - Stop generating the A variable (seems to be legacy code)
136 - Make sure intertask depends get processed correcting in recursive depends
137 - Add pn-PN to overrides when evaluating PREFERRED_VERSION
138 - Improve the progress indicator by skipping tasks that have
139 already run before starting the build rather than during it
140 - Add profiling option (-P)
141 - Add BB_SRCREV_POLICY variable (clear or cache) to control SRCREV cache
142 - Add SRCREV_FORMAT support
143 - Fix local fetcher's localpath return values
144 - Apply OVERRIDES before performing immediate expansions
145 - Allow the -b -e option combination to take regular expressions
146 - Add plain message function to bb.msg
147 - Sort the list of providers before processing so dependency problems are
148 reproducible rather than effectively random
149 - Add locking for fetchers so only one tries to fetch a given file at a given time
150 - Fix int(0)/None confusion in runqueue.py which causes random gaps in dependency chains
151 - Fix handling of variables with expansion in the name using _append/_prepend
152 e.g. RRECOMMENDS_${PN}_append_xyz = "abc"
153 - Expand data in addtasks
154 - Print the list of missing DEPENDS,RDEPENDS for the "No buildable providers available for required...."
156 - Rework add_task to be more efficient (6% speedup, 7% number of function calls reduction)
157 - Sort digraph output to make builds more reproducible
158 - Split expandKeys into two for loops to benefit from the expand_cache (12% speedup)
159 - runqueue.py: Fix idepends handling to avoid dependency errors
160 - Clear the terminal TOSTOP flag if set (and warn the user)
161 - Fix regression from r653 and make SRCDATE/CVSDATE work for packages again
163 Changes in Bitbake 1.8.6:
164 - Correctly redirect stdin when forking
165 - If parsing errors are found, exit, too many users miss the errors
166 - Remove supriours PREFERRED_PROVIDER warnings
168 Changes in Bitbake 1.8.4:
169 - Make sure __inherit_cache is updated before calling include() (from Michael Krelin)
170 - Fix bug when target was in ASSUME_PROVIDED (#2236)
171 - Raise ParseError for filenames with multiple underscores instead of infinitely looping (#2062)
172 - Fix invalid regexp in BBMASK error handling (missing import) (#1124)
173 - Don't run build sanity checks on incomplete builds
174 - Promote certain warnings from debug to note 2 level
177 Changes in Bitbake 1.8.2:
178 - Catch truncated cache file errors
179 - Add PE (Package Epoch) support from Philipp Zabel (pH5)
180 - Add code to handle inter-task dependencies
181 - Allow operations other than assignment on flag variables
182 - Fix cache errors when generation dotGraphs
184 Changes in Bitbake 1.8.0:
185 - Release 1.7.x as a stable series
187 Changes in BitBake 1.7.x:
188 - Major updates of the dependency handling and execution
189 of tasks. Code from bin/bitbake replaced with runqueue.py
191 - New task execution code supports multithreading with a simplistic
192 threading algorithm controlled by BB_NUMBER_THREADS
193 - Change of the SVN Fetcher to keep the checkout around
194 courtsey of Paul Sokolovsky (#1367)
195 - PATH fix to bbimage (#1108)
196 - Allow debug domains to be specified on the commandline (-l)
197 - Allow 'interactive' tasks
198 - Logging message improvements
199 - Drop now uneeded BUILD_ALL_DEPS variable
200 - Add support for wildcards to -b option
201 - Major overhaul of the fetchers making a large amount of code common
202 including mirroring code
203 - Fetchers now touch md5 stamps upon access (to show activity)
204 - Fix -f force option when used without -b (long standing bug)
205 - Add expand_cache to data_cache.py, caching expanded data (speedup)
206 - Allow version field in DEPENDS (ignored for now)
207 - Add abort flag support to the shell
208 - Make inherit fail if the class doesn't exist (#1478)
209 - Fix data.emit_env() to expand keynames as well as values
211 - Add perforce fetcher
212 - Make PREFERRED_PROVIDER_foobar defaults to foobar if available
213 - Share the parser's mtime_cache, reducing the number of stat syscalls
214 - Compile all anonfuncs at once!
215 *** Anonfuncs must now use common spacing format ***
216 - Memorise the list of handlers in __BBHANDLERS and tasks in __BBTASKS
217 This removes 2 million function calls resulting in a 5-10% speedup
219 - Update generateDotGraph to use taskData/runQueue improving accuracy
220 and also adding a task dependency graph
221 - Fix/standardise on GPLv2 licence
222 - Move most functionality from bin/bitbake to cooker.py and split into
224 - CVS fetcher: Added support for non-default port
225 - Add BBINCLUDELOGS_LINES, the number of lines to read from any logfile
226 - Drop shebangs from lib/bb scripts
228 Changes in Bitbake 1.6.0:
229 - Better msg handling
230 - COW dict implementation from Tim Ansell (mithro) leading
231 to better performance
234 Changes in Bitbake 1.4.4:
235 - SRCDATE now handling courtsey Justin Patrin
236 - #1017 fix to work with rm_work
238 Changes in BitBake 1.4.2:
239 - Send logs to oe.pastebin.com instead of pastebin.com
241 - Copy the internal bitbake data before building the
242 dependency graph. This fixes nano not having a
243 virtual/libc dependency
244 - Allow multiple TARBALL_STASH entries
245 - Cache, check if the directory exists before changing
247 - git speedup cloning by not doing a checkout
248 - allow to have spaces in filenames (.conf, .bb, .bbclass)
250 Changes in BitBake 1.4.0:
251 - Fix to check both RDEPENDS and RDEPENDS_${PN}
252 - Fix a RDEPENDS parsing bug in utils:explode_deps()
253 - Update git fetcher behaviour to match git changes
254 - ASSUME_PROVIDED allowed to include runtime packages
255 - git fetcher cleanup and efficency improvements
256 - Change the format of the cache
257 - Update usermanual to document the Fetchers
258 - Major changes to caching with a new strategy
259 giving a major performance increase when reparsing
260 with few data changes
262 Changes in BitBake 1.3.3:
263 - Create a new Fetcher module to ease the
264 development of new Fetchers.
265 Issue #438 fixed by rpurdie@openedhand.com
266 - Make the Subversion fetcher honor the SRC Date
268 Issue #555 fixed by chris@openedhand.com
269 - Expand PREFERRED_PROVIDER properly
270 Issue #436 fixed by rprudie@openedhand.com
271 - Typo fix for Issue #531 by Philipp Zabel for the
273 - Introduce a new special variable SRCDATE as
274 a generic naming to replace CVSDATE.
275 - Introduce a new keyword 'required'. In contrast
276 to 'include' parsing will fail if a to be included
277 file can not be found.
278 - Remove hardcoding of the STAMP directory. Patch
279 courtsey pHilipp Zabel
280 - Track the RDEPENDS of each package (rpurdie@openedhand.com)
281 - Introduce BUILD_ALL_DEPS to build all RDEPENDS. E.g
282 this is used by the OpenEmbedded Meta Packages.
283 (rpurdie@openedhand.com).
285 Changes in BitBake 1.3.2:
286 - reintegration of make.py into BitBake
287 - bbread is gone, use bitbake -e
288 - lots of shell updates and bugfixes
289 - Introduction of the .= and =. operator
290 - Sort variables, keys and groups in bitdoc
291 - Fix regression in the handling of BBCOLLECTIONS
292 - Update the bitbake usermanual
294 Changes in BitBake 1.3.0:
295 - add bitbake interactive shell (bitbake -i)
296 - refactor bitbake utility in OO style
297 - kill default arguments in methods in the bb.data module
298 - kill default arguments in methods in the bb.fetch module
299 - the http/https/ftp fetcher will fail if the to be
300 downloaded file was not found in DL_DIR (this is needed
301 to avoid unpacking the sourceforge mirror page)
302 - Switch to a cow like data instance for persistent and non
303 persisting mode (called data_smart.py)
304 - Changed the callback of bb.make.collect_bbfiles to carry
305 additional parameters
306 - Drastically reduced the amount of needed RAM by not holding
307 each data instance in memory when using a cache/persistent
310 Changes in BitBake 1.2.1:
311 The 1.2.1 release is meant as a intermediate release to lay the
312 ground for more radical changes. The most notable changes are:
314 - Do not hardcode {}, use bb.data.init() instead if you want to
315 get a instance of a data class
316 - bb.data.init() is a factory and the old bb.data methods are delegates
317 - Do not use deepcopy use bb.data.createCopy() instead.
318 - Removed default arguments in bb.fetch