Description

Audio Embed Field creates a simple field type that allows you to embed audio from Soundcloud and Custom URLs to a field and also integrates with the media_entity module for Drupal 8. Simply provide the URL to the audio and the module creates an embedded audio player.

To integrate with Soundcloud, you must obtain a client ID through the Soundcloud Developers page and enter it in the audio_embed_field settings page.

This is similar to the video_embed_field module, but for audio.

To use local audio in a similar way, look at the media_entity_audio module.

A link to your project page

https://www.drupal.org/sandbox/vilepickle/2784301

A git clone command

git clone --branch 8.x-1.x https://git.drupal.org/sandbox/vilepickle/2784301.git audio_embed_field

A list of links to reviews of other project applications that you did

N/A

Comments

Anonymous’s picture

vilepickle created an issue. See original summary.

PA robot’s picture

Issue summary: View changes
Status: Needs review » Needs work

There are some errors reported by automated review tools, did you already check them? See http://pareview.sh/pareview/httpsgitdrupalorgsandboxvilepickle2784301git

Fixed the git clone URL in the issue summary for non-maintainer users.

We are currently quite busy with all the project applications and we prefer projects with a review bonus. Please help reviewing and put yourself on the high priority list, then we will take a look at your project right away :-)

Also, you should get your friends, colleagues or other community members involved to review this application. Let them go through the review checklist and post a comment that sets this issue to "needs work" (they found some problems with the project) or "reviewed & tested by the community" (they found no major flaws).

I'm a robot and this is an automated message from Project Applications Scraper.

kamdanishit’s picture


Manual Review


Individual user account

Yes

No duplication


No Duplication

Master Branch


Yes

Licensing


Yes

3rd party assets/code


No

README.txt/README.md


Yes

Code long/complex enough for review


Yes

Secure code


Yes

Coding style & Drupal API usage


Follows the Drupal Coding standards

Anonymous’s picture

Status: Needs work » Needs review

The remaining pareview feedback are false positives since there is a submodule in this.

webdrips’s picture

Here is my feedback:

  1. The README has minor grammar and spelling issues: in the summary, add a comma after the second and; under Installation, change "Install as usual, see" to "Install as usual as per"; under Customization, "You may overide" should be "You may override"; change "When you add fields, select the providers you want to use including Custom URL and Soundcloud. If using Soundcloud you need to obtain a client ID from the Soundcloud Developers site: https://developers.soundcloud.com/" to "When you add fields, select the providers you want to use, including Custom URL and Soundcloud. If using Soundcloud, you need to obtain a client ID from the Soundcloud Developers site: https://developers.soundcloud.com/". Also consider that "Custom URL" sounds kinda strange as a "provider", but maybe that's just me.
  2. Your dependencies in README don't match your .info.yml file. (Out of curiousity, why does this module depend on image?) Also looks like you may require the colorbox library.
  3. ProviderManagerInterface.php, ProviderPluginBase.php, ProviderPluginInterface.php, and a few other files could probably be slightly better documented. Personally, I'd like to see abundant documentation for each method introduced by the module, but the documentation is still better than most modules.

Overall analysis: the above are mostly nitpicks, so I think this module is ready to be promoted.

Anonymous’s picture

Thanks, I'll take care of those small things soon.

FWIW, ProviderManagerInterface.php, ProviderPluginBase.php, ProviderPluginInterface.php are almost directly from the video_embed_field module, so any lack of documentation also applies there :)

aditya_anurag’s picture

Automated Review

Kindly check the pareview.sh link, some trivial issue you can fix... to adhere to Drupal coding standard's
http://pareview.sh/pareview/httpsgitdrupalorgsandboxvilepickle2784301git

Manual Review

Individual user account
[Yes: Follows] the guidelines for individual user accounts.
No duplication
[Yes: Does not cause] module duplication and/or fragmentation.
Master Branch
[Yes: Follows ] the guidelines for master branch.
Licensing
[Yes: Follows] the licensing requirements.
3rd party assets/code
[Yes: Follows] the guidelines for 3rd party assets/code.
README.txt/README.md
[Yes: Follows] the guidelines for in-project documentation and/or the README Template.
Code long/complex enough for review
[Yes: Follows] the guidelines for project length and complexity.
Secure code
[Yes: Meets the security requirements.]
Coding style & Drupal API usage
[List of identified issues in no particular order. Use (*) and (+) to indicate an issue importance. Replace the text below by the issues themselves:
  1. (*) Major finding, needs work
  2. (+) Release blocker
  3. Just a recommendation
  4. ...]

The starred items (*) are fairly big issues and warrant going back to Needs Work. Items marked with a plus sign (+) are important and should be addressed before a stable project release. The rest of the comments in the code walkthrough are recommendations.

If added, please don't remove the security tag, we keep that for statistics and to show examples of security problems.

This review uses the Project Application Review Template.

klausi’s picture

@aditya_anurag: Looks like you forgot to change the status. Is this now RTBC after your review or are there application blockers left and this should be "needs work"?

Anonymous’s picture

