1 GNU parted NEWS -*- outline -*-
3 * Noteworthy changes in release ?.? (????-??-??) [?]
7 The default alignment (--align option) for newly created partitions has
8 been changed to optimal.
12 The ped_device_get_*_alignment() functions now return a sane default
13 value instead of NULL when the so called topology information is incomplete.
14 The default minimum alignment aligns to physical sector size, the default
15 optimal alignment is 1MiB, which is what vista and windows 7 do.
19 Parted no longer uses a physical sector size of 0 or of any other
20 value smaller than the logical sector size.
22 gpt: read-only operation could clobber MBR part of hybrid GPT+MBR table
23 [bug introduced in parted-2.1]
25 gpt: a read-only operation like "parted $dev print" would overwrite $dev's
26 protective MBR when exactly one of the primary and backup GPT tables was
28 [bug introduced prior to parted-1.8.0]
30 sun: the version, sanity and nparts VTOC fields were ignored by libparted.
31 Those fields are properly initialized now. The nparts (number of partitions)
32 field is initialized to 8 (max. number of sun partitions) rather that to a
33 real number of partitions. This solution is compatible with Linux kernel
36 "make install" no longer installs tests programs named disk and label
38 libparted: try harder to inform kernel of partition changes.
39 Previously when editing partitions, occasionally the kernel would
40 fail to be informed of partition changes. When this happened future
41 problems would occur because the kernel had incorrect information.
42 For example, if this problem arose when resizing or creating a
43 new partition, then an incorrect partition size might be displayed
44 or a user might encounter a failure to format or delete a newly
45 created partition, respectively.
47 libparted: committing a disk that was returned by ped_disk_duplicate
48 would always result in ped_disk_clobber being called (and thus the first
49 and last 9KiB of the disk being zeroed), even if the duplicated disk,
50 was not returned by ped_disk_fresh().
53 * Noteworthy changes in release 2.1 (2009-12-20) [stable]
57 new --align=<align> commandline option which can have the following values:
58 none: Use the minimum alignment allowed by the disk type
59 cylinder: Align partitions to cylinders (the default)
60 minimal: Use minimum alignment as given by the disk topology information
61 optimal: Use optimum alignment as given by the disk topology information
62 The minimal and optimal values will use layout information provided by the
63 disk to align the logical partition table addresses to actual physical
64 blocks on the disks. The mininal value uses the minimum aligment needed to
65 align the partition properly to physical blocks, which avoids performance
66 degradation. Where as the optimal value uses a multiple of the physical
67 block size in a way that guarantees optimal performance.
68 The min and opt values will only work when compiled with
69 libblkid >= 2.17 and running on a kernel >= 2.6.31, otherwise they will
70 behave as the none --align value.
72 libparted: new functions to set per disk (instead of per partition) flags:
75 ped_disk_is_flag_available()
76 ped_disk_flag_get_name()
77 ped_disk_flag_get_by_name()
80 libparted: new per disk flag: PED_DISK_CYLINDER_ALIGNMENT. This flag
81 (which defaults to true) controls if disk types for which cylinder alignment
82 is optional do cylinder alignment when a new partition gets added.
84 libparted: new functions to return per-partition-table-type limits:
85 - ped_disk_max_partition_start_sector: Return the largest representable
86 start sector number for a given "disk".
87 - ped_disk_max_partition_length: Return the maximum partition length
90 new command "align-check TYPE N" to determine whether the starting sector
91 of partition N is TYPE(minimal|optimal)-aligned for the disk. E.g.,
92 parted -s /dev/sda align-check min 1 && echo partition 1 is min-aligned
93 parted -s /dev/sda align-check opt 2 && echo partition 2 is opt-aligned
94 The same libblkid and kernel version requirements apply as for --align
96 Add functions to libparted to get minimal and optimal alignment
97 information from devices:
98 ped_device_get_minimal_aligned_constraint()
99 ped_device_get_optimal_aligned_constraint()
100 ped_device_get_minimum_alignment()
101 ped_device_get_optimum_alignment()
102 The same libblkid and kernel version requirements apply as for --align
104 Add ped_disk_get_partition_alignment() function to libparted to get
105 information about alignment enforced by the disk type.
109 parted can once again create partition tables on loop devices.
110 Before, "parted -s /dev/loop0 mklabel gpt" would fail.
111 [bug introduced in parted-1.9.0]
113 improved >512-byte sector support: for example, printing a table on a
114 4k-sector disk would show "Sector size (logical/physical): 4096B/512B",
115 when the sizes should have been "4096B/4096B".
117 gpt tables are more rigorously checked; before, partition entry array CRCs
118 were not checked, and we would mistakenly use the AlternateLBA member of a
119 known-corrupt primary table.
121 improved dasd disk support, in previous versions calling
122 ped_disk_new_fresh() or ped_disk_duplicate() on a dasd type PedDisk
123 would fail. This is fixed now.
125 handle device nodes created by lvm build with udev synchronisation enabled
128 when printing tables, parted no longer truncates flag names
131 * Noteworthy changes in release 2.0 (2009-10-06) [beta]
135 Parted now supports disks with sector size larger than 512 bytes.
136 Before this release, Parted could operate only on disks with a sector
137 size of 512 bytes. However, disk manufacturers are already making disks
138 with an exposed hardware sector size of 4096 bytes. Prior versions of
139 Parted cannot even read a partition table on such a device, not to
140 mention create or manipulate existing partition tables.
141 Due to internal design and time constraints, the following
142 less-common partition table types are currently disabled:
143 amiga, bsd, aix, pc98
144 "bsd" and "amiga" are mostly done, but had a few minor problems,
145 so may remain disabled until someone requests that they be revived.
149 big-endian systems can once again read GPT partition tables
150 [bug introduced in parted-1.9.0]
152 ped_partition_is_busy no longer calls libparted's exception handler,
153 since doing so caused trouble with anaconda/pyparted when operating on
156 Partitions in a GPT table are no longer assigned the "microsoft
157 reserved partition" type. Before this change, each partition would
158 be listed with a type of "msftres" by default.
161 * Noteworthy changes in release 1.9.0 (2009-07-23) [stable]
165 parted now preserves the protective MBR (PMBR) in GPT type labels.
166 http://lists.alioth.debian.org/pipermail/parted-devel/2008-December/\
168 http://lists.gnu.org/archive/html/bug-parted/2008-12/msg00015.html
170 gpt_read now uses SizeOfPartitionEntry instead of the size of
171 GuidPartitionEntry_t. This ensures that *all* of the partition
172 entries are correctly read.
173 http://lists.alioth.debian.org/pipermail/parted-devel/2008-December/\
175 http://lists.alioth.debian.org/pipermail/parted-devel/attachments/\
176 20081202/b7c0528d/attachment.txt
178 mklabel (interactive mode) now correctly asks for confirmation, when
179 replacing an existent label, without outputting an error message.
180 http://lists.alioth.debian.org/pipermail/parted-devel/2009-January/\
183 resize now handles FAT16 file systems with a 64k cluster. This
184 configuration is not common, but it is possible.
185 http://parted.alioth.debian.org/cgi-bin/trac.cgi/ticket/207
187 parted now ignores devices of the type /dev/md* when probing. These
188 types of devices should be handled by the device-mapper capabilities
190 http://lists.alioth.debian.org/pipermail/parted-devel/2009-April/\
193 The parted documentation now describes the differences in the options
194 passed to mkpart for the label types.
195 http://lists.alioth.debian.org/pipermail/parted-devel/2009-April/\
198 ** Changes in behavior
200 include/parted/beos.h, include/parted/gnu.h and include/parted/linux.h
201 have been removed. The symbols contained in these files (GNUSpecific,
202 ped_device_new_from_store, BEOSSpecific, LinuxSpecific, LINUX_SPECIFIC)
203 were moved to the individual files that need them.
205 In libparted, the linux-swap "filesystem" types are now called
206 "linux-swap(v0)" and "linux-swap(v1)" rather than "linux-swap(old)"
207 and "linux-swap(new)" as in parted 1.8, or "linux-swap" as in older
208 versions; "old" and "new" generally make poor names, and v1 is the
209 only format supported by current Linux kernels. Aliases for all
210 previous names are available.
212 * Noteworthy changes in release 1.8.8.1 (2007-12-17) [stable]
214 ** FIXME: fill in details
216 * Noteworthy changes in release 1.8.8 (2007-08-09) [stable]
218 ** GNU parted is now licensed under the GNU General Public License version 3
219 or higher. See the COPYING file for more details.
222 - Add compute_block_counts() to improve ext2fs support.
223 - Properly detect 'ext2 fs too small' cases.
224 - Move formatting commands out of translatable strings.
225 - Read an msdos partition table from a device with 2K sectors.
226 - Remove always-false "Unable to open" diagnostic in ped_disk_new(),
227 leave the "unrecognized disk label" diagnostic.
228 - Don't leak partition table buffer in amiga_read().
229 - Don't read/write initialized memory with DEBUG turned on off for
230 'mklabel bsd' and 'mklabel amiga' command calls.
231 - Turn off DEBUG in libparted.c to avoid initializing all allocated
233 - Correct handling of HeaderSize field in GPT labels.
234 - Fix block number used when checking for ext2 fs state.
235 - Add detection support for Xen virtual block devices (/dev/xvd*).
236 - When reading DASD labels, check the filesystem type as well as
237 partition flags to determine what's on the partition.
238 - Add _dm_probe_all() from Debian to probe for all device-mapper
242 - Fixed exception handling in mkpart and mkpartfs commands.
243 - Add the --dry-run option to the partprobe command.
244 - Update docs: cannot specify 'primary' for a partition on a loop
246 - Remove unused functions (get_spaces).
247 - Fix off-by-one error in str_list_print_wrap().
248 - Use xmalloc() and xrealloc() to check return values.
249 - Fix invalid command line argument handling.
250 - Close memory leaks in parted.c and table.c.
251 - Fix warnings when compiling with translation support enabled.
252 - Use a consistent prompt when asking for a file system type.
253 - Update docs: don't reference old versions of gzip.
256 - Improve the testing framework in the tests/ subdirectory. Build out
257 more of the testing scripts so we can start using that to ensure we
258 don't introduce regressions in releases.
259 - Support testing with tmpfs filesystems on Linux.
260 - Work around inadequate libreadline in the configure script.
261 - Don't include config.h from internal headers.
263 * Noteworthy changes in release 1.8.7 (2007-05-09) [stable]
266 - Prevent compilation of DASD code on GNU Hurd systems.
267 - Integrate new unit testing framework for parted and libparted.
268 - Fix primary partition cylinder alignment error for DOS disk labels.
269 - Use PED_PARTITION_NORMAL in place of PED_PARTITION_PRIMARY.
270 - Avoid segfault due to a double free on reiserfs support.
273 - Fix script mode (-s) for mkfs command in parted.
274 - Suppress "you are not superuser..." warning in script mode.
275 - Fix off-by-one bug in parted when displaying information about the
277 - Do not translate partition names in the 'parted print' command.
278 This causes problems for non-Latin-based character sets.
279 - Send errors to stderr rather than stdout.
280 - Handle command line options independent of the order.
281 - Abort on any invalid option and handle -v and -h first.
282 - Only display the update /etc/fstab message when there has been a
283 change to the disk (a shorter and more direct message too).
285 * Noteworthy changes in release 1.8.6 (2007-03-20) [stable]
287 ** Revert the implementation of the linux-swap(new) and linux-swap(old) types.
288 The type is 'linux-swap' for v1, v2, and s1suspend swap partitions on Linux.
290 * Noteworthy changes in release 1.8.5 (2007-03-20) [stable]
292 ** Another minor update. Both versions 1.8.3 and 1.8.4 lacked po translation
293 files. These are included with version 1.8.5.
295 * Noteworthy changes in release 1.8.4 (2007-03-19) [stable]
297 ** Minor bug fix release for 1.8.3 to fix build issues on various
299 - Use 'uname -m' to determine if we build on System Z or not.
300 - Include <parted/vtoc.h> in <parted/fdasd.h> for format1_label_t
302 - Remove unused variables in libparted/arch/linux.c (-Werror).
303 - Check return values on fgets() and asprint() in libparted/arch/linux.c
305 - Check for tgetent() in libtinfo in the configure script.
306 - Move some macro definitions in <parted/disk.h> to fix a compile
307 problem with gcc-4.1.2 as indicated here:
308 http://lists.gnu.org/archive/html/bug-parted/2007-03/msg00008.html
310 * Noteworthy changes in release 1.8.3 (2007-03-16) [stable]
313 - Header file clean ups.
314 - Sync the linux-swap header according to the Linux kernel sources.
315 - Enable support for swsusp partitions and the ability to differentiate
316 between old and new versions of linux-swap partitions.
317 - Renaming PARTITION_EXT to PARTITION_DOS_EXT in the DOS disklabel
318 code (consitency with Linux kernel source).
319 - Added libparted.pc pkg-config file.
320 - Remove unused functions, ifdefs, and other code.
321 - Deprecate ped_[register|unregister]_disk_type in favor of
322 ped_disk_type_[register|unregister].
323 - Small test program fixes (in label.c and common.c).
324 - Make functions const-correct.
325 - Handle systems where libreadline is not available.
326 - Preserve starting sector for primary NTFS 3.1 partitions on DOS
328 - Handle 2048-byte logical sectors in linux_read().
329 - Use PED_SECTOR_SIZE_DEFAULT macro in place of 512.
330 - Don't assume logical sector size is <= 512B on AIX.
331 - Detect HFS write failure.
332 - Use mkstemp() in place of mktemp().
333 - Added HFS+ resize support.
334 - Don't build DASD support on non-zSeries hardware.
337 - Use fputs() and putchar() in place for printf(), when possible.
338 - Detect/report stdout write errors.
339 - Accept the --version and --help options.
340 - Fix memory leaks in parted(8).
343 - Synchronize the manual page and --help documentation.
344 - GNU autoconf and automake updates.
345 - 'gcc -Wall -Wshadow' warning cleanups.
346 - Don't define _GNU_SOURCE manually.
347 - Documentation updates and cleanups (AUTHORS, copyright notices,
349 - Use gnulib (http://www.gnu.org/software/gnulib/).
351 * Noteworthy changes in release 1.8.2 (2007-01-12) [stable]
354 - Add the ped_device_cache_remove() function to remove a device from
355 the cache. This is necessary for some things that use libparted,
357 - Fix a segfault in ped_assert() where the wrong pointer is freed in
358 the backtrace handler.
359 - Only call _disk_warn_loss(disk) in do_mklabel() if disk is not NULL.
360 Fixes a segfault when initializing new volumes.
361 - Dynamically allocate space for exception messages.
362 - Output a backtrace when catching SEGV_MAPPER or a general SIGSEGV.
365 - Destroy all objects before return when called with --list or --all
367 - Zero sized device is shown as 0.00B and not -0.00kB.
368 - Implement 'print devices' command.
369 - Alias 'print list' to 'print all'.
370 - Alias 'mktable' to 'mklabel'.
373 - Other bug fixes, documentation updates, and translation improvements.
374 - Code and API clean-ups.
376 * Noteworthy changes in release 1.8.1 (2006-12-04) [stable]
379 - Rework backtrace support.
381 - Added --enable-selinux configure option to enable linking libparted with
382 libselinux and libsepol.
383 - Disable ext2fs resize for now, tell user to use resize2fs.
386 - Fix loop in print_all().
387 - Introduce the -list command-line switch.
388 - Make mktable aliased to mklabel.
389 - Warn before mklabel and mkfs.
390 - Code cleanups in _partition_warn_busy(), _disk_warn_busy(),
391 _partition_warn_loss(), and _disk_warn_loss().
392 - Avoid warning about user permissions when using --version.
393 - Fix 'print' command help.
394 - Proper print when there are no extended partitions, but partition names.
397 - Generate SHA-1 digest of the archive files and upload those along with the
398 actual archive files.
399 - Update translation files.
400 - Remove automatically generated files from version control.
402 * Noteworthy changes in release 1.8.0 (2006-11-17) [stable]
406 - Correctly handle disks with non-512 byte sector sizes
407 - Support LUN resizing (see new space, allow parted to use it)
408 - Prevent overlap of LastUsableLBA and PartitionEntryLBA in backup GPT
409 - Prevent SIGFPE when FAT sector size is 0
410 - Add ped_exception_get_handler()
411 - DASD support for IBM zSeries systems
412 - AIX disk label support
413 - Detect Promise SX8 storage devices
414 - Macintosh (ppc and x86) disk label improvements:
415 - Prevent LVM and RAID partition types from corrupting the table
416 - Fix removal of driver partition
417 - Add support binary units (MiB, KiB, GiB)
418 - In ped_register_disk_type(), handle disk_types==NULL case
419 - In ped_unregister_disk_type(), handle case where type is not registered
420 - Fix geometry read problems on 64-bit Macs (and probably other 64-bit systems)
421 - Add support for /dev/mapper devices via libdevmapper library
422 - Detect Apple_Boot partition types correctly on MacOS X 10.4 systems
425 - Various bug fixes, signal handling fixes, and spelling error fixes
426 - UI improvements to display more information about the disk and transport
429 ========================================================================
431 Copyright (C) 2001-2010 Free Software Foundation, Inc.
433 Permission is granted to copy, distribute and/or modify this document
434 under the terms of the GNU Free Documentation License, Version 1.3 or
435 any later version published by the Free Software Foundation; with no
436 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
437 Texts. A copy of the license is included in the ``GNU Free
438 Documentation License'' file as part of this distribution.