phalcon / packagecloud

:cloud: Phalcon Build Project
https://packagecloud.io/phalcon
BSD 3-Clause "New" or "Revised" License
26 stars 4 forks source link

please remove "ius" from release field #13

Open carlwgeorge opened 7 years ago

carlwgeorge commented 7 years ago

First off, thanks for choosing to base your phalcon RPM packages off of the IUS php70u packages. We love seeing users and developers benefit from our work.

I do have one small request. Please remove the "ius" string from your release field.

%global repo_vendor ius
Release: 1.%{repo_vendor}%{?dist}

Naming the packages with the same %{php_base} as ours is appropriate, but including "ius" in the release field is misleading. Today a user came to our IRC channel asking questions about php70u-phalcon. I would suggest setting repo_vendor to phalcon or removing it entirely.

sergeyklay commented 7 years ago

We need to generate RPMs like:

Also take a look at https://github.com/phalcongelist/packagecloud/blob/master/builder/patching.mk#L41

carlwgeorge commented 7 years ago
virgofx commented 7 years ago

We should be able to drop the name on the vendor tag provided we can uniquely identify similar versions of Phalcon across different platform vendors. That means we'll need to get a matrix to see if the prefix name portion is unique across all vendors (e.g. php56u [IUS]). Otherwise, may need to adjust the vendor tag to be "phalcon-ius".

@carlwgeorge Webtatic isn't done yet here ... nor is Remi which is why it's not shown in source.

sergeyklay commented 7 years ago

As you know guys, we store packages in Packagecloud. So we have to use different file names to be able push package to cloud.

sergeyklay commented 7 years ago

Well, I agree with @virgofx we can use format like

sergeyklay commented 7 years ago

Probably we should create a more universal RPM-spec file and just use format like php55-phalcon-3.0.4-1.el7.centos.x86_64.rpm without repo vendor at all.

Cc: @virgofx

virgofx commented 7 years ago

The problem with the last method @sergeyklay is that Linux on the non-debian side for PHP is very specific which means the playground for PHP will either be one of the major PHP RPM providers so I don't think we can do a universal RPM spec ... it needs to be consistent with each of the main RPM providers (IUS, Webtatic, Remi, etc) This holds true for the dependencies (e.g. php56u-phalcon should require php56u and php56u-common)

carlwgeorge commented 7 years ago

@sergeyklay That approach would probably be ideal. You can accomplish that by taking advantage of virtual provides of the packages.

-Requires: %{php_base}(zend-abi) = %{zend_apiver}
-Requires: %{php_base}(api) = %{php_apiver}
+Requires: php(zend-abi) = %{php_zend_api}
+Requires: php(api) = %{php_core_api}

That should ensure compatibility with IUS, Webtatic, Remi, and any other providers who follow the pattern Fedora sets (which should be all of them).

sergeyklay commented 7 years ago

@carlwgeorge I start to refactor it (https://github.com/phalcongelist/packagecloud/commit/70acb45dffe697e748677b484bcd2ac985cea0c9). Feel free to send PR to the dev branch.

sergeyklay commented 7 years ago

@virgofx Is there any changes/ideas related to this issue

virgofx commented 7 years ago

Not yet. I need to spend some time with it. I still have it on my list to get everything working with all Linux distros just been super busy at work :/

carlwgeorge commented 6 years ago

This is still an issue. Please remove the "ius" string from your release field.

virgofx commented 6 years ago

Since IUS doesn't build this package, we do ... What's the issue? This package is targeted specifically for use in combination with other php* IUS packages.

carlwgeorge commented 6 years ago

It confuses users, who mistake your packages as packages built by IUS, and then come to us to report issues or ask questions. I think it's great that you're building off IUS packages, I'm just asking for a simple change to the release field. The php??u- prefix is enough to indicate that it's intended to be used with IUS packages. How about setting repo_vendor to phalcon?