Are there any plans for a D8 version of this?

I'm asking because I'd like the graph output of reference fields in Field Tools (https://www.drupal.org/project/field_tools) to continue in D8.

Comments

joachim created an issue. See original summary.

joachim’s picture

Issue summary: View changes
clemens.tolboom’s picture

Version: 7.x-2.x-dev » 8.x-1.x-dev

If we can find some sponsors I'd love to code for this. I tried a conversion ~ 3 years ago iirc hence the 8.x-1.x-dev branch wasting too many hours :-/

joachim’s picture

Is there much left to do? If you had a rough list of things to tackle, I can maybe chip away at it from time to time?

clemens.tolboom’s picture

- [x] 8.0.x 03-Sep-2014 drupal_classloader() removed https://www.drupal.org/node/2327157
Works
d59b23d Fix for CR https://www.drupal.org/node/2378809

- [ ] 8.0.x / 8.0.0-rc1 07-Oct-2015 \Drupal\Core\Routing\UrlGeneratorInterface::generateFromPath() has been removed https://www.drupal.org/node/2581455
refers als to l() and url() functions are removed
Fix me (later)
8a76da5 Ignore for now for CR https://www.drupal.org/node/2581455

- [x] 8.0.x 20-Nov-2014 Routes use _controller instead of _content https://www.drupal.org/node/2378809
graphapi.routing.yml needs changes
3e8f738 Fix for CR https://www.drupal.org/node/2327157

- [x] 8.x 25-Oct-2011 PSR-4 compatible class loader in core https://www.drupal.org/node/1320394

drush @drupal.d8 cache-rebuild
[error] exception 'ReflectionException' with message 'Class \Drupal\graphapi\Controller\GraphAPIController does not exist' in /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/Entity/EntityResolverManager.php:123

clemens.tolboom’s picture

- [x] 8.x 31-Jul-2014 $form_state is now a classed object https://www.drupal.org/node/2310411

- [ ] Fixing this gave a new member function

+  public function getEditableConfigNames()
+  {
+      // TODO: Implement getEditableConfigNames() method.
+  }

  • clemens.tolboom committed a56e51c on 8.x-1.x
    #2817429 - Use FormStateInterface CR https://www.drupal.org/node/2310411
    

clemens.tolboom’s picture

Enabling the TGF input filter for ie Full HTML makes the input filter crash.

Recoverable fatal error: Argument 1 passed to Drupal\Core\Render\BubbleableMetadata::merge() must be an instance of Drupal\Core\Cache\CacheableMetadata, string given, called in /Users/clemens/Sites/drupal/d8/www/core/modules/filter/src/Element/ProcessedText.php on line 113 and defined in Drupal\Core\Render\BubbleableMetadata->merge() (line 26 of /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/Render/BubbleableMetadata.php) #0 /Users/clemens/Sites/drupal/d8/www/core/includes/bootstrap.inc(548): _drupal_error_handler_real(4096, 'Argument 1 pass...', '/Users/clemens/...', 26, Array) #1 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/Render/BubbleableMetadata.php(26): _drupal_error_handler(4096, 'Argument 1 pass...', '/Users/clemens/...', 26, Array) #2 /Users/clemens/Sites/drupal/d8/www/core/modules/filter/src/Element/ProcessedText.php(113): Drupal\Core\Render\BubbleableMetadata->merge('<h1>TEST</h1>') #3 [internal function]: Drupal\filter\Element\ProcessedText::preRenderText(Array) #4 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/Render/Renderer.php(376): call_user_func(Array, Array) #5 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/Render/Renderer.php(195): Drupal\Core\Render\Renderer->doRender(Array, true) #6 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/Render/Renderer.php(151): Drupal\Core\Render\Renderer->render(Array, true) #7 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/Render/Renderer.php(574): Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() #8 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/Render/Renderer.php(152): Drupal\Core\Render\Renderer->executeInRenderContext(Object(Drupal\Core\Render\RenderContext), Object(Closure)) #9 /Users/clemens/Sites/drupal/d8/www/core/modules/filter/filter.module(302): Drupal\Core\Render\Renderer->renderPlain(Array) #10 /Users/clemens/Sites/drupal/d8/www/core/modules/ckeditor/src/Plugin/CKEditorPlugin/Internal.php(372): check_markup('<h1>TEST</h1>', 'full_html') #11 /Users/clemens/Sites/drupal/d8/www/core/modules/ckeditor/src/Plugin/CKEditorPlugin/Internal.php(119): Drupal\ckeditor\Plugin\CKEditorPlugin\Internal->generateFormatTagsSetting(Object(Drupal\editor\Entity\Editor)) #12 /Users/clemens/Sites/drupal/d8/www/core/modules/ckeditor/src/Plugin/Editor/CKEditor.php(264): Drupal\ckeditor\Plugin\CKEditorPlugin\Internal->getConfig(Object(Drupal\editor\Entity\Editor)) #13 /Users/clemens/Sites/drupal/d8/www/core/modules/ckeditor/src/Plugin/Editor/CKEditor.php(220): Drupal\ckeditor\Plugin\Editor\CKEditor->getJSSettings(Object(Drupal\editor\Entity\Editor)) #14 /Users/clemens/Sites/drupal/d8/www/core/modules/editor/editor.module(174): Drupal\ckeditor\Plugin\Editor\CKEditor->settingsForm(Array, Object(Drupal\Core\Form\FormState), Object(Drupal\editor\Entity\Editor)) #15 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/Extension/ModuleHandler.php(501): editor_form_filter_format_form_alter(Array, Object(Drupal\Core\Form\FormState), 'filter_format_e...') #16 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/Form/FormBuilder.php(818): Drupal\Core\Extension\ModuleHandler->alter(Array, Array, Object(Drupal\Core\Form\FormState), 'filter_format_e...') #17 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/Form/FormBuilder.php(272): Drupal\Core\Form\FormBuilder->prepareForm('filter_format_e...', Array, Object(Drupal\Core\Form\FormState)) #18 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/Controller/FormController.php(74): Drupal\Core\Form\FormBuilder->buildForm(Object(Drupal\filter\FilterFormatEditForm), Object(Drupal\Core\Form\FormState)) #19 [internal function]: Drupal\Core\Controller\FormController->getContentResult(Object(Symfony\Component\HttpFoundation\Request), Object(Drupal\Core\Routing\RouteMatch)) #20 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array(Array, Array) #21 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/Render/Renderer.php(574): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() #22 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(124): Drupal\Core\Render\Renderer->executeInRenderContext(Object(Drupal\Core\Render\RenderContext), Object(Closure)) #23 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext(Array, Array) #24 [internal function]: Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() #25 /Users/clemens/Sites/drupal/d8/www/vendor/symfony/http-kernel/HttpKernel.php(144): call_user_func_array(Object(Closure), Array) #26 /Users/clemens/Sites/drupal/d8/www/vendor/symfony/http-kernel/HttpKernel.php(64): Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object(Symfony\Component\HttpFoundation\Request), 1) #27 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/StackMiddleware/Session.php(57): Symfony\Component\HttpKernel\HttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #28 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(47): Drupal\Core\StackMiddleware\Session->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #29 /Users/clemens/Sites/drupal/d8/www/core/modules/page_cache/src/StackMiddleware/PageCache.php(99): Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #30 /Users/clemens/Sites/drupal/d8/www/core/modules/page_cache/src/StackMiddleware/PageCache.php(78): Drupal\page_cache\StackMiddleware\PageCache->pass(Object(Symfony\Component\HttpFoundation\Request), 1, true) #31 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(47): Drupal\page_cache\StackMiddleware\PageCache->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #32 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(50): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #33 /Users/clemens/Sites/drupal/d8/www/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #34 /Users/clemens/Sites/drupal/d8/www/core/lib/Drupal/Core/DrupalKernel.php(652): Stack\StackedHttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #35 /Users/clemens/Sites/drupal/d8/www/index.php(19): Drupal\Core\DrupalKernel->handle(Object(Symfony\Component\HttpFoundation\Request)) #36 {main}.
clemens.tolboom’s picture

We still need a sponsor for this and co-maintainer.

joachim’s picture

Title: Drupal 8 version of Graph API? » Drupal 9 version of Graph API?

Forgot it was me who filed this issue!! :D

I'm currently updating this for D9 now I'm a co-maintainer.

Here's my rough plan so far:

- add plugin types for engines and formats -- done, though both plugin types will need more methods adding to them.
- convert the module's engines and formats to plugins
- convert the list page to use the plugins -- done
- move engine settings into the plugin class, provide a generic form class to show the engine settings form -- done
- add a render element for graphs
- move theme_FORMAT_graphapi() into the format plugin class

clemens.tolboom’s picture

I think we should https://www.drupal.org/node/add/project-release/902868 (Create) the 2.0.x release for composer install to work right?

joachim’s picture

Yup, I was meaning to do that. Done!

clemens.tolboom’s picture

Yeah ... I can install it.

On http://drupal.d9/admin/config/system/graphapi I see 3 'graphviz' formats. Not sure but wasn't there a GraphAPI format or was that done by views?

Anyways ... I take a stab at GraphPhyz maybe using Spingy as an example :-o

joachim’s picture

I haven't looked at the Views code yet.

Would you have time to file an issue here about updating the Views code, and write a quick overview of what it's trying to do?

joachim’s picture

Title: Drupal 9 version of Graph API? » Drupal 10 version of Graph API?
joachim’s picture

Version: 8.x-1.x-dev » 2.0.x-dev
joachim’s picture

Status: Active » Fixed

I think this works ok now -- I can install the module, configure the engines and the formats, and see the demos.

Making a new alpha release.

If there are further bugs, please open new issues for them.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.