Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

'Cannot start session when headers already sent' on run Unit Test #476

Open
eliasjtg opened this issue Nov 6, 2019 · 6 comments
Open

'Cannot start session when headers already sent' on run Unit Test #476

eliasjtg opened this issue Nov 6, 2019 · 6 comments

Comments

@eliasjtg
Copy link

eliasjtg commented Nov 6, 2019

Describe the bug
On run unit test this fails with the log:

[2019-11-06 14:28:11] testing.ERROR: session_start(): Cannot start session when headers already sent {"exception":"[object] (ErrorException(code: 0): session_start(): Cannot start session when headers already sent at /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/support/src/PhpSession.php:23)
[stacktrace]
#0 [internal function]: Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(2, 'session_start()...', '/home/vagrant/c...', 23, Array)
#1 /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/support/src/PhpSession.php(23): session_start()
#2 /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/support/src/PhpSession.php(14): PragmaRX\\Support\\PhpSession->startSession()
#3 /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php(287): PragmaRX\\Support\\PhpSession->__construct()
#4 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(800): PragmaRX\\Tracker\\Vendor\\Laravel\\ServiceProvider->PragmaRX\\Tracker\\Vendor\\Laravel\\{closure}(Object(Illuminate\\Foundation\\Application), Array)
#5 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(682): Illuminate\\Container\\Container->build(Object(Closure))
#6 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(630): Illuminate\\Container\\Container->resolve('tracker.reposit...', Array)
#7 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(768): Illuminate\\Container\\Container->make('tracker.reposit...', Array)
#8 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(1246): Illuminate\\Foundation\\Application->make('tracker.reposit...')
#9 /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php(160): Illuminate\\Container\\Container->offsetGet('tracker.reposit...')
#10 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(800): PragmaRX\\Tracker\\Vendor\\Laravel\\ServiceProvider->PragmaRX\\Tracker\\Vendor\\Laravel\\{closure}(Object(Illuminate\\Foundation\\Application), Array)
#11 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(682): Illuminate\\Container\\Container->build(Object(Closure))
#12 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(630): Illuminate\\Container\\Container->resolve('tracker', Array)
#13 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(768): Illuminate\\Container\\Container->make('tracker', Array)
#14 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(1246): Illuminate\\Foundation\\Application->make('tracker')
#15 /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php(639): Illuminate\\Container\\Container->offsetGet('tracker')
#16 /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php(397): PragmaRX\\Tracker\\Vendor\\Laravel\\ServiceProvider->getTracker()
#17 /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php(82): PragmaRX\\Tracker\\Vendor\\Laravel\\ServiceProvider->registerErrorHandler()
#18 [internal function]: PragmaRX\\Tracker\\Vendor\\Laravel\\ServiceProvider->boot()
#19 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(32): call_user_func_array(Array, Array)
#20 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(520): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#21 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(90): value(Object(Closure))
#22 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(34): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(Illuminate\\Foundation\\Application), Array, Object(Closure))
#23 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(591): Illuminate\\Container\\BoundMethod::call(Object(Illuminate\\Foundation\\Application), Array, Array, NULL)
#24 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(828): Illuminate\\Container\\Container->call(Array)
#25 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(811): Illuminate\\Foundation\\Application->bootProvider(Object(PragmaRX\\Tracker\\Vendor\\Laravel\\ServiceProvider))
#26 [internal function]: Illuminate\\Foundation\\Application->Illuminate\\Foundation\\{closure}(Object(PragmaRX\\Tracker\\Vendor\\Laravel\\ServiceProvider), 34)
#27 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(812): array_walk(Array, Object(Closure))
#28 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/BootProviders.php(17): Illuminate\\Foundation\\Application->boot()
#29 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(211): Illuminate\\Foundation\\Bootstrap\\BootProviders->bootstrap(Object(Illuminate\\Foundation\\Application))
#30 /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(320): Illuminate\\Foundation\\Application->bootstrapWith(Array)
#31 /home/vagrant/code/vakeromagazine-backend/tests/CreatesApplication.php(18): Illuminate\\Foundation\\Console\\Kernel->bootstrap()
#32 /home/vagrant/code/vakeromagazine-backend/tests/Bootstrap.php(34): Tests\\Bootstrap->createApplication()
#33 /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(612): Tests\\Bootstrap->executeBeforeFirstTest()
#34 /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/TextUI/Command.php(200): PHPUnit\\TextUI\\TestRunner->doRun(Object(PHPUnit\\Framework\\TestSuite), Array, true)
#35 /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/TextUI/Command.php(159): PHPUnit\\TextUI\\Command->run(Array, true)
#36 /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/phpunit(61): PHPUnit\\TextUI\\Command::main()
#37 {main}
"} 

To Reproduce
Steps to reproduce the behavior:

  1. Install with composer require pragmarx/tracker

  2. Add the service provider to app/config/app.php:
    PragmaRX\Tracker\Vendor\Laravel\ServiceProvider::class

  3. Add the alias to the facade on app/config/app.php:
    'Tracker' => 'PragmaRX\Tracker\Vendor\Laravel\Facade'

  4. Publish tracker configuration:
    php artisan vendor:publish --provider="PragmaRX\Tracker\Vendor\Laravel\ServiceProvider"

  5. Enable the Middleware in app/config/tracker.php:
    'use_middleware' => true,

  6. Add the Middleware to Laravel Kernel:
    \PragmaRX\Tracker\Vendor\Laravel\Middlewares\Tracker::class,

  7. Enable Tracker in tracker.php:
    'enabled' => true,

  8. Publish the migration:
    php artisan tracker:tables

  9. Config database.php:
    'tracker' => [ 'driver' => 'mysql', 'url' => env('DATABASE_TRACK_URL', env('DATABASE_URL')), 'host' => env('DB_TRACK_HOST', env('DB_HOST', '127.0.0.1')), 'port' => env('DB_TRACK_PORT', env('DB_PORT', '3306')), 'database' => env('DB_TRACK_DATABASE' ,env('DB_DATABASE', 'forge')), 'username' => env('DB_TRACK_USERNAME', env('DB_USERNAME', 'forge')), 'password' => env('DB_TRACK_PASSWORD', env('DB_PASSWORD', '')), 'unix_socket' => env('DB_TRACK_SOCKET', env('DB_SOCKET', '')), 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'prefix_indexes' => false, 'strict' => false, 'engine' => 'InnoDB', 'options' => extension_loaded('pdo_mysql') ? array_filter([ PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), ]) : [], ],

  10. Migrate:
    php artisan migrate

  11. Enable configurations:
    `
    'cache_enabled' => true,
    'log_enabled' => true,
    'log_user_agents' => true,
    'log_devices' => true,
    'log_referers' => true,
    'log_paths' => true,
    'log_routes' => true,
    'log_exceptions' => true,

    'user_model' => 'App\Entities\User',
    `

  12. Run tests:
    phpunit

