ÿØÿà JFIF H H ÿÛ C ÿÛ Cÿ " ÿÄ ÿÄ ÿÚ ±5¬€ ÿÄ àÿÚ ÿÄ ÀÿÚ ? ÿÄ ÀÿÚ ? ÿÄ àÿÚ ? ÿÄ àÿÚ ?! ÿÚ ÿÄ ÀÿÚ ? ÿÄ ÀÿÚ ? ÿÄ àÿÚ ? ÿÙ
| Server IP : 160.25.81.117 / Your IP : 216.73.216.137 Web Server : Apache/2 System : Linux sv05.hilab.cloud 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 User : bellizen ( 1045) PHP Version : 7.2.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/bellizen/public_html/vaoday/vendor/psy/psysh/src/Psy/VersionUpdater/ |
Upload File : |
<?php
/*
* This file is part of Psy Shell.
*
* (c) 2012-2017 Justin Hileman
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Psy\VersionUpdater;
use Psy\Shell;
class GitHubChecker implements Checker
{
const URL = 'https://api.github.com/repos/bobthecow/psysh/releases/latest';
private $latest;
/**
* @return bool
*/
public function isLatest()
{
return version_compare(Shell::VERSION, $this->getLatest(), '>=');
}
/**
* @return string
*/
public function getLatest()
{
if (!isset($this->latest)) {
$this->setLatest($this->getVersionFromTag());
}
return $this->latest;
}
/**
* @param string $version
*/
public function setLatest($version)
{
$this->latest = $version;
}
/**
* @return string|null
*/
private function getVersionFromTag()
{
$contents = $this->fetchLatestRelease();
if (!$contents || !isset($contents->tag_name)) {
throw new \InvalidArgumentException('Unable to check for updates');
}
$this->setLatest($contents->tag_name);
return $this->getLatest();
}
/**
* Set to public to make testing easier.
*
* @return mixed
*/
public function fetchLatestRelease()
{
$context = stream_context_create(array('http' => array('user_agent' => 'PsySH/' . Shell::VERSION)));
return json_decode(@file_get_contents(self::URL, false, $context));
}
}