SDSM:Languages and Frameworks: Difference between revisions

From SMUSwiki
Jump to navigation Jump to search
(Major updates to SDS Laravel JavaScript Library Dependencies section reflecting Vue 2 to 3 etc upgrades.)
(Large updates in hindsight of Laravel 8 to 10 upgrade)
 
Line 24: Line 24:


The Composer config file <code>composer.json</code> of ''SDS Laravel''
The Composer config file <code>composer.json</code> of ''SDS Laravel''
explicitly declares that it requires these 19 PHP library dependencies:
explicitly declares that it requires these 16 PHP library dependencies:


* barryvdh/laravel-debugbar (^3.7, of 2022.07.11; latest is 3.13.5, of 2024.04.12)
* barryvdh/laravel-debugbar (^3.13.5, is latest, of 2024.04.12)
* directorytree/ldaprecord-laravel (^2.7.3, of 2023.02.09; latest is 3.3.3, of 2024.06.17)
* directorytree/ldaprecord-laravel (^3.3.3, is latest, of 2024.06.17)
* etern8ty/beanstream (dev-master, is custom fork)
* etern8ty/beanstream (dev-master, is custom fork)
* fakerphp/faker (^1.23.1, is latest, of 2024.01.02)
* fakerphp/faker (^1.23.1, is latest, of 2024.01.02)
* fideloper/proxy (^4.4.2, is latest, of 2022.02.09; laravel/framework has built-in replacement)
* guzzlehttp/guzzle (^7.9.2, is latest, of 2024.07.24)
* goldspecdigital/laravel-eloquent-uuid (^8.0.1, of 2020.12.23; latest is 10, of 2023.02.23; laravel/framework 9.3+ has built-in replacement)
* intervention/image-laravel (^1.3, is latest, of 2024.06.15)
* guzzlehttp/guzzle (^7.8.1, is latest, of 2023.12.03)
* juliomotol/laravel-auth-timeout (^4.1, is latest, of 2024.04.01)
* intervention/image (^2.7.2, of 2022.05.21; replaced by intervention/image-laravel, 1.3, of 2024.06.15)
* juliomotol/laravel-auth-timeout (^3.1.1, of 2022.06.03; latest is 4.1, of 2024.04.01)
* lab404/laravel-impersonate (^1.7.5, is latest, of 2024.03.11)
* lab404/laravel-impersonate (^1.7.5, is latest, of 2024.03.11)
* laravel/framework (^8.83.27, of 2022.12.08; latest PHP 8.1-compatible is 10.48.15, of 2024.07.02; latest is 11.14, of 2024.07.02)
* laravel/framework (^10.48.18, is latest PHP 8.1-compatible, of 2024.07.30; latest is 11.19, of 2024.07.30)
* laravel/helpers (^1.7, is latest, of 2023.11.30; laravel/framework has built-in replacement)
* laravel/tinker (^2.9, is latest, of 2024.01.04)
* laravel/tinker (^2.9, is latest, of 2024.01.04)
* laravel/ui (^3.4.6, of 2022.05.20; latest is 4.5.2, of 2024.05.08; declares itself legacy and recommends using Laravel Breeze or Laravel Jetstream instead)
* laravel/ui (^4.5.2, is latest, of 2024.05.08; declares itself legacy and recommends using Laravel Breeze or Laravel Jetstream instead)
* mockery/mockery (^1.6.12, of 2024.05.16)
* mockery/mockery (^1.6.12, is latest, of 2024.05.16)
* nunomaduro/collision (^5.11, of 2022.01.10; latest PHP 8.1-compatible is 7.10, of 2023.10.11; latest is 8.1.1, of 2024.03.06)
* nunomaduro/collision (^7.10, is latest PHP 8.1-compatible, of 2023.10.11; latest is 8.3, of 2024.07.16)
* phpunit/phpunit (^10.5.25, of 2024.07.03; latest is 11.2.6, of 2024.07.03)
* phpunit/phpunit (^10.5.29, is latest PHP 8.1-compatible, of 2024.07.30; latest is 11.3, of 2024.08.02)
* spatie/laravel-ignition (^1.7, of 2024.06.13; latest is 2.8, of 2024.06.12)
* spatie/laravel-ignition (^2.8, is latest, of 2024.06.12)
* staudenmeir/eloquent-has-many-deep (^1.14.4, of 2021.12.07; latest PHP 8.1-compatible is 1.19.4, of 2024.05.25; latest is 1.20.1, of 2024.05.25)
* staudenmeir/eloquent-has-many-deep (^1.19.4, is latest PHP 8.1-compatible, of 2024.05.25; latest is 1.20.2, of 2024.07.12)


When Composer evaluates its config file <code>composer.json</code> of
When Composer evaluates its config file <code>composer.json</code> of
''SDS Laravel'', its declared required PHP library dependencies are
''SDS Laravel'', its declared required PHP library dependencies are
resolved to these 117, which are actually installed:
resolved to these 122, which are actually installed:


