Error 500 Internal Server Error

GET https://neuroscope.cloud/login

Forwarded to ErrorController (ed8455)

Exceptions

Did you forget to run "composer require symfony/twig-bundle"? Unknown function "importmap" in base.html.twig at line 1.

Exception

Twig\Error\ SyntaxError

Show exception properties
Twig\Error\SyntaxError {#1286
  -lineno: 1
  -rawMessage: "Did you forget to run "composer require symfony/twig-bundle"? Unknown function "importmap"."
  -source: Twig\Source {#854
    -code: """
      <!DOCTYPE html>\n
      <html>\n
          <head>\n
              <meta charset="UTF-8">\n
              <title>{% block title %}Welcome!{% endblock %}</title>\n
              <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet">\n
              <link rel="icon" href="data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 128 128%22><text y=%221.2em%22 font-size=%2296%22>⚫️</text><text y=%221.3em%22 x=%220.2em%22 font-size=%2276%22 fill=%22%23fff%22>sf</text></svg>">\n
              {% block stylesheets %}\n
                  {{ encore_entry_link_tags('app') }}\n
              {% endblock %}\n
      \n
              {% block javascripts %}\n
                  {% block importmap %}{{ importmap('app') }}{% endblock %}\n
                  {{ encore_entry_script_tags('app') }}\n
              {% endblock %}\n
          </head>\n
          <body>\n
              {% block body %}{% endblock %}\n
          </body>\n
      </html>\n
      """
    -name: "base.html.twig"
    -path: "/app-dev/neuroscope-web/templates/base.html.twig"
  }
  -phpFile: "/app-dev/neuroscope-web/vendor/symfony/twig-bridge/UndefinedCallableHandler.php"
  -phpLine: 113
}
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>{% block title %}Welcome!{% endblock %}</title>
  6. <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet">
  1. $environment->getExtension(CoreExtension::class)->setNumberFormat($this->decimals, $this->decimalPoint, $this->thousandsSeparator);
  2. // wrap UndefinedCallableHandler in closures for lazy-autoloading
  3. $environment->registerUndefinedFilterCallback(fn ($name) => UndefinedCallableHandler::onUndefinedFilter($name));
  4. $environment->registerUndefinedFunctionCallback(fn ($name) => UndefinedCallableHandler::onUndefinedFunction($name));
  5. }
  6. }
in vendor/twig/twig/src/ExtensionSet.php -> {closure:Symfony\Bundle\TwigBundle\DependencyInjection\Configurator\EnvironmentConfigurator::configure():47} (line 205)
  1. return $function->withDynamicArguments($name, $function->getName(), $matches);
  2. }
  3. }
  4. foreach ($this->functionCallbacks as $callback) {
  5. if (false !== $function = $callback($name)) {
  6. return $function;
  7. }
  8. }
  9. return null;
in vendor/twig/twig/src/Environment.php -> getFunction (line 851)
  1. /**
  2. * @internal
  3. */
  4. public function getFunction(string $name): ?TwigFunction
  5. {
  6. return $this->extensionSet->getFunction($name);
  7. }
  8. /**
  9. * @param callable(string): (TwigFunction|false) $callable
  10. */
