SyncRequestProcess

Differences between revisions 9 and 46 (spanning 37 versions)
Revision 9 as of 2007-06-03 14:20:20
Size: 3501
Editor: p1033-ipbf37marunouchi
Comment: code format the requestsync code change
Revision 46 as of 2012-01-23 12:20:22
Size: 6149
Editor: mitya57
Comment: package should be in testing for lts
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
<<TableOfContents()>>
Line 3: Line 5:
Syncs (like uploads) '''cannot be reversed''' or undone. '''ALWAYS''' thoroughly check a package before asking for a sync. In particular, if there are Ubuntu changes in the current package, you '''must ensure the Ubuntu changes have been merged''' or are no longer relevant. Syncs (like uploads) '''cannot be reversed''' or undone. '''ALWAYS''' thoroughly check a package before asking for a sync. In particular, if there are Ubuntu changes in the current package, you '''must ensure the Ubuntu changes have been merged''' or are no longer relevant. If the Ubuntu changes are still relevant, the package should be [[UbuntuDevelopment/Merging|merged]] from Debian, not synced.
Line 5: Line 7:
After UpstreamVersionFreeze, syncs of a newer upstream version require a [:UbuntuDevelopment#Freezes:freeze exception]. Sometimes the sponsor requires a '''build log''' of the Debian package compiled in the Ubuntu release as proof that the new Debian version still compiles in Ubuntu. The build log has to be attached to the sync request.
Line 7: Line 9:
You should always sync a package rather than upload the unmodified source by hand, as it is safer and more accurate. If you know you will upload modified source immediately, modify the package and make an -<n>ubuntu<n> upload rather than requesting a sync. However, be sure to always use the exact same .orig.tar.gz as Debian (or whomever). After FeatureFreeze, syncs of a newer upstream version require a [[UbuntuDevelopment/ReleaseProcess#Freezes|freeze exception]].
Line 9: Line 11:
Packages can be synced from any Debian-format package archive, i.e. something with a Sources file. You should always sync a package rather than uploading the unmodified source by hand, as it is safer and more accurate. If you know you will upload modified source immediately, modify the package and make an -<n>ubuntu<n> upload rather than requesting a sync. However, be sure to always use the exact same .orig.tar.gz as Debian (or whomever).
Line 11: Line 13:
== Content of a sync request == After DebianImportFreeze, it's a good idea to review the Debian changes to make sure that the fixes will improve Ubuntu: some changes (maintainer change, new uploader, NMU acknowledgement with no additional fixes, etc.) may be better left for the next cycle.

If the version in Ubuntu is a -0ubuntu* version, i.e. it introduces a new upstream that Debian
doesn't have it is important to check that the md5sum of the .orig.tar.gz in the Ubuntu archive
matches the md5sum of the tarball in the Debian archive (or wherever the sync is from). If
it does not match then you risk problems where the source package cannot be unpacked, or where
it is not even valid in the first place. If it does not match then you will have to do a [[fakesync]].

An explicit sync is not necessary, when
 * we're before DebianImportFreeze (check ReleaseSchedule) and
 * our version of the package has no Ubuntu changes
 * and the Debian package is in sid (in testing for LTS releases of Ubuntu)

== For people with permission to upload the package to Ubuntu ==

Use the '''syncpackage''' tool from '''ubuntu-dev-tools''' to perform the sync ([[Manpage:syncpackage|manual page]]). This will ask Launchpad to copy the source package publication entry from its import of Debian. You can do this for any package you could upload directly to Ubuntu.

This process relies on the Debian source upload having been processed by the Debian archive, pushed to mirrors, and then imported by Launchpad, so it can take a little while for very recent uploads to be available (in general, though, this should take well under a day). The Debian publication history in Launchpad (`https://launchpad.net/debian/+source/SOURCE-PACKAGE-NAME/+publishinghistory`) shows when uploads have been imported.

Although you no longer need to file a sync request bug if you have direct upload permission (unless you need a [[UbuntuDevelopment/ReleaseProcess#Freezes|freeze exception]]), please look over the "Content of a sync request" section below and make sure you have a good reason for any Ubuntu changes you are dropping as a result of the sync.

== For people requiring sponsorship ==

=== Content of a sync request ===
Line 15: Line 40:
 * Information to put into the Summary:
Line 18: Line 44:
  * If there are Ubuntu changes apart from `debian/changelog` or if UpstreamVersionFreeze is in effect:  * Information to put into the Bug Description:
* If there are Ubuntu changes apart from `debian/changelog` or if FeatureFreeze is in effect:
Line 25: Line 52:
== Submitting your request == === Submitting your request ===
Line 27: Line 54:
To request a sync, [https://launchpad.net/ubuntu/+filebug file a bug in Launchpad] with the above information. Once the bug is complete and correct, if you are not an Ubuntu developer, subscribe (NOT assign) `ubuntu-main-sponsors` for packages in Main/Restricted and `ubuntu-universe-sponsors` for packages in Universe/Multiverse. They will review the request and subscribe `ubuntu-archive`. Ubuntu developers should subscribe (NOT assign) the `ubuntu-archive` team to the bug directly. This team will process the request and close the bug when it is complete. Please only subscribe ubuntu-archive to a bug once you have a '''clear action''' for the archive team to perform. Do not ask ubuntu-archive to help you decide what to do. To request a sync, [[https://bugs.launchpad.net/ubuntu/+filebug/?no-redirect|file a bug in Launchpad]] with the above information (the requestsync tool discussed below makes this simple). Once the bug is complete and correct, subscribe (NOT assign) `ubuntu-sponsors`. They will review the request and perform the sync for you using the '''syncpackage''' tool. (Previously syncs went through the Archive Administrators. This process is now deprecated.)
Line 29: Line 56:
Do not change the Status of the bug as package sponsors and the archive administrators use this field. Do track the status of the sync. You will be notified via bug mail when the package has been published.  Once you see (in Launchpad) that the updated packaged has been successfully built, if the archive admin has not, then you may mark the bug Status as 'Fix Released' (primarily for Universe/Multiverse). Do not change the Status of the bug or put it back to New as package sponsors use this field. Do track the status of the sync. You will be notified via bug mail when the package has been published.
Line 31: Line 58:
 * Martin Pitt has written a script to file sync requests which is available in the devscripts package. Warning: As the sync requester, your "hidden" Launchpad contact e-mail address will be publicly disclosed when the package is released (Bug:523093).
Line 33: Line 60:
Please note that if you are not in ~ubuntu-dev, you will need to change (in /usr/bin/requestsync): If you do not have a Launchpad account you can mail the [[https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel|ubuntu-devel]] mailing list (warning: moderated for non-developers).
Line 35: Line 62:
{{{report += ''' affects ubuntu/%s subscribe ubuntu-archive}}} === requestsync ===
Line 37: Line 64:
to There's a tool that automates the bureaucratic part of the sync request process, '''requestsync''' in the [[https://launchpad.net/ubuntu/+source/ubuntu-dev-tools|ubuntu-dev-tools]] package.
Line 39: Line 66:
{{{report += ''' affects ubuntu/%s subscribe ubuntu-universe-sponsors}}} '''requestsync''' looks at the versions of the source package in Debian and Ubuntu, prompts for an explanation of why the Ubuntu changes (if there are any) should be dropped, downloads the new Debian changelog entries, and files the bug in Launchpad.
Line 41: Line 68:
as you need a sponsor for sync requests, else the archive admins will not process the request. For documentation of how to call '''requestsync''', see its [[Manpage:requestsync|manual page]].
Line 43: Line 70:
 * The list of outstanding archive administration requests can be found here: https://launchpad.net/~ubuntu-archive/+subscribedbugs === Sync bug list ===

Before submitting a sync request, please check that a similar request has not been filed already. You can see all bugs to which the ubuntu-sponsors have been subscribed [[https://bugs.launchpad.net/~ubuntu-sponsors/+subscribedbugs|here]].

----
CategoryProcess

Before requesting a sync

Syncs (like uploads) cannot be reversed or undone. ALWAYS thoroughly check a package before asking for a sync. In particular, if there are Ubuntu changes in the current package, you must ensure the Ubuntu changes have been merged or are no longer relevant. If the Ubuntu changes are still relevant, the package should be merged from Debian, not synced.

Sometimes the sponsor requires a build log of the Debian package compiled in the Ubuntu release as proof that the new Debian version still compiles in Ubuntu. The build log has to be attached to the sync request.

After FeatureFreeze, syncs of a newer upstream version require a freeze exception.

You should always sync a package rather than uploading the unmodified source by hand, as it is safer and more accurate. If you know you will upload modified source immediately, modify the package and make an -<n>ubuntu<n> upload rather than requesting a sync. However, be sure to always use the exact same .orig.tar.gz as Debian (or whomever).

After DebianImportFreeze, it's a good idea to review the Debian changes to make sure that the fixes will improve Ubuntu: some changes (maintainer change, new uploader, NMU acknowledgement with no additional fixes, etc.) may be better left for the next cycle.

If the version in Ubuntu is a -0ubuntu* version, i.e. it introduces a new upstream that Debian doesn't have it is important to check that the md5sum of the .orig.tar.gz in the Ubuntu archive matches the md5sum of the tarball in the Debian archive (or wherever the sync is from). If it does not match then you risk problems where the source package cannot be unpacked, or where it is not even valid in the first place. If it does not match then you will have to do a fakesync.

An explicit sync is not necessary, when

  • we're before DebianImportFreeze (check ReleaseSchedule) and

  • our version of the package has no Ubuntu changes
  • and the Debian package is in sid (in testing for LTS releases of Ubuntu)

For people with permission to upload the package to Ubuntu

Use the syncpackage tool from ubuntu-dev-tools to perform the sync (manual page). This will ask Launchpad to copy the source package publication entry from its import of Debian. You can do this for any package you could upload directly to Ubuntu.

This process relies on the Debian source upload having been processed by the Debian archive, pushed to mirrors, and then imported by Launchpad, so it can take a little while for very recent uploads to be available (in general, though, this should take well under a day). The Debian publication history in Launchpad (https://launchpad.net/debian/+source/SOURCE-PACKAGE-NAME/+publishinghistory) shows when uploads have been imported.

Although you no longer need to file a sync request bug if you have direct upload permission (unless you need a freeze exception), please look over the "Content of a sync request" section below and make sure you have a good reason for any Ubuntu changes you are dropping as a result of the sync.

For people requiring sponsorship

Content of a sync request

When requesting a 'sync', please include the following information:

  • Information to put into the Summary:
    • Source package name
    • Source package version number to sync
    • Where to sync from (e.g. 'Debian sid main', 'Debian experimental non-free')
  • Information to put into the Bug Description:
    • If there are Ubuntu changes apart from debian/changelog or if FeatureFreeze is in effect:

      • A copy of the entries from debian/changelog corresponding to the changes relative to the current version in Ubuntu
    • If there are Ubuntu changes:
      • a description of each of the Ubuntu changes (a bullet point list is fine, but copies of debian/changelog aren't)
      • a brief explanation of why each one may be dropped (e.g., it's been merged into Debian, is no longer appropriate, etc.)
      • an explicit confirmation that the Ubuntu changes should be overridden

Submitting your request

To request a sync, file a bug in Launchpad with the above information (the requestsync tool discussed below makes this simple). Once the bug is complete and correct, subscribe (NOT assign) ubuntu-sponsors. They will review the request and perform the sync for you using the syncpackage tool. (Previously syncs went through the Archive Administrators. This process is now deprecated.)

Do not change the Status of the bug or put it back to New as package sponsors use this field. Do track the status of the sync. You will be notified via bug mail when the package has been published.

Warning: As the sync requester, your "hidden" Launchpad contact e-mail address will be publicly disclosed when the package is released (523093).

If you do not have a Launchpad account you can mail the ubuntu-devel mailing list (warning: moderated for non-developers).

requestsync

There's a tool that automates the bureaucratic part of the sync request process, requestsync in the ubuntu-dev-tools package.

requestsync looks at the versions of the source package in Debian and Ubuntu, prompts for an explanation of why the Ubuntu changes (if there are any) should be dropped, downloads the new Debian changelog entries, and files the bug in Launchpad.

For documentation of how to call requestsync, see its manual page.

Sync bug list

Before submitting a sync request, please check that a similar request has not been filed already. You can see all bugs to which the ubuntu-sponsors have been subscribed here.


CategoryProcess

SyncRequestProcess (last edited 2012-01-23 12:20:22 by mitya57)