1
0
Fork 0
mirror of https://github.com/archtechx/tenancy.git synced 2025-12-12 22:14:03 +00:00
Commit graph

1338 commits

Author SHA1 Message Date
PHP CS Fixer
a4318d81bd Fix code style (php-cs-fixer) 2024-08-06 02:35:55 +00:00
4372e1bef2 fix phpstan errors 2024-08-06 04:35:25 +02:00
PHP CS Fixer
18a16e6a74 Fix code style (php-cs-fixer) 2024-08-06 01:31:16 +00:00
b0b44e902f Merge branch 'master' of github.com:tenancy-for-laravel/v4 2024-08-06 03:30:47 +02:00
b9ff980293 remove const type 2024-08-06 03:30:32 +02:00
Samuel Štancl
ccf36876b9
update mssql healthcheck 2024-08-06 03:26:26 +02:00
Samuel Štancl
1b0e7d0507
Parallel migrations (#57)
* parallelize migration-related commands

* Fix code style (php-cs-fixer)

---------

Co-authored-by: PHP CS Fixer <phpcsfixer@example.com>
2024-08-06 02:48:25 +02:00
lukinovec
15d12e22c7
Fix cookie identification (#56)
* route cloning: Trim '/' from original route prefixes

* Decrypt cookie if encrypted in request data ID MW

* Fix code style (php-cs-fixer)

* Fix PHPStan error [ci skip]

* Revert "route cloning: Trim '/' from original route prefixes"

This reverts commit 3dc97eba1b3b91b3446bc16fd107385fe835621e.

* Fix code style (php-cs-fixer)

* add a setting for requiring cookie encryption

* Fix code style (php-cs-fixer)

---------

Co-authored-by: PHP CS Fixer <phpcsfixer@example.com>
Co-authored-by: Samuel Štancl <samuel@archte.ch>
2024-08-06 02:19:11 +02:00
lukinovec
0f7cd2e868
Trim trailing / from route prefixes during route cloning (#55)
* route cloning: Trim '/' from original route prefixes

* Add test for the trimming of route prefixes

* Revert "Add test for the trimming of route prefixes"

This reverts commit 568ae17d2bf8d5542a0e46840f7604c6a0df236d.

* Add test for the trimming of route prefixes

* Delete extra comments [ci skip]

* Fix regression test [ci skip]

* trigger CI

* Add routes with trailing slashes to the cloned route prefixing test

* Test nested '/' route cloning

* Update cloned route creation as suggested

* fix terminology

* add comment to test

---------

Co-authored-by: Samuel Štancl <samuel.stancl@gmail.com>
Co-authored-by: Samuel Štancl <samuel@archte.ch>
2024-08-06 02:15:18 +02:00
lukinovec
a9ab646e59
Set fortifyHome in stub when using request ID [ci skip] (#51) 2024-07-30 13:58:11 +02:00
aa6bfb4079 make Create/DeleteTenantStorage listeners handle existing/missing directories gracefully 2024-07-12 01:53:15 +02:00
ac8a30d782 add line end to sample route response 2024-07-09 00:15:37 +02:00
590360bf0d broadcasting config bootstrapper: add reverb preset 2024-07-04 20:52:06 +02:00
6b6c883234 phpstan fixes 2024-07-04 20:48:55 +02:00
252e337ef8 broadcast channel prefix bootstrapper: add reverb() method 2024-07-04 20:38:23 +02:00
8a4644630a Merge branch 'master' of github.com:tenancy-for-laravel/v4 2024-07-04 20:25:33 +02:00
lukinovec
9119db810f
Delete outdated note about LW with domain ID in TSP stub (#53) 2024-06-20 11:09:42 +02:00
7572911d87 remove dead code 2024-05-28 02:55:13 +02:00
97ccbbe1f9 bump php version 2024-05-28 02:16:00 +02:00
f0bb28345f categorize todos 2024-05-17 14:23:54 +02:00
Samuel Štancl
b97c203967
Revert changes that caused issues with Laravel Octane [ci skip] 2024-04-24 22:36:51 +02:00
lukinovec
b789f5c561
Change URI prefix order during route cloning (#49)
* Change URI prefix order [ci skip]

* Move route cloning to `$this->app->booted()` [ci skip]

* Delete note about LW v2

* Improve comments/docblock [skip ci]

* Fix comment in test, improve assertion [skip ci]
2024-04-24 22:33:18 +02:00
Samuel Štancl
7317d2638a
Postgres RLS + permission controlled database managers (#33)
This PR adds Postgres RLS (trait manager + table manager approach) and permission controlled managers for PostgreSQL.

---------

Co-authored-by: lukinovec <lukinovec@gmail.com>
Co-authored-by: PHP CS Fixer <phpcsfixer@example.com>
2024-04-24 22:32:49 +02:00
34297d3e1a editor config: prevent tailwindcss LSP from starting in nvim [ci skip] 2024-04-22 21:27:53 +02:00
lukinovec
77226cf2f4
Delete pivot records when deleting SyncMaster using morph pivot (#46)
* Add and correct pivot record tests

* Implement and test deleting pivot records when using morph pivot

* Use dataset to test deleting pivot records with both MorphTenantPivot and TenantPivot

* Delete extra test, use createTenantsAndRunMigrations() where appropriate

* FIx PHPStan errors

* Revert DB::table() assertion changes

* minor test improvements

---------

Co-authored-by: Samuel Štancl <samuel@archte.ch>
2024-04-22 12:18:15 +02:00
lukinovec
4e51cdbacb
Refactor early identification (#47)
* Make universal route logic part of tbe early ID trait

* Add requstHasTenant to prevent access MW, add todo@samuel

* Delete PathIdentificationManager, move the used methods appropriately

* Correct and refactor code related to the deleted PathIdentificationManager class

* Add docblock

* Fix code style (php-cs-fixer)

* refactor globalStackMiddleware()

* remove todos [ci skip]

* refactor routeMiddleware()

* revert bool assertions

* revert more changes

---------

Co-authored-by: PHP CS Fixer <phpcsfixer@example.com>
Co-authored-by: Samuel Štancl <samuel@archte.ch>
2024-04-22 11:30:58 +02:00
lukinovec
b70cd0e531
Use correct route facade classes in TSP comments (#48) 2024-04-19 17:11:50 +02:00
lukinovec
6e67ddf7a5
Resolve test to-dos (#45)
* Only retrieve domains if the relationship and the domains table exist (DomianTenantResolver)

* Resolve todo, add other todos

* Use constructor promotion in DeleteDomains

* Fix imports + domain deletion test

* Confirm that turning on resolver caching doesn't break the tests

* Fix Tenant model imports

* Fix code style (php-cs-fixer)

* remove runtime schema check

* temp: enable resolver cache

* make 'autoincrement ids are supported' pass

* disable resolver cache

---------

Co-authored-by: PHP CS Fixer <phpcsfixer@example.com>
Co-authored-by: Samuel Štancl <samuel.stancl@gmail.com>
Co-authored-by: Samuel Štancl <samuel@archte.ch>
2024-04-18 00:22:03 +02:00
3e441e075f remove deprecation test 2024-04-16 03:14:31 +02:00
4bdb986b96 remove old UUID generator, minor config changes 2024-04-16 02:17:20 +02:00
83b1ae1aea change default cookie name, add todos 2024-04-15 03:11:11 +02:00
55b1c5387c fix combination calculation docblock for random str generator 2024-04-13 05:43:37 +02:00
e727e07212 redis bootstrapper: support clusters (#1207) 2024-04-12 01:05:46 +02:00
e36157bd61 fix typo [ci skip] 2024-04-11 05:42:46 +02:00
b3019844e3 add todo [ci skip] 2024-04-10 04:13:23 +02:00
630f404227 add assertion, update todos 2024-04-10 03:35:57 +02:00
20c1b9a940 phpcsfixer: enable nullable_type_declaration_for_default_null_value 2024-04-09 20:55:49 +02:00
Samuel Štancl
eecf6f21c8
Cache prefixing logic rewrite, session scoping improvements, tests refactor (#43)
* Run cache tests on all supported drivers

* update ci healthcheck for memcached

* remove memcached healthcheck

* fix typos in test comments, expand internal.md [ci skip]

* add empty line [ci skip]

* switch to using $store->setPrefix()

* add dynamodb

* refactor try-finally to try-catch

* remove unnecessary clearResolvedInstances() call

* add dual Cache:: and cache() assertions

* add apc

* Flush APCu cache in test setup

* Revert "add dual Cache:: and cache() assertions"

This reverts commit a0bab162fbe2dd0d25e7056ceca4fb7ce54efc77.

* phpstan fix

* Add logic for scoping 'file' disks to FilesystemTenancyBootstrapper

* minor changes, add todos

* refactor how the session.connection is used in the DB session bootstrapper

* add session forgery prevention logic to the db session bootstrapper

* only use the fs bootstrapper for file disk in 'cache data is separated' dataset

* minor session scoping test changes

* Add session scoping logic to FilesystemTenancyBootstrapper, correctly update disk roots even with storage_path_tenancy disabled

* Fix code style (php-cs-fixer)

* update docblock

* make not-null check more explicit

* separate bootstrapper tests, fix swapped test names for two tests

* refactor cache bootstrapper tests

* resolve global cache todo

* expand tests: session separation tests, more filesystem separation assertions; change prefix_base-type config keys to templates/formats

* add apc session scoping test, various session separation bugfixes

* phpstan + minor logic fixes

* prefix_format -> prefix

* fix database session separation test

* revert composer.json changes, update laravel dependencies to expected next release

* only run session scoping logic in cache bootstrapper for redis, memcached, dynamodb, apc; update gitattributes

* tenancy.central_domains -> tenancy.identification.central_domains

* db session separation test: add datasets

---------

Co-authored-by: PHP CS Fixer <phpcsfixer@example.com>
2024-04-09 20:40:27 +02:00
943b960718 lower laravel/prompts minimal version 2024-04-09 16:16:03 +02:00
Samuel Štancl
d9ca3cec38
Misc test fixes (#44)
* Add suffix_storage_path test

* Get filesystem bootstrapper coverage to 100%

* Delete enabling DB bootstrapper in TestCase

* Complete most of test todos

* Complete last tests todo

* Fix docblock

* add todo

---------

Co-authored-by: lukinovec <lukinovec@gmail.com>
2024-04-06 19:17:34 +02:00
489fbb9402 add prompts to tenant:tinker 2024-04-06 01:22:14 +02:00
4cc9fbe7ea fix bootstrapper names in config 2024-04-05 20:04:42 +02:00
4f76af7673 Merge branch 'master' of github.com:tenancy-for-laravel/v4 2024-04-05 19:49:02 +02:00
ac5948dfd1 add Tenancy::$findWith 2024-04-05 19:48:50 +02:00
lukinovec
be031ad45a Clear bootstrappers in TestCase 2024-04-04 18:04:45 +02:00
5ef7604e17 phpstan fix 2024-04-03 19:51:07 +02:00
PHP CS Fixer
47364007aa Fix code style (php-cs-fixer) 2024-04-03 17:47:00 +00:00
6f4b9dadf1 add tenant:tinker command 2024-04-03 19:46:27 +02:00
29d1469651 use getAttribute() in HasDatabase to support encrypted columns 2024-04-02 20:25:17 +02:00
711352db38 make MigrateFreshOverride compatible with Laravel 11.2 2024-04-02 20:19:15 +02:00