* barryvdh/laravel-debugbar (v3.7.0)
* barryvdh/laravel-debugbar (v3.13.5)
* brick/math (0.12.1)
* brick/math (0.12.1)
* carbonphp/carbon-doctrine-types (3.2.0)
* carbonphp/carbon-doctrine-types (2.1.0)
* dflydev/dot-access-data (v3.0.2)
* dflydev/dot-access-data (v3.0.3)
* directorytree/ldaprecord (v2.20.5)
* directorytree/ldaprecord (v3.7.0)
* directorytree/ldaprecord-laravel (v2.7.3)
* directorytree/ldaprecord-laravel (v3.3.3)
* doctrine/inflector (2.0.10)
* doctrine/inflector (2.0.10)
* doctrine/lexer (1.2.3)
* doctrine/lexer (3.0.1)
* dragonmantank/cron-expression (v3.3.3)
* dragonmantank/cron-expression (v3.3.3)
* egulias/email-validator (2.1.25)
* egulias/email-validator (4.0.2)
* etern8ty/beanstream (dev-master 297b986)
* etern8ty/beanstream (dev-master 297b986)
* facade/ignition-contracts (1.0.2)
* fakerphp/faker (v1.23.1)
* fakerphp/faker (v1.23.1)
* fideloper/proxy (4.4.2)
* filp/whoops (2.15.4)
* filp/whoops (2.15.4)
* goldspecdigital/laravel-eloquent-uuid (v8.0.1)
* fruitcake/php-cors (v1.3.0)
* graham-campbell/result-type (v1.1.2)
* graham-campbell/result-type (v1.1.3)
* guzzlehttp/guzzle (7.8.1)
* guzzlehttp/guzzle (7.9.2)
* guzzlehttp/promises (2.0.2)
* guzzlehttp/promises (2.0.3)
* guzzlehttp/psr7 (2.6.2)
* guzzlehttp/psr7 (2.7.0)
* guzzlehttp/uri-template (v1.0.3)
* hamcrest/hamcrest-php (v2.0.1)
* hamcrest/hamcrest-php (v2.0.1)
* intervention/image (2.7.2)
* intervention/gif (4.1.0)
* juliomotol/laravel-auth-timeout (v3.1.1)
* intervention/image (3.7.2)
* intervention/image-laravel (1.3.0)
* juliomotol/laravel-auth-timeout (v4.1.0)
* lab404/laravel-impersonate (1.7.5)
* lab404/laravel-impersonate (1.7.5)
* laravel/framework (v8.83.27)
* laravel/framework (v10.48.18)
* laravel/helpers (v1.7.0)
* laravel/prompts (v0.1.24)
* laravel/serializable-closure (v1.3.3)
* laravel/serializable-closure (v1.3.3)
* laravel/tinker (v2.9.0)
* laravel/tinker (v2.9.0)
* laravel/ui (v3.4.6)
* laravel/ui (v4.5.2)
* league/commonmark (2.4.2)
* league/commonmark (2.5.1)
* league/config (v1.2.0)
* league/config (v1.2.0)
* league/flysystem (1.1.10)
* league/flysystem (3.28.0)
* league/flysystem-local (3.28.0)
* league/mime-type-detection (1.15.0)
* league/mime-type-detection (1.15.0)
* maximebf/debugbar (v1.22.3)
* maximebf/debugbar (v1.22.3)
* mockery/mockery (1.6.12)
* mockery/mockery (1.6.12)
* monolog/monolog (2.9.3)
* monolog/monolog (3.7.0)
* myclabs/deep-copy (1.12.0)
* myclabs/deep-copy (1.12.0)
* nesbot/carbon (2.72.5)
* nesbot/carbon (2.72.5)
Line 91: Line 90:
* nette/utils (v4.0.4)
* nette/utils (v4.0.4)
* nikic/php-parser (v5.1.0)
* nikic/php-parser (v5.1.0)
* nunomaduro/collision (v5.11.0)
* nunomaduro/collision (v7.10.0)
* opis/closure (3.6.3)
* nunomaduro/termwind (v1.15.1)
* phar-io/manifest (2.0.4)
* phar-io/manifest (2.0.4)
* phar-io/version (3.2.1)
* phar-io/version (3.2.1)
* phpoption/phpoption (1.9.2)
* phpoption/phpoption (1.9.3)
* phpunit/php-code-coverage (10.1.15)
* phpunit/php-code-coverage (10.1.15)
* phpunit/php-file-iterator (4.1.0)
* phpunit/php-file-iterator (4.1.0)
Line 101: Line 100:
* phpunit/php-text-template (3.0.1)
* phpunit/php-text-template (3.0.1)
* phpunit/php-timer (6.0.0)
* phpunit/php-timer (6.0.0)
* phpunit/phpunit (10.5.25)
* phpunit/phpunit (10.5.29)
* psr/clock (1.0.0)
* psr/clock (1.0.0)
* psr/container (1.1.2)
* psr/container (2.0.2)
* psr/event-dispatcher (1.0.0)
* psr/event-dispatcher (1.0.0)
* psr/http-client (1.0.3)
* psr/http-client (1.0.3)
* psr/http-factory (1.1.0)
* psr/http-factory (1.1.0)
* psr/http-message (2.0)
* psr/http-message (2.0)
* psr/log (2.0.0)
* psr/log (3.0.0)
* psr/simple-cache (1.0.1)
* psr/simple-cache (3.0.0)
* psy/psysh (v0.12.4)
* psy/psysh (v0.12.4)
* ralouphie/getallheaders (3.0.3)
* ralouphie/getallheaders (3.0.3)
Line 129: Line 128:
* sebastian/type (4.0.0)
* sebastian/type (4.0.0)
* sebastian/version (4.0.1)
* sebastian/version (4.0.1)
* spatie/backtrace (1.6.1)
* spatie/backtrace (1.6.2)
* spatie/flare-client-php (1.7.0)
* spatie/error-solutions (1.1.1)
* spatie/ignition (1.14.2)
* spatie/flare-client-php (1.8.0)
* spatie/laravel-ignition (1.7.0)
* spatie/ignition (1.15.0)
* staudenmeir/eloquent-has-many-deep (v1.14.4)
* spatie/laravel-ignition (2.8.0)
* swiftmailer/swiftmailer (v6.3.0)
* spatie/laravel-package-tools (1.16.4)
* symfony/console (v5.4.41)
* staudenmeir/eloquent-has-many-deep (v1.19.4)
* staudenmeir/eloquent-has-many-deep-contracts (v1.1)
* symfony/console (v6.4.10)
* symfony/css-selector (v6.4.8)
* symfony/css-selector (v6.4.8)
* symfony/deprecation-contracts (v3.5.0)
* symfony/deprecation-contracts (v3.5.0)
* symfony/error-handler (v5.4.41)
* symfony/error-handler (v6.4.10)
* symfony/event-dispatcher (v6.4.8)
* symfony/event-dispatcher (v6.4.8)
* symfony/event-dispatcher-contracts (v3.5.0)
* symfony/event-dispatcher-contracts (v3.5.0)
* symfony/finder (v5.4.40)
* symfony/finder (v6.4.10)
* symfony/http-foundation (v5.4.40)
* symfony/http-foundation (v6.4.10)
* symfony/http-kernel (v5.4.41)
* symfony/http-kernel (v6.4.10)
* symfony/mime (v5.4.41)
* symfony/mailer (v6.4.9)
* symfony/mime (v6.4.9)
* symfony/polyfill-ctype (v1.30.0)
* symfony/polyfill-ctype (v1.30.0)
* symfony/polyfill-iconv (v1.30.0)
* symfony/polyfill-intl-grapheme (v1.30.0)
* symfony/polyfill-intl-grapheme (v1.30.0)
* symfony/polyfill-intl-idn (v1.30.0)
* symfony/polyfill-intl-idn (v1.30.0)
Line 152: Line 153:
* symfony/polyfill-mbstring (v1.30.0)
* symfony/polyfill-mbstring (v1.30.0)
* symfony/polyfill-php72 (v1.30.0)
* symfony/polyfill-php72 (v1.30.0)
* symfony/polyfill-php73 (v1.30.0)
* symfony/polyfill-php80 (v1.30.0)
* symfony/polyfill-php80 (v1.30.0)
* symfony/process (v5.4.40)
* symfony/polyfill-php83 (v1.30.0)
* symfony/routing (v5.4.40)
* symfony/polyfill-uuid (v1.30.0)
* symfony/process (v6.4.8)
* symfony/routing (v6.4.10)
* symfony/service-contracts (v3.5.0)
* symfony/service-contracts (v3.5.0)
* symfony/string (v6.4.9)
* symfony/string (v6.4.10)
* symfony/translation (v6.4.8)
* symfony/translation (v6.4.10)
* symfony/translation-contracts (v3.5.0)
* symfony/translation-contracts (v3.5.0)
* symfony/var-dumper (v5.4.40)
* symfony/uid (v6.4.8)
* symfony/var-dumper (v6.4.10)
* theseer/tokenizer (1.2.3)
* theseer/tokenizer (1.2.3)
* tightenco/collect (v9.52.7)
* tijsverkoyen/css-to-inline-styles (v2.2.7)
* tijsverkoyen/css-to-inline-styles (v2.2.7)
* vlucas/phpdotenv (v5.6.0)
* vlucas/phpdotenv (v5.6.1)
* voku/portable-ascii (1.6.1)
* voku/portable-ascii (2.0.1)
* webmozart/assert (1.11.0)
* webmozart/assert (1.11.0)


