diff --git a/.gitignore b/.gitignore index ca86f47..c5a550a 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,10 @@ php-markdown-1.0.1n.zip /php-markdown-lib-1.4.0.zip /php-markdown-lib-1.4.1.zip /php-markdown-lib-1.5.0.zip +/php-markdown-lib-1.6.0.zip +/php-markdown-lib-1.7.0.zip +/php-markdown-lib-1.8.0.zip +/php-markdown-1.8.0-01ab082.tgz +/php-markdown-1.9.0-c83178d.tgz +/php-markdown-1.9.1-5024d62.tgz +/php-markdown-2.0.0.tar.gz diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..7cb59cf --- /dev/null +++ b/composer.json @@ -0,0 +1,54 @@ +{ + "name": "michelf/php-markdown", + "type": "library", + "description": "PHP Markdown", + "homepage": "https://michelf.ca/projects/php-markdown/", + "keywords": ["markdown"], + "license": "BSD-3-Clause", + "authors": [ + { + "name": "Michel Fortin", + "email": "michel.fortin@michelf.ca", + "homepage": "https://michelf.ca/", + "role": "Developer" + }, + { + "name": "John Gruber", + "homepage": "https://daringfireball.net/" + } + ], + "require": { + "php": ">=7.4" + }, + "autoload": { + "psr-4": { "Michelf\\": "Michelf/" } + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^3.0", + "phpunit/phpunit": "^9.5", + "phpstan/phpstan": ">=1.0", + "phpstan/phpstan-phpunit": ">=1.0" + }, + + "scripts": { + "tests": "vendor/bin/phpunit test/", + "phpstan": [ + "vendor/bin/phpstan analyse Michelf/ --level=5", + "vendor/bin/phpstan analyse -c test/phpstan.neon test/ --level=5" + ], + "codestyle": "vendor/bin/php-cs-fixer fix Michelf --dry-run --verbose --show-progress=none", + "codestyle-fix": "vendor/bin/php-cs-fixer fix Michelf" + }, + + "archive": { + "exclude": [ + "/.github/", + "/test/", + "/.editorconfig", + "/.gitignore", + "/.scrutinizer.yml", + "/.travis.yml", + "/phpunit.xml.dist" + ] + } +} diff --git a/makesrc.sh b/makesrc.sh new file mode 100755 index 0000000..87d223d --- /dev/null +++ b/makesrc.sh @@ -0,0 +1,28 @@ +#!/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\n" + +echo "Cloning..." +rm -rf $PROJECT-$COMMIT +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 .git $PROJECT-$COMMIT + +echo "Cleaning..." +rm -rf $PROJECT-$COMMIT + +echo "Done." diff --git a/php-markdown.spec b/php-markdown.spec index a2bdaad..56470b6 100644 --- a/php-markdown.spec +++ b/php-markdown.spec @@ -1,22 +1,35 @@ -# We still provide the classic library, for now -%global classic_version 1.0.2 +# Fedora spec file for php-markdown +# +# License: MIT +# http://opensource.org/licenses/MIT +# +# Please preserve changelog entries +# +%global gh_commit 5024d623c1a057dcd2d076d25b7d270a1d0d55f3 +%global gh_short %(c=%{gh_commit}; echo ${c:0:7}) +%global gh_owner michelf +%global gh_project php-markdown Name: php-markdown -Version: 1.5.0 -Release: 1%{?dist} +Version: 2.0.0 +Release: 7%{?dist} Summary: Markdown implementation in PHP -Group: Development/Languages -License: BSD +License: BSD-3-Clause URL: https://michelf.ca/projects/php-markdown/ -Source0: http://littoral.michelf.ca/code/php-markdown/%{name}-lib-%{version}.zip -Source1: http://littoral.michelf.ca/code/php-markdown/%{name}-%{classic_version}.zip +Source0: https://github.com/michelf/php-markdown/archive/%{version}/%{name}-%{version}.tar.gz +Source1: makesrc.sh -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch +BuildRequires: php-fedora-autoloader-devel +# For tests +# "require-dev": { +# "phpunit/phpunit": ">=4.3 <5.8" +BuildRequires: phpunit10 -Requires: php(language) >= 5.3 +Requires: php(language) >= 7.4 Requires: php-pcre +Requires: php-composer(fedora/autoloader) Provides: php-composer(michelf/php-markdown) = %{version} @@ -25,54 +38,161 @@ Provides: php-composer(michelf/php-markdown) = %{version} This is a PHP implementation of John Gruber's Markdown. It is almost completely compliant with the reference implementation. -This packages provides the classic version %{classic_version} and the new -library version %{version}. +Autoloader: %{_datadir}/php/Michelf/markdown-autoload.php %prep -%setup -q -n 'PHP Markdown Lib %{version}' -a 1 - -# documentation and licenses -mkdir -p library lic/library -mv Readme.* composer.json library -mv License.* lic/library - -mkdir -p classic lic/classic -cd "PHP Markdown %{classic_version}" -mv License.text ../lic/classic -mv "PHP Markdown Readme.text" ../classic/Readme.text +%setup -q +mv License.md LICENSE %build -# Empty build +: Generate simple autoloader +%{_bindir}/phpab \ + --template fedora \ + --output Michelf/markdown-autoload.php \ + Michelf +cat Michelf/markdown-autoload.php %install -rm -rf %{buildroot} install -d %{buildroot}%{_datadir}/php/ # PSR-0 library cp -pr Michelf %{buildroot}%{_datadir}/php/Michelf -# Old classic -install -p -m 644 "PHP Markdown %{classic_version}/markdown.php" %{buildroot}%{_datadir}/php/ -%clean -rm -rf %{buildroot} +%check +php -r ' +require_once "%{buildroot}%{_datadir}/php/Michelf/markdown-autoload.php"; + $ver = Michelf\Markdown::MARKDOWNLIB_VERSION; + echo "Version=$ver, expected=%{version}\n"; + return (version_compare($ver, "%{version}", "=") ? 0 : 1); +' +cat << 'EOF' | tee bs.php + - 2.0.0-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Sun Mar 23 2025 Tim Landscheidt - 2.0.0-6 +- Remove outdated information from package description + +* Sat Jan 18 2025 Fedora Release Engineering - 2.0.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Fri Jul 19 2024 Fedora Release Engineering - 2.0.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Thu Jan 25 2024 Fedora Release Engineering - 2.0.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sun Jan 21 2024 Fedora Release Engineering - 2.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Wed Oct 04 2023 Sérgio Basto - 2.0.0-1 +- Update php-markdown to 2.0.0 + +* Fri Jul 21 2023 Fedora Release Engineering - 1.9.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Wed Mar 01 2023 Gwyn Ciesla - 1.9.1-5 +- migrated to SPDX license + +* Fri Jan 20 2023 Fedora Release Engineering - 1.9.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Fri Jul 22 2022 Fedora Release Engineering - 1.9.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Fri Jan 21 2022 Fedora Release Engineering - 1.9.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Wed Nov 24 2021 Remi Collet - 1.9.1-1 +- update to 1.9.1 + +* Fri Jul 23 2021 Fedora Release Engineering - 1.9.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jan 27 2021 Fedora Release Engineering - 1.9.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Tue Jul 28 2020 Fedora Release Engineering - 1.9.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Thu Jan 30 2020 Fedora Release Engineering - 1.9.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Mon Dec 2 2019 Remi Collet - 1.9.0-1 +- update to 1.9.0 +- run upstream test suite + +* Fri Jul 26 2019 Remi Collet - 1.8.0-6 +- drop old classic version +- use git snapshot as next version will have test suite +- add patch for PHP 7.4, adapted for 1.8.0 from + https://github.com/michelf/php-markdown/pull/316 + +* Fri Jul 26 2019 Fedora Release Engineering - 1.8.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sat Feb 02 2019 Fedora Release Engineering - 1.8.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 13 2018 Fedora Release Engineering - 1.8.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Feb 09 2018 Fedora Release Engineering - 1.8.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Mon Jan 15 2018 Remi Collet - 1.8.0-1 +- Mardown PSR-0/PSR-4 library version 1.8.0 + +* Thu Jul 27 2017 Fedora Release Engineering - 1.7.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sat Feb 11 2017 Fedora Release Engineering - 1.7.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Sun Oct 30 2016 Remi Collet - 1.7.0-1 +- Mardown PSR-0 library version 1.7.0 +- switch to fedora/autoloader +- add minimal %%check for version and autoloader + +* Thu Feb 04 2016 Fedora Release Engineering - 1.6.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Sat Dec 26 2015 Remi Collet - 1.6.0-1 +- Mardown PSR-0 library version 1.6.0 +- add simple autoloader + +* Thu Jun 18 2015 Fedora Release Engineering - 1.5.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + * Mon Mar 2 2015 Remi Collet - 1.5.0-1 - Mardown PSR-0 library version 1.5.0 - fix license handling diff --git a/sources b/sources index fe85a85..e26d3a3 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -29b35c72e60d8ab92a5f7eedbe368cc3 php-markdown-1.0.2.zip -9d64211a9af4cf3c20c3aad8fe54ddb9 php-markdown-lib-1.5.0.zip +SHA512 (php-markdown-2.0.0.tar.gz) = a848bc7374f8392d21824acbc1fb11c37f961e1780fb2c735a4d4d09949fb51a6962d8d2f6df2dfca92d00a33da82062d5e2a8b8301cb476242e1fc17af673b5