プロジェクト

全般

プロフィール

Bug(バグ) #4187

完了

Task(タスク) #4112: PHP7対応のための修正を行う

Class 'sfPearRest13' not found のエラーによりプラグインのインストールに失敗する

Youichi Kimura さんが7年以上前に追加. 4年以上前に更新.

ステータス:
Fixed(完了)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2020-04-01
期日:
進捗率:

100%

予定工数:
(合計: 0:00時間)
3.6 で発生するか:
No (いいえ)
3.8 で発生するか:
No (いいえ)

説明

master ブランチ (8cbcdac4) にて、opPlugin:install タスクを実行すると一部のプラグインで Fatal error により異常終了する問題が起きている。

$ php symfony opPlugin:install opTimelinePlugin -r 1.2.6.1
PHP Warning:  Declaration of sfPearRest::downloadHttp($url, $lastmodified = NULL, $accept = false) should be compatible with PEAR_REST::downloadHttp($url, $lastmodified = NULL, $accept = false, $channel = false) in /vagrant/lib/vendor/symfony/lib/plugin/sfPearRest.class.php on line 30
PHP Notice:  Only variables should be passed by reference in /vagrant/lib/vendor/symfony/lib/plugin/sfSymfonyPluginManager.class.php on line 186
PHP Notice:  Only variables should be passed by reference in /vagrant/lib/plugin/opPluginManager.class.php on line 220
>> plugin    installing plugin "opTimelinePlugin" 
PHP Warning:  Declaration of opPluginDownloader::getDependency2Object(&$c, $i, $p, $s) should be compatible with & PEAR_Downloader::getDependency2Object(&$c, $i, $p, $s) in /vagrant/lib/plugin/opPluginDownloader.class.php on line 18
>> sfPearFrontendPlugin downloading opTimelinePlugin-1.2.6.1.tgz ...
>> sfPearFrontendPlugin Starting to download opTimelinePlugin-1.2.6.1.tgz (235,547
>> sfPearFrontendPlugin bytes)
>> sfPearFrontendPlugin .
[...]
>> sfPearFrontendPlugin .
>> sfPearFrontendPlugin ...done: 235,547 bytes
>> sfPearFrontendPlugin WARNING: channel "plugins.openpne.jp" has updated its
>> sfPearFrontendPlugin protocols, use "pear channel-update plugins.openpne.jp" to
>> sfPearFrontendPlugin update
PHP Fatal error:  Uncaught Error: Class 'sfPearRest13' not found in /vagrant/lib/vendor/symfony/lib/plugin/sfPearConfig.class.php:27
Stack trace:
#0 /vagrant/lib/vendor/PEAR/PEAR/Downloader.php(1022): sfPearConfig->getREST('1.3', Array)
#1 /vagrant/lib/vendor/PEAR/PEAR/Downloader/Package.php(637): PEAR_Downloader->_getDepPackageDownloadUrl(Array, Array)
#2 /vagrant/lib/vendor/PEAR/PEAR/Downloader/Package.php(466): PEAR_Downloader_Package->_detect2Dep(Array, Array, 'required', Array)
#3 /vagrant/lib/vendor/PEAR/PEAR/Downloader/Package.php(380): PEAR_Downloader_Package->_detect2(Array, Array, Array, Array)
#4 /vagrant/lib/vendor/PEAR/PEAR/Downloader.php(412): PEAR_Downloader_Package->detectDependencies(Array)
#5 /vagrant/lib/vendor/symfony/lib/plugin/sfPluginManager.class.php(207): PEAR_Downloader->download(Array)
#6 /vagrant/lib/vendor/symfony/lib/plugin/sfPluginManager.class.php(112): sfPluginManager->doInstallPlugin('opTimelinePlugi...', Array)
#7 /vagrant/lib/vendor/symfony/lib/task/plugin/sfPluginInstallTask.class.php(122): in /vagrant/lib/vendor/symfony/lib/plugin/sfPearConfig.class.php on line 27

子チケット 1 (0件未完了1件完了)

Backport(バックポート) #4427: Class 'sfPearRest13' not found のエラーによりプラグインのインストールに失敗するFixed(完了)kaoru n2020-04-01

操作

Youichi Kimura さんが7年以上前に更新

  • トラッカーTask(タスク) から Bug(バグ) に変更
  • 3.6 で発生するかNo (いいえ) にセット
  • 3.8 で発生するかNo (いいえ) にセット

Youichi Kimura さんが7年以上前に更新

lib/plugin/sfPearRest13.class.php に以下の内容のファイルを配置する事でインストールに成功することを確認:

<?php

require_once 'PEAR/REST/13.php';

class sfPearRest13 extends PEAR_REST_13
{
  public function __construct($config, $options = array())
  {
    $class = isset($options['base_class']) ? $options['base_class'] : 'sfPearRest';

    $this->_rest = new $class($config, $options);
  }
}

kaoru n さんがほぼ5年前に更新

  • 対象バージョンOpenPNE 3.9.0 から OpenPNE 3.10.x に変更

kaoru n さんが4年以上前に更新

  • 優先度Normal(通常) から High(高め) に変更

kaoru n さんが4年以上前に更新

  • 対象バージョンOpenPNE 3.10.x から OpenPNE 3.11.x に変更

kaoru n さんが4年以上前に更新

  • ステータスNew(新規) から Pending Review(レビュー待ち) に変更
  • 担当者Youichi Kimura から kaoru n に変更
  • 進捗率0 から 50 に変更

https://github.com/openpne/OpenPNE3/pull/593
にてプルリクエストしました

Rimpei Ogawa さんが4年以上前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更

isao sano さんが4年以上前に更新

  • ステータスPending Testing(テスト待ち) から Pending Merge(マージ待ち) に変更
  • 進捗率70 から 80 に変更

試験完了しました。
問題ありません。

kaoru n さんが4年以上前に更新

  • ステータスPending Merge(マージ待ち) から Fixed(完了) に変更
  • 進捗率80 から 100 に変更

マージしました

他の形式にエクスポート: Atom PDF