Add selfstamp and lockfiles flags
[bitbake.git] / ChangeLog
1 Changes in BitBake 1.8.x:
2         - Psyco is available only for x86 - do not use it on other architectures.
3         - Fix a bug in bb.decodeurl where http://some.where.com/somefile.tgz decoded to host="" (#1530)
4         - Warn about malformed PREFERRED_PROVIDERS (#1072)
5         - Add support for BB_NICE_LEVEL option (#1627)
6         - Sort initial providers list by default preference (#1145, #2024)
7         - Improve provider sorting so prefered versions have preference over latest versions (#768)
8         - Detect builds of tasks with overlapping providers and warn (will become a fatal error) (#1359)
9         - Add MULTI_PROVIDER_WHITELIST variable to allow known safe multiple providers to be listed
10         - Handle paths in svn fetcher module parameter
11         - Support the syntax "export VARIABLE"
12         - Add bzr fetcher
13         - Add support for cleaning directories before a task in the form:
14           do_taskname[cleandirs] = "dir"
15         - bzr fetcher tweaks from Robert Schuster (#2913)
16         - Add mercurial (hg) fetcher from Robert Schuster (#2913)
17         - Fix bogus preferred_version return values
18         - Fix 'depends' flag splitting
19         - Fix unexport handling (#3135)
20         - Add bb.copyfile function similar to bb.movefile (and improve movefile error reporting)
21         - Allow multiple options for deptask flag
22         - Use git-fetch instead of git-pull removing any need for merges when 
23           fetching (we don't care about the index). Fixes fetch errors.
24         - Add BB_GENERATE_MIRROR_TARBALLS option, set to 0 to make git fetches 
25           faster at the expense of not creating mirror tarballs.
26         - SRCREV handling updates, improvements and fixes from Poky
27         - Add bb.utils.lockfile() and bb.utils.unlockfile() from Poky
28         - Add support for task selfstamp and lockfiles flags
29
30 Changes in Bitbake 1.8.8:
31         - Rewrite svn fetcher to make adding extra operations easier 
32           as part of future SRCDATE="now" fixes
33           (requires new FETCHCMD_svn definition in bitbake.conf)
34         - Change SVNDIR layout to be more unique (fixes #2644 and #2624)
35         - Import persistent data store from trunk
36         - Sync fetcher code with that in trunk, adding SRCREV support for svn
37         - Add ConfigParsed Event after configuration parsing is complete
38         - data.emit_var() - only call getVar if we need the variable
39         - Stop generating the A variable (seems to be legacy code)
40         - Make sure intertask depends get processed correcting in recursive depends
41         - Add pn-PN to overrides when evaluating PREFERRED_VERSION
42         - Improve the progress indicator by skipping tasks that have 
43           already run before starting the build rather than during it
44         - Add profiling option (-P)
45         - Add BB_SRCREV_POLICY variable (clear or cache) to control SRCREV cache
46         - Add SRCREV_FORMAT support
47         - Fix local fetcher's localpath return values
48         - Apply OVERRIDES before performing immediate expansions
49         - Allow the -b -e option combination to take regular expressions
50         - Add plain message function to bb.msg
51         - Sort the list of providers before processing so dependency problems are 
52           reproducible rather than effectively random
53         - Add locking for fetchers so only one tries to fetch a given file at a given time
54         - Fix int(0)/None confusion in runqueue.py which causes random gaps in dependency chains
55         - Fix handling of variables with expansion in the name using _append/_prepend
56           e.g. RRECOMMENDS_${PN}_append_xyz = "abc"
57         - Expand data in addtasks
58         - Print the list of missing DEPENDS,RDEPENDS for the "No buildable providers available for required...."
59           error message.
60         - Rework add_task to be more efficient (6% speedup, 7% number of function calls reduction)
61         - Sort digraph output to make builds more reproducible
62         - Split expandKeys into two for loops to benefit from the expand_cache (12% speedup)
63         - runqueue.py: Fix idepends handling to avoid dependency errors
64         - Clear the terminal TOSTOP flag if set (and warn the user)
65         - Fix regression from r653 and make SRCDATE/CVSDATE work for packages again
66
67 Changes in Bitbake 1.8.6:
68         - Correctly redirect stdin when forking
69         - If parsing errors are found, exit, too many users miss the errors
70         - Remove supriours PREFERRED_PROVIDER warnings
71
72 Changes in Bitbake 1.8.4:
73         - Make sure __inherit_cache is updated before calling include() (from Michael Krelin)
74         - Fix bug when target was in ASSUME_PROVIDED (#2236)
75         - Raise ParseError for filenames with multiple underscores instead of infinitely looping (#2062)
76         - Fix invalid regexp in BBMASK error handling (missing import) (#1124)
77         - Don't run build sanity checks on incomplete builds
78         - Promote certain warnings from debug to note 2 level
79         - Update manual
80
81 Changes in Bitbake 1.8.2:
82         - Catch truncated cache file errors
83         - Add PE (Package Epoch) support from Philipp Zabel (pH5)
84         - Add code to handle inter-task dependencies
85         - Allow operations other than assignment on flag variables
86         - Fix cache errors when generation dotGraphs
87
88 Changes in Bitbake 1.8.0:
89         - Release 1.7.x as a stable series
90
91 Changes in BitBake 1.7.x:
92         - Major updates of the dependency handling and execution
93           of tasks. Code from bin/bitbake replaced with runqueue.py
94           and taskdata.py
95         - New task execution code supports multithreading with a simplistic
96           threading algorithm controlled by BB_NUMBER_THREADS
97         - Change of the SVN Fetcher to keep the checkout around
98           courtsey of Paul Sokolovsky (#1367)
99         - PATH fix to bbimage (#1108)
100         - Allow debug domains to be specified on the commandline (-l)
101         - Allow 'interactive' tasks
102         - Logging message improvements
103         - Drop now uneeded BUILD_ALL_DEPS variable
104         - Add support for wildcards to -b option
105         - Major overhaul of the fetchers making a large amount of code common
106           including mirroring code
107         - Fetchers now touch md5 stamps upon access (to show activity)
108         - Fix -f force option when used without -b (long standing bug)
109         - Add expand_cache to data_cache.py, caching expanded data (speedup)
110         - Allow version field in DEPENDS (ignored for now)
111         - Add abort flag support to the shell
112         - Make inherit fail if the class doesn't exist (#1478)
113         - Fix data.emit_env() to expand keynames as well as values
114         - Add ssh fetcher
115         - Add perforce fetcher
116         - Make PREFERRED_PROVIDER_foobar defaults to foobar if available
117         - Share the parser's mtime_cache, reducing the number of stat syscalls
118         - Compile all anonfuncs at once! 
119           *** Anonfuncs must now use common spacing format ***
120         - Memorise the list of handlers in __BBHANDLERS and tasks in __BBTASKS
121           This removes 2 million function calls resulting in a 5-10% speedup
122         - Add manpage
123         - Update generateDotGraph to use taskData/runQueue improving accuracy
124           and also adding a task dependency graph
125         - Fix/standardise on GPLv2 licence
126         - Move most functionality from bin/bitbake to cooker.py and split into
127           separate funcitons
128         - CVS fetcher: Added support for non-default port
129         - Add BBINCLUDELOGS_LINES, the number of lines to read from any logfile
130         - Drop shebangs from lib/bb scripts
131
132 Changes in Bitbake 1.6.0:
133         - Better msg handling
134         - COW dict implementation from Tim Ansell (mithro) leading
135           to better performance
136         - Speed up of -s
137
138 Changes in Bitbake 1.4.4:
139         - SRCDATE now handling courtsey Justin Patrin
140         - #1017 fix to work with rm_work
141
142 Changes in BitBake 1.4.2:
143         - Send logs to oe.pastebin.com instead of pastebin.com
144           fixes #856
145         - Copy the internal bitbake data before building the
146           dependency graph. This fixes nano not having a
147           virtual/libc dependency
148         - Allow multiple TARBALL_STASH entries
149         - Cache, check if the directory exists before changing
150           into it
151         - git speedup cloning by not doing a checkout
152         - allow to have spaces in filenames (.conf, .bb, .bbclass)
153
154 Changes in BitBake 1.4.0:
155         - Fix to check both RDEPENDS and RDEPENDS_${PN}
156         - Fix a RDEPENDS parsing bug in utils:explode_deps()
157         - Update git fetcher behaviour to match git changes
158         - ASSUME_PROVIDED allowed to include runtime packages
159         - git fetcher cleanup and efficency improvements
160         - Change the format of the cache
161         - Update usermanual to document the Fetchers
162         - Major changes to caching with a new strategy
163           giving a major performance increase when reparsing
164           with few data changes
165
166 Changes in BitBake 1.3.3:
167         - Create a new Fetcher module to ease the
168           development of new Fetchers.
169           Issue #438 fixed by rpurdie@openedhand.com
170         - Make the Subversion fetcher honor the SRC Date
171           (CVSDATE).
172           Issue #555 fixed by chris@openedhand.com
173         - Expand PREFERRED_PROVIDER properly
174           Issue #436 fixed by rprudie@openedhand.com
175         - Typo fix for Issue #531 by Philipp Zabel for the
176           BitBake Shell
177         - Introduce a new special variable SRCDATE as
178           a generic naming to replace CVSDATE.
179         - Introduce a new keyword 'required'. In contrast
180           to 'include' parsing will fail if a to be included
181           file can not be found.
182         - Remove hardcoding of the STAMP directory. Patch
183           courtsey pHilipp Zabel
184         - Track the RDEPENDS of each package (rpurdie@openedhand.com)
185         - Introduce BUILD_ALL_DEPS to build all RDEPENDS. E.g
186           this is used by the OpenEmbedded Meta Packages.
187           (rpurdie@openedhand.com).
188
189 Changes in BitBake 1.3.2:
190         - reintegration of make.py into BitBake
191         - bbread is gone, use bitbake -e
192         - lots of shell updates and bugfixes
193         - Introduction of the .= and =. operator
194         - Sort variables, keys and groups in bitdoc
195         - Fix regression in the handling of BBCOLLECTIONS
196         - Update the bitbake usermanual
197
198 Changes in BitBake 1.3.0:
199         - add bitbake interactive shell (bitbake -i)
200         - refactor bitbake utility in OO style
201         - kill default arguments in methods in the bb.data module
202         - kill default arguments in methods in the bb.fetch module
203         - the http/https/ftp fetcher will fail if the to be 
204           downloaded file was not found in DL_DIR (this is needed
205           to avoid unpacking the sourceforge mirror page)
206         - Switch to a cow like data instance for persistent and non
207           persisting mode (called data_smart.py)
208         - Changed the callback of bb.make.collect_bbfiles to carry
209           additional parameters
210         - Drastically reduced the amount of needed RAM by not holding
211           each data instance in memory when using a cache/persistent
212           storage
213
214 Changes in BitBake 1.2.1:
215         The 1.2.1 release is meant as a intermediate release to lay the
216         ground for more radical changes. The most notable changes are:
217
218         - Do not hardcode {}, use bb.data.init() instead if you want to
219           get a instance of a data class
220         - bb.data.init() is a factory and the old bb.data methods are delegates
221         - Do not use deepcopy use bb.data.createCopy() instead.
222         - Removed default arguments in bb.fetch
223