Line 186: Line 188:
Directly used by name in app/Models/File.php and app/Http/Controllers/Admin/Migration/ImportPhotosController.php only:
Directly used by name in app/Models/File.php and app/Http/Controllers/Admin/Migration/ImportPhotosController.php only:


* Image aka Intervention\Image\ImageServiceProvider
* \Intervention\Image\Laravel\Facades\Image


Directly used by name in about 70 app PHP classes:
Directly used by name in about 70 app PHP classes:
Line 196: Line 198:


* LdapRecord\*
* LdapRecord\*
Directly used by name in 9 app PHP model classes:
* GoldSpecDigital\LaravelEloquentUUID\Database\Eloquent\Uuid


Directly used by name in 5 app PHP classes related to Blackbaud or Bambora:
Directly used by name in 5 app PHP classes related to Blackbaud or Bambora:
Line 229: Line 227:
* Staudenmeir\EloquentHasManyDeep\HasRelationships
* Staudenmeir\EloquentHasManyDeep\HasRelationships


Directly used by name in app/Http/Middleware/TrustProxies.php only:
Directly used by name in app/Http/Middleware/AuthTimeoutMiddleware.php only:


* Fideloper\Proxy\TrustProxies
* JulioMotol\AuthTimeout\Middlewares\CheckAuthTimeout
 
Directly used by name in app/Http/Middleware/AuthTimeoutMiddleware.php and app/Http/Kernel.php only:
 
* JulioMotol\AuthTimeout\Middleware\AuthTimeoutMiddleware


Directly used by name in app/Exceptions/Handler.php only:
Directly used by name in app/Exceptions/Handler.php only:
Line 260: Line 254:
declares that it requires these 17 JavaScript library dependencies:
declares that it requires these 17 JavaScript library dependencies:


* @formkit/pro (^0.119.14, of 2024-02-05; latest is 0.126.13, of 2024-07-11)
* @formkit/pro (^0.119.14, of 2024.02.05; latest is 0.126.13, of 2024.07.11)
* @formkit/themes (^1.6.5, is latest, of 2024-05-28)
* @formkit/themes (^1.6.5, is latest, of 2024.05.28)
* @formkit/vue (^1.6.5, is latest, of 2024-05-28)
* @formkit/vue (^1.6.5, is latest, of 2024.05.28)
* @fortawesome/fontawesome-free (^6.6, is latest, of 2024-07-16)
* @fortawesome/fontawesome-free (^6.6, is latest, of 2024.07.16)
* axios (^1.7.2, is latest, of 2024.05.21)
* axios (^1.7.2, of 2024.05.21; latest is 1.7.3, of 2024.08.01)
* bootstrap (^4.6.2, of 2022.07.19; latest is 5.3.3, of 2024.02.20)
* bootstrap (^4.6.2, of 2022.07.19; latest is 5.3.3, of 2024.02.20)
* css-loader (^7.1.2, is latest, of 2024-05-22)
* css-loader (^7.1.2, is latest, of 2024.05.22)
* jquery (^3.7.1, is latest, of 2023.08.28; jquery 4 is in beta-2 as of 2024.07.17)
* jquery (^3.7.1, is latest, of 2023.08.28; jquery 4 is in beta-2 as of 2024.07.17)
* laravel-mix (^6.0.49, is latest, of 2022.06.09)
* laravel-mix (^6.0.49, is latest, of 2022.06.09)
* moment (^2.30.1, is latest, of 2023.12.27)
* moment (^2.30.1, is latest, of 2023.12.27)
* popper.js (^1.16.1, is latest, of 2020.01.22; replaced by @popperjs/core, 2.11.8, of 2023.05.26; replaced by @floating-ui/dom, 1.6.5, of 2024.05.05)
* popper.js (^1.16.1, is latest, of 2020.01.22; replaced by @popperjs/core, 2.11.8, of 2023.05.26; replaced by @floating-ui/dom, 1.6.5, of 2024.05.05)
* postcss (^8.4.40, is latest, of 2024-07-24)
* postcss (^8.4.40, is latest, of 2024.07.24)
* resolve-url-loader (^5, is latest, of 2022.01.17; added automatically when using laravel-mix 6)
* resolve-url-loader (^5, is latest, of 2022.01.17; added automatically when using laravel-mix 6)
* sass (^1.77.8, is latest, of 2024-07-11; added automatically when using laravel-mix 6)
* sass (^1.77.8, is latest, of 2024.07.11; added automatically when using laravel-mix 6)
* sass-loader (^14.2.1, of 2024.04.16; latest is 5, 2024-07-23; added automatically when using laravel-mix 6)
* sass-loader (^14.2.1, of 2024.04.16; latest is 5, of 2024.07.23; added automatically when using laravel-mix 6)
* vue (^3.4.34, is latest, of 2024-07-24)
* vue (^3.4.34, of 2024.07.24; latest is 3.4.35, of 2024.07.31)
* vue-loader (^17.4.2, is latest, of 2023-12-30)
* vue-loader (^17.4.2, is latest, of 2023.12.30)


When NPM evaluates its config file <code>package.json</code> of
When NPM evaluates its config file <code>package.json</code> of
''SDS Laravel'', its declared required JavaScript library dependencies are
''SDS Laravel'', its declared required JavaScript library dependencies are
resolved to 799 packages which are actually installed.
resolved to 797 packages which are actually installed.


The JavaScript source code files of ''SDS Laravel'' contain direct
The JavaScript source code files of ''SDS Laravel'' contain direct
Line 342: Line 336:
When Composer evaluates its config file <code>composer.json</code> of
When Composer evaluates its config file <code>composer.json</code> of
''SDS Gavintech'', its declared required PHP library dependencies are
''SDS Gavintech'', its declared required PHP library dependencies are
resolved to these 34, which are actually installed:
resolved to these 35, which are actually installed:


* carbonphp/carbon-doctrine-types (3.2.0)
* carbonphp/carbon-doctrine-types (3.2.0)
Line 353: Line 347:
* illuminate/pipeline (v8.83.27)
* illuminate/pipeline (v8.83.27)
* illuminate/support (v8.83.27)
* illuminate/support (v8.83.27)
* nesbot/carbon (2.72.3)
* nesbot/carbon (2.72.5)
* psr/clock (1.0.0)
* psr/clock (1.0.0)
* psr/container (1.1.2)
* psr/container (1.1.2)
* psr/simple-cache (1.0.1)
* psr/simple-cache (1.0.1)
* spatie/backtrace (1.6.1)
* spatie/backtrace (1.6.2)
* spatie/flare-client-php (1.6.0)
* spatie/error-solutions (1.1.1)
* spatie/ignition (1.14.1)
* spatie/flare-client-php (1.8.0)
* symfony/console (v6.4.7)
* spatie/ignition (1.15.0)
* symfony/console (v6.4.10)
* symfony/deprecation-contracts (v3.5.0)
* symfony/deprecation-contracts (v3.5.0)
* symfony/http-foundation (v5.4.39)
* symfony/http-foundation (v5.4.42)
* symfony/mime (v5.4.39)
* symfony/mime (v5.4.41)
* symfony/polyfill-ctype (v1.29.0)
* symfony/polyfill-ctype (v1.30.0)
* symfony/polyfill-intl-grapheme (v1.29.0)
* symfony/polyfill-intl-grapheme (v1.30.0)
* symfony/polyfill-intl-idn (v1.29.0)
* symfony/polyfill-intl-idn (v1.30.0)
* symfony/polyfill-intl-normalizer (v1.29.0)
* symfony/polyfill-intl-normalizer (v1.30.0)
* symfony/polyfill-mbstring (v1.29.0)
* symfony/polyfill-mbstring (v1.30.0)
* symfony/polyfill-php72 (v1.29.0)
* symfony/polyfill-php72 (v1.30.0)
* symfony/polyfill-php80 (v1.29.0)
* symfony/polyfill-php80 (v1.30.0)
* symfony/process (v6.4.7)
* symfony/process (v6.4.8)
* symfony/service-contracts (v3.5.0)
* symfony/service-contracts (v3.5.0)
* symfony/string (v6.4.7)
* symfony/string (v6.4.10)
* symfony/translation (v6.4.7)
* symfony/translation (v6.4.10)
* symfony/translation-contracts (v3.5.0)
* symfony/translation-contracts (v3.5.0)
* symfony/var-dumper (v5.4.39)
* symfony/var-dumper (v5.4.42)
* voku/portable-ascii (1.6.1)
* voku/portable-ascii (1.6.1)


Line 441: Line 436:
That includes these versions of the explicitly declared 48:
That includes these versions of the explicitly declared 48:


