Native quoted printable content encoder
Adding doc hint
merged branch InterNations/native-quoted-printable-encode (PR #217)

Commits
-------

ed0312b Adding doc hint
449117d Native quoted printable content encoder

Discussion
----------

Use quoted_printable_encode() if available for performance reasons

If we have a PHP version that offers quoted_printable_encode() we should it as it is much faster.

(Pull request courtesy of @maxbeutel and myself)

---------------------------------------------------------------------------

by fabpot at 2012-06-25T19:37:32Z

It breaks a bunch of tests.

---------------------------------------------------------------------------

by lstrojny at 2012-06-25T19:49:29Z

Would it maybe be better to have NativeQpEncoder and leave the userland implementation untouched?

---------------------------------------------------------------------------

by fabpot at 2012-06-26T05:06:13Z

This is probably a better idea.

---------------------------------------------------------------------------

by lstrojny at 2012-06-26T09:36:20Z

OK, here is a standalone implementation. We measured 30x (down from 100 mails in 30 seconds to 100 mails in 1 second) more throughput with the native function compared to the userland implementation. And here is how to use it (`swift_init.php`):

```php
<?php
...
Swift_DependencyContainer::getInstance()
    ->register('mime.qpcontentencoder')
    ->asAliasOf('mime.nativeqpcontentencoder');

```

---------------------------------------------------------------------------

by lstrojny at 2012-06-30T20:10:59Z

From my POV this pull request is ready to be merged. Comments?

---------------------------------------------------------------------------

by fabpot at 2012-06-30T20:17:48Z

Can you squash you commits? Thanks.

---------------------------------------------------------------------------

by lstrojny at 2012-06-30T20:25:32Z

Done

---------------------------------------------------------------------------

by fabpot at 2012-06-30T20:25:42Z

Can you also add a note somewhere in the documentation (probably in `including-the-files.rst`) that when using PHP >= 5.3.0, this is the recommended class to use (with a snippet of code on how to configure it)?

---------------------------------------------------------------------------

by lukaswoj at 2012-07-01T03:50:08Z

Hi there
I'm so happy to find out this PR. Looks like really fresh topic.
Thank you Lars

I was just struggling with the same problem of high CPU usage when sending many emails in bulk.
In my case the problem came from the fact that emails needs to be dispatched at given moment in time and the amount of them makes whole process taking too long.
Since I knew in advance what will be the content of each email - I even had the idea to asynchronously preencode body of the messages and later pass already encoded string.
But now this does not matter anymore.

Great job!

Thanks again
Cheers

---------------------------------------------------------------------------

by lstrojny at 2012-07-01T13:37:38Z

Documentation added. @lukaswoj glad we could help you.
tweaked previous merge
[pear_package_create]

Changes the php path to use the environment instead as php isn't always in this location which can cause issues with certain build systems that scan files for additional dependencies in this way. (RPMs for example)
merged branch catchamonkey/patch-1 (PR #224)

Commits
-------

e364db2 [pear_package_create]

Discussion
----------

[pear_package_create] PHP path fix

Changes the php path to use the environment instead as php isn't always in this location which can cause issues with certain build systems that scan files for additional dependencies in this way. (RPMs for example)
changed CS to PSR-1/2 (closes #226)
Fix docblock typo
merged branch adrienbrault/patch-1 (PR #228)

Commits
-------

bb02767 Fix docblock typo

Discussion
----------

Fix docblock typo

Hey
Fix Cannot redeclare _swiftmailer_init()
Fix Cannot redeclare _swiftmailer_init()
Fix type hint, setEncryption accept string parameter
merged branch ddeboer/fix-cannot-redeclare (PR #229)

Commits
-------

218e99e Fix Cannot redeclare _swiftmailer_init()
6ac428e Fix Cannot redeclare _swiftmailer_init()

Discussion
----------

Fix Cannot redeclare _swiftmailer_init()

See also https://github.com/symfony/SwiftmailerBundle/issues/16.

---------------------------------------------------------------------------

by michelsalib at 2012-07-10T14:39:25Z

:+1: I am having a bunch of issue with it currently.
added missing entry in CHANGES
merged branch Adel-E/patch-1 (PR #230)

Commits
-------

ffb18be Fix type hint, setEncryption accept string parameter

Discussion
----------

Fix phpdocs type hint, setEncryption accept string parameter
updated CHANGES
prepared the 4.2.1 release
bumped version to 4.2.2-DEV
Added RFC linked to: DK, DKIM, OpenPGP (unable to understand S/Mime, i'll try again later)

Next Time, i'll learn to <ctrl>+s

Change Done on HeaderSet (added ListAll)
And changed way to merge multiple headers with the same name

Started DKIM work, i'll need to expose various stuff

So, the DKIM Infrastructure should be alright...

(Or it's just a joke and it will wipe your hd)

Yipeee, DKIM Signer theorically Done.

Nope, just a joke.

Should be OK this time, the new protected functions are not moved with protected functions for now to ease the merge

Done with DKIM Needs: test-cases

Corrected CodeStyle Added License

Various changes (i know, should be in small commits, but they are pretty grouped here)

[DKIM] Test Cases + Debug

Added Some test Cases to track major regressions

Keys will NEVER BE used online and should not be used

[CLEANUP] Delete old keys i was not even aware were still there

Deleted Dummy Key Cache to only commit usefull files

[DKIM] Corrected a bug the SHA256-Signing was using sha1

[DKIM] - Debug Removed trailing space in signature, Bug Fix in header order
This allows swiftmailer to pass simple/simple canonicalisation.
The header order will render the dkim less error prone.

[DKIM] Debug on trailing Line Feed for signature

+ Added DomainKey-Signature Header Ordering

[DomainKeys] Initial Checkin

Added DomainKey-Signer

[TYPOS] Updated Doc to hide copy/paste

Erased last occurences of DKIM
added S/MIME Signer and Encryption support