Account created on 19 October 2010, over 13 years ago
#

Merge Requests

More

Recent comments

🇳🇱Netherlands pefferen

true, for my use case this can be controlled, and having already this part in can help for the next steps. Will take a look at the mapping in the 3.x branch. thanks for the commit!

🇳🇱Netherlands pefferen

@josepholstad did you try debugging the storage plugin to see what it is trying to fetch. It can be useful to test the queries send to the server for example in Postman or the browser to see what parameters you need to configure. Hope this helps

🇳🇱Netherlands pefferen

Let's keep this meta issue for the 2.0 version and create another one for the 3.0.

I noticed some fixes being merged to the 3.0 only, I think they should also go to the 2.0 since that is the published stable. We need to keep the differences as small as possible to provide a smaller upgrade path and still benefit from the enhancements.

🇳🇱Netherlands pefferen

Thanks for all the work @guignonv I am not really in favor of mixing different issues into one big change. It makes it harder to review and discuss. I much prefer to solve the issues in separate issues instead.

🇳🇱Netherlands pefferen

As far as I see it, external entities cannot use views directly, only by using Search API. The usage of Views as a rest endpoint goes beyond the scope of this module.

However, having documentation on how to set it up could be very useful.

🇳🇱Netherlands pefferen

reposting gist of response from @ronaldtebrake on Slack. added Version 13 meta issue #3254517

and solved the composer security issue by removing the dependency via the following addition to our projects composer.json:

"replace": {
  "drupal/swiftmailer": "*"
},
🇳🇱Netherlands pefferen

thanks for the fix, is there any timeline for the 13.0.0 version

🇳🇱Netherlands pefferen

I have not tested this with external entities, but the Drupal.org API uses Restfull webservices. the problem with the URL is the '.json' extension to the URL. External entities tries to fetch the detail page by adding the ID to the end of the endpoint URL. With the JSON extension this will fail.

If you leave out the extension and instead provide the JSON accept header, as per the documentation you can have one URL for both the list and detail view. You can prove the header by using the API header fields.

🇳🇱Netherlands pefferen

reading this I think the solution suggested in #13 should fix this issue.

🇳🇱Netherlands pefferen

With the beta1 version of External Entities I can configure an endpoint of a Drupal 10 exposing nodes as a Rest Views display without patching it.

I can set up the one as explained in the video with fields, configure A rest endpoint and map the fields via simple mapping.

I also tried configuring the rendering of the full entity with a Views Rest display (so all fields) then I need to map via the Xpath mapper since the JSON has more layers. Also in this case I get a working external entity overview and detail pages.

I think that the fix to loadMultiple() in the Rest storage client in #3368304 has made this possible.

Closing this issue, please reopen if I am wrong :)

🇳🇱Netherlands pefferen

Paging is indeed very important to take into account. as mentioned in #2. The fact that increasing the timeout, gives me an indication that this could be connected, as more than the requested amount of records are fetched from the API.
The other day I had this issue when I wanted to retrack the items in Search API. When I configured the correct pagination properties the issue was solved.

🇳🇱Netherlands pefferen

links can use some attention see #7

🇳🇱Netherlands pefferen

the patch in #5 works nicely, after applying the core patch, thanks.

Only thing is that the core patch for core is still needed for Drupal <10.3 keeping this issue open for easy reference.

🇳🇱Netherlands pefferen

thanks, @josepholstad I did not know, reopening to fixed

🇳🇱Netherlands pefferen

thanks, @josepholstad I did not know, reopening to fixed

🇳🇱Netherlands pefferen

thanks, @josepholstad I did not know, reopening to fixed

🇳🇱Netherlands pefferen

thanks, @josepholstad I did not know, reopening to fixed

🇳🇱Netherlands pefferen

thanks, @josepholstad I did not know, reopening to fixed

🇳🇱Netherlands pefferen

thanks, @josepholstad I did not know, reopening to fixed

🇳🇱Netherlands pefferen

adding patch file for use in composer

🇳🇱Netherlands pefferen

No specific reason, I just forgot to set it properly, thanks for checking :)

🇳🇱Netherlands pefferen

We have a first beta! Still a lot to improve but we are getting there :)

🇳🇱Netherlands pefferen

thanks for committing this patch @anothergasteizone, there was already an issue for this including a patch, therefor closing this one in favor of #3418226

🇳🇱Netherlands pefferen

thanks all, slightly altered patch in #33, removed Default TRUE value from accessCheck().