Expected behavior
Tests run normally

Screenshots
Gitlab CI
GitLab CI

System

  • OS: MacOS
  • Browser: Chrome
  • Version: 78

Additional context
PHP 7.3.7
Laravel 6
PHPUnit 8.4.2

@eliasjtg
Copy link
Author

eliasjtg commented Nov 6, 2019

One solution is change PragmaRX\Support\PhpSession:27:

private function isStarted()
{
	return session_status() === PHP_SESSION_ACTIVE || session_status() === PHP_SESSION_NONE;
}

@eliasjtg
Copy link
Author

eliasjtg commented Nov 6, 2019

One solution is change PragmaRX\Support\PhpSession:27:

private function isStarted()
{
	return session_status() === PHP_SESSION_ACTIVE || session_status() === PHP_SESSION_NONE;
}

I dont know if this cause it, but if change config/tracker.php:

'log_exceptions' => true,

The test starts run but trow this exception:

...............................................................  63 / 212 ( 29%)
............................................................... 126 / 212 ( 59%)
............................................................... 189 / 212 ( 89%)
.PHP Fatal error:  Allowed memory size of 536870912 bytes exhausted (tried to allocate 20480 bytes) in /home/vagrant/code/vakeromagazine-backend/vendor/ua-parser/uap-php/resources/regexes.php on line 7
PHP Stack trace:
PHP   1. {main}() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/phpunit:0
PHP   2. PHPUnit\TextUI\Command::main() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/phpunit:61
PHP   3. PHPUnit\TextUI\Command->run() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/TextUI/Command.php:159
PHP   4. PHPUnit\TextUI\TestRunner->doRun() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/TextUI/Command.php:200
PHP   5. PHPUnit\Framework\TestSuite->run() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/TextUI/TestRunner.php:616
PHP   6. PHPUnit\Framework\TestSuite->run() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/Framework/TestSuite.php:569
PHP   7. PHPUnit\Framework\TestSuite->run() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/Framework/TestSuite.php:569
PHP   8. Tests\Feature\Admin\User\ReadTest->run() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/Framework/TestSuite.php:569
PHP   9. PHPUnit\Framework\TestResult->run() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/Framework/TestCase.php:752
PHP  10. Tests\Feature\Admin\User\ReadTest->runBare() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/Framework/TestResult.php:691
PHP  11. Tests\Feature\Admin\User\ReadTest->setUp() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/Framework/TestCase.php:1016
PHP  12. Tests\Feature\Admin\User\ReadTest->refreshApplication() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Testing/TestCase.php:79
PHP  13. Tests\Feature\Admin\User\ReadTest->createApplication() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Testing/TestCase.php:102
PHP  14. App\Console\Kernel->bootstrap() /home/vagrant/code/vakeromagazine-backend/tests/CreatesApplication.php:18
PHP  15. Illuminate\Foundation\Application->bootstrapWith() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:320
PHP  16. Illuminate\Foundation\Bootstrap\BootProviders->bootstrap() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:211
PHP  17. Illuminate\Foundation\Application->boot() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/BootProviders.php:17
PHP  18. array_walk() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:812
PHP  19. Illuminate\Foundation\Application->Illuminate\Foundation\{closure:/home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:810-812}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:812
PHP  20. Illuminate\Foundation\Application->bootProvider() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:811
PHP  21. Illuminate\Foundation\Application->call() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:828
PHP  22. Illuminate\Container\BoundMethod::call() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:591
PHP  23. Illuminate\Container\BoundMethod::callBoundMethod() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:34
PHP  24. value() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:90
PHP  25. Illuminate\Container\BoundMethod::Illuminate\Container\{closure:/home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:30-34}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php:520
PHP  26. call_user_func_array:{/home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:32}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:32
PHP  27. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->boot() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:32
PHP  28. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->registerErrorHandler() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:82
PHP  29. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->getTracker() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:397
PHP  30. Illuminate\Foundation\Application->offsetGet() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:639
PHP  31. Illuminate\Foundation\Application->make() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1246
PHP  32. Illuminate\Foundation\Application->make() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:768
PHP  33. Illuminate\Foundation\Application->resolve() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:630
PHP  34. Illuminate\Foundation\Application->build() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:682
PHP  35. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->PragmaRX\Tracker\Vendor\Laravel\{closure:/home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:155-167}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:800
PHP  36. Illuminate\Foundation\Application->offsetGet() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:160
PHP  37. Illuminate\Foundation\Application->make() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1246
PHP  38. Illuminate\Foundation\Application->make() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:768
PHP  39. Illuminate\Foundation\Application->resolve() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:630
PHP  40. Illuminate\Foundation\Application->build() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:682
PHP  41. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->PragmaRX\Tracker\Vendor\Laravel\{closure:/home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:172-351}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:800
PHP  42. PragmaRX\Tracker\Support\UserAgentParser->__construct() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:174
PHP  43. UAParser\AbstractParser::create() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Support/UserAgentParser.php:25
PHP  44. UAParser\AbstractParser::createDefault() /home/vagrant/code/vakeromagazine-backend/vendor/ua-parser/uap-php/src/AbstractParser.php:38
PHP  45. UAParser\AbstractParser::createInstance() /home/vagrant/code/vakeromagazine-backend/vendor/ua-parser/uap-php/src/AbstractParser.php:49
PHP Fatal error:  Allowed memory size of 536870912 bytes exhausted (tried to allocate 32768 bytes) in /home/vagrant/code/vakeromagazine-backend/vendor/ua-parser/uap-php/resources/regexes.php on line 618
PHP Stack trace:
PHP   1. {main}() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/phpunit:0
PHP   2. PHPUnit\TextUI\Command::main() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/phpunit:61
PHP   3. PHPUnit\TextUI\Command->run() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/TextUI/Command.php:159
PHP   4. PHPUnit\TextUI\TestRunner->doRun() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/TextUI/Command.php:200
PHP   5. PHPUnit\Framework\TestSuite->run() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/TextUI/TestRunner.php:616
PHP   6. PHPUnit\Framework\TestSuite->run() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/Framework/TestSuite.php:569
PHP   7. PHPUnit\Framework\TestSuite->run() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/Framework/TestSuite.php:569
PHP   8. Tests\Feature\Admin\User\ReadTest->run() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/Framework/TestSuite.php:569
PHP   9. PHPUnit\Framework\TestResult->run() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/Framework/TestCase.php:752
PHP  10. Tests\Feature\Admin\User\ReadTest->runBare() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/Framework/TestResult.php:691
PHP  11. Tests\Feature\Admin\User\ReadTest->setUp() /home/vagrant/code/vakeromagazine-backend/vendor/phpunit/phpunit/src/Framework/TestCase.php:1016
PHP  12. Tests\Feature\Admin\User\ReadTest->refreshApplication() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Testing/TestCase.php:79
PHP  13. Tests\Feature\Admin\User\ReadTest->createApplication() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Testing/TestCase.php:102
PHP  14. App\Console\Kernel->bootstrap() /home/vagrant/code/vakeromagazine-backend/tests/CreatesApplication.php:18
PHP  15. Illuminate\Foundation\Application->bootstrapWith() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:320
PHP  16. Illuminate\Foundation\Bootstrap\BootProviders->bootstrap() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:211
PHP  17. Illuminate\Foundation\Application->boot() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/BootProviders.php:17
PHP  18. array_walk() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:812
PHP  19. Illuminate\Foundation\Application->Illuminate\Foundation\{closure:/home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:810-812}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:812
PHP  20. Illuminate\Foundation\Application->bootProvider() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:811
PHP  21. Illuminate\Foundation\Application->call() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:828
PHP  22. Illuminate\Container\BoundMethod::call() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:591
PHP  23. Illuminate\Container\BoundMethod::callBoundMethod() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:34
PHP  24. value() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:90
PHP  25. Illuminate\Container\BoundMethod::Illuminate\Container\{closure:/home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:30-34}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php:520
PHP  26. call_user_func_array:{/home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:32}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:32
PHP  27. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->boot() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:32
PHP  28. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->registerErrorHandler() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:82
PHP  29. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->getTracker() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:397
PHP  30. Illuminate\Foundation\Application->offsetGet() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:639
PHP  31. Illuminate\Foundation\Application->make() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1246
PHP  32. Illuminate\Foundation\Application->make() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:768
PHP  33. Illuminate\Foundation\Application->resolve() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:630
PHP  34. Illuminate\Foundation\Application->build() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:682
PHP  35. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->PragmaRX\Tracker\Vendor\Laravel\{closure:/home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:155-167}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:800
PHP  36. Illuminate\Foundation\Application->offsetGet() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:160
PHP  37. Illuminate\Foundation\Application->make() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1246
PHP  38. Illuminate\Foundation\Application->make() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:768
PHP  39. Illuminate\Foundation\Application->resolve() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:630
PHP  40. Illuminate\Foundation\Application->build() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:682
PHP  41. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->PragmaRX\Tracker\Vendor\Laravel\{closure:/home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:172-351}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:800
PHP  42. PragmaRX\Tracker\Support\UserAgentParser->__construct() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:174
PHP  43. UAParser\AbstractParser::create() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Support/UserAgentParser.php:25
PHP  44. UAParser\AbstractParser::createDefault() /home/vagrant/code/vakeromagazine-backend/vendor/ua-parser/uap-php/src/AbstractParser.php:38
PHP  45. UAParser\AbstractParser::createInstance() /home/vagrant/code/vakeromagazine-backend/vendor/ua-parser/uap-php/src/AbstractParser.php:49
PHP  46. Illuminate\Foundation\Bootstrap\HandleExceptions->handleShutdown() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:0
PHP  47. Illuminate\Foundation\Bootstrap\HandleExceptions->handleException() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:134
PHP  48. PragmaRX\Tracker\Support\Exceptions\Handler->report() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:92
PHP  49. PragmaRX\Tracker\Tracker->handleException() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Support/Exceptions/Handler.php:64
PHP  50. PragmaRX\Tracker\Data\RepositoryManager->handleException() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Tracker.php:282
PHP  51. PragmaRX\Tracker\Data\Repositories\Error->findOrCreate() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Data/RepositoryManager.php:652
PHP  52. Illuminate\Database\Eloquent\Builder->first() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Data/Repositories/Repository.php:127
PHP  53. Illuminate\Database\Eloquent\Builder->get() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php:143
PHP  54. Illuminate\Database\Eloquent\Builder->getModels() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:505
PHP  55. Illuminate\Database\Query\Builder->get() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:521
PHP  56. Illuminate\Database\Query\Builder->onceWithColumns() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2119
PHP  57. Illuminate\Database\Query\Builder->Illuminate\Database\Query\{closure:/home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2117-2119}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2584
PHP  58. Illuminate\Database\Query\Builder->runSelect() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2118
PHP  59. Illuminate\Database\MySqlConnection->select() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2130
PHP  60. Illuminate\Database\MySqlConnection->run() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:334
PHP  61. Illuminate\Database\MySqlConnection->logQuery() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:636
PHP  62. Illuminate\Database\MySqlConnection->event() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:683
PHP  63. Illuminate\Events\Dispatcher->dispatch() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:829
PHP  64. Illuminate\Events\Dispatcher->Illuminate\Events\{closure:/home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Events/Dispatcher.php:342-348}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Events/Dispatcher.php:196
PHP  65. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->PragmaRX\Tracker\Vendor\Laravel\{closure:/home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:444-446}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Events/Dispatcher.php:347
PHP  66. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->logSqlQuery() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:445
PHP  67. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->getTracker() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:459
PHP  68. Illuminate\Foundation\Application->offsetGet() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:639
PHP  69. Illuminate\Foundation\Application->make() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1246
PHP  70. Illuminate\Foundation\Application->make() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:768
PHP  71. Illuminate\Foundation\Application->resolve() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:630
PHP  72. Illuminate\Foundation\Application->build() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:682
PHP  73. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->PragmaRX\Tracker\Vendor\Laravel\{closure:/home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:155-167}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:800
PHP  74. Illuminate\Foundation\Application->offsetGet() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:160
PHP  75. Illuminate\Foundation\Application->make() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1246
PHP  76. Illuminate\Foundation\Application->make() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:768
PHP  77. Illuminate\Foundation\Application->resolve() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:630
PHP  78. Illuminate\Foundation\Application->build() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:682
PHP  79. PragmaRX\Tracker\Vendor\Laravel\ServiceProvider->PragmaRX\Tracker\Vendor\Laravel\{closure:/home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:172-351}() /home/vagrant/code/vakeromagazine-backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:800
PHP  80. PragmaRX\Tracker\Support\UserAgentParser->__construct() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Vendor/Laravel/ServiceProvider.php:174
PHP  81. UAParser\AbstractParser::create() /home/vagrant/code/vakeromagazine-backend/vendor/pragmarx/tracker/src/Support/UserAgentParser.php:25
PHP  82. UAParser\AbstractParser::createDefault() /home/vagrant/code/vakeromagazine-backend/vendor/ua-parser/uap-php/src/AbstractParser.php:38
PHP  83. UAParser\AbstractParser::createInstance() /home/vagrant/code/vakeromagazine-backend/vendor/ua-parser/uap-php/src/AbstractParser.php:49

