ChangeLog 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284
  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 dictonary 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. Changes in Bitbake 1.8.0:
  149. - Release 1.7.x as a stable series
  150. Changes in BitBake 1.7.x:
  151. - Major updates of the dependency handling and execution
  152. of tasks. Code from bin/bitbake replaced with runqueue.py
  153. and taskdata.py
  154. - New task execution code supports multithreading with a simplistic
  155. threading algorithm controlled by BB_NUMBER_THREADS
  156. - Change of the SVN Fetcher to keep the checkout around
  157. courtsey of Paul Sokolovsky (#1367)
  158. - PATH fix to bbimage (#1108)
  159. - Allow debug domains to be specified on the commandline (-l)
  160. - Allow 'interactive' tasks
  161. - Logging message improvements
  162. - Drop now uneeded BUILD_ALL_DEPS variable
  163. - Add support for wildcards to -b option
  164. - Major overhaul of the fetchers making a large amount of code common
  165. including mirroring code
  166. - Fetchers now touch md5 stamps upon access (to show activity)
  167. - Fix -f force option when used without -b (long standing bug)
  168. - Add expand_cache to data_cache.py, caching expanded data (speedup)
  169. - Allow version field in DEPENDS (ignored for now)
  170. - Add abort flag support to the shell
  171. - Make inherit fail if the class doesn't exist (#1478)
  172. - Fix data.emit_env() to expand keynames as well as values
  173. - Add ssh fetcher
  174. - Add perforce fetcher
  175. - Make PREFERRED_PROVIDER_foobar defaults to foobar if available
  176. - Share the parser's mtime_cache, reducing the number of stat syscalls
  177. - Compile all anonfuncs at once!
  178. *** Anonfuncs must now use common spacing format ***
  179. - Memorise the list of handlers in __BBHANDLERS and tasks in __BBTASKS
  180. This removes 2 million function calls resulting in a 5-10% speedup
  181. - Add manpage
  182. - Update generateDotGraph to use taskData/runQueue improving accuracy
  183. and also adding a task dependency graph
  184. - Fix/standardise on GPLv2 licence
  185. - Move most functionality from bin/bitbake to cooker.py and split into
  186. separate funcitons
  187. - CVS fetcher: Added support for non-default port
  188. - Add BBINCLUDELOGS_LINES, the number of lines to read from any logfile
  189. - Drop shebangs from lib/bb scripts
  190. Changes in Bitbake 1.6.0:
  191. - Better msg handling
  192. - COW dict implementation from Tim Ansell (mithro) leading
  193. to better performance
  194. - Speed up of -s
  195. Changes in Bitbake 1.4.4:
  196. - SRCDATE now handling courtsey Justin Patrin
  197. - #1017 fix to work with rm_work
  198. Changes in BitBake 1.4.2:
  199. - Send logs to oe.pastebin.com instead of pastebin.com
  200. fixes #856
  201. - Copy the internal bitbake data before building the
  202. dependency graph. This fixes nano not having a
  203. virtual/libc dependency
  204. - Allow multiple TARBALL_STASH entries
  205. - Cache, check if the directory exists before changing
  206. into it
  207. - git speedup cloning by not doing a checkout
  208. - allow to have spaces in filenames (.conf, .bb, .bbclass)
  209. Changes in BitBake 1.4.0:
  210. - Fix to check both RDEPENDS and RDEPENDS_${PN}
  211. - Fix a RDEPENDS parsing bug in utils:explode_deps()
  212. - Update git fetcher behaviour to match git changes
  213. - ASSUME_PROVIDED allowed to include runtime packages
  214. - git fetcher cleanup and efficency improvements
  215. - Change the format of the cache
  216. - Update usermanual to document the Fetchers
  217. - Major changes to caching with a new strategy
  218. giving a major performance increase when reparsing
  219. with few data changes
  220. Changes in BitBake 1.3.3:
  221. - Create a new Fetcher module to ease the
  222. development of new Fetchers.
  223. Issue #438 fixed by rpurdie@openedhand.com
  224. - Make the Subversion fetcher honor the SRC Date
  225. (CVSDATE).
  226. Issue #555 fixed by chris@openedhand.com
  227. - Expand PREFERRED_PROVIDER properly
  228. Issue #436 fixed by rprudie@openedhand.com
  229. - Typo fix for Issue #531 by Philipp Zabel for the
  230. BitBake Shell
  231. - Introduce a new special variable SRCDATE as
  232. a generic naming to replace CVSDATE.
  233. - Introduce a new keyword 'required'. In contrast
  234. to 'include' parsing will fail if a to be included
  235. file can not be found.
  236. - Remove hardcoding of the STAMP directory. Patch
  237. courtsey pHilipp Zabel
  238. - Track the RDEPENDS of each package (rpurdie@openedhand.com)
  239. - Introduce BUILD_ALL_DEPS to build all RDEPENDS. E.g
  240. this is used by the OpenEmbedded Meta Packages.
  241. (rpurdie@openedhand.com).
  242. Changes in BitBake 1.3.2:
  243. - reintegration of make.py into BitBake
  244. - bbread is gone, use bitbake -e
  245. - lots of shell updates and bugfixes
  246. - Introduction of the .= and =. operator
  247. - Sort variables, keys and groups in bitdoc
  248. - Fix regression in the handling of BBCOLLECTIONS
  249. - Update the bitbake usermanual
  250. Changes in BitBake 1.3.0:
  251. - add bitbake interactive shell (bitbake -i)
  252. - refactor bitbake utility in OO style
  253. - kill default arguments in methods in the bb.data module
  254. - kill default arguments in methods in the bb.fetch module
  255. - the http/https/ftp fetcher will fail if the to be
  256. downloaded file was not found in DL_DIR (this is needed
  257. to avoid unpacking the sourceforge mirror page)
  258. - Switch to a cow like data instance for persistent and non
  259. persisting mode (called data_smart.py)
  260. - Changed the callback of bb.make.collect_bbfiles to carry
  261. additional parameters
  262. - Drastically reduced the amount of needed RAM by not holding
  263. each data instance in memory when using a cache/persistent
  264. storage
  265. Changes in BitBake 1.2.1:
  266. The 1.2.1 release is meant as a intermediate release to lay the
  267. ground for more radical changes. The most notable changes are:
  268. - Do not hardcode {}, use bb.data.init() instead if you want to
  269. get a instance of a data class
  270. - bb.data.init() is a factory and the old bb.data methods are delegates
  271. - Do not use deepcopy use bb.data.createCopy() instead.
  272. - Removed default arguments in bb.fetch