+2008-03-27 Raphael Hertzog <hertzog@debian.org>
+
+ * Merge branch 'sourcev3'. It contains an extensive refactoring of
+ dpkg-source around many new modules in scripts/Dpkg/Source/.
+
+ General purpose changes:
+ * scripts/Dpkg/IPC.pm: New module offering fork_and_exec() to
+ conveniently execute any program in a child process. It hides
+ all the error checking and lets you easily redirect input and
+ output streams.
+ * scripts/t/800_Dpkg_IPC.t: Non-regression tests for the module
+ above.
+ * scripts/Dpkg/Exit.pm: New module to register functions
+ that would be called if the process was interrupted by a signal.
+ Useful to cleanup temporary files if we're interrupted while doing
+ some heavy I/O operation (as dpkg-source can do).
+ * scripts/Dpkg/ErrorHandling.pm (info, errormsg): info() reports
+ informational notices on STDOUT and errormsg() displays an error
+ message on STDERR without dying. Use it only when you will die
+ later on but want to display all errors before doing so.
+ * scripts/dpkg-source.pl: Heavy rewrite/refactoring based on
+ all the modules listed below.
+ * man/dpkg-source.1: Update the manual page to document all the
+ source package formats and the associated options.
+
+ Dpkg::Source::* infrastructural modules:
+ * scripts/Dpkg/Source/Compressor.pm: Compress and uncompress a
+ stream of data.
+ * scripts/Dpkg/Source/CompressedFile.pm: Base class used to
+ provide on-the-fly compression and decompression of any file.
+ Dpkg::Source::Archive and Dpkg::Source::Patch inherit from it.
+ * scripts/Dpkg/Source/Archive.pm: Create and manipulate tar files.
+ * scripts/Dpkg/Source/Patch.pm: Create and manipulate patch files.
+ * scripts/Dpkg/Source/Functions.pm: Misc helper functions.
+ erasedir() removes recursively a directory in a safe manner.
+ fixperms() make sure the permissions of all files in a tree
+ are sane.
+
+ Source package formats:
+ * scripts/Dpkg/Source/Package.pm: Base class implementing the
+ functions common to all source package formats.
+ * scripts/Dpkg/Source/Package/V1_0.pm: Implement the actual
+ "Format: 1.0" source package format.
+ * scripts/Dpkg/Source/Package/V2_0.pm: Implement the wig&pen
+ format as specified in http://www.dpkg.org/dpkg/NewSourceFormat.
+ * scripts/Dpkg/Source/Package/V3_0/native.pm: Native source
+ packages (single tarball) that supports all compressions
+ methods. Compatible with "Format: 1.0" if gzip compression is
+ used.
+ * scripts/Dpkg/Source/Package/V3_0/quilt.pm: Next generation
+ source package format based on wig&pen. It supports multiple
+ .orig.tar files and all compressions schemes (gzip, bzip2, lzma).
+ It uses quilt to apply patches at unpack time and is able to add
+ a new patch at the end of the series if changes are present
+ at build-time.
+ * scripts/Dpkg/Source/Package/V3_0/bzr.pm: Experimental format
+ based on a bzr repository.
+ * scripts/Dpkg/Source/Package/V3_0/git.pm: Experimental format
+ based on a git repository.
+ * scripts/Dpkg/Source/Package/V3_0/custom.pm: Special purpose
+ format that can be used to create source packages with arbitrary
+ files. Useful for helper tools (like git-buildpackage) which can
+ generate source files by themselves.
+
2008-03-25 Raphael Hertzog <hertzog@debian.org>
* scripts/dpkg-shlibdeps.pl: Let the user configure the set of
activate. By default, do not activate the warning about useless
libraries at the binary level (instead the new warning above is activated
by default: it's less strict and more useful).
+ * Merge of the sourcev3 branch. dpkg-source has been heavily refactored to
+ make it easier to support multiple source package formats. Several new
+ source package formats have been added:
+ - the format "2.0" is the original wig&pen
+ - the format "3.0 (quilt)" is based on 2.0. It uses a tarball for the
+ debian directory and can thus include binary files. Binaries
+ outside of the debian directory can be also included if they
+ are listed in debian/source/include-binaries (and option
+ --include-binaries will generate this file automatically).
+ Closes: #4588, #4628
+ - thus it will also preserve timestamps on Debian-provided
+ documentation like README.Debian. Closes: #366555
+ - it handles an explicit series of patches and the patch can thus be
+ named without constraints. Patches can contain arbitrary
+ headers/comments between file chunks. Closes: #363018
+ - it ignores changes on a number of temporary and VCS-specific files
+ by default. Closes: #203792, #323909
+ - the patches in debian/patches can remove files. Closes: #12564
+ - the patches are applied at unpack time. Closes: #463048
+ - the formats "3.0 (quilt/native)" don't include VCS directories by
+ default. Closes: #435126
+ - the format "3.0 (custom)" can be used to create a source package
+ containing arbitrary files. It's useful for helper tools that can
+ generate the files by themselves in a more efficient way
+ (like all the *-buildpackage tools). Closes: #246918
+ - the formats "3.0 (git/bzr)" are experimental formats based
+ on corresponding VCS repositories.
+ * dpkg-source has a new --no-check option. It disables GPG check and
+ checksums checks. Closes: #220758
[ Frank Lichtenheld ]
* Add a warning in dpkg-buildpackage if the build-dependencies are not