{"action":"closed","number":627,"pull_request":{"url":"https://api.github.com/repos/swiftmailer/swiftmailer/pulls/627","id":38725913,"html_url":"https://github.com/swiftmailer/swiftmailer/pull/627","diff_url":"https://github.com/swiftmailer/swiftmailer/pull/627.diff","patch_url":"https://github.com/swiftmailer/swiftmailer/pull/627.patch","issue_url":"https://api.github.com/repos/swiftmailer/swiftmailer/issues/627","number":627,"state":"closed","locked":false,"title":"Only add soft line break when necessary","user":{"login":"c960657","id":111346,"avatar_url":"https://avatars.githubusercontent.com/u/111346?v=3","gravatar_id":"","url":"https://api.github.com/users/c960657","html_url":"https://github.com/c960657","followers_url":"https://api.github.com/users/c960657/followers","following_url":"https://api.github.com/users/c960657/following{/other_user}","gists_url":"https://api.github.com/users/c960657/gists{/gist_id}","starred_url":"https://api.github.com/users/c960657/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/c960657/subscriptions","organizations_url":"https://api.github.com/users/c960657/orgs","repos_url":"https://api.github.com/users/c960657/repos","events_url":"https://api.github.com/users/c960657/events{/privacy}","received_events_url":"https://api.github.com/users/c960657/received_events","type":"User","site_admin":false},"body":"In quoted-printable encoding, the encoding lines should not exceed 76 characters. If there are longer lines in the source text, a soft line break should be added.\r\n\r\nIt is only necessary to add soft line breaks when a line in the source exceeds 76 characters. However, Swift_Encoder_QpEncoder and Swift_Mime_ContentEncoder_QpContentEncoder add soft line breaks every 76 character, ignoring any line breaks already present in the source.\r\n\r\nThis behaviour does not violate the spec, but it makes the encoded text harder to read with the human eye. Of course most people don't do this, but it is annoying when debugging, or when using a very primitive mail reader. One of the design goals of quoted-printable is to make the encoded text human-readable (unlike base64 encoding).\r\n\r\nWith this PR, the line length counter is reset every time a line break is encountered in the source text.\r\n\r\nThe change is implemented symmetrically for QpEncoder and QpContentEncoder. However, I did not add a change to QpContentEncoderAcceptanceTest similar to that made to QpEncoderAcceptanceTest,   because that revealed another bug, #620.","created_at":"2015-06-28T14:02:40Z","updated_at":"2015-06-28T17:20:57Z","closed_at":"2015-06-28T17:20:57Z","merged_at":"2015-06-28T17:20:57Z","merge_commit_sha":"967601363727ea2f18faac5c466ec5d83ab70dd5","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/swiftmailer/swiftmailer/pulls/627/commits","review_comments_url":"https://api.github.com/repos/swiftmailer/swiftmailer/pulls/627/comments","review_comment_url":"https://api.github.com/repos/swiftmailer/swiftmailer/pulls/comments{/number}","comments_url":"https://api.github.com/repos/swiftmailer/swiftmailer/issues/627/comments","statuses_url":"https://api.github.com/repos/swiftmailer/swiftmailer/statuses/6fe0e138100bf7342af8b75f9d9d7c50ad7ff631","head":{"label":"c960657:qp-too-many-soft-newlines-5.x","ref":"qp-too-many-soft-newlines-5.x","sha":"6fe0e138100bf7342af8b75f9d9d7c50ad7ff631","user":{"login":"c960657","id":111346,"avatar_url":"https://avatars.githubusercontent.com/u/111346?v=3","gravatar_id":"","url":"https://api.github.com/users/c960657","html_url":"https://github.com/c960657","followers_url":"https://api.github.com/users/c960657/followers","following_url":"https://api.github.com/users/c960657/following{/other_user}","gists_url":"https://api.github.com/users/c960657/gists{/gist_id}","starred_url":"https://api.github.com/users/c960657/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/c960657/subscriptions","organizations_url":"https://api.github.com/users/c960657/orgs","repos_url":"https://api.github.com/users/c960657/repos","events_url":"https://api.github.com/users/c960657/events{/privacy}","received_events_url":"https://api.github.com/users/c960657/received_events","type":"User","site_admin":false},"repo":{"id":37999619,"name":"swiftmailer","full_name":"c960657/swiftmailer","owner":{"login":"c960657","id":111346,"avatar_url":"https://avatars.githubusercontent.com/u/111346?v=3","gravatar_id":"","url":"https://api.github.com/users/c960657","html_url":"https://github.com/c960657","followers_url":"https://api.github.com/users/c960657/followers","following_url":"https://api.github.com/users/c960657/following{/other_user}","gists_url":"https://api.github.com/users/c960657/gists{/gist_id}","starred_url":"https://api.github.com/users/c960657/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/c960657/subscriptions","organizations_url":"https://api.github.com/users/c960657/orgs","repos_url":"https://api.github.com/users/c960657/repos","events_url":"https://api.github.com/users/c960657/events{/privacy}","received_events_url":"https://api.github.com/users/c960657/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/c960657/swiftmailer","description":"Comprehensive mailing tools for PHP","fork":true,"url":"https://api.github.com/repos/c960657/swiftmailer","forks_url":"https://api.github.com/repos/c960657/swiftmailer/forks","keys_url":"https://api.github.com/repos/c960657/swiftmailer/keys{/key_id}","collaborators_url":"https://api.github.com/repos/c960657/swiftmailer/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/c960657/swiftmailer/teams","hooks_url":"https://api.github.com/repos/c960657/swiftmailer/hooks","issue_events_url":"https://api.github.com/repos/c960657/swiftmailer/issues/events{/number}","events_url":"https://api.github.com/repos/c960657/swiftmailer/events","assignees_url":"https://api.github.com/repos/c960657/swiftmailer/assignees{/user}","branches_url":"https://api.github.com/repos/c960657/swiftmailer/branches{/branch}","tags_url":"https://api.github.com/repos/c960657/swiftmailer/tags","blobs_url":"https://api.github.com/repos/c960657/swiftmailer/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/c960657/swiftmailer/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/c960657/swiftmailer/git/refs{/sha}","trees_url":"https://api.github.com/repos/c960657/swiftmailer/git/trees{/sha}","statuses_url":"https://api.github.com/repos/c960657/swiftmailer/statuses/{sha}","languages_url":"https://api.github.com/repos/c960657/swiftmailer/languages","stargazers_url":"https://api.github.com/repos/c960657/swiftmailer/stargazers","contributors_url":"https://api.github.com/repos/c960657/swiftmailer/contributors","subscribers_url":"https://api.github.com/repos/c960657/swiftmailer/subscribers","subscription_url":"https://api.github.com/repos/c960657/swiftmailer/subscription","commits_url":"https://api.github.com/repos/c960657/swiftmailer/commits{/sha}","git_commits_url":"https://api.github.com/repos/c960657/swiftmailer/git/commits{/sha}","comments_url":"https://api.github.com/repos/c960657/swiftmailer/comments{/number}","issue_comment_url":"https://api.github.com/repos/c960657/swiftmailer/issues/comments{/number}","contents_url":"https://api.github.com/repos/c960657/swiftmailer/contents/{+path}","compare_url":"https://api.github.com/repos/c960657/swiftmailer/compare/{base}...{head}","merges_url":"https://api.github.com/repos/c960657/swiftmailer/merges","archive_url":"https://api.github.com/repos/c960657/swiftmailer/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/c960657/swiftmailer/downloads","issues_url":"https://api.github.com/repos/c960657/swiftmailer/issues{/number}","pulls_url":"https://api.github.com/repos/c960657/swiftmailer/pulls{/number}","milestones_url":"https://api.github.com/repos/c960657/swiftmailer/milestones{/number}","notifications_url":"https://api.github.com/repos/c960657/swiftmailer/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/c960657/swiftmailer/labels{/name}","releases_url":"https://api.github.com/repos/c960657/swiftmailer/releases{/id}","created_at":"2015-06-24T17:24:41Z","updated_at":"2015-06-24T17:24:42Z","pushed_at":"2015-06-28T17:18:06Z","git_url":"git://github.com/c960657/swiftmailer.git","ssh_url":"git@github.com:c960657/swiftmailer.git","clone_url":"https://github.com/c960657/swiftmailer.git","svn_url":"https://github.com/c960657/swiftmailer","homepage":"http://swiftmailer.org/","size":8996,"stargazers_count":0,"watchers_count":0,"language":"PHP","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"5.x"}},"base":{"label":"swiftmailer:5.x","ref":"5.x","sha":"b86333344fe5dc5b649bb0ea694820f5ebeeed5c","user":{"login":"swiftmailer","id":41528,"avatar_url":"https://avatars.githubusercontent.com/u/41528?v=3","gravatar_id":"","url":"https://api.github.com/users/swiftmailer","html_url":"https://github.com/swiftmailer","followers_url":"https://api.github.com/users/swiftmailer/followers","following_url":"https://api.github.com/users/swiftmailer/following{/other_user}","gists_url":"https://api.github.com/users/swiftmailer/gists{/gist_id}","starred_url":"https://api.github.com/users/swiftmailer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/swiftmailer/subscriptions","organizations_url":"https://api.github.com/users/swiftmailer/orgs","repos_url":"https://api.github.com/users/swiftmailer/repos","events_url":"https://api.github.com/users/swiftmailer/events{/privacy}","received_events_url":"https://api.github.com/users/swiftmailer/received_events","type":"Organization","site_admin":false},"repo":{"id":93580,"name":"swiftmailer","full_name":"swiftmailer/swiftmailer","owner":{"login":"swiftmailer","id":41528,"avatar_url":"https://avatars.githubusercontent.com/u/41528?v=3","gravatar_id":"","url":"https://api.github.com/users/swiftmailer","html_url":"https://github.com/swiftmailer","followers_url":"https://api.github.com/users/swiftmailer/followers","following_url":"https://api.github.com/users/swiftmailer/following{/other_user}","gists_url":"https://api.github.com/users/swiftmailer/gists{/gist_id}","starred_url":"https://api.github.com/users/swiftmailer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/swiftmailer/subscriptions","organizations_url":"https://api.github.com/users/swiftmailer/orgs","repos_url":"https://api.github.com/users/swiftmailer/repos","events_url":"https://api.github.com/users/swiftmailer/events{/privacy}","received_events_url":"https://api.github.com/users/swiftmailer/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/swiftmailer/swiftmailer","description":"Comprehensive mailing tools for PHP","fork":false,"url":"https://api.github.com/repos/swiftmailer/swiftmailer","forks_url":"https://api.github.com/repos/swiftmailer/swiftmailer/forks","keys_url":"https://api.github.com/repos/swiftmailer/swiftmailer/keys{/key_id}","collaborators_url":"https://api.github.com/repos/swiftmailer/swiftmailer/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/swiftmailer/swiftmailer/teams","hooks_url":"https://api.github.com/repos/swiftmailer/swiftmailer/hooks","issue_events_url":"https://api.github.com/repos/swiftmailer/swiftmailer/issues/events{/number}","events_url":"https://api.github.com/repos/swiftmailer/swiftmailer/events","assignees_url":"https://api.github.com/repos/swiftmailer/swiftmailer/assignees{/user}","branches_url":"https://api.github.com/repos/swiftmailer/swiftmailer/branches{/branch}","tags_url":"https://api.github.com/repos/swiftmailer/swiftmailer/tags","blobs_url":"https://api.github.com/repos/swiftmailer/swiftmailer/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/swiftmailer/swiftmailer/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/swiftmailer/swiftmailer/git/refs{/sha}","trees_url":"https://api.github.com/repos/swiftmailer/swiftmailer/git/trees{/sha}","statuses_url":"https://api.github.com/repos/swiftmailer/swiftmailer/statuses/{sha}","languages_url":"https://api.github.com/repos/swiftmailer/swiftmailer/languages","stargazers_url":"https://api.github.com/repos/swiftmailer/swiftmailer/stargazers","contributors_url":"https://api.github.com/repos/swiftmailer/swiftmailer/contributors","subscribers_url":"https://api.github.com/repos/swiftmailer/swiftmailer/subscribers","subscription_url":"https://api.github.com/repos/swiftmailer/swiftmailer/subscription","commits_url":"https://api.github.com/repos/swiftmailer/swiftmailer/commits{/sha}","git_commits_url":"https://api.github.com/repos/swiftmailer/swiftmailer/git/commits{/sha}","comments_url":"https://api.github.com/repos/swiftmailer/swiftmailer/comments{/number}","issue_comment_url":"https://api.github.com/repos/swiftmailer/swiftmailer/issues/comments{/number}","contents_url":"https://api.github.com/repos/swiftmailer/swiftmailer/contents/{+path}","compare_url":"https://api.github.com/repos/swiftmailer/swiftmailer/compare/{base}...{head}","merges_url":"https://api.github.com/repos/swiftmailer/swiftmailer/merges","archive_url":"https://api.github.com/repos/swiftmailer/swiftmailer/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/swiftmailer/swiftmailer/downloads","issues_url":"https://api.github.com/repos/swiftmailer/swiftmailer/issues{/number}","pulls_url":"https://api.github.com/repos/swiftmailer/swiftmailer/pulls{/number}","milestones_url":"https://api.github.com/repos/swiftmailer/swiftmailer/milestones{/number}","notifications_url":"https://api.github.com/repos/swiftmailer/swiftmailer/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/swiftmailer/swiftmailer/labels{/name}","releases_url":"https://api.github.com/repos/swiftmailer/swiftmailer/releases{/id}","created_at":"2008-12-19T08:31:03Z","updated_at":"2015-06-28T03:10:18Z","pushed_at":"2015-06-28T17:20:57Z","git_url":"git://github.com/swiftmailer/swiftmailer.git","ssh_url":"git@github.com:swiftmailer/swiftmailer.git","clone_url":"https://github.com/swiftmailer/swiftmailer.git","svn_url":"https://github.com/swiftmailer/swiftmailer","homepage":"http://swiftmailer.org/","size":74322,"stargazers_count":1356,"watchers_count":1356,"language":"PHP","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":386,"mirror_url":null,"open_issues_count":253,"forks":386,"open_issues":253,"watchers":1356,"default_branch":"5.x"}},"_links":{"self":{"href":"https://api.github.com/repos/swiftmailer/swiftmailer/pulls/627"},"html":{"href":"https://github.com/swiftmailer/swiftmailer/pull/627"},"issue":{"href":"https://api.github.com/repos/swiftmailer/swiftmailer/issues/627"},"comments":{"href":"https://api.github.com/repos/swiftmailer/swiftmailer/issues/627/comments"},"review_comments":{"href":"https://api.github.com/repos/swiftmailer/swiftmailer/pulls/627/comments"},"review_comment":{"href":"https://api.github.com/repos/swiftmailer/swiftmailer/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/swiftmailer/swiftmailer/pulls/627/commits"},"statuses":{"href":"https://api.github.com/repos/swiftmailer/swiftmailer/statuses/6fe0e138100bf7342af8b75f9d9d7c50ad7ff631"}},"merged":true,"mergeable":null,"mergeable_state":"unknown","merged_by":{"login":"fabpot","id":47313,"avatar_url":"https://avatars.githubusercontent.com/u/47313?v=3","gravatar_id":"","url":"https://api.github.com/users/fabpot","html_url":"https://github.com/fabpot","followers_url":"https://api.github.com/users/fabpot/followers","following_url":"https://api.github.com/users/fabpot/following{/other_user}","gists_url":"https://api.github.com/users/fabpot/gists{/gist_id}","starred_url":"https://api.github.com/users/fabpot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fabpot/subscriptions","organizations_url":"https://api.github.com/users/fabpot/orgs","repos_url":"https://api.github.com/users/fabpot/repos","events_url":"https://api.github.com/users/fabpot/events{/privacy}","received_events_url":"https://api.github.com/users/fabpot/received_events","type":"User","site_admin":false},"comments":1,"review_comments":0,"commits":1,"additions":75,"deletions":6,"changed_files":5}}