github-actions[bot]
0ccee0e6ba
Merge pull request #19 from wearepixel/dependabot/composer/php-minor-patch-8f7d0b9b5b
...
chore(deps-dev): bump phpstan/phpstan from 2.3.4 to 2.3.5 in the php-minor-patch group
2026-11-10 21:44:39 +00:00
dependabot[bot]
cab17cdc72
chore(deps-dev): bump phpstan/phpstan
...
Bumps the php-minor-patch group with 1 update: [phpstan/phpstan](https://github.com/phpstan/phpstan-phar-composer-source ).
Updates `phpstan/phpstan` from 2.3.4 to 2.3.5
- [Commits](https://github.com/phpstan/phpstan-phar-composer-source/commits )
---
updated-dependencies:
- dependency-name: phpstan/phpstan
dependency-version: 2.3.5
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: php-minor-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-11-10 21:43:56 +00:00
github-actions[bot]
8f99b148d6
Merge pull request #17 from wearepixel/dependabot/composer/php-minor-patch-3dfb8bd77a
...
chore(deps-dev): bump laravel/pint from 1.29.1 to 1.32.1 in the php-minor-patch group
2026-11-03 21:45:14 +00:00
github-actions[bot]
6bd569cca7
Merge pull request #18 from wearepixel/dependabot/composer/phpstan/phpstan-2.3.4
...
chore(deps-dev): bump phpstan/phpstan from 2.2.x-dev to 2.3.4
2026-11-03 21:45:07 +00:00
dependabot[bot]
63d310bf7e
chore(deps-dev): bump phpstan/phpstan from 2.2.x-dev to 2.3.4
...
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan-phar-composer-source ) from 2.2.x-dev to 2.3.4.
- [Commits](https://github.com/phpstan/phpstan-phar-composer-source/commits )
---
updated-dependencies:
- dependency-name: phpstan/phpstan
dependency-version: 2.3.4
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-11-03 21:44:19 +00:00
dependabot[bot]
c9163a7d78
chore(deps-dev): bump laravel/pint
...
Bumps the php-minor-patch group with 1 update: [laravel/pint](https://github.com/laravel/pint ).
Updates `laravel/pint` from 1.29.1 to 1.32.1
- [Release notes](https://github.com/laravel/pint/releases )
- [Changelog](https://github.com/laravel/pint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/laravel/pint/compare/v1.29.1...v1.32.1 )
---
updated-dependencies:
- dependency-name: laravel/pint
dependency-version: 1.32.1
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: php-minor-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-11-03 21:43:59 +00:00
Joel Male
45ef72894b
fix: correct custom driver registration hint in cart:make:driver
...
The command told users to register their driver in config/cart.php
under "drivers", but CartManager has no such registration point for
custom drivers. The actual mechanism is Cart::extend() called from a
service provider's boot() method.
2026-08-04 12:06:58 +10:00
Joel Male
c6ec19121c
docs: link README to hosted docs and correct supported Laravel versions
...
Adds a Spatie-style inline link to the extensive documentation and
points the Documentation section at the versioned v3 introduction
page. Also corrects the supported Laravel range (11-13, not 10-13)
to match the illuminate/* constraints in composer.json.
2026-08-04 12:06:57 +10:00
Joel Male
c8baf7f0a8
docs: point to the new hosted documentation site
2026-08-02 15:42:55 +10:00
pixel-workflows[bot]
0ea24eb419
chore: sync files from wearepixel/pixel-workflows - synced local 'pint.json' with remote 'files/pint.json'
2026-07-27 08:21:51 +00:00
pixel-workflows[bot]
917d530006
chore: sync files from wearepixel/pixel-workflows - created local '.gitattributes' from remote 'files/.gitattributes'
2026-07-27 08:21:48 +00:00
pixel-workflows[bot]
d56ce61dec
chore: sync files from wearepixel/pixel-workflows - created local '.editorconfig' from remote 'files/.editorconfig'
2026-07-27 08:21:45 +00:00
pixel-workflows[bot]
11d734e848
chore: sync files from wearepixel/pixel-workflows - created local '.github/workflows/dependabot-slack-alert.yml' from remote 'files/.github/workflows/dependabot-slack-alert.yml'
2026-07-27 08:21:42 +00:00
pixel-workflows[bot]
07d155159d
chore: sync files from wearepixel/pixel-workflows - synced local '.github/workflows/dependabot-auto-merge.yml' with remote 'files/.github/workflows/dependabot-auto-merge.yml'
2026-07-27 08:21:39 +00:00
pixel-workflows[bot]
45362d3c62
chore: update dependabot configuration
2026-07-27 08:20:56 +00:00
Joel Male
d1169f502f
Merge pull request #11 from wearepixel/feature/v3
...
feat: v3 - storage drivers, first-class objects, testing utilities, Livewire/Inertia support, Artisan generators
v3
v3.0.0
2026-06-13 15:57:26 +10:00
Joel Male
bfdea648ae
chore: merge master, resolve conflicts keeping v3
2026-06-13 14:33:14 +10:00
Joel Male
01189993f2
feat: add applies_to support for quantity-limited item conditions
2026-06-13 14:27:42 +10:00
dependabot[bot]
3375518354
chore(deps): bump shivammathur/setup-php in the actions group
...
Bumps the actions group with 1 update: [shivammathur/setup-php](https://github.com/shivammathur/setup-php ).
Updates `shivammathur/setup-php` from 2.37.1 to 2.37.2
- [Release notes](https://github.com/shivammathur/setup-php/releases )
- [Commits](https://github.com/shivammathur/setup-php/compare/7c071dfe9dc99bdf297fa79cb49ea005b9fcadbc...f3e473d116dcccaddc5834248c87452386958240 )
---
updated-dependencies:
- dependency-name: shivammathur/setup-php
dependency-version: 2.37.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-06-13 14:21:41 +10:00
dependabot[bot]
c493c73497
chore(deps): bump actions/checkout in the actions group
...
Bumps the actions group with 1 update: [actions/checkout](https://github.com/actions/checkout ).
Updates `actions/checkout` from 6.0.2 to 6.0.3
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/de0fac2e4500dabe0009e67214ff5f5447ce83dd...df4cb1c069e1874edd31b4311f1884172cec0e10 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: 6.0.3
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-06-13 14:21:41 +10:00
Joel Male
7427ce953a
chore: bump version to 2.1.4
v2
v2.1.4
2026-06-13 14:19:39 +10:00
Joel Male
6ba50a1c48
fix: prevent save() on array after clear() with database driver
2026-06-13 14:18:55 +10:00
Joel Male
c50fc70688
fix: restore @mixin and @method PHPDoc on CartFacade for IDE and PHPStan support
2026-06-13 14:17:21 +10:00
Joel Male
c9ffd8b8a4
chore: update to v3.0.0
2026-06-13 14:16:28 +10:00
Joel Male
f3c4ddae6e
docs: add v3 recommended patterns to upgrade guide and link from README
2026-06-13 14:11:20 +10:00
Joel Male
3f1f5fb4d2
fix: add missing return type to getAssociatedModel
2026-06-13 14:09:29 +10:00
github-actions[bot]
fce7125c5f
Merge pull request #14 from wearepixel/dependabot/github_actions/actions-5dacb66663
...
chore(deps): bump shivammathur/setup-php from 2.37.1 to 2.37.2 in the actions group
2026-06-08 21:45:38 +00:00
dependabot[bot]
834e211443
chore(deps): bump shivammathur/setup-php in the actions group
...
Bumps the actions group with 1 update: [shivammathur/setup-php](https://github.com/shivammathur/setup-php ).
Updates `shivammathur/setup-php` from 2.37.1 to 2.37.2
- [Release notes](https://github.com/shivammathur/setup-php/releases )
- [Commits](https://github.com/shivammathur/setup-php/compare/7c071dfe9dc99bdf297fa79cb49ea005b9fcadbc...f3e473d116dcccaddc5834248c87452386958240 )
---
updated-dependencies:
- dependency-name: shivammathur/setup-php
dependency-version: 2.37.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-06-08 21:45:26 +00:00
Joel Male
2ced1038af
feat: add PHPStan level 5 with zero errors
...
- Install phpstan/phpstan, add phpstan.neon at level 5 targeting PHP 8.3
- Add phpstan-bootstrap.php stubs for Laravel helper functions (app,
config, config_path, app_path, session) unavailable in standalone packages
- Fix CartCondition::setOrder() - removed incorrect @return int (method is void)
- Fix CartCondition::getCalculatedValue() - removed incorrect @return mixed PHPDoc
- Fix Cart::condition() - remove redundant instanceof check the type system already guarantees
- Fix Cart::fireEvent() - remove array_values() on already-list literal array
- Fix ItemCollection - add @property annotations for magic __get properties
- Fix ItemCollection::getAssociatedModel() - correct @return bool to @return mixed
- Fix ItemCollection::getConditions() - remove dead is_array && !instanceof check
- Fix Validator - add @method stub so PHPStan resolves make() through __callStatic
- Add ignoreErrors for trait.unused (HasCart designed for external Livewire use)
- Add ignoreErrors for round() mode mismatch (PHPStan 2.x PHP 8.4 stubs bug)
- Add phpstan step to CI (PHP 8.3 only, matches phpVersion config)
2026-06-06 16:02:16 +10:00
github-actions[bot]
9b198edb7d
Merge pull request #13 from wearepixel/dependabot/github_actions/actions-6a98abd9ac
...
chore(deps): bump actions/checkout from 6.0.2 to 6.0.3 in the actions group
2026-06-03 10:48:17 +00:00
dependabot[bot]
49959faace
chore(deps): bump actions/checkout in the actions group
...
Bumps the actions group with 1 update: [actions/checkout](https://github.com/actions/checkout ).
Updates `actions/checkout` from 6.0.2 to 6.0.3
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/de0fac2e4500dabe0009e67214ff5f5447ce83dd...df4cb1c069e1874edd31b4311f1884172cec0e10 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: 6.0.3
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-06-03 10:48:04 +00:00
Joel Male
e61ffae5fe
chore: bump version to 2.1.3
v2.1.3
2026-05-29 14:27:02 +10:00
Joel Male
10ab30f4e8
fix: correct add() @method signature to accept array input style
2026-05-29 14:14:34 +10:00
Joel Male
34626eef5e
chore: bump version to 2.1.2
v2.1.2
2026-05-29 14:12:49 +10:00
Joel Male
6020b655e2
Merge pull request #12 from wearepixel/fix/phpstan-facade-types
...
fix: add PHPStan/Larastan support to CartFacade
2026-05-29 14:11:47 +10:00
Joel Male
2c56062f97
fix: add @mixin and @method PHPDoc to CartFacade for PHPStan/Larastan support
2026-05-29 14:09:15 +10:00
Joel Male
88a118d81b
feat: make SessionDriver constructor args optional with app() defaults
...
new SessionDriver() now works out of the box in a Laravel app, resolving
the session and session ID from the container. Explicit args still work
as before. Also ignores .claude/ directory from version control.
2026-05-28 09:25:41 +10:00
Joel Male
4f87bd645c
docs: update README for v3 features
...
- Fix vendor:publish tag to cart-config
- Update TOC with Storage Drivers, Artisan Generators, First-class Objects, Testing, and Livewire / Inertia sections
- Replace Storage Options section with expanded Storage Drivers section covering session, database, Redis, multi-driver, and custom drivers
- Add Artisan Generators section documenting cart:install, cart:make:coupon, cart:make:tax, cart:make:shipping, cart:make:driver, and cart:debug
- Add First-class Objects section documenting Coupon, TaxRule, and ShippingRate base classes
- Add Testing section documenting Cart::fake() and assertion methods
- Add Livewire / Inertia section documenting HasCart trait and ShareCartWithInertia
2026-05-27 21:53:37 +10:00
Joel Male
bab304c620
docs: add UPGRADE.md and CHANGELOG.md
2026-05-27 21:50:54 +10:00
Joel Male
fd77347542
fix: validate class name input and check file write in Make commands
...
Add path traversal protection via PHP class name regex validation to all
four Make* commands, check file_put_contents() return value for write
failures, and remove the unnecessary \$defer = false property from
CartServiceProvider.
2026-05-27 21:49:08 +10:00
Joel Male
ce51042edf
feat: register Artisan commands in CartServiceProvider
2026-05-27 21:45:16 +10:00
Joel Male
c2b2563cf1
feat: add cart:debug command
2026-05-27 21:44:47 +10:00
Joel Male
15d4397968
feat: add cart:make:driver command
2026-05-27 21:43:59 +10:00
Joel Male
76fba35643
feat: add cart:make:shipping command
2026-05-27 21:43:34 +10:00
Joel Male
b8140166c9
feat: add cart:make:tax command
2026-05-27 21:43:14 +10:00
Joel Male
fc16e6c877
feat: add cart:make:coupon command
2026-05-27 21:42:51 +10:00
Joel Male
731aaa070d
feat: add cart:install command
2026-05-27 21:42:28 +10:00
Joel Male
0efd4378a8
feat: add HasCart trait and ShareCartWithInertia
2026-05-27 21:38:44 +10:00
Joel Male
a485bfb6f0
refactor: use assertEqualsWithDelta for float comparisons, add @internal to fake()
...
Replace Assert::assertEquals with Assert::assertEqualsWithDelta (epsilon 0.0001)
in assertSubTotal, assertTotal, and assertTotalQuantity to avoid IEEE 754
floating-point equality pitfalls. Add @internal docblock to fake() to signal
it is test-only. Add regression test for consecutive withItems calls.
2026-05-27 21:35:49 +10:00
Joel Male
8d04d18b48
test: add withCoupon test and fix withItems ID collision
2026-05-27 21:33:35 +10:00