<commit_before># Upgrades

## 0.12 to 0.13

* [omnipay-bridge] Omnipay bridge is not shipped with `payum\payum` code any more. Install it separatly by requiring `payum/omnipay-bridge` package.
* [paypal-pro] Remove `PaymentDetails` class.
* [paypal-pro] Remove `Request` and `Response` classes. Use ones from Buzz.
* [paypal-pro] Remove `trxtype` option from api.
* [paypal-pro] Rename `Api::doPayment` to `Api::doSale`. Change the first argument now it is array and the method returns array too.
* [be2bill] `Api` constructor arguments order was changed. Second argument `options` is now first, and the client now is second and optional.
* [paypal-ipn] `Api` constructor arguments order was changed. Second argument `options` is now first, and the client now is second and optional.
* [paypal-pro] `Api` constructor arguments order was changed. Second argument `options` is now first, and the client now is second and optional.
* [payment] Method `PaymentInterface::addApi` was removed from interface, still available in `Payment` class.
* [payment] Method `PaymentInterface::addAction` was removed from interface, still available in `Payment` class.
* [payment] Method `PaymentInterface::addExtension` was removed from interface, still available in `Payment` class.
* [storage] Method `StorageInterface::createModel` was renamed to `create`.
* [storage] Method `StorageInterface::supportModel` was renamed to `support`.
* [storage] Method `StorageInterface::updateModel` was renamed to `update`.
* [storage] Method `StorageInterface::deleteModel` was renamed to `delete`.
* [storage] Method `StorageInterface::findModelById` was renamed to `find`.
* [storage] Method `StorageInterface::getIdentificator` was renamed to `identify`.
* [storage] Method `StorageInterface::findByIdentificator` was removed. Use `find` method instead.
* [storage] Class `Identificator` was deprecated. Use `Identity` instead.

## 0.11 to 0.12

* [refund] `createRefundToken` was added to `AbstractGenericTokenFactory`.
* [request] `BaseModelAware` request was renamed to `Generic`.
* [request] `SecuredInterface` allows to return a null on `getToken` method call.
* [request] `SecuredAuthorize` request was removed. The removed logic is now in `Authorize` request, so use it.
* [request] `SecuredNotify` request was removed. The removed logic is now in `Notify` request, so use it.
* [request] `SecuredCapture` request was removed. The removed logic is now in `Capture` request, so use it.
* [request] `Notify` request does not contains `notification` array any more. You have to execute `$this->payment->execute($httpRequest = new GetHttpRequest);`.
* [request] `GetHumanStatus::STATUS_SUCCESS` was removed. Use `STATUS_CAPTURED` from the same class.
* [request] `GetHumanStatus::markSuccess` method was removed. Use `markCaptured` from the same class.
* [request] `GetHumanStatus::isSuccess` method was removed. Use `isCaptured` from the same class.
* [request] `GetBinaryStatus::STATUS_SUCCESS` was removed. Use `STATUS_CAPTURED` from the same class.
* [request] `GetBinaryStatus::markSuccess` method was removed. Use `markCaptured` from the same class.
* [request] `GetBinaryStatus::isSuccess` method was removed. Use `isCaptured` from the same class.
* [request] `SecuredInterface` was moved to `Security` namespace and renamed to `TokenAggregateInterface`.
* [request] `ModelAwareInterface` was moved to `Model` namespace and split into two: `ModelAwareInterface` and `ModelAggregateInterface`.
* [bridge][symfony] Minimum required version is `2.3`.
* [action] `ExecuteSameRequestWithModelDetailsAction` does sub execute even for empty details.
* [offline] `Payum\Offline\Constains::STATUS_SUCCESS` was removed. Use `STATUS_CAPTURED` from the same class.
* [klarna-checkout] `GlobalStateSafeConnector` was removed use `Config` instead.
* [klarna-checkout] `CaptureAction` was renamed to `AuthorizeAction` as it is what it really means.
* [klarna-checkout] The previous `success` status now means `authorized`. 

## 0.11.0 to 0.11.7

* [payment] The injection of apis and payment to an action was moved to execute method. So there maybe a slight BC break if you depend on invalid exceptions thrown when api or payment not set correctly.

## 0.10 to 0.11
<commit_msg>[payment-factories] add notes to upgrade.md<commit_after># Upgrades

## 0.12 to 0.13

