Coder Social home page Coder Social logo

Prepare 1.5.0 release about archive_tar HOT 6 CLOSED

mcdruid avatar mcdruid commented on May 27, 2024
Prepare 1.5.0 release

from archive_tar.

Comments (6)

ashnazg avatar ashnazg commented on May 27, 2024

If it would help, I can roll the release and document all the steps for you... just let me know.

from archive_tar.

mcdruid avatar mcdruid commented on May 27, 2024

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.

mcdruid avatar mcdruid commented on May 27, 2024

Also checking https://pear.php.net/manual/en/developers.php

from archive_tar.

mcdruid avatar mcdruid commented on May 27, 2024

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.

mcdruid avatar mcdruid commented on May 27, 2024

@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.

ashnazg avatar ashnazg commented on May 27, 2024

@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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.