Handle conflicts from git merge release-20160315
[tools/mic.git] / ChangeLog
1 Release 0.27 - Mon Mar 28 2016 - Jianzhong Fang <jz.fang@samsung.com>
2 =====================================================================
3   * new distribution support: CentOS 7, Debian 8, Fedora 21, 
4     Fedora 22, Fedora 23,  openSUSE 13.2
5   * generate manifest file to describe image information
6   * refactor archive and compress module
7   * support sparse handle for tar command
8   * replace system V with systemd on locale setting
9   * add qcow2 image format support
10   * add strict mode for package installing
11   * enable ssl_verify option in config file
12   * enhance checksums of outputs: md5sum, sha1sum, sha256sum
13   * drop mic-native support
14   * update mount option
15   * revert bind mount config file to instroot
16   * drop liveusb, livecd and raw image formats support
17   * use argparse module to parse the cmd line
18
19   * bug fix:
20     - fix logfile incomplete in release option
21     - fix config file disappear in bootstrap
22     - fix aarch64 bin_format
23     - fix pylint
24     - fix real path of device mapper causing initrd failure
25     - fix qemu arm and arm64 issues
26     - fix AttributeError in zypp backend
27     - fix 'python-xml' depends used by cElements
28     - fix xml requirements
29     - fix logfile not in release of '--release' when creation failed
30     - fix copyright missing issue
31     - fix syslinux installation path issue in Arch Linux
32     - fix priority option of ks file not apply
33     - fix need to check loop device after excute 'losetup --find'
34     - fix check scriptlet error file on /tmp/.postscript/error/
35     - fix broken tar archive
36
37 Release 0.24 - Tue Mar 11 2014 - Gui Chen <gui.chen@intel.com>
38 =====================================================================
39   * enhance to handle password with special characters
40   * change python-zypp require to python-zypp-tizen
41   * add --repo comand option for local build
42   * add --user and --password option for %repo directive of ks file
43   * clean up some codes relevant to EULA agreement
44   * add hostname showing in log
45   * bug fix:
46     - fix chroot failed by space in image not enough
47     - fix obsolete packages incorrect handling
48     - fix yum backend failed to cache packages
49     - fix bare ip in no_proxy not working
50     - fix repeated log showing with yum backend
51     - fix loop device latency timing
52     - fix zypp failed to download by changing 'cachedir'
53     - fix 'mkfs' not working caused by mic-bootstrap install failed
54
55 Release 0.23 - Fri Dec 12 2013 - Gui Chen <gui.chen@intel.com>
56 =====================================================================
57   * new distribution support: Ubuntu 13.10 and OpenSUSE 13.1
58   * split requirements to subpackage 'mic-native' to reduce mic's dependencies
59   * support arm64 architecture image creation in native mode
60   * new option '--interactive'/'--non-interactive' to enable/disable interaction 
61   * new option '--uuid' for 'part' in ks file to set filesystem uuid
62   * export more variables related to installer framework for loop format
63   * bug fix:
64     - fix bootstrap handling if bootstrap package failed
65     - fix 'mapper_device' key error
66     - fix detailed error messages missing in mounting
67     - fix version comparing issue of urlgrabber in Fedora
68
69 Release 0.22 - Thu Oct 24 2013 - Gui Chen <gui.chen@intel.com>
70 =====================================================================
71   * use __version__ variable instead of VERSION file
72   * refactor msger module to ulitize logging module
73   * refine error class module
74   * improve installation in virtualenv
75   * add bash completion support
76   * add zsh completion support
77   * export mapper device related to installer framework
78   * update BmapCreate to the latest version
79   * bug fix:
80     - fix customized plugin_dir not work in bootstrap
81     - fix packing process exit on Ubuntu
82     - fix loop device alloaction failed on openSUSE
83     - fix incorrect number showing during installing
84     - set owner of cacheidr/outdir to SUDO_USER
85     - correct project url in setup.py
86     - fix mic not work when mic.conf disappear
87
88 Release 0.21 - Mon Aug 26 2013 - Gui Chen <gui.chen@intel.com>
89 =====================================================================
90   * new distribution support: Fedora 19
91   * refactor chroot module to correct the logic
92   * add an alias for installerfw - installerfw_plugins
93   * remove fuser dependency to avoid some unmount issue
94   * enable proxy setting with authentication
95   * don't get proxy info from /etc/sysconfig/proxy ever
96   * kill processes inside chroot after post script running
97   * reload device mapper using 'dmsetup' utility
98   * bug fix:
99     - fix bootloader options omitted
100     - warn failed boot partition flags set
101     - fix wrong file descriptor issue
102     - fix some requires
103
104 Release 0.20 - Mon Jul 01 2013 - Gui Chen <gui.chen@intel.com>
105 =====================================================================
106   * new distribution support: CentOS 6
107   * drop image creation if checked packages not present in image
108   * introduce 'installerfw' command in kickstart to customize configuration
109   * improve output message of post scripts
110   * bug fix:
111     - fix rpm not support 'VCS' tag traceback
112
113 Release 0.19 - Thu May 16 2013 - Gui Chen <gui.chen@intel.com>
114 =====================================================================
115  * new distribution support: Ubuntu 13.04 and openSUSE 12.3
116  * introduce '--part-type' to handle GPT partition
117  * copy bmap creation from bmap-tools
118  * update some depends and fix depends issue
119  * bug fix:
120    - fix bug autologinuser always set
121    - fix symlink bind mount left issue
122    - fix '/var/lock' non-existent throw traceback
123
124 Release 0.18 - Mon Apr 03 2013 - Gui Chen <gui.chen@intel.com>
125 =====================================================================
126  * put build_id before image name for release option
127  * mount build directory as tmpfs to speed up
128  * enable --priority in ks to set priority
129  * upgrade qemu (mic's depends) to 1.4.0
130  * bug fix:
131    - fix debuginfo rpm swig attribute lost
132    - fix release option failure with slash
133    - fix man page lost in some distros
134    - fix bmap file packed to tarball
135  * code cleanup:
136    - unify import statements to absolute import
137    - clean up many undefined in partitionfs.py/loop.py/livecd.py
138    - clean up some useless try and raise blocks
139    - clean up some bad indentations
140    - improve some error messages
141
142 Release 0.17 - Tue Feb 28 2013 - Gui Chen <gui.chen@intel.com>
143 =====================================================================
144  * support new distribution Fedora 18
145  * enable to handle more than 3 partitions
146  * support partitions without mount point
147  * move vcs infomation from .vcs to .packages
148  * clean up some mess in utils/misc.py
149  * bug fix:
150    - fix failure when symbolic link vmlinuz in single disk
151    - fix incorrect alignment handling
152    - fix requires squashfs in opensuse
153    - fix unicode error in myurlgrab
154  * code cleanup:
155    - clean up some mess in utils/misc.py
156    - clean up pylint issue in creator.py
157
158 Release 0.16.3 - Wed Feb 06 2013 - Gui Chen <gui.chen@intel.com>
159 =====================================================================
160  * fix no key 'HOME' in environ variable failure
161  * remove suffix when release specified
162  * roll back to original naming for release
163
164 Release 0.16 - Wed Jan 30 2013 - Gui Chen <gui.chen@intel.com>
165 =====================================================================
166  * add GPT support for UEFI format
167    - add --ptable=gpt option in kickstart to enable GPT
168    - add simple GPT parser to parse PARTUUID
169    - use PARTUUID in syslinux.cfg if gpt required
170    - clean up the mess code and improve readability
171  * improve alignment to reduce unused space
172    - add interface add_disks for PartitionedMount
173    - clean up the mess code in partitionfs.py
174  * append timestamp suffix to image name by default
175  * add a new option --nocache in kickstart to disable caching rpm
176  * add a new value 'vcs' for --record-pkgs to save VCS info
177  * add a new option --fstab-entry for raw image to set fstab entry
178  * introduce a new option '--install-pkgs' in mic
179    - valid values imagined: source, debuginfo, debugsource
180    - enable 'debuginfo' to install '-debuginfo' rpm in the meantime
181  * improve loop device generating and cleaning mechanism
182  * code cleanup:
183    - update documentation
184    - rename MANIFEST to MD5SUM
185    - clean up moblin stuff in kickstart
186    - clean mic tests and keep only unittest
187    - sepreate the download related as independent module
188  * bug fix:
189    - cleanup zypp credential file to fix conflicts during installing
190    - fix the issue that outdir/cachedir is not dir
191    - recalculate package content recording
192    - refactor try except statement in baseimager
193    - fix existing loop images overwritten
194
195 Release 0.15.3 - Wed Jan 23 2013 - Gui Chen <gui.chen@intel.com>
196 =====================================================================
197  * urgent bug fix:
198    - fix loop device not cleaned issue
199    - fix bootstrap dirs not unmounted issue
200    - fix mic failed in kvmic issue
201    - fix binfmt register in bootstrap incorrect
202    - fix rpm path incorrect when local repo and sslverify used
203  * other bug fix:
204    - fix x86_64 image conflicts installing x86_64 and x86 rpm
205    - verify if logfile is a file
206    - fix type error when calling mknod
207    - fix the failure if ks under / dir
208    - clean up the mess 'directory not empty'
209    - fix type error when calling mknod
210
211 Release 0.15 - Tue Dec 13 2012 - Gui Chen <gui.chen@intel.com>
212 =====================================================================
213  * adapt new mechanism for bootstrap mode
214    - create 'mic-bootstrap-x86-arm' by obs build
215    - publish 'mic-bootstrap-x86-arm' into server repo
216    - use 'mic-bootstrap-x86-arm' as bootstrap env for x86 and arm image
217  * filesystem parameter support for ext[234] fs
218    - sample in ks: part / --size 1000 --fstype=ext3 --extoptions="-I 256"
219    - other filesystem will ignore option '--extoptions'
220  * update the documentation and man page
221  * multiple bootstrap path to support multi-instance mic
222  * use 'pkgmgr=auto' to select available backend in conf file
223  * improve loop device creation algorithm and create loop device by 'mknod'
224  * bug fix:
225    - bear unexpected checksum type when getting metadata
226    - avoid traceback when loopback is NoneType
227    - lseek limit to 2G in 32bit env
228    - split out username and password in zypp repo file
229    - use rpm real path instead of 'cp' if it's local repo
230    - fix local repo unavailable in bootstrap
231    - fix traceback when failed to unmap kpartx device
232    - fix timestamp incorrect issue in logfile
233
234 Release 0.14.2 - Wed Nov 14 2012 - Gui Chen <gui.chen@intel.com>
235 =====================================================================
236  * support dracut for live image
237  * update bmap version to 1.1
238
239 Release 0.14.1 - Fri Oct 15 2012 - Gui Chen <gui.chen@intel.com>
240 =====================================================================
241  * support bmap file for ivi flashing tool
242  * just warning in chroot when not Tizen/MeeGo chroot dir
243  * fix logfile lost in bootstrap mode
244  * clean mounts in bootstrap when exiting
245  * bug fix:
246    - fix https proxy issue in yum backend
247    - avoid traceback when loop instance is NoneType
248
249 Release 0.14 - Thu Aug 02 2012 - Gui Chen <gui.chen@intel.com>
250 =====================================================================
251  * use cached metadata when checksum is not changed
252  * skip non-fatal error in ks file and prompt user to handle
253  * prompt user to handle when failed to apply img configure
254  * replace hard name with device uuid in etc/fstab
255  * enhance extlinux cfg file for symbolic kernel like IVI
256  * support label assign for raw image
257  * bug fix:
258    - fix live image create failure when label assigned
259    - avoid traceback when converting unsupported type
260    - fix mic --version ugly output
261
262 Release 0.13 - Wed Jul 12 2012 - Gui Chen <gui.chen@intel.com>
263 =====================================================================
264  * create logfile as default when --release specifid
265  * use 'gzip' and 'bzip2' to pack image instead of python
266  * automatically detect path of 'env' for chroot
267  * record version and os info in build log and logfile
268  * bug fix:
269    - fix popup message in ubuntus
270    - fix unicode issue for logfile
271    - better fix for 'chroot raw' issue
272
273 Release 0.12 - Wed Jun 20 2012 - Gui Chen <gui.chen@intel.com>
274 =====================================================================
275  * use default value when @BUILD_ID@ and @ARCH@ not specified
276  * enhance proxy support in attachment retrieve
277  * add new --shrink opt for loop image to control img shrinking
278  * avoid invalid literal for loop device generation
279  * relocate and refactor selinux_check func
280  * remove prefix for make install
281  * bug fix:
282    - fix compres image in raw image
283    - fix src pkgs download failed issue
284    - fix convert failed issue
285
286 Release 0.11 - Fri Jun 08 2012 - Gui Chen <gui.chen@intel.com>
287 =====================================================================
288  * support new subcmd 'auto' to handle magic line in ks
289  * enhance the handle of authentication url and https proxy
290  * support packing images together and support compressed file format
291  * reset LD_PRELOAD for chroot env
292  * centralized interface to check existing images
293  * avoid live image creating when using multi-partitions
294  * resolve the depends of python-urlgrabber
295  * bug fix:
296    - fix logfile context lost issue
297    - fix attachment package url handling
298    - fix mic ch raw failed issue
299
300 Release 0.10 - Tue May 15 2012 - Gui Chen <gui.chen@intel.com>
301 =====================================================================
302  * container support using '%attachment' section in ks
303  * add --compress-to option to support zip format in loop image
304  * auto-detect config and plugindir to meet virtualenv and customized install
305  * remove all hardcoded info in setup.py and use sys.prefix for installing
306  * tolerate some OS errors in the image configurations stage
307  * extra patch:
308    - fix zypp missing password when using username passwd
309    - some fixes to enhance authentication url
310    - refine repostr structure to fix comma issue in baseurl
311
312 Release 0.9 - Fri Apr 13 2012 - Gui Chen <gui.chen@intel.com>
313 =====================================================================
314  * support pre-install package with zypp backend
315  * sync /etc/mic/mic.conf to bootstrap
316  * enhance sorting for version comparsion in zypp
317  * rewrite chroot tar image using xml format mount point file
318  * fix the incorrect number showing in fs src pkgs download
319  * remove tests directory for dist in Makefile
320  * fix liveusb parted mkpart failure, revert mbr size expand in raw
321  * cleanup /tmp/repolic* dir in the EULA checking
322
323 Release 0.8 - Mon Mar 26 2012 - Gui Chen <gui.chen@intel.com>
324 =====================================================================
325  * partition alignment support
326  * remove bootloader option 'quiet vga' for raw
327  * update dist files in git source
328  * update unittest, add cases for chroot, msger, runner
329  * add 40 system test case for help
330  * rewrite loop device allocation mechanism
331
332 Release 0.7 - Fri Mar 02 2012 - Gui Chen <gui.chen@intel.com>
333 =====================================================================
334  * zypp backend: fixed a fatal issue of unreleasable loop devs
335  * zypp backend: more friendly output message
336  * backend: share cached rpm files between yum and zypp
337  * enhancement for multiple partition loop format
338  * make msger to accept Unicode string
339  * fixed a regression of compress option for FS format
340  * fixed issues in openSUSE12.1
341  * new written man page
342
343 Release 0.6 - Thu Feb 16 2012 - Gui Chen <gui.chen@intel.com>
344 =====================================================================
345  * give hint when converted image existed
346  * conf.py: proxy scheme check
347  * space check before copy image
348  * zypp: abort with error msg for repo resolver issues
349  * runner.py refinement
350  * ks file syntax check for '%post' without '%end'
351  * support more compression formats than only bzip2
352  * fix msg NoneType issue, causing exit after install
353  * bootstrap:
354    - catch creator error when retrieving bootstrap metadata
355    - correct matching .metadata file in bootstrap
356
357 Release 0.5 - Mon Feb 06 2012 - Gui Chen <gui.chen@intel.com>
358 =====================================================================
359  * Rewrite the algorithm of checking free space for download and install
360  * Add --shell option for convert to recreate image modified by internal shell
361  * Add -s option for chroot to unpack image
362  * Introduce --copy-kernel option for creator
363  * Remove the hardcoded default args for bootloader
364  * Disable logstderr and flush message buffer in disable_logstderr
365  * Deal with yum.conf inside yum backend by itself
366  * Bug fix:
367    - Fix rpmdb error in yum and zypp to avoid bad file descriptor message
368    - Fix MANIFEST syntax to be compliant with md5sum
369    - Correct dependencies for mic in bootstrap
370
371 Release 0.4 - Fri Jan 06 2012 - Gui Chen <gui.chen@intel.com>
372 =====================================================================
373  * Support bootstrap mode, run with '--runtime=bootstrap'
374  * Full support for taring-to output, use 'mic ch x.tar'
375  * Break dependency between backend and baseimage
376  * Check valid repos in ks file
377  * Space check update and catch no space exception
378  * Fix no prompt when cv and ch no existed image
379  * Fix NoneType 'createopts' when convert
380  * Fix no existed local_pkgs_path
381
382 Release 0.3 - Mon Dec 26 2011 - Gui Chen <gui.chen@intel.com>
383 =====================================================================
384  * Unit test support, run 'make test'
385  * Enable proxy support in config file
386  * Refine configmgr and pluginmgr
387  * Support multi instance with different cache dir
388  * Add 47 system test case
389  * Improve md5sum generation
390  * Add repo option --ssl_verify
391  * Add option --name_prefix
392  * Reformatted code according to PEP08
393  * Backport from mic2:
394    - Add priority and cost option for repos
395    - Reinstroduced compress-disk-image option
396
397 Release 0.2 - Tue Nov 29 2011 - Gui Chen <gui.chen@intel.com>
398 =====================================================================
399  * Support btrfs and ext4 fstype for creator, convertor, and chroot
400  * Append distfiles and Makefile
401  * Check arch type from repo data
402  * Set rpm dbpath to fix 'rpm -qa' issue
403  * Fix chroot issue caused by image size
404  * Improve setup.py and make it compatible with python 2.5
405  * Disable ca check for https
406  * Change default output dir name to ./mic-output
407  * untrack mic/__version__.py
408  * Fix some minor issues
409
410 Release 0.1 - Thu Oct 27 2011 - Gui Chen <gui.chen@intel.com>
411 =====================================================================
412  * Support three subcommand: create, convert, chroot
413  * Support five image types: fs, loop, raw, livecd, liveusb
414  * Support two package manager backend: yum and zypp
415  * Support the following global command line options:
416    - --verbose
417    - --debug
418  * Creator subcommand support the following command line options:
419    - --logfile=LOGFILE
420    - -c CONFIG, --config=CONFIG
421    - -k CACHEDIR, --cachedir=CACHEDIR
422    - -o OUTDIR, --outdir=OUTDIR
423    - -A ARCH, --arch=ARCH
424    - --release=RID
425    - --record-pkgs=RECORD_PKGS
426    - --pkgmgr=PKGMGR
427    - --local-pkgs-path=LOCAL_PKGS_PATH
428