Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,6 @@ matrix:
- php: nightly
env: COMPOSER_UPDATE_FLAGS=--ignore-platform-reqs
allow_failures:
- php: 7.2
env: SYMFONY_VERSION=4.1.* DEPENDENCIES=dev
- php: nightly
env: COMPOSER_UPDATE_FLAGS=--ignore-platform-reqs

Expand Down
6 changes: 6 additions & 0 deletions CacheWarmer/CompileCacheWarmer.php
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,12 @@ public function isOptional()
*/
public function warmUp($cacheDir)
{
// use warm up cache dir if type generator cache dir not already explicitly declare
$baseCacheDir = $this->typeGenerator->getBaseCacheDir();
if (null === $this->typeGenerator->getCacheDir(false)) {
$this->typeGenerator->setBaseCacheDir($cacheDir);
}
$this->typeGenerator->compile(TypeGenerator::MODE_WRITE | TypeGenerator::MODE_OVERRIDE);
$this->typeGenerator->setBaseCacheDir($baseCacheDir);
}
}
2 changes: 1 addition & 1 deletion DependencyInjection/Configuration.php
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ public function getConfigTreeBuilder()
->scalarNode('internal_error_message')->defaultNull()->end()
->variableNode('default_resolver')->defaultValue([Resolver::class, 'defaultResolveFn'])->end()
->scalarNode('class_namespace')->defaultValue('Overblog\\GraphQLBundle\\__DEFINITIONS__')->end()
->scalarNode('cache_dir')->defaultValue($this->cacheDir.'/overblog/graphql-bundle/__definitions__')->end()
->scalarNode('cache_dir')->defaultNull()->end()
->booleanNode('use_classloader_listener')->defaultTrue()->end()
->booleanNode('auto_compile')->defaultTrue()->end()
->booleanNode('show_debug_info')->defaultFalse()->end()
Expand Down
35 changes: 30 additions & 5 deletions Generator/TypeGenerator.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,27 +22,52 @@ class TypeGenerator extends BaseTypeGenerator

private $useClassMap = true;

private $baseCacheDir;

private static $classMapLoaded = false;

public function __construct($classNamespace, array $skeletonDirs, $cacheDir, callable $defaultResolver, array $configs, $useClassMap = true)
public function __construct($classNamespace, array $skeletonDirs, $cacheDir, callable $defaultResolver, array $configs, $useClassMap = true, $baseCacheDir = null)
{
$this->setCacheDir($cacheDir);
$this->defaultResolver = $defaultResolver;
$this->configs = $this->processConfigs($configs);
$this->useClassMap = $useClassMap;
$this->baseCacheDir = $baseCacheDir;

parent::__construct($classNamespace, $skeletonDirs);
}

/**
* @return string
* @return string|null
*/
public function getBaseCacheDir()
{
return $this->baseCacheDir;
}

/**
* @param string|null $baseCacheDir
*/
public function getCacheDir()
public function setBaseCacheDir($baseCacheDir)
{
return $this->cacheDir;
$this->baseCacheDir = $baseCacheDir;
}

/**
* @return string|null
*/
public function getCacheDir(/*bool $useDefault = true*/)
{
$useDefault = func_num_args() > 0 ? func_get_arg(0) : true;
if ($useDefault) {
return $this->cacheDir ?: $this->baseCacheDir.'/overblog/graphql-bundle/__definitions__';
} else {
return $this->cacheDir;
}
}

/**
* @param string $cacheDir
* @param string|null $cacheDir
*
* @return $this
*/
Expand Down
1 change: 1 addition & 0 deletions Resources/config/services.yml
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ services:
- "%overblog_graphql.default_resolver%"
- "%overblog_graphql_types.config%"
- "%overblog_graphql.use_classloader_listener%"
- "%kernel.cache_dir%"
calls:
- ["addUseStatement", ["Symfony\\Component\\DependencyInjection\\ContainerInterface"]]
- ["addUseStatement", ["Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]]
Expand Down
1 change: 0 additions & 1 deletion Tests/Functional/App/config/access/config.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
imports:
- { resource: ../config.yml }
- { resource: ../security.yml }
- { resource: ../connection/services.yml }
- { resource: ../mutation/services.yml }

Expand Down
21 changes: 21 additions & 0 deletions Tests/Functional/App/config/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,27 @@ framework:
profiler:
enabled: false

security:
providers:
in_memory:
memory:
users:
ryan:
password: 123
roles: 'ROLE_USER'
admin:
password: 123
roles: 'ROLE_ADMIN'
encoders:
Symfony\Component\Security\Core\User\User: plaintext
firewalls:
graph:
pattern: ^/
http_basic: ~
stateless: true
anonymous: true


overblog_graphql:
definitions:
config_validation: true
Expand Down
1 change: 0 additions & 1 deletion Tests/Functional/App/config/public/config.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
imports:
- { resource: ../config.yml }
- { resource: ../security.yml }

overblog_graphql:
definitions:
Expand Down
2 changes: 1 addition & 1 deletion Tests/Functional/App/config/queryComplexityEnv/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ imports:
- { resource: ../connection/services.yml }

parameters:
env(GRAPHQL_QUERY_MAX_COMPLEXITY): 10
env(GRAPHQL_QUERY_MAX_COMPLEXITY): "10"

overblog_graphql:
security:
Expand Down
2 changes: 1 addition & 1 deletion Tests/Functional/App/config/queryMaxDepthEnv/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ imports:
- { resource: ../connection/services.yml }

parameters:
env(GRAPHQL_QUERY_MAX_DEPTH): 3
env(GRAPHQL_QUERY_MAX_DEPTH): "3"

overblog_graphql:
security:
Expand Down
19 changes: 0 additions & 19 deletions Tests/Functional/App/config/security.yml

This file was deleted.