From 72d0fac80c0d88d015203578007260c338b40ece Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 18 Dec 2019 14:27:40 +0300 Subject: remove version.php and VERSION global constant, do version-related things in a slightly less ridiculous way --- include/functions.php | 41 ++++++++++++++++++++++++++++++++++++++++- include/sessions.php | 1 - include/version.php | 36 ------------------------------------ 3 files changed, 40 insertions(+), 38 deletions(-) delete mode 100644 include/version.php (limited to 'include') diff --git a/include/functions.php b/include/functions.php index 9cd352833..e72a70c13 100644 --- a/include/functions.php +++ b/include/functions.php @@ -151,7 +151,6 @@ } require_once 'db-prefs.php'; - require_once 'version.php'; require_once 'controls.php'; define('SELF_USER_AGENT', 'Tiny Tiny RSS/' . VERSION . ' (http://tt-rss.org/)'); @@ -1882,3 +1881,43 @@ return $ts; } + + /* for package maintainers who don't use git: if version_static.txt exists in tt-rss root + directory, its contents are displayed instead of git commit-based version, this could be generated + based on source git tree commit used when creating the package */ + + function get_version(&$git_commit = false, &$git_timestamp = false) { + global $ttrss_version; + + if (isset($ttrss_version)) + return $ttrss_version; + + $ttrss_version = "UNKNOWN (Unsupported)"; + + date_default_timezone_set('UTC'); + $root_dir = dirname(dirname(__FILE__)); + + if (file_exists("$root_dir/version_static.txt")) { + $ttrss_version = trim(file_get_contents("$root_dir/version_static.txt")) . " (Unsupported)"; + } else if (is_dir("$root_dir/.git")) { + $rc = 0; + $output = []; + + exec("git log --pretty=".escapeshellarg('%ct %h')." -n1 HEAD " . escapeshellarg($root_dir) . ' 2>&1', $output, $rc); + + if ($rc == 0) { + if (is_array($output) && count($output) > 0) { + list ($timestamp, $commit) = explode(" ", $output[0], 2); + + $git_commit = $commit; + $git_timestamp = $timestamp; + + $ttrss_version = strftime("%y.%m", $timestamp) . "-$commit"; + } + } else { + user_error("Unable to determine version: " . implode("\n", $output), E_USER_WARNING); + } + } + + return $ttrss_version; + } diff --git a/include/sessions.php b/include/sessions.php index ca9f169d8..73be1e403 100644 --- a/include/sessions.php +++ b/include/sessions.php @@ -7,7 +7,6 @@ require_once "errorhandler.php"; require_once "lib/accept-to-gettext.php"; require_once "lib/gettext/gettext.inc"; - require_once "version.php"; $session_expire = min(2147483647 - time() - 1, max(SESSION_COOKIE_LIFETIME, 86400)); $session_name = (!defined('TTRSS_SESSION_NAME')) ? "ttrss_sid" : TTRSS_SESSION_NAME; diff --git a/include/version.php b/include/version.php deleted file mode 100644 index d1c5e03b5..000000000 --- a/include/version.php +++ /dev/null @@ -1,36 +0,0 @@ - 0) { - list ($timestamp, $commit) = explode(" ", $output[0], 2); - - $git_commit = $commit; - $git_timestamp = $timestamp; - - $version = strftime("%y.%m", $timestamp) . "-$commit"; - } - } - } - - return $version; - } - - define('VERSION', get_version()); -- cgit v1.2.3