WordPress.org

Make WordPress Core

Opened 5 years ago

Closed 4 years ago

Last modified 4 years ago

#20615 closed defect (bug) (duplicate)

Unknown error when running plugins_api() with invalid slug

Reported by: scribu Owned by:
Milestone: Priority: normal
Severity: normal Version:
Component: WordPress.org site Keywords:
Focuses: Cc:

Description

Input:

$api = plugins_api( 'plugin_information', array( 'slug' => 'doesnt-exist' ) );

var_dump( $api );

Expected result:

WP_Error Object
(
    [errors] => Array
        (
            [invalid_slug] => Array
                (
                    [0] => Invalid plugin slug.
                )

        )

    [error_data] => Array
        (
            [invalid_slug] => 404;
        )
)

Actual result:

WP_Error Object
(
    [errors] => Array
        (
            [plugins_api_failed] => Array
                (
                    [0] => An unknown error occurred during the API request.
                )

        )

    [error_data] => Array
        (
            [plugins_api_failed] => N;
        )
)

PS: I have no idea what that 'N' is supposed to represent.

Change History (5)

#1 @nacin
5 years ago

N; is a serialized null.

#2 @samuelsidler
4 years ago

  • Milestone WordPress.org deleted
  • Status changed from new to closed

Migrated to #meta111.

#3 @SergeyBiryukov
4 years ago

  • Resolution set to duplicate

#4 follow-up: @dd32
4 years ago

FYI, This isn't api.WordPress.org specific at all, and requires primarily WordPress changes in the plugins_api() function. But it would be nice for the API to return more than just "NULL".

#5 in reply to: ↑ 4 @SergeyBiryukov
4 years ago

Replying to dd32:

But it would be nice for the API to return more than just "NULL".

Yes, looks like currently there's no reliable way to detect if the request failed due to an invalid slug and not some general error. We would just have to assume that null means an invalid slug.

Last edited 4 years ago by SergeyBiryukov (previous) (diff)
Note: See TracTickets for help on using tickets.