facebook-for-woocommerce icon indicating copy to clipboard operation
facebook-for-woocommerce copied to clipboard

Switch to use Jetpack autoloader instead of Composer's autoloader

Open danielbitzer opened this issue 3 years ago • 2 comments

Changes proposed in this Pull Request:

Because we are going ahead with using a separate Action Scheduler Job Framework package we need to ensure that the latest version of the package is loaded into WordPress. Jetpack Autoloader was built to solve this problem.

Jetpack autoloader is used also broadly by Woo and Automattic e.g. https://github.com/woocommerce/woocommerce/blob/trunk/composer.json#L17

Closes #1956.

How to test the changes in this Pull Request:

  1. Checkout branch
  2. Run composer install
  3. Load a few Facebook plugin admin pages locally

You can also run something like this to check that various classes are loading. (Copied from https://github.com/woocommerce/facebook-for-woocommerce/pull/1919).

var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Locale::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\AJAX::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Handlers\Connection::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Integrations\Integrations::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Product_Categories::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Products::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Commerce::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Products\Feed::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Products\FBCategories::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Products\Stock::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Products\Sync::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Products\Sync\Background::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\ProductSets\Sync::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Debug\ProfilingLogger::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Debug\ProfilingLoggerProcess::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Utilities\Shipment::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Utilities\Tracker::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Events\Event::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Events\Normalizer::class ) );
var_dump( class_exists( \SkyVerge\WooCommerce\Facebook\Events\AAMSettings::class ) );
var_dump( class_exists( \Automattic\WooCommerce\ActionSchedulerJobFramework\AbstractJob::class ) );

Changelog entry

Dev - Replace composer autoloader with Jetpack autoloader

danielbitzer avatar Jun 04 '21 04:06 danielbitzer

@danielbitzer - Do you think we should include this in 2.6, or is it ok to hold off until 2.7?

haszari avatar Jun 04 '21 04:06 haszari

@haszari I'd probably hold off since 2.6 has been RC'd already. There isn't any urgency to make this change before 2.7.

danielbitzer avatar Jun 04 '21 04:06 danielbitzer

Will close this PR as stale. And open a new PR to close the issue.

rawdreeg avatar Sep 30 '22 07:09 rawdreeg