diff --git a/.gitignore b/.gitignore index d11e3e5..87ba5b7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,18 +1 @@ -clog getid3-2.0.0b5.zip -/getid3-1.9.3-20111213.zip -/getID3-1.9.7.zip -/getID3-1.9.8-20140511.zip -/getID3-1.9.12.zip -/getID3-1.9.13-b9a8564.tar.gz -/getID3-1.9.14-30bd114.tar.gz -/getID3-1.9.15-df9b441.tar.gz -/getID3-1.9.16-7aec0d4.tar.gz -/getID3-1.9.17-d2e45f2.tar.gz -/php-getid3-1.9.18-0723b77.tgz -/php-getid3-1.9.19-c6fd499.tgz -/php-getid3-1.9.20-3c15e35.tgz -/php-getid3-1.9.21-36f5dab.tgz -/php-getid3-1.9.22-45f20fa.tgz -/php-getid3-1.9.23-06c7482.tgz -/php-getid3-1.9.24-1e11b9b.tgz diff --git a/ampache.patch b/ampache.patch new file mode 100644 index 0000000..b576bb4 --- /dev/null +++ b/ampache.patch @@ -0,0 +1,83 @@ +diff -Naur getid3/module.audio.mp3.php getid3-new/module.audio.mp3.php +--- getid3/module.audio.mp3.php 2006-11-16 23:57:56.000000000 -0200 ++++ getid3-new/module.audio.mp3.php 2009-07-31 20:32:00.000000000 -0300 +@@ -1076,6 +1076,8 @@ + fseek($fd, $avdata_offset, SEEK_SET); + + $sync_seek_buffer_size = min(128 * 1024, $info['avdataend'] - $avdata_offset); ++ // If sync < 1 then resort to default of 128 * 1024 ++ if ($sync_seek_buffer_size < 1) { $sync_seek_buffer_size = 128 * 1024; } + $header = fread($fd, $sync_seek_buffer_size); + $sync_seek_buffer_size = strlen($header); + $synch_seek_offset = 0; +diff -Naur getid3/module.audio.xiph.php getid3-new/module.audio.xiph.php +--- getid3/module.audio.xiph.php 2006-12-03 22:12:42.000000000 -0200 ++++ getid3-new/module.audio.xiph.php 2009-07-31 20:42:10.000000000 -0300 +@@ -849,6 +849,8 @@ + + + public static function OggPageSegmentLength($ogg_info_array, $segment_number=1) { ++ ++ if (!is_array($ogg_info_array['segment_table'])) { $ogg_info_array['segment_table'] = array(); } + + for ($i = 0; $i < $segment_number; $i++) { + $segment_length = 0; +@@ -859,6 +861,7 @@ + } + } + } ++ $segment_length = !$segment_length ? '1' : $segment_length; + return $segment_length; + } + +@@ -949,4 +952,4 @@ + + } + +-?> +\ No newline at end of file ++?> +diff -Naur getid3/module.tag.id3v2.php getid3-new/module.tag.id3v2.php +--- getid3/module.tag.id3v2.php 2009-03-08 11:30:10.000000000 -0300 ++++ getid3-new/module.tag.id3v2.php 2009-07-31 20:38:37.000000000 -0300 +@@ -1928,8 +1928,8 @@ + $return_array['genre'][] = $genre_string; + + } else { +- +- while (strpos($genre_string, '(') !== false) { ++ //MODIFIED per #466 Bernhard Weyrauch fix endless loop if no ) ++ while (strpos($genre_string, '(') !== false AND (strpos($genre_string, ')') !== false)) { + + $start_pos = strpos($genre_string, '('); + $end_pos = strpos($genre_string, ')'); +@@ -3155,6 +3155,7 @@ + 'TPE3' => 'conductor', + 'TPE4' => 'remixer', + 'TPUB' => 'publisher', ++ 'TPOS' => 'disk', + 'TRC' => 'isrc', + 'TRCK' => 'track', + 'TRK' => 'track', +@@ -3280,4 +3281,4 @@ + + } + +-?> +\ No newline at end of file ++?> +diff -Naur getid3/write.id3v2.php getid3-new/write.id3v2.php +--- getid3/write.id3v2.php 2006-12-26 00:44:22.000000000 -0200 ++++ getid3-new/write.id3v2.php 2009-07-31 20:32:00.000000000 -0300 +@@ -374,9 +374,8 @@ + } + + // rewrite file - no tag present or new tag longer than old tag +- else +- +- if (!$fp_source = @fopen($this->filename, 'rb')) { ++ else { ++ if (!$fp_source = @fopen($this->filename, 'rb')) { + throw new getid3_exception('Could not open '.$this->filename.' mode "rb"'); + } + fseek($fp_source, $engine->info['avdataoffset'], SEEK_SET); diff --git a/makesrc.sh b/makesrc.sh deleted file mode 100755 index 7d752c6..0000000 --- a/makesrc.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/bash - -NAME=$(basename $PWD) -OWNER=$(sed -n '/^%global gh_owner/{s/.* //;p}' $NAME.spec) -PROJECT=$(sed -n '/^%global gh_project/{s/.* //;p}' $NAME.spec) -VERSION=$(sed -n '/^Version:/{s/.* //;p}' $NAME.spec) -COMMIT=$(sed -n '/^%global gh_commit/{s/.* //;p}' $NAME.spec) -SHORT=${COMMIT:0:7} - -echo -e "\nCreate git snapshot\nName=$NAME, Owner=$OWNER, Project=$PROJECT, Version=$VERSION, Commit=$COMMIT\n" - -echo "Cloning..." -git clone https://github.com/$OWNER/$PROJECT.git $PROJECT-$COMMIT - -echo "Getting commit..." -pushd $PROJECT-$COMMIT -git checkout $COMMIT -cp composer.json ../composer.json -popd - -echo "Archiving..." -tar czf $NAME-$VERSION-$SHORT.tgz --exclude-vcs $PROJECT-$COMMIT - -echo "Cleaning..." -rm -rf $PROJECT-$COMMIT - -echo "Done." - diff --git a/php-getid3.spec b/php-getid3.spec index f2ffd1e..febf9a7 100644 --- a/php-getid3.spec +++ b/php-getid3.spec @@ -1,52 +1,15 @@ -# -# Fedora spec file for php-getid3 -# -# License: MIT -# http://opensource.org/licenses/MIT -# -# Please preserve changelog entries -# -%global gh_commit 1e11b9b6eb468b522fe604a42a9fdc8ee759bf8a -%global gh_short %(c=%{gh_commit}; echo ${c:0:7}) -%global gh_owner JamesHeinrich -%global gh_project getID3 -%global pk_owner james-heinrich -%global pk_project getid3 - -Name: php-%{pk_project} -Version: 1.9.24 -Release: 1%{?dist} -Epoch: 1 -License: GPL-1.0-or-later OR LGPL-3.0-only OR MPL-2.0 +Name: php-getid3 +Version: 2.0.0b5 +Release: 2%{?dist} +License: GPLv2 Summary: The PHP media file parser -URL: https://www.getid3.org/ -Source0: %{name}-%{version}-%{gh_short}.tgz -Source1: makesrc.sh - +Group: Development/Libraries +URL: http://getid3.sourceforge.net/ +Source0: http://downloads.sourceforge.net/getid3/getid3-%{version}.zip +Patch0: ampache.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +Requires: php >= 5.0.0 BuildArch: noarch -BuildRequires: php-fedora-autoloader-devel - -# from composer.json -# "php": ">=5.3.0" -Requires: php(language) >= 5.3.0 -# from phpcompatinfo for version 1.9.16 -Requires: php-simplexml -Requires: php-exif -Requires: php-gd -Requires: php-iconv -Requires: php-json -Requires: php-libxml -Requires: php-mbstring -Requires: php-xml -Suggests: php-dba -Suggests: php-mysqli -Suggests: php-rar -Suggests: php-sqlite3 -# Autoloader -Requires: php-composer(fedora/autoloader) - -Provides: php-composer(%{pk_owner}/%{pk_project}) = %{version} - %description getID3() is a PHP script that extracts useful information @@ -54,185 +17,34 @@ getID3() is a PHP script that extracts useful information other multimedia file formats (Ogg, WMA, WMV, ASF, WAV, AVI, AAC, VQF, FLAC, MusePack, Real, QuickTime, Monkey's Audio, MIDI and more). -Autoloader: %{_datadir}/php/getid3/autoload.php - - %prep -%setup -q -n %{gh_project}-%{gh_commit} - +%setup -q -c +%patch0 -p0 -b .ampache +for i in ./*.txt demos/*.php; do + iconv -f iso-8859-1 -t utf-8 < "$i" > "${i}_" + touch -r "$i" "${i}_" + mv "${i}_" "$i" +done +sed -i 's/\r//' demos/index.php +sed -i 's/\r//' demos/demo.mysql.structure.sql %build -# From composer.json, "autoload": { -# "classmap": ["getid3/"] -%{_bindir}/phpab --template fedora --output getid3/autoload.php getid3 - %install +rm -rf %{buildroot} + mkdir -p %{buildroot}%{_datadir}/php cp -a getid3 %{buildroot}%{_datadir}/php/ - -%check -php -r ' -require "%{buildroot}%{_datadir}/php/getid3/autoload.php"; -$ok = class_exists("getID3"); -echo "Autoload: " . ($ok ? "Ok\n" : "fails\n"); -echo "Version: " . getID3::VERSION . "\n"; -$ok = ($ok && strpos(getID3::VERSION, "%{version}") !== false); -exit ($ok ? 0 : 1); -' - +%clean +rm -rf %{buildroot} %files -%license licenses license.txt -%doc changelog.txt dependencies.txt readme.txt structure.txt demos -%doc composer.json +%defattr(-,root,root,-) +%doc *.txt demos %{_datadir}/php/getid3 - %changelog -* Fri Oct 10 2025 Remi Collet - 1.9.24-1 -- update to 1.9.24 - -* Fri Jul 25 2025 Fedora Release Engineering - 1:1.9.23-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Sat Jan 18 2025 Fedora Release Engineering - 1:1.9.23-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Fri Jul 19 2024 Fedora Release Engineering - 1:1.9.23-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Thu Jan 25 2024 Fedora Release Engineering - 1:1.9.23-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sun Jan 21 2024 Fedora Release Engineering - 1:1.9.23-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Thu Oct 19 2023 Remi Collet - 1.9.23-1 -- update to 1.9.23 -- fix license with SPDX ids - -* Fri Jul 21 2023 Fedora Release Engineering - 1:1.9.22-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Fri Jan 20 2023 Fedora Release Engineering - 1:1.9.22-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Fri Sep 30 2022 Remi Collet - 1.9.22-1 -- update to 1.9.22 - -* Fri Jul 22 2022 Fedora Release Engineering - 1:1.9.21-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Fri Jan 21 2022 Fedora Release Engineering - 1:1.9.21-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Thu Sep 23 2021 Remi Collet - 1.9.21-1 -- update to 1.9.21 - -* Fri Jul 23 2021 Fedora Release Engineering - 1:1.9.20-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Jan 27 2021 Fedora Release Engineering - 1:1.9.20-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Tue Jul 28 2020 Fedora Release Engineering - 1:1.9.20-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jul 1 2020 Remi Collet - 1.9.20-1 -- update to 1.9.20 - -* Thu Jan 30 2020 Fedora Release Engineering - 1:1.9.19-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Wed Dec 18 2019 Remi Collet - 1.9.19-1 -- update to 1.9.19 - -* Tue Sep 17 2019 Remi Collet - 1.9.18-1 -- update to 1.9.18 -- use git snapshot for sources - -* Fri Jul 26 2019 Fedora Release Engineering - 1:1.9.17-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Fri Feb 8 2019 Remi Collet - 1.9.17-1 -- update to 1.9.17 -- add weak dependencies on suggested extension - -* Sat Feb 02 2019 Fedora Release Engineering - 1:1.9.16-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Thu Oct 18 2018 Remi Collet - 1.9.16-1 -- update to 1.9.16 - -* Fri Jul 13 2018 Fedora Release Engineering - 1:1.9.15-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Fri Feb 09 2018 Fedora Release Engineering - 1:1.9.15-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Mon Oct 30 2017 Remi Collet - 1.9.15-1 -- Update to 1.9.15 - -* Thu Jul 27 2017 Fedora Release Engineering - 1:1.9.14-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Tue Mar 28 2017 Remi Collet - 1:1.9.14-1 -- Update to 1.9.14 -- handle all classes in autoloader - -* Sat Feb 11 2017 Fedora Release Engineering - 1:1.9.13-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Thu Dec 15 2016 Remi Collet - 1:1.9.13-1 -- update to 1.9.13 -- use new URL http://www.getid3.org/ -- use sources from github -- switch to fedora/autoloader -- add minimal check for autoloader - -* Mon Mar 21 2016 Remi Collet - 1:1.9.12-1 -- update to 1.9.12 -- add simple classmap autoloader #1319676 - -* Thu Feb 04 2016 Fedora Release Engineering - 1:1.9.8-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Thu Jun 18 2015 Fedora Release Engineering - 1:1.9.8-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Thu Aug 21 2014 Remi Collet - 1:1.9.8-2 -- fix minimal PHP version -- add explicit dependencies for all php extensions -- fix license handling -- provides php-composer(james-heinrich/getid3) - -* Wed Aug 20 2014 Adam Williamson - 1:1.9.8-1 -- new release 1.9.8 - -* Sat Jun 07 2014 Fedora Release Engineering - 1:1.9.7-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Sun Sep 08 2013 Roma - 1:1.9.7-1 -- Updated to 1.9.7 -- Changed license to LGPLv3+ - -* Thu Feb 14 2013 Fedora Release Engineering - 1:1.9.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Sun Oct 07 2012 Paulo Roma - 1:1.9.3-1 -- Downgraded to latest stable version. -- Got needed extensions by using: - phpci print --recursive --report extension /usr/share/php/getid3/ -- Added BR php-gd. - -* Sat Jan 14 2012 Fedora Release Engineering - 2.0.0b5-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Wed Feb 09 2011 Fedora Release Engineering - 2.0.0b5-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - * Fri Jul 31 2009 Paulo Roma 2.0.0b5-2 - Updated ampache patch. diff --git a/sources b/sources index e090d8c..6576cc7 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (php-getid3-1.9.24-1e11b9b.tgz) = 3c45d11e21cdb80dedb1e2acb1343fbbad1633a1e6fe2968e99faf019519ce3cffaf449d0829fb658acdf69ed89040b8b3f6ef9f6b8a4d8552324b2d32a1c928 +d2b24ccb4bd4a5c135517bd0ae3b2dd3 getid3-2.0.0b5.zip