build.py: Add support for cleaning directories before a task in the form: do_taskname...
[bitbake.git] / ChangeLog
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
69 Changes in Bitbake 1.8.0:
70         - Release 1.7.x as a stable series
71
72 Changes in BitBake 1.7.x:
73         - Major updates of the dependency handling and execution
74           of tasks. Code from bin/bitbake replaced with runqueue.py
75           and taskdata.py
76         - New task execution code supports multithreading with a simplistic
77           threading algorithm controlled by BB_NUMBER_THREADS
78         - Change of the SVN Fetcher to keep the checkout around
79           courtsey of Paul Sokolovsky (#1367)
80         - PATH fix to bbimage (#1108)
81         - Allow debug domains to be specified on the commandline (-l)
82         - Allow 'interactive' tasks
83         - Logging message improvements
84         - Drop now uneeded BUILD_ALL_DEPS variable
85         - Add support for wildcards to -b option
86         - Major overhaul of the fetchers making a large amount of code common
87           including mirroring code
88         - Fetchers now touch md5 stamps upon access (to show activity)
89         - Fix -f force option when used without -b (long standing bug)
90         - Add expand_cache to data_cache.py, caching expanded data (speedup)
91         - Allow version field in DEPENDS (ignored for now)
92         - Add abort flag support to the shell
93         - Make inherit fail if the class doesn't exist (#1478)
94         - Fix data.emit_env() to expand keynames as well as values
95         - Add ssh fetcher
96         - Add perforce fetcher
97         - Make PREFERRED_PROVIDER_foobar defaults to foobar if available
98         - Share the parser's mtime_cache, reducing the number of stat syscalls
99         - Compile all anonfuncs at once! 
100           *** Anonfuncs must now use common spacing format ***
101         - Memorise the list of handlers in __BBHANDLERS and tasks in __BBTASKS
102           This removes 2 million function calls resulting in a 5-10% speedup
103         - Add manpage
104         - Update generateDotGraph to use taskData/runQueue improving accuracy
105           and also adding a task dependency graph
106         - Fix/standardise on GPLv2 licence
107         - Move most functionality from bin/bitbake to cooker.py and split into
108           separate funcitons
109         - CVS fetcher: Added support for non-default port
110         - Add BBINCLUDELOGS_LINES, the number of lines to read from any logfile
111         - Drop shebangs from lib/bb scripts
112
113 Changes in Bitbake 1.6.0:
114         - Better msg handling
115         - COW dict implementation from Tim Ansell (mithro) leading
116           to better performance
117         - Speed up of -s
118
119 Changes in Bitbake 1.4.4:
120         - SRCDATE now handling courtsey Justin Patrin
121         - #1017 fix to work with rm_work
122
123 Changes in BitBake 1.4.2:
124         - Send logs to oe.pastebin.com instead of pastebin.com
125           fixes #856
126         - Copy the internal bitbake data before building the
127           dependency graph. This fixes nano not having a
128           virtual/libc dependency
129         - Allow multiple TARBALL_STASH entries
130         - Cache, check if the directory exists before changing
131           into it
132         - git speedup cloning by not doing a checkout
133         - allow to have spaces in filenames (.conf, .bb, .bbclass)
134
135 Changes in BitBake 1.4.0:
136         - Fix to check both RDEPENDS and RDEPENDS_${PN}
137         - Fix a RDEPENDS parsing bug in utils:explode_deps()
138         - Update git fetcher behaviour to match git changes
139         - ASSUME_PROVIDED allowed to include runtime packages
140         - git fetcher cleanup and efficency improvements
141         - Change the format of the cache
142         - Update usermanual to document the Fetchers
143         - Major changes to caching with a new strategy
144           giving a major performance increase when reparsing
145           with few data changes
146
147 Changes in BitBake 1.3.3:
148         - Create a new Fetcher module to ease the
149           development of new Fetchers.
150           Issue #438 fixed by rpurdie@openedhand.com
151         - Make the Subversion fetcher honor the SRC Date
152           (CVSDATE).
153           Issue #555 fixed by chris@openedhand.com
154         - Expand PREFERRED_PROVIDER properly
155           Issue #436 fixed by rprudie@openedhand.com
156         - Typo fix for Issue #531 by Philipp Zabel for the
157           BitBake Shell
158         - Introduce a new special variable SRCDATE as
159           a generic naming to replace CVSDATE.
160         - Introduce a new keyword 'required'. In contrast
161           to 'include' parsing will fail if a to be included
162           file can not be found.
163         - Remove hardcoding of the STAMP directory. Patch
164           courtsey pHilipp Zabel
165         - Track the RDEPENDS of each package (rpurdie@openedhand.com)
166         - Introduce BUILD_ALL_DEPS to build all RDEPENDS. E.g
167           this is used by the OpenEmbedded Meta Packages.
168           (rpurdie@openedhand.com).
169
170 Changes in BitBake 1.3.2:
171         - reintegration of make.py into BitBake
172         - bbread is gone, use bitbake -e
173         - lots of shell updates and bugfixes
174         - Introduction of the .= and =. operator
175         - Sort variables, keys and groups in bitdoc
176         - Fix regression in the handling of BBCOLLECTIONS
177         - Update the bitbake usermanual
178
179 Changes in BitBake 1.3.0:
180         - add bitbake interactive shell (bitbake -i)
181         - refactor bitbake utility in OO style
182         - kill default arguments in methods in the bb.data module
183         - kill default arguments in methods in the bb.fetch module
184         - the http/https/ftp fetcher will fail if the to be 
185           downloaded file was not found in DL_DIR (this is needed
186           to avoid unpacking the sourceforge mirror page)
187         - Switch to a cow like data instance for persistent and non
188           persisting mode (called data_smart.py)
189         - Changed the callback of bb.make.collect_bbfiles to carry
190           additional parameters
191         - Drastically reduced the amount of needed RAM by not holding
192           each data instance in memory when using a cache/persistent
193           storage
194
195 Changes in BitBake 1.2.1:
196         The 1.2.1 release is meant as a intermediate release to lay the
197         ground for more radical changes. The most notable changes are:
198
199         - Do not hardcode {}, use bb.data.init() instead if you want to
200           get a instance of a data class
201         - bb.data.init() is a factory and the old bb.data methods are delegates
202         - Do not use deepcopy use bb.data.createCopy() instead.
203         - Removed default arguments in bb.fetch
204