OSDN Git Service

libparted: new interfaces: max start sector, max partition length
[android-x86/external-parted.git] / NEWS
1 GNU parted NEWS                                    -*- outline -*-
2
3 * Noteworthy changes in release ?.? (????-??-??) [?]
4
5 ** New features
6
7   libparted: new functions to return per-partition-table-type limits:
8     - ped_disk_max_partition_start_sector: Return the largest representable
9     start sector number for a given "disk".
10     - ped_disk_max_partition_length: Return the maximum partition length
11     for a given "disk".
12
13   new command "align-check TYPE N" to determine whether the starting sector
14   of partition N is TYPE(minimal|optimal)-aligned for the disk.  E.g.,
15       parted -s /dev/sda align-check min 1 && echo partition 1 is min-aligned
16       parted -s /dev/sda align-check opt 2 && echo partition 2 is opt-aligned
17   This is useful only on kernels for which Parted is able to determine
18   a disk's alignment characteristics.
19
20   Add functions to libparted to get minimal and optimal alignment
21   information from devices:
22   ped_device_get_minimal_aligned_constraint()
23   ped_device_get_optimal_aligned_constraint()
24   ped_device_get_minimum_alignment()
25   ped_device_get_optimum_alignment()
26
27   Add ped_disk_get_partition_alignment() function to libparted to get
28   information about alignment enforced by the disk type.
29
30 ** Bug fixes
31
32   improved >512-byte sector support: for example, printing a table on a
33   4k-sector disk would show "Sector size (logical/physical): 4096B/512B",
34   when the sizes should have been "4096B/4096B".
35
36   gpt tables are more rigorously checked; before, partition entry array CRCs
37   were not checked, and we would mistakenly use the AlternateLBA member of a
38   known-corrupt primary table.
39
40   improved dasd disk support, in previous versions calling
41   ped_disk_new_fresh() or ped_disk_duplicate() on a dasd type PedDisk
42   would fail.  This is fixed now.
43
44   handle device nodes created by lvm build with udev synchronisation enabled
45   properly.
46
47 * Noteworthy changes in release 2.0 (2009-10-06) [beta]
48
49 ** Improvements
50
51   Parted now supports disks with sector size larger than 512 bytes.
52   Before this release, Parted could operate only on disks with a sector
53   size of 512 bytes.  However, disk manufacturers are already making disks
54   with an exposed hardware sector size of 4096 bytes.  Prior versions of
55   Parted cannot even read a partition table on such a device, not to
56   mention create or manipulate existing partition tables.
57   Due to internal design and time constraints, the following
58   less-common partition table types are currently disabled:
59     amiga, bsd, aix, pc98
60   "bsd" and "amiga" are mostly done, but had a few minor problems,
61   so may remain disabled until someone requests that they be revived.
62
63 ** Bug fixes
64
65   big-endian systems can once again read GPT partition tables
66   [bug introduced in parted-1.9.0]
67
68   ped_partition_is_busy no longer calls libparted's exception handler,
69   since doing so caused trouble with anaconda/pyparted when operating on
70   dmraid devices.
71
72   Partitions in a GPT table are no longer assigned the "microsoft
73   reserved partition" type.  Before this change, each partition would
74   be listed with a type of "msftres" by default.
75
76
77 * Noteworthy changes in release 1.9.0 (2009-07-23) [stable]
78
79 ** Bug fixes
80
81   parted now preserves the protective MBR (PMBR) in GPT type labels.
82   http://lists.alioth.debian.org/pipermail/parted-devel/2008-December/\
83     002473.html
84   http://lists.gnu.org/archive/html/bug-parted/2008-12/msg00015.html
85
86   gpt_read now uses SizeOfPartitionEntry instead of the size of
87   GuidPartitionEntry_t.  This ensures that *all* of the partition
88   entries are correctly read.
89   http://lists.alioth.debian.org/pipermail/parted-devel/2008-December/\
90     002465.html
91   http://lists.alioth.debian.org/pipermail/parted-devel/attachments/\
92     20081202/b7c0528d/attachment.txt
93
94   mklabel (interactive mode) now correctly asks for confirmation, when
95   replacing an existent label, without outputting an error message.
96   http://lists.alioth.debian.org/pipermail/parted-devel/2009-January/\
97     002739.html
98
99   resize now handles FAT16 file systems with a 64k cluster.  This
100   configuration is not common, but it is possible.
101   http://parted.alioth.debian.org/cgi-bin/trac.cgi/ticket/207
102
103   parted now ignores devices of the type /dev/md* when probing.  These
104   types of devices should be handled by the device-mapper capabilities
105   of parted.
106   http://lists.alioth.debian.org/pipermail/parted-devel/2009-April/\
107     002781.html
108
109   The parted documentation now describes the differences in the options
110   passed to mkpart for the label types.
111   http://lists.alioth.debian.org/pipermail/parted-devel/2009-April/\
112     002782.html
113
114 ** Changes in behavior
115
116   include/parted/beos.h, include/parted/gnu.h and include/parted/linux.h
117   have been removed.  The symbols contained in these files (GNUSpecific,
118   ped_device_new_from_store, BEOSSpecific, LinuxSpecific,  LINUX_SPECIFIC)
119   were moved to the individual files that need them.
120
121   In libparted, the linux-swap "filesystem" types are now called
122   "linux-swap(v0)" and "linux-swap(v1)" rather than "linux-swap(old)"
123   and "linux-swap(new)" as in parted 1.8, or "linux-swap" as in older
124   versions; "old" and "new" generally make poor names, and v1 is the
125   only format supported by current Linux kernels. Aliases for all
126   previous names are available.
127
128 * Noteworthy changes in release 1.8.8.1 (2007-12-17) [stable]
129
130 ** FIXME: fill in details
131
132 * Noteworthy changes in release 1.8.8 (2007-08-09) [stable]
133
134 ** GNU parted is now licensed under the GNU General Public License version 3
135    or higher.  See the COPYING file for more details.
136
137 ** libparted:
138   - Add compute_block_counts() to improve ext2fs support.
139   - Properly detect 'ext2 fs too small' cases.
140   - Move formatting commands out of translatable strings.
141   - Read an msdos partition table from a device with 2K sectors.
142   - Remove always-false "Unable to open" diagnostic in ped_disk_new(),
143     leave the "unrecognized disk label" diagnostic.
144   - Don't leak partition table buffer in amiga_read().
145   - Don't read/write initialized memory with DEBUG turned on off for
146     'mklabel bsd' and 'mklabel amiga' command calls.
147   - Turn off DEBUG in libparted.c to avoid initializing all allocated
148     memory to '1' bits.
149   - Correct handling of HeaderSize field in GPT labels.
150   - Fix block number used when checking for ext2 fs state.
151   - Add detection support for Xen virtual block devices (/dev/xvd*).
152   - When reading DASD labels, check the filesystem type as well as
153     partition flags to determine what's on the partition.
154   - Add _dm_probe_all() from Debian to probe for all device-mapper
155     devices.
156
157 ** parted:
158   - Fixed exception handling in mkpart and mkpartfs commands.
159   - Add the --dry-run option to the partprobe command.
160   - Update docs: cannot specify 'primary' for a partition on a loop
161     device.
162   - Remove unused functions (get_spaces).
163   - Fix off-by-one error in str_list_print_wrap().
164   - Use xmalloc() and xrealloc() to check return values.
165   - Fix invalid command line argument handling.
166   - Close memory leaks in parted.c and table.c.
167   - Fix warnings when compiling with translation support enabled.
168   - Use a consistent prompt when asking for a file system type.
169   - Update docs: don't reference old versions of gzip.
170
171 ** misc:
172   - Improve the testing framework in the tests/ subdirectory.  Build out
173     more of the testing scripts so we can start using that to ensure we
174     don't introduce regressions in releases.
175   - Support testing with tmpfs filesystems on Linux.
176   - Work around inadequate libreadline in the configure script.
177   - Don't include config.h from internal headers.
178
179 * Noteworthy changes in release 1.8.7 (2007-05-09) [stable]
180
181 ** libparted:
182   - Prevent compilation of DASD code on GNU Hurd systems.
183   - Integrate new unit testing framework for parted and libparted.
184   - Fix primary partition cylinder alignment error for DOS disk labels.
185   - Use PED_PARTITION_NORMAL in place of PED_PARTITION_PRIMARY.
186   - Avoid segfault due to a double free on reiserfs support.
187
188 ** parted:
189   - Fix script mode (-s) for mkfs command in parted.
190   - Suppress "you are not superuser..." warning in script mode.
191   - Fix off-by-one bug in parted when displaying information about the
192     disk.
193   - Do not translate partition names in the 'parted print' command.
194     This causes problems for non-Latin-based character sets.
195   - Send errors to stderr rather than stdout.
196   - Handle command line options independent of the order.
197   - Abort on any invalid option and handle -v and -h first.
198   - Only display the update /etc/fstab message when there has been a
199     change to the disk (a shorter and more direct message too).
200
201 * Noteworthy changes in release 1.8.6 (2007-03-20) [stable]
202
203 ** Revert the implementation of the linux-swap(new) and linux-swap(old) types.
204    The type is 'linux-swap' for v1, v2, and s1suspend swap partitions on Linux.
205
206 * Noteworthy changes in release 1.8.5 (2007-03-20) [stable]
207
208 ** Another minor update.  Both versions 1.8.3 and 1.8.4 lacked po translation
209    files.  These are included with version 1.8.5.
210
211 * Noteworthy changes in release 1.8.4 (2007-03-19) [stable]
212
213 ** Minor bug fix release for 1.8.3 to fix build issues on various
214    platforms:
215   - Use 'uname -m' to determine if we build on System Z or not.
216   - Include <parted/vtoc.h> in <parted/fdasd.h> for format1_label_t
217     definition.
218   - Remove unused variables in libparted/arch/linux.c (-Werror).
219   - Check return values on fgets() and asprint() in libparted/arch/linux.c
220     (-Werror).
221   - Check for tgetent() in libtinfo in the configure script.
222   - Move some macro definitions in <parted/disk.h> to fix a compile
223     problem with gcc-4.1.2 as indicated here:
224     http://lists.gnu.org/archive/html/bug-parted/2007-03/msg00008.html
225
226 * Noteworthy changes in release 1.8.3 (2007-03-16) [stable]
227
228 ** libparted:
229   - Header file clean ups.
230   - Sync the linux-swap header according to the Linux kernel sources.
231   - Enable support for swsusp partitions and the ability to differentiate
232     between old and new versions of linux-swap partitions.
233   - Renaming PARTITION_EXT to PARTITION_DOS_EXT in the DOS disklabel
234     code (consitency with Linux kernel source).
235   - Added libparted.pc pkg-config file.
236   - Remove unused functions, ifdefs, and other code.
237   - Deprecate ped_[register|unregister]_disk_type in favor of
238     ped_disk_type_[register|unregister].
239   - Small test program fixes (in label.c and common.c).
240   - Make functions const-correct.
241   - Handle systems where libreadline is not available.
242   - Preserve starting sector for primary NTFS 3.1 partitions on DOS
243     disklabel.
244   - Handle 2048-byte logical sectors in linux_read().
245   - Use PED_SECTOR_SIZE_DEFAULT macro in place of 512.
246   - Don't assume logical sector size is <= 512B on AIX.
247   - Detect HFS write failure.
248   - Use mkstemp() in place of mktemp().
249   - Added HFS+ resize support.
250   - Don't build DASD support on non-zSeries hardware.
251
252 ** parted/partprobe:
253   - Use fputs() and putchar() in place for printf(), when possible.
254   - Detect/report stdout write errors.
255   - Accept the --version and --help options.
256   - Fix memory leaks in parted(8).
257
258 ** general:
259   - Synchronize the manual page and --help documentation.
260   - GNU autoconf and automake updates.
261   - 'gcc -Wall -Wshadow' warning cleanups.
262   - Don't define _GNU_SOURCE manually.
263   - Documentation updates and cleanups (AUTHORS, copyright notices,
264     etc).
265   - Use gnulib (http://www.gnu.org/software/gnulib/).
266
267 * Noteworthy changes in release 1.8.2 (2007-01-12) [stable]
268
269 ** libparted:
270   - Add the ped_device_cache_remove() function to remove a device from
271     the cache.  This is necessary for some things that use libparted,
272     including pyparted.
273   - Fix a segfault in ped_assert() where the wrong pointer is freed in
274     the backtrace handler.
275   - Only call _disk_warn_loss(disk) in do_mklabel() if disk is not NULL.
276     Fixes a segfault when initializing new volumes.
277   - Dynamically allocate space for exception messages.
278   - Output a backtrace when catching SEGV_MAPPER or a general SIGSEGV.
279
280 ** parted:
281   - Destroy all objects before return when called with --list or --all
282     option.
283   - Zero sized device is shown as 0.00B and not -0.00kB.
284   - Implement 'print devices' command.
285   - Alias 'print list' to 'print all'.
286   - Alias 'mktable' to 'mklabel'.
287
288 ** misc:
289   - Other bug fixes, documentation updates, and translation improvements.
290   - Code and API clean-ups.
291
292 * Noteworthy changes in release 1.8.1 (2006-12-04) [stable]
293
294 ** libparted:
295   - Rework backtrace support.
296   - Code cleanups.
297   - Added --enable-selinux configure option to enable linking libparted with
298     libselinux and libsepol.
299   - Disable ext2fs resize for now, tell user to use resize2fs.
300
301 ** parted:
302   - Fix loop in print_all().
303   - Introduce the -list command-line switch.
304   - Make mktable aliased to mklabel.
305   - Warn before mklabel and mkfs.
306   - Code cleanups in _partition_warn_busy(), _disk_warn_busy(),
307     _partition_warn_loss(), and _disk_warn_loss().
308   - Avoid warning about user permissions when using --version.
309   - Fix 'print' command help.
310   - Proper print when there are no extended partitions, but partition names.
311
312 ** misc:
313   - Generate SHA-1 digest of the archive files and upload those along with the
314     actual archive files.
315   - Update translation files.
316   - Remove automatically generated files from version control.
317
318 * Noteworthy changes in release 1.8.0 (2006-11-17) [stable]
319
320 ** libparted:
321   - GPT fixes:
322        - Correctly handle disks with non-512 byte sector sizes
323        - Support LUN resizing (see new space, allow parted to use it)
324        - Prevent overlap of LastUsableLBA and PartitionEntryLBA in backup GPT
325   - Prevent SIGFPE when FAT sector size is 0
326   - Add ped_exception_get_handler()
327   - DASD support for IBM zSeries systems
328   - AIX disk label support
329   - Detect Promise SX8 storage devices
330   - Macintosh (ppc and x86) disk label improvements:
331        - Prevent LVM and RAID partition types from corrupting the table
332        - Fix removal of driver partition
333   - Add support binary units (MiB, KiB, GiB)
334   - In ped_register_disk_type(), handle disk_types==NULL case
335   - In ped_unregister_disk_type(), handle case where type is not registered
336   - Fix geometry read problems on 64-bit Macs (and probably other 64-bit systems)
337   - Add support for /dev/mapper devices via libdevmapper library
338   - Detect Apple_Boot partition types correctly on MacOS X 10.4 systems
339
340 ** parted:
341   - Various bug fixes, signal handling fixes, and spelling error fixes
342   - UI improvements to display more information about the disk and transport
343     layer
344
345 ========================================================================
346
347 Copyright (C) 2001-2009 Free Software Foundation, Inc.
348
349 Permission is granted to copy, distribute and/or modify this document
350 under the terms of the GNU Free Documentation License, Version 1.2 or
351 any later version published by the Free Software Foundation; with no
352 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
353 Texts.  A copy of the license is included in the ``GNU Free
354 Documentation License'' file as part of this distribution.