* @babel/core (^7.24.6)
* @babel/core (^7.25.2)
* @babel/polyfill (^7.12.1)
* @babel/polyfill (^7.12.1)
* @babel/preset-env (^7.24.6)
* @babel/preset-env (^7.25.3)
* @babel/runtime (^7.24.6)
* @babel/runtime (^7.25.0)
* @formkit/pro (^0.119.14)
* @formkit/pro (^0.119.14)
* @formkit/themes (^1.6.3)
* @formkit/themes (^1.6.5)
* @formkit/vue (^1.6.3)
* @formkit/vue (^1.6.5)
* @vue/cli (^5.0.8)
* @vue/cli (^5.0.8)
* @vue/compiler-sfc (^3.4.27)
* @vue/compiler-sfc (^3.4.35)
* @vuepic/vue-datepicker (^5.4.0)
* @vuepic/vue-datepicker (^5.4.0)
* axios (^1.7.2)
* axios (^1.7.3)
* babel-loader (^9.1.3)
* babel-loader (^9.1.3)
* bootstrap (^4.6.2)
* bootstrap (^4.6.2)
Line 469: Line 464:
* node-sass (^8.0.0)
* node-sass (^8.0.0)
* pc-bootstrap4-datetimepicker (^4.17.51)
* pc-bootstrap4-datetimepicker (^4.17.51)
* pinia (^2.1.7)
* pinia (^2.2.0)
* popper.js (^1.16.1)
* popper.js (^1.16.1)
* primeflex (^3.3.1)
* primeflex (^3.3.1)
* primeicons (^6.0.1)
* primeicons (^6.0.1)
* primevue (^3.52.0)
* primevue (^3.53.0)
* qs (^6.12.1)
* qs (^6.13.0)
* resolve-url-loader (^5.0.0)
* resolve-url-loader (^5.0.0)
* sass (^1.77.2)
* sass (^1.77.8)
* sass-loader (^13.3.3)
* sass-loader (^13.3.3)
* tempusdominus-bootstrap-4 (^5.39.2)
* tempusdominus-bootstrap-4 (^5.39.2)
* tempusdominus-core (^5.19.3)
* tempusdominus-core (^5.19.3)
* vee-validate (^4.12.8)
* vee-validate (^4.13.2)
* vue (^3.4.27)
* vue (^3.4.35)
* vue-chartjs (^5.3.1)
* vue-chartjs (^5.3.1)
* vue-loader (^17.4.2)
* vue-loader (^17.4.2)
Line 487: Line 482:
* vue-pagination-3 (^2.0.0-beta01)
* vue-pagination-3 (^2.0.0-beta01)
* vue-template-compiler (^2.7.16)
* vue-template-compiler (^2.7.16)
* webpack (^5.91.0)
* webpack (^5.93.0)
* webpack-cli (^5.1.4)
* webpack-cli (^5.1.4)