in vendor/twig/twig/src/Parser.php -> getFunction (line 439)
  1. }
  2. public function getFunction(string $name, int $line): TwigFunction
  3. {
  4. try {
  5. $function = $this->env->getFunction($name);
  6. } catch (SyntaxError $e) {
  7. if (!$this->shouldIgnoreUnknownTwigCallables()) {
  8. throw $e;
  9. }
  1. return new MacroReferenceExpression($alias['node']->getNode('var'), $alias['name'], $this->parseCallableArguments($parser, $line, false), $line);
  2. }
  3. $args = $this->parseNamedArguments($parser, false);
  4. $function = $parser->getFunction($name, $line);
  5. if ($function->getParserCallable()) {
  6. $fakeNode = new EmptyNode($line);
  7. $fakeNode->setSourceContext($parser->getStream()->getSourceContext());
in vendor/twig/twig/src/Parser.php -> parse (line 390)
  1. }
  2. $token = $this->getCurrentToken();
  3. while ($token->test(Token::OPERATOR_TYPE) && ($ep = $this->parsers->getByName(InfixExpressionParserInterface::class, $token->getValue())) && $ep->getPrecedence() >= $precedence) {
  4. $this->getStream()->next();
  5. $expr = $ep->parse($this, $expr, $token);
  6. $this->checkPrecedenceDeprecations($ep, $expr);
  7. $token = $this->getCurrentToken();
  8. }
  9. return $expr;
in vendor/twig/twig/src/Parser.php -> parseExpression (line 180)
  1. $rv[] = new TextNode($token->getValue(), $token->getLine());
  2. break;
  3. case $this->stream->getCurrent()->test(Token::VAR_START_TYPE):
  4. $token = $this->stream->next();
  5. $expr = $this->parseExpression();
  6. $this->stream->expect(Token::VAR_END_TYPE);
  7. $rv[] = new PrintNode($expr, $token->getLine());
  8. break;
  9. case $this->stream->getCurrent()->test(Token::BLOCK_START_TYPE):
  1. $this->parser->setBlock($name, $block = new BlockNode($name, new EmptyNode(), $lineno));
  2. $this->parser->pushLocalScope();
  3. $this->parser->pushBlockStack($name);
  4. if ($stream->nextIf(Token::BLOCK_END_TYPE)) {
  5. $body = $this->parser->subparse([$this, 'decideBlockEnd'], true);
  6. if ($token = $stream->nextIf(Token::NAME_TYPE)) {
  7. $value = $token->getValue();
  8. if ($value != $name) {
  9. throw new SyntaxError(\sprintf('Expected endblock for block "%s" (but "%s" given).', $name, $value), $stream->getCurrent()->getLine(), $stream->getSourceContext());
in vendor/twig/twig/src/Parser.php -> parse (line 224)
  1. }
  2. $this->stream->next();
  3. $subparser->setParser($this);
  4. $node = $subparser->parse($token);
  5. if (!$node) {
  6. trigger_deprecation('twig/twig', '3.12', 'Returning "null" from "%s" is deprecated and forbidden by "TokenParserInterface".', $subparser::class);
  7. } else {
  8. $node->setNodeTag($subparser->getTag());
  9. $rv[] = $node;
  1. $this->parser->setBlock($name, $block = new BlockNode($name, new EmptyNode(), $lineno));
  2. $this->parser->pushLocalScope();
  3. $this->parser->pushBlockStack($name);
  4. if ($stream->nextIf(Token::BLOCK_END_TYPE)) {
  5. $body = $this->parser->subparse([$this, 'decideBlockEnd'], true);
  6. if ($token = $stream->nextIf(Token::NAME_TYPE)) {
  7. $value = $token->getValue();
  8. if ($value != $name) {
  9. throw new SyntaxError(\sprintf('Expected endblock for block "%s" (but "%s" given).', $name, $value), $stream->getCurrent()->getLine(), $stream->getSourceContext());
in vendor/twig/twig/src/Parser.php -> parse (line 224)
  1. }
  2. $this->stream->next();
  3. $subparser->setParser($this);
  4. $node = $subparser->parse($token);
  5. if (!$node) {
  6. trigger_deprecation('twig/twig', '3.12', 'Returning "null" from "%s" is deprecated and forbidden by "TokenParserInterface".', $subparser::class);
  7. } else {
  8. $node->setNodeTag($subparser->getTag());
  9. $rv[] = $node;
in vendor/twig/twig/src/Parser.php -> subparse (line 104)
  1. $this->importedSymbols = [[]];
  2. $this->embeddedTemplates = [];
  3. $this->expressionRefs = new \WeakMap();
  4. try {
  5. $body = $this->subparse($test, $dropNeedle);
  6. if (null !== $this->parent && null === $body = $this->filterBodyNodes($body)) {
  7. $body = new EmptyNode();
  8. }
  9. } catch (SyntaxError $e) {
  1. {
  2. if (null === $this->parser) {
  3. $this->parser = new Parser($this);
  4. }
  5. return $this->parser->parse($stream);
  6. }
  7. /**
  8. * @return void
  9. */
  1. * @throws SyntaxError When there was an error during tokenizing, parsing or compiling
  2. */
  3. public function compileSource(Source $source): string
  4. {
  5. try {
  6. return $this->compile($this->parse($this->tokenize($source)));
  7. } catch (Error $e) {
  8. $e->setSourceContext($source);
  9. throw $e;
  10. } catch (\Exception $e) {
  11. throw new SyntaxError(\sprintf('An exception has been thrown during the compilation of a template ("%s").', $e->getMessage()), -1, $source, $e);
in vendor/twig/twig/src/Environment.php -> compileSource (line 408)
  1. $this->cache->load($key);
  2. }
  3. if (!class_exists($cls, false)) {
  4. $source = $this->getLoader()->getSourceContext($name);
  5. $content = $this->compileSource($source);
  6. if (!isset($this->hotCache[$name])) {
  7. $this->cache->write($key, $content);
  8. $this->cache->load($key);
  9. }
in vendor/twig/twig/src/Template.php -> loadTemplate (line 293)
  1. }
  2. } else {
  3. $class = $this->env->getTemplateClass($template);
  4. }
  5. return $this->env->loadTemplate($class, $template, $index);
  6. } catch (Error $e) {
  7. if (!$e->getSourceContext()) {
  8. $e->setSourceContext($this->getSourceContext());
  9. }
  1. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "login/login.html.twig"));
  2. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  3. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "login/login.html.twig"));
  4. $this->parent = $this->load("base.html.twig", 1);
  5. yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));
  6. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
in vendor/twig/twig/src/Template.php -> doDisplay (line 402)
  1. {
  2. $context += $this->env->getGlobals();
  3. $blocks = array_merge($this->blocks, $blocks);
  4. try {
  5. yield from $this->doDisplay($context, $blocks);
  6. } catch (Error $e) {
  7. if (!$e->getSourceContext()) {
  8. $e->setSourceContext($this->getSourceContext());
  9. }
  1. return $this->blocks;
  2. }
  3. public function display(array $context, array $blocks = []): void
  4. {
  5. foreach ($this->yield($context, $blocks) as $data) {
  6. echo $data;
  7. }
  8. }
  9. public function render(array $context): string
in vendor/twig/twig/src/Template.php -> display (line 373)
  1. ob_start();
  2. } else {
  3. ob_start(function () { return ''; });
  4. }
  5. try {
  6. $this->display($context);
  7. } catch (\Throwable $e) {
  8. while (ob_get_level() > $level) {
  9. ob_end_clean();
  10. }
  1. yield from $this->template->yieldBlock($name, $context);
  2. }
  3. public function render(array $context = []): string
  4. {
  5. return $this->template->render($context);
  6. }
  7. /**
  8. * @return void
  9. */
  1. * @throws SyntaxError When an error occurred during compilation
  2. * @throws RuntimeError When an error occurred during rendering
  3. */
  4. public function render($name, array $context = []): string
  5. {
  6. return $this->load($name)->render($context);
  7. }
  8. /**
  9. * Displays a template.
  10. *
  1. if (null !== $block) {
  2. return $this->container->get('twig')->load($view)->renderBlock($block, $parameters);
  3. }
  4. return $this->container->get('twig')->render($view, $parameters);
  5. }
  6. private function doRender(string $view, ?string $block, array $parameters, ?Response $response, string $method): Response
  7. {
  8. $content = $this->doRenderView($view, $block, $parameters, $method);
  1. return $this->container->get('twig')->render($view, $parameters);
  2. }
  3. private function doRender(string $view, ?string $block, array $parameters, ?Response $response, string $method): Response
  4. {
  5. $content = $this->doRenderView($view, $block, $parameters, $method);
  6. $response ??= new Response();
  7. if (200 === $response->getStatusCode()) {
  8. foreach ($parameters as $v) {
  9. if ($v instanceof FormInterface && $v->isSubmitted() && !$v->isValid()) {
  1. * If an invalid form is found in the list of parameters, a 422 status code is returned.
  2. * Forms found in parameters are auto-cast to form views.
  3. */
  4. protected function render(string $view, array $parameters = [], ?Response $response = null): Response
  5. {
  6. return $this->doRender($view, null, $parameters, $response, __FUNCTION__);
  7. }
  8. /**
  9. * Renders a block in a view.
  10. *
AbstractController->render() in src/Controller/LoginController.php (line 51)
  1. $form = $this->createForm(QuestionFormType::class);
  2. //$form->handleRequest($request);
  3. return $this->render('login/login.html.twig', [
  4. 'last_username' => $lastUsername,
  5. 'error' => $error,
  6. 'chart' => $chart,
  7. 'form' => $form->createView(),
  1. $this->dispatcher->dispatch($event, KernelEvents::CONTROLLER_ARGUMENTS);
  2. $controller = $event->getController();
  3. $arguments = $event->getArguments();
  4. // call controller
  5. $response = $controller(...$arguments);
  6. // view
  7. if (!$response instanceof Response) {
  8. $event = new ViewEvent($this, $request, $type, $response, $event);
  9. $this->dispatcher->dispatch($event, KernelEvents::VIEW);
  1. $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  2. $this->requestStack->push($request);
  3. $response = null;
  4. try {
  5. return $response = $this->handleRaw($request, $type);
  6. } catch (\Throwable $e) {
  7. if ($e instanceof \Error && !$this->handleAllThrowables) {
  8. throw $e;
  9. }
  1. if (!$this->handlingHttpCache) {
  2. $this->resetServices = true;
  3. }
  4. try {
  5. return $this->getHttpKernel()->handle($request, $type, $catch);
  6. } finally {
  7. --$this->requestStackSize;
  8. }
  9. }
  1. ) {
  2. }
  3. public function run(): int
  4. {
  5. $response = $this->kernel->handle($this->request);
  6. if (Kernel::VERSION_ID >= 60400) {
  7. $response->send(false);
  8. if (\function_exists('fastcgi_finish_request') && !$this->debug) {
in vendor/autoload_runtime.php -> run (line 32)
  1. $app = $app(...$args);
  2. exit(
  3. $runtime
  4. ->getRunner($app)
  5. ->run()
  6. );
require_once('/app-dev/neuroscope-web/vendor/autoload_runtime.php') in public/index.php (line 5)
  1. <?php
  2. use App\Kernel;
  3. require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
  4. return function (array $context) {
  5. return new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);
  6. };

Logs

Level Channel Message
INFO 23:41:48 request Matched route "_profiler".
{
    "route": "_profiler",
    "route_parameters": {
        "_route": "_profiler",
        "_controller": "web_profiler.controller.profiler::panelAction",
        "token": "25d7b9"
    },
    "request_uri": "https://neuroscope.cloud/_profiler/25d7b9?panel=exception&type=request",
    "method": "GET"
}

Stack Trace

SyntaxError
Twig\Error\SyntaxError:
Did you forget to run "composer require symfony/twig-bundle"? Unknown function "importmap" in "base.html.twig" at line 1.

  at templates/base.html.twig:1
  at Symfony\Bridge\Twig\UndefinedCallableHandler::onUndefinedFunction()
     (vendor/symfony/twig-bundle/DependencyInjection/Configurator/EnvironmentConfigurator.php:47)
  at Symfony\Bundle\TwigBundle\DependencyInjection\Configurator\EnvironmentConfigurator->{closure:Symfony\Bundle\TwigBundle\DependencyInjection\Configurator\EnvironmentConfigurator::configure():47}()
     (vendor/twig/twig/src/ExtensionSet.php:205)
  at Twig\ExtensionSet->getFunction()
     (vendor/twig/twig/src/Environment.php:851)
  at Twig\Environment->getFunction()
     (vendor/twig/twig/src/Parser.php:439)
  at Twig\Parser->getFunction()
     (vendor/twig/twig/src/ExpressionParser/Infix/FunctionExpressionParser.php:51)
  at Twig\ExpressionParser\Infix\FunctionExpressionParser->parse()
     (vendor/twig/twig/src/Parser.php:390)
  at Twig\Parser->parseExpression()
     (vendor/twig/twig/src/Parser.php:180)
  at Twig\Parser->subparse()
     (vendor/twig/twig/src/TokenParser/BlockTokenParser.php:46)
  at Twig\TokenParser\BlockTokenParser->parse()
     (vendor/twig/twig/src/Parser.php:224)
  at Twig\Parser->subparse()
     (vendor/twig/twig/src/TokenParser/BlockTokenParser.php:46)
  at Twig\TokenParser\BlockTokenParser->parse()
     (vendor/twig/twig/src/Parser.php:224)
  at Twig\Parser->subparse()
     (vendor/twig/twig/src/Parser.php:104)
  at Twig\Parser->parse()
     (vendor/twig/twig/src/Environment.php:558)
  at Twig\Environment->parse()
     (vendor/twig/twig/src/Environment.php:589)
  at Twig\Environment->compileSource()
     (vendor/twig/twig/src/Environment.php:408)
  at Twig\Environment->loadTemplate()
     (vendor/twig/twig/src/Template.php:293)
  at Twig\Template->load()
     (var/cache/dev/twig/1f/1fe4176f305970663377e2d67be6f8c0.php:53)
  at __TwigTemplate_82f9d3ee9d8f3a417338d0ff7b230fd7->doDisplay()
     (vendor/twig/twig/src/Template.php:402)
  at Twig\Template->yield()
     (vendor/twig/twig/src/Template.php:358)
  at Twig\Template->display()
     (vendor/twig/twig/src/Template.php:373)
  at Twig\Template->render()
     (vendor/twig/twig/src/TemplateWrapper.php:51)
  at Twig\TemplateWrapper->render()
     (vendor/twig/twig/src/Environment.php:333)
  at Twig\Environment->render()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:462)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->doRenderView()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:467)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->doRender()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:279)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->render()
     (src/Controller/LoginController.php:51)
  at App\Controller\LoginController->login()
     (vendor/symfony/http-kernel/HttpKernel.php:183)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw()
     (vendor/symfony/http-kernel/HttpKernel.php:76)
  at Symfony\Component\HttpKernel\HttpKernel->handle()
     (vendor/symfony/http-kernel/Kernel.php:191)
  at Symfony\Component\HttpKernel\Kernel->handle()
     (vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35)
  at Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run()
     (vendor/autoload_runtime.php:32)
  at require_once('/app-dev/neuroscope-web/vendor/autoload_runtime.php')
     (public/index.php:5)