Comments (6)
If it would help, I can roll the release and document all the steps for you... just let me know.
from archive_tar.
Thanks @ashnazg, I'm happy to have a go at this myself but will shout if I get stuck (and appreciate the offer).
Are there any non-obvious steps you think I might miss?
I was thinking I need to prepare package.xml for the pear release, then create a github release.
I've yet to find what looks like a single source of truth for the pear release, but (along with the link above about validation) there's:
https://pear.php.net/manual/en/developers.recommendations.releasenotes.php
https://www.electricmonk.nl/log/2009/04/12/easy-pear-package-creation/ looks good for some general context but may not be directly applicable here for creating a new release of a long-standing existing package.
from archive_tar.
Also checking https://pear.php.net/manual/en/developers.php
from archive_tar.
Validating the existing package.xml we get 3 warnings:
$ pear package-validate package.xml
Analyzing Archive/Tar.php
Warning: in Tar.php: function "gzseek" not prefixed with package name "Archive_Tar"
Warning: in Tar.php: function "gztell" not prefixed with package name "Archive_Tar"
Warning: in Tar.php: function "gzopen" not prefixed with package name "Archive_Tar"
This is because of the shim for a 2011 php packaging bug added in #8
It'd be good to avoid these warnings, but I don't see a simple way of doing so as the validator is based on parsing the source file with https://www.php.net/manual/en/function.token-get-all.php and doesn't allow for specific checks to be disabled a la phpcs, for example. It doesn't matter that the functions are only defined conditionally.
I think we could possibly edit the package.xml file to explicitly declare that it provides these global functions, but that doesn't seem like a good solution to me.
There's an argument for removing this shim completely; it seemed to mostly affect ubuntu PHP 5.x in a release which is long since End of Life. Symfony's polyfill had a very similar shim but removed all support for PHP 5 a few years ago. I think https://github.com/symfony/polyfill/blob/v1.19.0/src/Php56/bootstrap.php#L32 was the last tag it appeared in.
Perhaps it'd be better to deprecate the shim and mark it for removal in a future release. I'll file a separate issue for that.
from archive_tar.
@ashnazg if you have the time and inclination to prep a new release and note down the basic steps, I'd appreciate it.
I'm not sure if hand-hacking the package.xml file is the way to go, but have not had much luck trying to install and then use what looks like it might be the appropriate tooling e.g. PEAR_PackageFileManager(2) ?
from archive_tar.
@mcdruid , I got the 1.5.0 release out. I'll be sending you some good release instructions in an email shortly.
from archive_tar.
Related Issues (14)
- PHP 7.4 - Archive_Tar->_readHeader() throws deprecations HOT 3
- Add option to disallow symlinks HOT 11
- This line doesn't do anything HOT 2
- mkdir default mask HOT 5
- Throws array access of type bool error in chroot jail
- Multiple vulnerabilities through filename manipulation (CVE-2020-28948 and CVE-2020-28949) HOT 3
- relative symlinks failing(Out-of path file extraction) with new commit cde460582ff389404b5b3ccb59374e9b389de916 HOT 7
- Relative symlinks with parent folder reference inside archive are rejected as out-of-path HOT 1
- Confirm that 1.4.13 was not a security release? HOT 11
- Composer version 1.4.13 appears to be missing security patch HOT 2
- Clarify the licensing HOT 1
- PHP 8.1 compatibility error: Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as passed to a parameter, but will instead provide the current value. The parameter "$trace" was changed on line 69. HOT 1
- (deprecate then?) remove the gzopen/gztell/gzseek shim HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from archive_tar.