[[#top|RETURN]]
[[#top|RETURN]]

Latest revision as of 15:58, 2 August 2024


This document consists of multiple parts; for a directory to all of the parts, see SDSM:Index.

Description

This part of the SDS Modernization (SDSM) document provides information about programming languages and frameworks used by SDS.

RETURN

Programming Languages

SDS is a web application written in 3 main programming languages:

RETURN

SDS Laravel PHP Library Dependencies

The Composer config file composer.json of SDS Laravel explicitly declares that it requires these 16 PHP library dependencies:

  • barryvdh/laravel-debugbar (^3.13.5, is latest, of 2024.04.12)
  • directorytree/ldaprecord-laravel (^3.3.3, is latest, of 2024.06.17)
  • etern8ty/beanstream (dev-master, is custom fork)
  • fakerphp/faker (^1.23.1, is latest, of 2024.01.02)
  • guzzlehttp/guzzle (^7.9.2, is latest, of 2024.07.24)
  • intervention/image-laravel (^1.3, is latest, of 2024.06.15)
  • juliomotol/laravel-auth-timeout (^4.1, is latest, of 2024.04.01)
  • lab404/laravel-impersonate (^1.7.5, is latest, of 2024.03.11)
  • laravel/framework (^10.48.18, is latest PHP 8.1-compatible, of 2024.07.30; latest is 11.19, of 2024.07.30)
  • laravel/tinker (^2.9, is latest, of 2024.01.04)
  • laravel/ui (^4.5.2, is latest, of 2024.05.08; declares itself legacy and recommends using Laravel Breeze or Laravel Jetstream instead)
  • mockery/mockery (^1.6.12, is latest, of 2024.05.16)
  • nunomaduro/collision (^7.10, is latest PHP 8.1-compatible, of 2023.10.11; latest is 8.3, of 2024.07.16)
  • phpunit/phpunit (^10.5.29, is latest PHP 8.1-compatible, of 2024.07.30; latest is 11.3, of 2024.08.02)
  • spatie/laravel-ignition (^2.8, is latest, of 2024.06.12)
  • staudenmeir/eloquent-has-many-deep (^1.19.4, is latest PHP 8.1-compatible, of 2024.05.25; latest is 1.20.2, of 2024.07.12)

When Composer evaluates its config file composer.json of SDS Laravel, its declared required PHP library dependencies are resolved to these 122, which are actually installed:

  • barryvdh/laravel-debugbar (v3.13.5)
  • brick/math (0.12.1)
  • carbonphp/carbon-doctrine-types (2.1.0)
  • dflydev/dot-access-data (v3.0.3)
  • directorytree/ldaprecord (v3.7.0)
  • directorytree/ldaprecord-laravel (v3.3.3)
  • doctrine/inflector (2.0.10)
  • doctrine/lexer (3.0.1)
  • dragonmantank/cron-expression (v3.3.3)
  • egulias/email-validator (4.0.2)
  • etern8ty/beanstream (dev-master 297b986)
  • fakerphp/faker (v1.23.1)
  • filp/whoops (2.15.4)
  • fruitcake/php-cors (v1.3.0)
  • graham-campbell/result-type (v1.1.3)
  • guzzlehttp/guzzle (7.9.2)
  • guzzlehttp/promises (2.0.3)
  • guzzlehttp/psr7 (2.7.0)
  • guzzlehttp/uri-template (v1.0.3)
  • hamcrest/hamcrest-php (v2.0.1)
  • intervention/gif (4.1.0)
  • intervention/image (3.7.2)
  • intervention/image-laravel (1.3.0)
  • juliomotol/laravel-auth-timeout (v4.1.0)
  • lab404/laravel-impersonate (1.7.5)
  • laravel/framework (v10.48.18)
  • laravel/prompts (v0.1.24)
  • laravel/serializable-closure (v1.3.3)
  • laravel/tinker (v2.9.0)
  • laravel/ui (v4.5.2)
  • league/commonmark (2.5.1)
  • league/config (v1.2.0)
  • league/flysystem (3.28.0)
  • league/flysystem-local (3.28.0)
  • league/mime-type-detection (1.15.0)
  • maximebf/debugbar (v1.22.3)
  • mockery/mockery (1.6.12)
  • monolog/monolog (3.7.0)
  • myclabs/deep-copy (1.12.0)
  • nesbot/carbon (2.72.5)
  • nette/schema (v1.3.0)
  • nette/utils (v4.0.4)
  • nikic/php-parser (v5.1.0)
  • nunomaduro/collision (v7.10.0)
  • nunomaduro/termwind (v1.15.1)
  • phar-io/manifest (2.0.4)
  • phar-io/version (3.2.1)
  • phpoption/phpoption (1.9.3)
  • phpunit/php-code-coverage (10.1.15)
  • phpunit/php-file-iterator (4.1.0)
  • phpunit/php-invoker (4.0.0)
  • phpunit/php-text-template (3.0.1)
  • phpunit/php-timer (6.0.0)
  • phpunit/phpunit (10.5.29)
  • psr/clock (1.0.0)
  • psr/container (2.0.2)
  • psr/event-dispatcher (1.0.0)
  • psr/http-client (1.0.3)
  • psr/http-factory (1.1.0)
  • psr/http-message (2.0)
  • psr/log (3.0.0)
  • psr/simple-cache (3.0.0)
  • psy/psysh (v0.12.4)
  • ralouphie/getallheaders (3.0.3)
  • ramsey/collection (2.0.0)
  • ramsey/uuid (4.7.6)
  • sebastian/cli-parser (2.0.1)
  • sebastian/code-unit (2.0.0)
  • sebastian/code-unit-reverse-lookup (3.0.0)
  • sebastian/comparator (5.0.1)
  • sebastian/complexity (3.2.0)
  • sebastian/diff (5.1.1)
  • sebastian/environment (6.1.0)
  • sebastian/exporter (5.1.2)
  • sebastian/global-state (6.0.2)
  • sebastian/lines-of-code (2.0.2)
  • sebastian/object-enumerator (5.0.0)
  • sebastian/object-reflector (3.0.0)
  • sebastian/recursion-context (5.0.0)
  • sebastian/type (4.0.0)
  • sebastian/version (4.0.1)
  • spatie/backtrace (1.6.2)
  • spatie/error-solutions (1.1.1)
  • spatie/flare-client-php (1.8.0)
  • spatie/ignition (1.15.0)
  • spatie/laravel-ignition (2.8.0)
  • spatie/laravel-package-tools (1.16.4)
  • staudenmeir/eloquent-has-many-deep (v1.19.4)
  • staudenmeir/eloquent-has-many-deep-contracts (v1.1)
  • symfony/console (v6.4.10)
  • symfony/css-selector (v6.4.8)
  • symfony/deprecation-contracts (v3.5.0)
  • symfony/error-handler (v6.4.10)
  • symfony/event-dispatcher (v6.4.8)
  • symfony/event-dispatcher-contracts (v3.5.0)
  • symfony/finder (v6.4.10)
  • symfony/http-foundation (v6.4.10)
  • symfony/http-kernel (v6.4.10)
  • symfony/mailer (v6.4.9)
  • symfony/mime (v6.4.9)
  • symfony/polyfill-ctype (v1.30.0)
  • symfony/polyfill-intl-grapheme (v1.30.0)
  • symfony/polyfill-intl-idn (v1.30.0)
  • symfony/polyfill-intl-normalizer (v1.30.0)
  • symfony/polyfill-mbstring (v1.30.0)
  • symfony/polyfill-php72 (v1.30.0)
  • symfony/polyfill-php80 (v1.30.0)
  • symfony/polyfill-php83 (v1.30.0)
  • symfony/polyfill-uuid (v1.30.0)
  • symfony/process (v6.4.8)
  • symfony/routing (v6.4.10)
  • symfony/service-contracts (v3.5.0)
  • symfony/string (v6.4.10)
  • symfony/translation (v6.4.10)
  • symfony/translation-contracts (v3.5.0)
  • symfony/uid (v6.4.8)
  • symfony/var-dumper (v6.4.10)
  • theseer/tokenizer (1.2.3)
  • tijsverkoyen/css-to-inline-styles (v2.2.7)
  • vlucas/phpdotenv (v5.6.1)
  • voku/portable-ascii (2.0.1)
  • webmozart/assert (1.11.0)

The PHP source code files of SDS Laravel contain direct references to a variety of third-party PHP classes, most instances of which are parts of the Laravel framework, and some that aren't. Often their fully-qualified names only appear on the form of use statements but other times those names don't appear in use statements and in the main body of PHP code instead.

Directly used by name in about 800 app PHP files:

  • Illuminate\*
  • Auth aka Illuminate\Support\Facades\Auth
  • DB aka Illuminate\Support\Facades\DB
  • Mail aka Illuminate\Support\Facades\Mail
  • Redirect aka Illuminate\Support\Facades\Redirect
  • URL aka Illuminate\Support\Facades\URL

Directly used by name in app/Models/File.php and app/Http/Controllers/Admin/Migration/ImportPhotosController.php only:

  • \Intervention\Image\Laravel\Facades\Image

Directly used by name in about 70 app PHP classes:

  • Carbon\Carbon
  • Carbon\Exceptions\InvalidFormatException

Directly used by name in 10 app PHP classes:

  • LdapRecord\*

Directly used by name in 5 app PHP classes related to Blackbaud or Bambora:

  • GuzzleHttp\Client
  • GuzzleHttp\Exception\ClientException
  • GuzzleHttp\Exception\GuzzleException

Directly used by name in app/Models/Finance/Bambora.php or app/Http/Controllers/Api/UserProfileController.php only:

  • Beanstream\ApiException
  • Beanstream\Exception
  • Beanstream\Gateway

Directly used by name in 11 php files mostly database/factories/*.php:

  • Faker\Generator

Directly used by name in app/Models/User.php only:

  • Lab404\Impersonate\*

Directly used by name in app/Providers/AppServiceProvider.php only:

  • Dotenv\Dotenv

Directly used by name in app/Models/Pivot/FormCampaignPerson.php only:

  • Staudenmeir\EloquentHasManyDeep\HasRelationships

Directly used by name in app/Http/Middleware/AuthTimeoutMiddleware.php only:

  • JulioMotol\AuthTimeout\Middlewares\CheckAuthTimeout

Directly used by name in app/Exceptions/Handler.php only:

  • Symfony\Component\HttpFoundation\Response

Directly used by name in config/logging.php only:

  • Monolog\Handler\*

Directly used by name in tests/Unit/ExampleTest.php only:

  • PHPUnit\Framework\TestCase

Directly referenced by name COMMENTED-OUT in app/Http/Kernel.php only:

  • Fruitcake\Cors\HandleCors

RETURN

SDS Laravel JavaScript Library Dependencies

The NPM config file package.json of SDS Laravel explicitly declares that it requires these 17 JavaScript library dependencies:

  • @formkit/pro (^0.119.14, of 2024.02.05; latest is 0.126.13, of 2024.07.11)
  • @formkit/themes (^1.6.5, is latest, of 2024.05.28)
  • @formkit/vue (^1.6.5, is latest, of 2024.05.28)
  • @fortawesome/fontawesome-free (^6.6, is latest, of 2024.07.16)
  • axios (^1.7.2, of 2024.05.21; latest is 1.7.3, of 2024.08.01)
  • bootstrap (^4.6.2, of 2022.07.19; latest is 5.3.3, of 2024.02.20)
  • css-loader (^7.1.2, is latest, of 2024.05.22)
  • jquery (^3.7.1, is latest, of 2023.08.28; jquery 4 is in beta-2 as of 2024.07.17)
  • laravel-mix (^6.0.49, is latest, of 2022.06.09)
  • moment (^2.30.1, is latest, of 2023.12.27)
  • popper.js (^1.16.1, is latest, of 2020.01.22; replaced by @popperjs/core, 2.11.8, of 2023.05.26; replaced by @floating-ui/dom, 1.6.5, of 2024.05.05)
  • postcss (^8.4.40, is latest, of 2024.07.24)
  • resolve-url-loader (^5, is latest, of 2022.01.17; added automatically when using laravel-mix 6)
  • sass (^1.77.8, is latest, of 2024.07.11; added automatically when using laravel-mix 6)
  • sass-loader (^14.2.1, of 2024.04.16; latest is 5, of 2024.07.23; added automatically when using laravel-mix 6)
  • vue (^3.4.34, of 2024.07.24; latest is 3.4.35, of 2024.07.31)
  • vue-loader (^17.4.2, is latest, of 2023.12.30)

When NPM evaluates its config file package.json of SDS Laravel, its declared required JavaScript library dependencies are resolved to 797 packages which are actually installed.

The JavaScript source code files of SDS Laravel contain direct references to a variety of third-party JavaScript libraries.

Source file package.json directly invokes these in "scripts":

  • laravel-mix (direct package.json dep used for primary build process)

These libraries in package.json are automatically added to it if missing when executing laravel-mix for the build process (by way of npm run prod or npm run dev); they are not named by source files.

  • resolve-url-loader (direct package.json dep)
  • sass (direct package.json dep; also indirect via sass-loader)
  • sass-loader (direct package.json dep)

Source file webpack.mix.js explicitly "require" or "import" these:

  • laravel-mix (direct package.json dep)
  • (resources/js/app.js)
  • (resources/sass/app.scss)

Source file resources/js/bootstrap.js explicitly "require" or "import" these:

  • axios (direct package.json dep)
  • bootstrap (direct package.json dep)
  • jquery (direct package.json dep; also indirect via multiple other libraries)

Source file resources/js/app.js explicitly "require" or "import" these:

  • @formkit/pro (direct package.json dep)
  • @formkit/themes (direct package.json dep)
  • @formkit/vue (direct package.json dep)
  • @fortawesome/fontawesome-free (direct package.json dep)
  • jquery (direct package.json dep; also indirect via bootstrap 4)
  • vue (direct package.json dep; also indirect via @formkit/vue)
  • (resources/js/bootstrap.js)

Source file resources/sass/app.scss explicitly "require" or "import" these:

  • bootstrap (direct package.json dep)
  • https://fonts.googleapis.com/css?family=Nunito
  • (variables)

RETURN

SDS Gavintech PHP Library Dependencies

The Composer config file composer.json of SDS Gavintech explicitly declares that it requires these 2 PHP library dependencies:

  • facade/flare-client-php (^1.10)
  • spatie/ignition (^1.4)

When Composer evaluates its config file composer.json of SDS Gavintech, its declared required PHP library dependencies are resolved to these 35, which are actually installed:

  • carbonphp/carbon-doctrine-types (3.2.0)
  • doctrine/inflector (2.0.10)
  • facade/flare-client-php (1.10.0)
  • facade/ignition-contracts (1.0.2)
  • illuminate/collections (v8.83.27)
  • illuminate/contracts (v8.83.27)
  • illuminate/macroable (v8.83.27)
  • illuminate/pipeline (v8.83.27)
  • illuminate/support (v8.83.27)
  • nesbot/carbon (2.72.5)
  • psr/clock (1.0.0)
  • psr/container (1.1.2)
  • psr/simple-cache (1.0.1)
  • spatie/backtrace (1.6.2)
  • spatie/error-solutions (1.1.1)
  • spatie/flare-client-php (1.8.0)
  • spatie/ignition (1.15.0)
  • symfony/console (v6.4.10)
  • symfony/deprecation-contracts (v3.5.0)
  • symfony/http-foundation (v5.4.42)
  • symfony/mime (v5.4.41)
  • symfony/polyfill-ctype (v1.30.0)
  • symfony/polyfill-intl-grapheme (v1.30.0)
  • symfony/polyfill-intl-idn (v1.30.0)
  • symfony/polyfill-intl-normalizer (v1.30.0)
  • symfony/polyfill-mbstring (v1.30.0)
  • symfony/polyfill-php72 (v1.30.0)
  • symfony/polyfill-php80 (v1.30.0)
  • symfony/process (v6.4.8)
  • symfony/service-contracts (v3.5.0)
  • symfony/string (v6.4.10)
  • symfony/translation (v6.4.10)
  • symfony/translation-contracts (v3.5.0)
  • symfony/var-dumper (v5.4.42)
  • voku/portable-ascii (1.6.1)

RETURN

SDS Gavintech JavaScript Library Dependencies

The NPM config file package.json of SDS Gavintech explicitly declares that it requires these 48 JavaScript library dependencies:

  • @babel/core (^7.10.2)
  • @babel/polyfill (^7.10.1)
  • @babel/preset-env (^7.10.2)
  • @babel/runtime (^7.10.2)
  • @formkit/pro (^0.119.2)
  • @formkit/themes (^1.4.0)
  • @formkit/vue (^1.4.0)
  • @vue/cli (^5.0.8)
  • @vue/compiler-sfc (^3.2.47)
  • @vuepic/vue-datepicker (^5.4.0)
  • axios (^1.3.4)
  • babel-loader (^9.1.2)
  • bootstrap (^4.5.0)
  • bootstrap-select (^1.13.17)
  • bootstrap-vue (^2.15.0)
  • chart.js (4.2.1)
  • chartjs-adapter-moment (^1.0.1)
  • coffeescript (^2.5.1)
  • core-js (^3.29.1)
  • cross-env (^7.0.2)
  • dotenv-safe (^8.2.0)
  • fs (0.0.1-security)
  • jquery (^3.5.1)
  • laravel-mix (^6.0.49)
  • lodash (^4.17.15)
  • moment (^2.26.0)
  • node-sass (^8.0.0)
  • pc-bootstrap4-datetimepicker (^4.17.51)
  • pinia (^2.1.6)
  • popper.js (^1.16.1)
  • primeflex (^3.3.0)
  • primeicons (^6.0.1)
  • primevue (^3.27.0)
  • qs (^6.9.4)
  • resolve-url-loader (^5.0.0)
  • sass (^1.26.8)
  • sass-loader (^13.2.1)
  • tempusdominus-bootstrap-4 (^5.1.2)
  • tempusdominus-core (^5.0.3)
  • vee-validate (^4.8.3)
  • vue (^3.2.47)
  • vue-chartjs (^5.2.0)
  • vue-loader (^17.0.1)
  • vue-numeric (^2.3.0)
  • vue-pagination-3 (^2.0.0-beta01)
  • vue-template-compiler (^2.6.11)
  • webpack (^5.80.0)
  • webpack-cli (^5.0.1)

When NPM evaluates its config file package.json of SDS Gavintech, its declared required JavaScript library dependencies are resolved to approximately 1559 which are actually installed.

That includes these versions of the explicitly declared 48:

  • @babel/core (^7.25.2)
  • @babel/polyfill (^7.12.1)
  • @babel/preset-env (^7.25.3)
  • @babel/runtime (^7.25.0)
  • @formkit/pro (^0.119.14)
  • @formkit/themes (^1.6.5)
  • @formkit/vue (^1.6.5)
  • @vue/cli (^5.0.8)
  • @vue/compiler-sfc (^3.4.35)
  • @vuepic/vue-datepicker (^5.4.0)
  • axios (^1.7.3)
  • babel-loader (^9.1.3)
  • bootstrap (^4.6.2)
  • bootstrap-select (^1.13.18)
  • bootstrap-vue (^2.23.1)
  • chart.js (^4.2.1)
  • chartjs-adapter-moment (^1.0.1)
  • coffeescript (^2.7.0)
  • core-js (^3.37.1)
  • cross-env (^7.0.3)
  • dotenv-safe (^8.2.0)
  • fs (^0.0.1-security)
  • jquery (^3.7.1)
  • laravel-mix (^6.0.49)
  • lodash (^4.17.21)
  • moment (^2.30.1)
  • node-sass (^8.0.0)
  • pc-bootstrap4-datetimepicker (^4.17.51)
  • pinia (^2.2.0)
  • popper.js (^1.16.1)
  • primeflex (^3.3.1)
  • primeicons (^6.0.1)
  • primevue (^3.53.0)
  • qs (^6.13.0)
  • resolve-url-loader (^5.0.0)
  • sass (^1.77.8)
  • sass-loader (^13.3.3)
  • tempusdominus-bootstrap-4 (^5.39.2)
  • tempusdominus-core (^5.19.3)
  • vee-validate (^4.13.2)
  • vue (^3.4.35)
  • vue-chartjs (^5.3.1)
  • vue-loader (^17.4.2)
  • vue-numeric (^2.5.1)
  • vue-pagination-3 (^2.0.0-beta01)
  • vue-template-compiler (^2.7.16)
  • webpack (^5.93.0)
  • webpack-cli (^5.1.4)

RETURN