* [omnipay-bridge] Omnipay bridge is not shipped with `payum\payum` code any more. Install it separatly by requiring `payum/omnipay-bridge` package.
* [paypal-pro] Remove `PaymentDetails` class.
* [paypal-pro] Remove `Request` and `Response` classes. Use ones from Buzz.
* [paypal-pro] Remove `trxtype` option from api.
* [paypal-pro] Rename `Api::doPayment` to `Api::doSale`. Change the first argument now it is array and the method returns array too.
* [be2bill] `Api` constructor arguments order was changed. Second argument `options` is now first, and the client now is second and optional.
* [paypal-ipn] `Api` constructor arguments order was changed. Second argument `options` is now first, and the client now is second and optional.
* [paypal-pro] `Api` constructor arguments order was changed. Second argument `options` is now first, and the client now is second and optional.
* [payment] Method `PaymentInterface::addApi` was removed from interface, still available in `Payment` class.
* [payment] Method `PaymentInterface::addAction` was removed from interface, still available in `Payment` class.
* [payment] Method `PaymentInterface::addExtension` was removed from interface, still available in `Payment` class.
* [storage] Method `StorageInterface::createModel` was renamed to `create`.
* [storage] Method `StorageInterface::supportModel` was renamed to `support`.
* [storage] Method `StorageInterface::updateModel` was renamed to `update`.
* [storage] Method `StorageInterface::deleteModel` was renamed to `delete`.
* [storage] Method `StorageInterface::findModelById` was renamed to `find`.
* [storage] Method `StorageInterface::getIdentificator` was renamed to `identify`.
* [storage] Method `StorageInterface::findByIdentificator` was removed. Use `find` method instead.
* [storage] Class `Identificator` was deprecated. Use `Identity` instead.
* [factory] Payment factories were changed significantly. Now they implements `PaymentFactoryInterface` and therefor have to accept only array of options as first argument.
* [be2bill] Action `CaptureOnsiteAction` was renamed to `CaptureOffsiteAction`.
* [be2bill] Factory `OnsitePaymentFactory` was renamed to `OffsitePaymentFactory`.
* [be2bill] Factory `PaymentFactory` was renamed to `DirectPaymentFactory`.
* [stripe] Factory `PaymentFactory` was splitted into two: `JsPaymentFactory` and `CheckoutPaymentFactory`.


## 0.11 to 0.12

* [refund] `createRefundToken` was added to `AbstractGenericTokenFactory`.
* [request] `BaseModelAware` request was renamed to `Generic`.
* [request] `SecuredInterface` allows to return a null on `getToken` method call.
* [request] `SecuredAuthorize` request was removed. The removed logic is now in `Authorize` request, so use it.
* [request] `SecuredNotify` request was removed. The removed logic is now in `Notify` request, so use it.
* [request] `SecuredCapture` request was removed. The removed logic is now in `Capture` request, so use it.
* [request] `Notify` request does not contains `notification` array any more. You have to execute `$this->payment->execute($httpRequest = new GetHttpRequest);`.
* [request] `GetHumanStatus::STATUS_SUCCESS` was removed. Use `STATUS_CAPTURED` from the same class.
* [request] `GetHumanStatus::markSuccess` method was removed. Use `markCaptured` from the same class.
* [request] `GetHumanStatus::isSuccess` method was removed. Use `isCaptured` from the same class.
* [request] `GetBinaryStatus::STATUS_SUCCESS` was removed. Use `STATUS_CAPTURED` from the same class.
* [request] `GetBinaryStatus::markSuccess` method was removed. Use `markCaptured` from the same class.
* [request] `GetBinaryStatus::isSuccess` method was removed. Use `isCaptured` from the same class.
* [request] `SecuredInterface` was moved to `Security` namespace and renamed to `TokenAggregateInterface`.
* [request] `ModelAwareInterface` was moved to `Model` namespace and split into two: `ModelAwareInterface` and `ModelAggregateInterface`.
* [bridge][symfony] Minimum required version is `2.3`.
* [action] `ExecuteSameRequestWithModelDetailsAction` does sub execute even for empty details.
* [offline] `Payum\Offline\Constains::STATUS_SUCCESS` was removed. Use `STATUS_CAPTURED` from the same class.
* [klarna-checkout] `GlobalStateSafeConnector` was removed use `Config` instead.
* [klarna-checkout] `CaptureAction` was renamed to `AuthorizeAction` as it is what it really means.
* [klarna-checkout] The previous `success` status now means `authorized`. 

## 0.11.0 to 0.11.7

* [payment] The injection of apis and payment to an action was moved to execute method. So there maybe a slight BC break if you depend on invalid exceptions thrown when api or payment not set correctly.

## 0.10 to 0.11

{'fraction_non_alphanumeric': 0.10272837733348061, 'fraction_numerical': 0.006738097868110019, 'mean_word_length': 5.706666666666667, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6902183', 'n_tokens_mistral': 2531, 'n_tokens_neox': 2480, 'n_words': 1049}