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