committed to dev

🇳🇱Netherlands pefferen

changes http protocol to https

🇳🇱Netherlands pefferen

added steps to configure field mapper

🇳🇱Netherlands pefferen

I want to move this project's status to beta since some sites already use the module and some projects require a more stable version of contrib. We are already quite far, but looking at the list of issues in this ticket, a could still take quite some time, which might prevent projects from using this module. I know there are some rough edges, but most user can use the basic functionality and others can extend and use their custom storage client.

Please comment otherwise I will proceed to mark this project beta 1

🇳🇱Netherlands pefferen

the patch in #20 does not apply anymore.

MR !24 contains errors

🇳🇱Netherlands pefferen

Added a basic integration for JSON:API

🇳🇱Netherlands pefferen

pefferen made their first commit to this issue’s fork.

🇳🇱Netherlands pefferen

patch in #5 works nicely for me, thanks

🇳🇱Netherlands pefferen

thanks all for your effort, merged the issue

🇳🇱Netherlands pefferen

creating the issue fork did not go as intended, it is a bit messy, but the result is working.

🇳🇱Netherlands pefferen

created a ticket in socialbase and applied patch there https://www.drupal.org/project/socialbase/issues/3416305 🐛 File link icons are broken when the installation is under a subdirectory Needs review

🇳🇱Netherlands pefferen

Thanks for your work @joseph, was intending to continue to work on the commits but some thing came up, I will check your new work soon

🇳🇱Netherlands pefferen

pefferen made their first commit to this issue’s fork.

🇳🇱Netherlands pefferen

added missing punctiation

🇳🇱Netherlands pefferen

nice work @chetan 11, the test are failing. in one instance because the definition of the constant has changed, the define function can be replaced with const in this case, only not as a class inside a module file. We can also move the constant to ExternalEntityInterface and refactor the usage.

 /**
  * Property indicating if the annotated external entity should not be saved.
@@ -37,7 +37,10 @@ use Drupal\Core\Render\Element;
  *
  * @internal
  */
-define('EXTERNAL_ENTITIES_BYPASS_ANNOTATED_EXTERNAL_ENTITY_SAVE_PROPERTY', 'BYPASS_ANNOTATED_EXTERNAL_ENTITY_SAVE');
+class ExternalEntitiesConstants {
+  const BYPASS_ANNOTATED_EXTERNAL_ENTITY_SAVE_PROPERTY = 'BYPASS_ANNOTATED_EXTERNAL_ENTITY_SAVE';
+
+}
🇳🇱Netherlands pefferen

@chetan 11 can you push your progress, I would like to get this issue moving

🇳🇱Netherlands pefferen

Thanks to guidance from @rodrigoaguilera I managed to add the config dependency on fields attached to external entities.

🇳🇱Netherlands pefferen

test for Drupal 10.1.15 is failing, created issue #3395520 🐛 Tests break on Drupal 10.1.5 Active for this. Since this is unrelated to this issue marking as RTBC.

🇳🇱Netherlands pefferen

Added the code from patch, removed the hardcoded check to disable certificate check for local url's, please create an other issue for this unrelated change. ALtered error handling a bit so that the user get a message there are no external entities found. Developers can check the log for the exceptions.

🇳🇱Netherlands pefferen

pefferen made their first commit to this issue’s fork.

🇳🇱Netherlands pefferen

Good one @guignonv in your patch you show the message to choose a storage plugin after the plugin has been chosen. I think we could hide the field mapping form and tell the user to save the entity type in order to be able to add a mapping.

🇳🇱Netherlands pefferen

Patch in #17 works nicely on our codebase, please merge

🇳🇱Netherlands pefferen

The config dependency on the field works out of the box for Bundles, only problem is we do not use bundles for external entities in this way. I am now exploring ThirdPartySettings API to add the dependency on a field.

🇳🇱Netherlands pefferen

nice thanks @FMB and good luck working on the localize server!

🇳🇱Netherlands pefferen

I'll be attending Drupalcon Lille, anyone interested to work on getting this module to beta during the conference?

🇳🇱Netherlands pefferen

pefferen made their first commit to this issue’s fork.

🇳🇱Netherlands pefferen

@ademarco That is because new patches can be added by the D10 bot because the 'ProjectUpdateBotD10' has been added to this ticket, please see the 'problem/motivation' of this issue.

I will find some time soon to check out the new patches by @burnellw_cit

Production build 0.69.0 2024