X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=src%2Fguestfs.pod;h=68fca7d5e75bf7809e4e2c575d54c930c30aec4b;hb=c8f302a17453ad58acccd137342438795763606a;hp=cf70d5d17e0b28b29944e67fd813144e97a1a125;hpb=2e0f3ed54b978925c79ca0d33e76bec338b23631;p=libguestfs.git diff --git a/src/guestfs.pod b/src/guestfs.pod index cf70d5d..68fca7d 100644 --- a/src/guestfs.pod +++ b/src/guestfs.pod @@ -202,7 +202,7 @@ conditions after each call. (Other language bindings turn these errors into exceptions). File writes are affected by the per-handle umask, set by calling -C and defaulting to 022. +C and defaulting to 022. See L. =head2 PARTITIONING @@ -437,6 +437,23 @@ When new files are created, you may need to label them explicitly, for example by running the external command C. +=head2 UMASK + +Certain calls are affected by the current file mode creation mask (the +"umask"). In particular ones which create files or directories, such +as C, C or C. This +affects either the default mode that the file is created with or +modifies the mode that you supply. + +The default umask is C<022>, so files are created with modes such as +C<0644> and directories with C<0755>. + +There are two ways to avoid being affected by umask. Either set umask +to 0 (call C early after launching). Or call +C after creating each file or directory. + +For more information about umask, see L. + =head2 SPECIAL CONSIDERATIONS FOR WINDOWS GUESTS Libguestfs can mount NTFS partitions. It does this using the @@ -1283,6 +1300,69 @@ For example: Note that libguestfs also calls qemu with the -help and -version options in order to determine features. +=head1 LIBGUESTFS VERSION NUMBERS + +Since April 2010, libguestfs has started to make separate development +and stable releases, along with corresponding branches in our git +repository. These separate releases can be identified by version +number: + + even numbers for stable: 1.2.x, 1.4.x, ... + .-------- odd numbers for development: 1.3.x, 1.5.x, ... + | + v + 1 . 3 . 5 + ^ ^ + | | + | `-------- sub-version + | + `------ always '1' because we don't change the ABI + +Thus "1.3.5" is the 5th update to the development branch "1.3". + +As time passes we cherry pick fixes from the development branch and +backport those into the stable branch, the effect being that the +stable branch should get more stable and less buggy over time. So the +stable releases are ideal for people who don't need new features but +would just like the software to work. + +Our criteria for backporting changes are: + +=over 4 + +=item * + +Documentation changes which don't affect any code are +backported unless the documentation refers to a future feature +which is not in stable. + +=item * + +Bug fixes which are not controversial, fix obvious problems, and +have been well tested are backported. + +=item * + +Simple rearrangements of code which shouldn't affect how it works get +backported. This is so that the code in the two branches doesn't get +too far out of step, allowing us to backport future fixes more easily. + +=item * + +We I backport new features, new APIs, new tools etc, except in +one exceptional case: the new feature is required in order to +implement an important bug fix. + +=back + +A new stable branch starts when we think the new features in +development are substantial and compelling enough over the current +stable branch to warrant it. When that happens we create new stable +and development versions 1.N.0 and 1.(N+1).0 [N is even]. The new +dot-oh release won't necessarily be so stable at this point, but by +backporting fixes from development, that branch will stabilize over +time. + =head1 ENVIRONMENT VARIABLES =over 4