{"id":880,"date":"2007-08-13T10:57:35","date_gmt":"2007-08-13T00:57:35","guid":{"rendered":"http:\/\/www.flamingspork.com\/blog\/2007\/08\/13\/applying-bk-produced-patches-with-new-files-using-patch\/"},"modified":"2007-08-13T10:57:35","modified_gmt":"2007-08-13T00:57:35","slug":"applying-bk-produced-patches-with-new-files-using-patch","status":"publish","type":"post","link":"https:\/\/www.flamingspork.com\/blog\/2007\/08\/13\/applying-bk-produced-patches-with-new-files-using-patch\/","title":{"rendered":"Applying BK produced patches with new files using patch&#8230;"},"content":{"rendered":"<p>So, if anybody is crazy enough to grab patches from the commits@lists.mysql.com list and try and use them&#8230; you may have run into this problem (which I do every few weeks\/months): new files aren&#8217;t created. That&#8217;s right kids, BitKeeper (or at least the post-commit hook that mails out the patches) produces patch files where new files are in a completely different format than GNU patch expects. Not even BK can import these patches (bk import -temail or -tpatch just don&#8217;t do it).<\/p>\n<p>So&#8230; I present this script &#8211; <a href=\"\/junkcode\/unfuck_bk_patches.pl\">unfuck_bk_patches.pl<\/a> which once run across a patch that includes new files, allows you to apply it using patch (or, for example, quilt).<\/p>\n<p>I release it under the &#8220;sworn at software license&#8221;&#8230; which means you&#8217;re allowed to do anything you want with it as long as at some point you have sworn at computer software for being crappy.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>So, if anybody is crazy enough to grab patches from the commits@lists.mysql.com list and try and use them&#8230; you may have run into this problem (which I do every few weeks\/months): new files aren&#8217;t created. That&#8217;s right kids, BitKeeper (or &hellip; <a href=\"https:\/\/www.flamingspork.com\/blog\/2007\/08\/13\/applying-bk-produced-patches-with-new-files-using-patch\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[14],"tags":[],"class_list":["post-880","post","type-post","status-publish","format-standard","hentry","category-mysql"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p5a6n8-ec","jetpack-related-posts":[{"id":914,"url":"https:\/\/www.flamingspork.com\/blog\/2007\/11\/09\/mysql-5122-stew2\/","url_meta":{"origin":880,"position":0},"title":"mysql-5.1.22-stew2","author":"Stewart Smith","date":"2007-11-09","format":false,"excerpt":"New: Updated NDB Compressed LCP and BACKUP patches (now with O_DIRECT support) InnoDB patch for Windows that should give ~5x improvement on commits\/sec (Bug31876) Everything in current telco-6.3 tree (ndb ~6.3.5) Lots of NDB improvements and new features over regular 5.1. WL3686 Remove read before update WL2680 NDB Batched Update\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1016,"url":"https:\/\/www.flamingspork.com\/blog\/2008\/02\/22\/bzr-loom-a-bzr-plugin-with-quilt-like-functionality\/","url_meta":{"origin":880,"position":1},"title":"bzr-loom &#8211; a bzr plugin with quilt like functionality","author":"Stewart Smith","date":"2008-02-22","format":false,"excerpt":"A bzr plugin to assist in developing focused patches. in Launchpad I use quilt a lot for development. Currently, If I had to choose between BK and quilt - I'd choose quilt. I use bzr in other development projects like MemberDB. I use git as a frontend for SVN (it\u2026","rel":"","context":"In &quot;MemberDB&quot;","block_context":{"text":"MemberDB","link":"https:\/\/www.flamingspork.com\/blog\/category\/memberdb\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":151,"url":"https:\/\/www.flamingspork.com\/blog\/2003\/09\/04\/new-2421-ben2-xfs-patch\/","url_meta":{"origin":880,"position":2},"title":"new 2.4.21-ben2-xfs patch","author":"Stewart Smith","date":"2003-09-04","format":false,"excerpt":"patch-2.4.21-ben2-xfs.recent.bz2 Apply in the usual way, this one is against 2.4.21 stock, so it includes both BenH patches and the XFS patches. The XFS patches are: SGI XFS snapshot-2.4.21-2003-06-23_01:45_UTC as opposed to my last effort with XFS 1.1 (i think). This patch is pretty similar (if not identical) to what\u2026","rel":"","context":"In &quot;linux-kernel&quot;","block_context":{"text":"linux-kernel","link":"https:\/\/www.flamingspork.com\/blog\/category\/linux-kernel\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":4397,"url":"https:\/\/www.flamingspork.com\/blog\/2018\/08\/22\/pwnm-sync-synchronizing-patchwork-and-notmuch\/","url_meta":{"origin":880,"position":3},"title":"pwnm-sync: Synchronizing Patchwork and Notmuch","author":"Stewart Smith","date":"2018-08-22","format":false,"excerpt":"One of the core bits of infrastructure I use as a maintainer is Patchwork (I wrote about making it faster recently). Patchwork tracks patches sent to a mailing list, allowing me as a maintainer to track the state of them (New|Under Review|Changes Requested|Accepted etc), combine them into patch bundles, look\u2026","rel":"","context":"In &quot;General&quot;","block_context":{"text":"General","link":"https:\/\/www.flamingspork.com\/blog\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.flamingspork.com\/blog\/wp-content\/uploads\/2018\/08\/Screenshot-from-2018-08-22-17-28-25-1.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":2083,"url":"https:\/\/www.flamingspork.com\/blog\/2010\/07\/22\/a-tale-of-a-bug\/","url_meta":{"origin":880,"position":4},"title":"A tale of a bug&#8230;","author":"Stewart Smith","date":"2010-07-22","format":false,"excerpt":"So I sometimes get asked if we funnel back bug reports or patches back to MySQL from Drizzle. Also, MariaDB adds some interest here as they are a lot closer (and indeed compatible with) to MySQL. With Drizzle, we have deviated really quite heavily from the MySQL codebase. There are\u2026","rel":"","context":"In &quot;code&quot;","block_context":{"text":"code","link":"https:\/\/www.flamingspork.com\/blog\/category\/code\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3752,"url":"https:\/\/www.flamingspork.com\/blog\/2014\/06\/03\/mysql-5-6-on-power-patch-available\/","url_meta":{"origin":880,"position":5},"title":"MySQL 5.6 on POWER (patch available)","author":"Stewart Smith","date":"2014-06-03","format":false,"excerpt":"The following sentence is brought to you by IBM Legal. The postings on this site are my own and don't necessarily represent IBM's positions, strategies or opinions. Okay, now that is out of the way.... If you're the kind of person who follows the MySQL bugs database closely or subscribes\u2026","rel":"","context":"In &quot;code&quot;","block_context":{"text":"code","link":"https:\/\/www.flamingspork.com\/blog\/category\/code\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/880","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/comments?post=880"}],"version-history":[{"count":0,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/880\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/media?parent=880"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/categories?post=880"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/tags?post=880"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}