Giter VIP home page Giter VIP logo

Comments (8)

tboothman avatar tboothman commented on June 8, 2024

In my opinion imdbphp is a dependency of your web application and should be required/updated as such. I recommend using composer to download/update imdbphp.
I'm sure @IzzySoft can tell you more about why apache is a dependency of imdbphp though.

from imdbphp.

IzzySoft avatar IzzySoft commented on June 8, 2024

You might have to contact the NGiNX devs (or rather packagers) for that. The IMDBPHP package declares httpd as a dependency, which is a generic any web server usually declares as "prodives" in its specifications (check e.g. with yaws, webfs, monkey, lighttpd, Apache2 – at least on Ubuntu, even nginx-full declares httpd in "Provides"). As NGiNX is a web server, they should do so in their SPEC as well – and RPM/YUM would figure it doesn't need to install any web server as there is already one installed (I've just googled for NGiNX spec files, and it indeed seems they forgot that: I only found Provides: webserver there, even in a quite up-to-date version here on Github). I'd recommend you file an issue with the nginx project here at Github (I've searched their repo, but couldn't find a SPEC file to check there).

As @tboothman already pointed out, a web server is a requirement to IMDBPHP (though you theoretically could use IMDBPHP also with php-cli alone, that's not how it's used normally). So until the packaging part is solved by the NGiNX crew, you could either install it via composer, or clone it from git (where you could update it using git pull with e.g. a weekly cron task).

@tboothman Apache itself is not declared "required". I specifically used httpd for the reasons pointed out above. And as my list shows (I've only checked on Ubuntu, as I have no RPM based distri running here), all web servers seem to honor that.

from imdbphp.

tboothman avatar tboothman commented on June 8, 2024

That's not right though,the only requirement of this is php-core (or whatever it's called in yum). It doesn't require php-cli or a web server

from imdbphp.

IzzySoft avatar IzzySoft commented on June 8, 2024

So you vote to remove the httpd dependency? For a check, here's what is currently declared:

  • RPM: httpd, php
  • DEB: httpd, phpapi | libapache2-mod-php5 | libapache-mod-php5 | php5-cgi | php5

No recommends/suggests are defined currently. As you're the one maintaining the code now, @tboothman – you're the one saying what's required. I'm "just the packager" now, so I have to see how to realize what you define 😸 Options are:

  • leave as-is
  • remove the httpd requirement entirely
  • move httpd to "Recommends" (which means it will still get installed by default, unless the user has either defined the default to skip recommends, or explicitly advices to skip them for "this install" using the corresponding command-line switch)
  • move httpd to "Suggests" (which means it won't be installed automatically, but only "thrown as notice" for a useful addition)

PS: Also note that his is the first time someone "complained". I'm maintaining IMDBPHP since 2002, and since about then it's also available as .rpm and .deb. So we have to weight that as well: what will be the most common use case here? As a raw suggestion: if 80%+ will use a web server along, we should at least have it in "Recommends". With 50..80%, it should at least stick in "Suggests". Just my humble opinion, though...

from imdbphp.

tboothman avatar tboothman commented on June 8, 2024

True enough, but for a long time apache was the way you ran a PHP web server. That's not really the case any more.

As I said before installing PHP libraries via system package managers isn't for me, but I would think the place to take an example from would be the PEAR libraries you can get via apt-get on ubuntu (and presumably on debian too). Whatever they do is probably the correct way to do it. I find it hard to believe that installing a PEAR package would install a web server.

from imdbphp.

IzzySoft avatar IzzySoft commented on June 8, 2024
Depends: php5-common (>= 5.3.10-1ubuntu3), php5-cli
Recommends: gnupg, php5-dev

So no cli you say? ;) That would enforce the cli package, and add two more dependencies (gnupg, php5-dev) which I doubt are strictly needed. But I get your point, though.

As "installing PHP libraries via system package managers isn't for" you, we cannot take your "horizont" here as example for packaging rules (no disrespect, Tom). I was thinking about the httpd requirement a couple of times in the past as well, but came to no conclusion.

I perfectly agree it's not a "strict requirement". Still I hold most users will use it that way. You might hold against: those probably have a web server installed already, and that might be true.

So my suggestion is moving httpd from "Requires" to "Recommends". So those who don't want a web-server dragged in, could opt for --no-recommends (or whatever the suitable option for the package manager used is). Those who don't use a package manager (hi @tboothman 😸 ) won't be affected anyway. And for those who don't care, nothing changes.

@mpol12 that fine with you?

@tboothman Should we include a version for the PHP requirements? Currently I see no hard reason, as we're compatible with what's shipped by the major distributions. But as soon as you decide for the 5.4-introduced features, we should consider >=5.4 for that.

from imdbphp.

mpol12 avatar mpol12 commented on June 8, 2024

For me moving httpd to "Suggests" would be the best solution.
Having said that, moving httpd to "Recommends" would work just fine.
On Jan 26, 2015 12:32 AM, "IzzySoft" [email protected] wrote:

Depends: php5-common (>= 5.3.10-1ubuntu3), php5-cli
Recommends: gnupg, php5-dev

So no cli you say? ;) That would enforce the cli package, and add two more
dependencies (gnupg, php5-dev) which I doubt are strictly needed. But I
get your point, though.

As "installing PHP libraries via system package managers isn't for" you,
we cannot take your "horizont" here as example for packaging rules (no
disrespect, Tom). I was thinking about the httpd requirement a couple of
times in the past as well, but came to no conclusion.

I perfectly agree it's not a "strict requirement". Still I hold most users
will use it that way. You might hold against: those probably have a web
server installed already, and that might be true.

So my suggestion is moving httpd from "Requires" to "Recommends". So
those who don't want a web-server dragged in, could opt for
--no-recommends (or whatever the suitable option for the package manager
used is). Those who don't use a package manager (hi @tboothman
https://github.com/tboothman [image: 😸] ) won't be affected
anyway. And for those who don't care, nothing changes.

@mpol12 https://github.com/mpol12 that fine with you?

@tboothman https://github.com/tboothman Should we include a version for
the PHP requirements? Currently I see no hard reason, as we're compatible
with what's shipped by the major distributions. But as soon as you decide
for the 5.4-introduced features, we should consider >=5.4 for that.


Reply to this email directly or view it on GitHub
#16 (comment).

from imdbphp.

IzzySoft avatar IzzySoft commented on June 8, 2024

For the differences between "Recommends" (not strictly required, but in most common cases used this way) and "Suggests" (not required, but might be interesting in conjunction), I've moved it to "Recommends" then (as that's how most people will use it). This will take effect with the next release.

I'll thus close this issue as "solved". If you encounter related problems installing the next version, feel free to re-open.

from imdbphp.

Related Issues (20)

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.