@erikhu
Copy link

erikhu commented Oct 30, 2020

hello @eliasjtg how did you solve it?

@erikhu
Copy link

erikhu commented Nov 3, 2020

One solution is change PragmaRX\Support\PhpSession:27:

private function isStarted()
{
	return session_status() === PHP_SESSION_ACTIVE || session_status() === PHP_SESSION_NONE;
}

i don't think this is a solution, it works but when i am doing a deploy it download the lib each time. tests keep going fail

@shawngoh87
Copy link

One solution is change PragmaRX\Support\PhpSession:27:

private function isStarted()
{
	return session_status() === PHP_SESSION_ACTIVE || session_status() === PHP_SESSION_NONE;
}

@antonioribeiro @erikhu
this solution works. Any input on this?
Or should we check against PHP_SAPI instead?

Opened a pull request on this in pragmarx/support.

@erikhu
Copy link

erikhu commented Dec 22, 2020

@shawngoh87 i thought the same but the problem is that if it is not started a session it must be create it, so the code in line 21 of PhpSession.php will not start a session if PHP_SESSION_NONE is true, remember this global means no exist session, so the original code i think is okey.
probably the problem is of implementation or logic, i decided to create me own tracker system, actually it didn't take me more than some hours, instead this library took me many hours and i never could get a good test

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants