Skip to content

Commit 1481d1c

Browse files
authored
docs(release): 0.3.0 release (#34)
1 parent 07bbac5 commit 1481d1c

File tree

3 files changed

+98
-1
lines changed

3 files changed

+98
-1
lines changed

CHANGELOG.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,46 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
88
99
Check our main [developer changelog](https://developer.paddle.com/?utm_source=dx&utm_medium=paddle-php-sdk) for information about changes to the Paddle Billing platform, the Paddle API, and other developer tools.
1010

11+
## [0.3.0] - 2024-02-13
12+
13+
### Added
14+
15+
- Support for installing within Symfony 7 projects
16+
- `EventTypeName` enum support for `customer.imported`, `address.imported` and `business.imported`
17+
- `ReportFilterName` enum support for `action`
18+
- `payment_method_id` to `TransactionPaymentAttempt` entity for Transaction payments
19+
- List credit balances for a customer now supports filtering by `currency_code`
20+
- Support for `receipt_data` on create and preview of a one-time charge for Subscriptions
21+
- Support for `receipt_data` on Transactions
22+
- Support for `import_meta` on Subscription notifications
23+
- Support for `import_meta` and `custom_data` on Discount notifications
24+
25+
### Fixed
26+
27+
- Using the correct arguments for testing a Notification list `from` in `NotificationsClientTest`
28+
- Refactored out duplicate entities where both `<Entity>` and `<Entity>WithIncludes` existed
29+
- Renamed `AdjustmentsAdjustmentCollection` to `AdjustmentCollection` so it aligns with naming conventions
30+
- Renamed Report objects for consistency within the SDK
31+
- PHPCS has been upgraded and configured for `nullable_type_declaration` as well as `ordered_types`
32+
- `ListNotification` operation uses consistent naming conventions with other operations
33+
- Correct type of `current_billing_period` for Subscription notifications to be nullable
34+
- Subscription preview fields `immediate_transaction`, `next_transaction` and `recurring_transaction_details` are optional
35+
- `Transaction` entity now re-uses `Adjustment` entity for the `adjustments` field
36+
- `SubscriptionNextTransaction` now maps `adjustments` to `SubscriptionAdjustmentPreview` objects
37+
- Shared objects between `SubscriptionAdjustmentItem` and `AdjustmentItem` have been consolidated into the `Shared` namespace
38+
- Conflicting request object `AdjustmentItem` has moved into the Operations namespace
39+
- Make `currentBillingPeriod` nullable for Subscription notifications
40+
- Status enums use consistent naming for `AdjustmentStatus`, `TransactionStatus` and `PaymentAttemptStatus`
41+
- Renamed `TotalAdjustments` to `AdjustmentTotals` to align with naming conventions
42+
43+
### Deprecated
44+
45+
- `stored_payment_method_id` on `TransactionPaymentAttempt`, use `payment_method_id` instead
46+
47+
### Removed
48+
49+
- Unused Subscription objects have been removed, `SubscriptionTransaction`, `SubscriptionAdjustment` and `SubscriptionsTransactionCollection`
50+
1151
## [0.2.2] - 2024-01-29
1252

1353
### Fixed

UPGRADING.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,63 @@
22

33
All breaking changes prior to v1 will be documented in this file to assist with upgrading.
44

5+
## v0.3.0
6+
7+
This version introduces several breaking changes.
8+
9+
- Renamed classes to align with naming conventions
10+
11+
`AdjustmentsAdjustmentCollection` => `AdjustmentCollection`
12+
`TotalAdjustments` => `AdjustmentTotals`
13+
`StatusAdjustment` => `AdjustmentStatus`
14+
`StatusTransaction` => `TransactionStatus`
15+
`StatusPaymentAttempt` => `PaymentAttemptStatus`
16+
17+
Any usages of the previous class names should be refactored accordingly to avoid a class not found error.
18+
19+
- Refactored out duplicate entities where both `<Entity>` and `<Entity>WithIncludes` existed
20+
21+
Any typing on the following classes should be updated accordingly:
22+
23+
`\Paddle\SDK\Entities\CustomerWithIncludes` => `\Paddle\SDK\Entities\Customer`
24+
`\Paddle\SDK\Entities\PriceWithIncludes` => `\Paddle\SDK\Entities\Price`
25+
`\Paddle\SDK\Entities\ProductWithIncludes` => `\Paddle\SDK\Entities\Product`
26+
`\Paddle\SDK\Entities\SubscriptionWithIncludes` => `\Paddle\SDK\Entities\Subscription`
27+
`\Paddle\SDK\Entities\TransactionWithIncludes` => `\Paddle\SDK\Entities\Transaction`
28+
`\Paddle\SDK\Entities\TransactionWithIncludes` => `\Paddle\SDK\Entities\Transaction`
29+
`\Paddle\SDK\Entities\Collections\CustomerIncludesCollection` => `\Paddle\SDK\Entities\Collections\CustomerCollection`
30+
`\Paddle\SDK\Entities\Collections\PriceWithIncludesCollection` => `\Paddle\SDK\Entities\Collections\PriceCollection`
31+
`\Paddle\SDK\Entities\Collections\ProductWithIncludesCollection` => `\Paddle\SDK\Entities\Collections\ProductCollection`
32+
`\Paddle\SDK\Entities\Collections\SubscriptionWithIncludesCollection` => `\Paddle\SDK\Entities\Collections\SubscriptionCollection`
33+
`\Paddle\SDK\Entities\Collections\TransactionWithIncludesCollection` => `\Paddle\SDK\Entities\Collections\TransactionCollection`
34+
35+
- Report entity objects were renamed for better consistency with the SDK and prevent confusion.
36+
37+
Any typing on the following classes should be updated accordingly:
38+
39+
`\Paddle\SDK\Entities\Report\ReportFilters` => `\Paddle\SDK\Entities\Report\ReportFilter`
40+
`\Paddle\SDK\Entities\Report\ReportName` => `\Paddle\SDK\Entities\Report\ReportFilterName`
41+
`\Paddle\SDK\Entities\Report\ReportOperator` => `\Paddle\SDK\Entities\Report\ReportFilterOperator`
42+
43+
- Adjustment and Subscription Preview Adjustment objects were refactored for consistency
44+
45+
Any typing of the following classes should be updated accordingly:
46+
47+
`\Paddle\SDK\Entities\Adjustment\AdjustmentItemTotals` => `\Paddle\SDK\Entities\Adjustment\AdjustmentItem`
48+
`\Paddle\SDK\Entities\Adjustment\AdjustmentProration` => `\Paddle\SDK\Entities\Shared\AdjustmentProration`
49+
`\Paddle\SDK\Entities\Adjustment\AdjustmentTimePeriod` => `\Paddle\SDK\Entities\Shared\AdjustmentTimePeriod`
50+
`\Paddle\SDK\Entities\Adjustment\AdjustmentType` => `\Paddle\SDK\Entities\Shared\AdjustmentType`
51+
`\Paddle\SDK\Entities\Subscription\SubscriptionProration` => `\Paddle\SDK\Entities\Shared\AdjustmentProration`
52+
`\Paddle\SDK\Entities\Transaction\TransactionAdjustment` => `Paddle\SDK\Entities\Adjustment`
53+
54+
- Conflicting request object `AdjustmentItem` has moved into the Operations namespace
55+
56+
The type has changed when creating an Adjustment using the `CreateAdjustment` operation. To create an Adjustment you must now use the `\Paddle\SDK\Resources\Adjustments\Operations\Create\AdjustmentItem` instance for `items`.
57+
58+
- Core entities (classes implementing `Entity`) are marked @internal and constructors are `protected`
59+
60+
Any direct usage of these classes is not supported functionality by the SDK and has been removed to reduce the surface area for breaking changes.
61+
562
## v0.2.0
663

764
This version includes a breaking change to the naming of operations. Prior to this version operations were commonly named `<type>Operation`, e.g. `CreateOperation` which posed problems when using more than one resource such as when creating a product and price. The new naming convention includes the resource to prevent the need of aliasing in these circumstances. e.g. `CreatePrice` and `CreateProduct`.

src/Client.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@
5151

5252
class Client
5353
{
54-
private const SDK_VERSION = '0.2.2';
54+
private const SDK_VERSION = '0.3.0';
5555

5656
public readonly LoggerInterface $logger;
5757
public readonly Options $options;

0 commit comments

Comments
 (0)