@aditya_anurag: The template you pasted doesn't have anything filled in that I can tell?

As for the pareview, you can see it's identifying the functions in the submodule incorrectly and are false positives.

aditya_anurag’s picture

@klausi & @vilepickle : I have updated the comment as per pareview.sh

Anonymous’s picture

Just updated the module in the latest commit from the feedback.

pucowanje’s picture

Is it just me or is anyone else having problems to get this module to work with Soundcloud? I've registered an application, entered the client ID into settings page and tried to insert a link to a Soundcloud song into the field.

I always end up with this error:

Could not find an audio provider to handle the given URL. If you are trying to use something with an API, make sure credentials are set up at the Audio Embed Field settings page.

Anonymous’s picture

@pucowanje: That usually happens when the field you added doesn't have a provider selected. Try editing the field configuration in the UI and checking Soundcloud for the enabled provider.

pucowanje’s picture

@vilepickle: It is actually the other way around as i would have expected it. When adding this field, the options below have a title called Allowed Providers. I was checking Soundcloud to ALLOW it but it was disabling it.

This is contradicting the title:
"Restrict users from entering information from the following providers. If none are selected any audio provider can be used."

I think you should either change the title or have checked providers to be allowed instead of disallowing.

Otherwise its working great!

Anonymous’s picture

That's interesting, I'll make sure that language is correct. Thanks for catching.

sam152’s picture

Status: Needs review » Needs work

There is a huge amount of code in here which is totally irrelevant to the module, left over from video_embed_field. The upgrade path from media_entity_embeddable_video to video_embed_media is a bit of a striking example. The whole thing looks like a crude string string replace on video => audio.

Given little original code was written -1 to granting full project access to the author. Perhaps with a lot of clean-up on the code itself it could be useful for servicing the audio-use case, but I doubt it in the current form. You could implement the VEF plugins in an audio-centric way and arrive at the same solution with 1% of the code.

Anonymous’s picture

Status: Needs work » Closed (won't fix)
Anonymous’s picture

Sam,
Thanks for the post. While I'm thankful for the identification of leftover code, I see you're sad that Video Embed was "crudely" adapted since you're a big contributor to that module. That said, I'm more than happy to close this and not use it as an application candidate. I think the application process for module rights is bogus anyway and I have tried about 3 times with legitimate modules to contribute back with people like you coming in. FWIW, I think you're out of line.

sam152’s picture

Not sad at all, flattered if anything :)

I just don't think a find/replace qualifies for a project application and I think you could have taken the time to understand the code you were submitting and refine it.

Anonymous’s picture

Did you actually look at the module? It was more than a find/replace. The code is GPL, so an extension of existing Drupal.org code is well within license terms. I would say my understanding of the video_embed_field code was fair assuming what this module does, though I overlooked the upgrade classes. Your post came at me as pretty defensive towards the original code.

As far as project applications go, I would consider the "find/replace" not to be something that an average module user and/or site builder would be able to accomplish, thus the use of it becomes apparent. I even corrected a lot of problems with syntax in the orginal video_embed_field that overlaps the audio functionality since this review makes the submitter go above and beyond. I guess D.org doesn't hold module authors after they've past the "gate" to high standards anymore.

My frustration with this application process has been in my submissions (this is my 3rd, btw, in several years) being renditions of existing modules or utilizing other modules in new ways. Regardless of WHAT they are, they are relatively useful but I cannot promote them to full module status. This is fine, I'll just use them on the sites I need, but it makes them hard to find.

Not that it matters much, but the app process has been very discouraging for me. I am not a newbie web developer, I've been doing this since 1999 (Drupal since '09). If I can't get through it then something's wrong, and it is hurting Drupal overall.

Just a mini recap of my previous modules submitted to app process:
Disqus Custom Identifier (D6/D7): Adds capability to link Disqus comment threads across sites if needed. Deemed as an enhancement that should be inside Disqus module. Fair. But that issue has been (and I think still is) open even when there are valid RTBC patches sitting there for it. At least last that I checked
Quick Node Clone (D8 node clone): Duplication of effort. Fair.. but Node Clone still doesn't have a D8 release. I even offered their maintainer to use my code. Node Clone is very useful so I wanted to see it working.
Audio Embed Field: Well, you get the picture.

These all have been slow denials over the span of many months which is surprising for an open source community that is supposed to be growing.

Ah well, there's my mini rant, I'm done now. I'll go build sites and contribute my modules to clients instead of cluttering this space.

I removed the upgrade classes also, since they didn't make sense being there (thanks for that :)

sam152’s picture

even corrected a lot of problems with syntax in the orginal video_embed_field that overlaps the audio functionality since this review makes the submitter go above and beyond. I guess D.org doesn't hold module authors after they've past the "gate" to high standards anymore.

Can you open an issue in the video embed field queue so this can be fixed? Genuinely interested in what's going on here.


A process which doesn't burn out new contributors before they start is being discussed here: #2453587: [policy, no patch] Changes to the project application review process. Your frustrations are pretty much universal to people going through the queue.