#311: Node.js guidelines update -----------------------------+------------------ Reporter: patches | Owner: Type: enhancement | Status: new Priority: minor | Milestone: Component: Guideline Draft | Version: Keywords: | Blocked By: Blocking: | -----------------------------+------------------ We have a couple of changes we'd like to make to the Node.js Guidelines after several months of refining our processes a little bit.
You can see the new draft at: https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/NodeJS
The changes include:
* I've restored the %nodejs_fixdep section included in the original version of the draft. After reviewing the IRC logs, it seemed FPC didn't strongly object to this, and I believe it has several advantages to patch- based workflows. Not only is it simpler for packagers, but it also makes them dead simple to audit later on for staleness/compliance/whathaveyou. (`grep -r nodejs_fixdep` is just a lot easier than trying to find relevant patches. ;-) It also makes changes to dependencies much easier to see in git. [https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/NodeJS#Correctin... (relevant section)] [https://fedoraproject.org/w/index.php?title=User:Patches/PackagingDrafts/Nod... (diff)]
* The RPM magic was recently split into it's own "nodejs-packaging" SRPM, similar to Java. Accordingly, packages can now require "nodejs-packaging" instead of "nodejs-devel" to reduce the number of deps dragged in at build-time. [https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/NodeJS#BuildRequ... (relevant section)] [https://fedoraproject.org/w/index.php?title=User:Patches/PackagingDrafts/Nod... (diff #1)] [https://fedoraproject.org/w/index.php?title=User:Patches/PackagingDrafts/Nod... (diff #2)] [https://lists.fedoraproject.org/pipermail/nodejs/2013-April/000001.html (list discussion)]
* The necessary ExclusiveArch line needed for Node.js packages is now documented, including the %{nodejs_arches} macro recently added to redhat- rpm-config for this purpose. [https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/NodeJS#Exclusive... (new section)] [https://lists.fedoraproject.org/pipermail/nodejs/2013-May/000017.html (list discussion)]
* A strategy for handling multiple/compatibility versions of packages that is transparent to dependent packagers has been implemented. [https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/NodeJS#Handling_... (new section)] [https://lists.fedoraproject.org/pipermail/nodejs/2013-June/000032.html (list discussion)]
* The %{nodejs_default_filter} default automatic virtual provides filtering macro (similar to Perl's) is now documented. [https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/NodeJS#Filtering... (new section)]
* A --check argument was added to %nodejs_symlink_deps simplify running test suites in specs. [https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/NodeJS#.25check (new section)]
* A brief mention that additional virtual provides are added for native modules to track ABI compatibility was added. [https://fedoraproject.org/w/index.php?title=User:Patches/PackagingDrafts/Nod... (diff)]
* Some minor edits were made to the installing native modules section to reflect reality; my initial draft contained errors. [https://fedoraproject.org/w/index.php?title=User:Patches/PackagingDrafts/Nod... (diff)]
* A brief note about an additional macro required to enable dependency generation on EPEL was added. [https://fedoraproject.org/w/index.php?title=User:Patches/PackagingDrafts/Nod... (diff)]
I'd like to thank the fledgling Node.js SIG, including Stephen Gallager, Jamie Nguyen, Tom Hughes, and Stanislav Ochotnicky for their valuable bug catching, feedback, and suggestions, without which none of this would be possible. And, also the FPC in advance for reviewing our changes, of course. ;-)
On 27/06/13 07:01, fpc wrote:
- The necessary ExclusiveArch line needed for Node.js packages is now
documented, including the %{nodejs_arches} macro recently added to redhat- rpm-config for this purpose. [https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/NodeJS#Exclusive... (new section)] [https://lists.fedoraproject.org/pipermail/nodejs/2013-May/000017.html (list discussion)]
This seems to be missing the bit about having to add noarch for non-native modules?
Tom
On Thu, Jun 27, 2013 at 4:23 AM, Tom Hughes tom@compton.nu wrote:
On 27/06/13 07:01, fpc wrote:
- The necessary ExclusiveArch line needed for Node.js packages is now
documented, including the %{nodejs_arches} macro recently added to redhat- rpm-config for this purpose.
[https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/NodeJS#Exclusive... (new section)] [https://lists.fedoraproject.org/pipermail/nodejs/2013-May/000017.html (list discussion)]
This seems to be missing the bit about having to add noarch for non-native modules?
Sure is. Thanks for catching that!
Fixed now: https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/NodeJS#Exclusive...
-T.C.
#311: Node.js guidelines update ------------------------------+----------------- Reporter: patches | Owner: Type: enhancement | Status: new Priority: minor | Milestone: Component: Guideline Draft | Version: Resolution: | Keywords: Blocked By: | Blocking: ------------------------------+-----------------
Comment (by toshio):
Thanks for the annotated changes. We didn't get to this item this week but it will be higher on the agenda for the next meeting.
#311: Node.js guidelines update ------------------------------+--------------------- Reporter: patches | Owner: Type: enhancement | Status: writeup Priority: minor | Milestone: Component: Guideline Draft | Version: Resolution: | Keywords: Blocked By: | Blocking: ------------------------------+--------------------- Changes (by spot):
* status: new => writeup
Comment:
Draft approved (+1:6, 0:0, -1:0)
#311: Node.js guidelines update ------------------------------+--------------------- Reporter: patches | Owner: Type: enhancement | Status: writeup Priority: minor | Milestone: Component: Guideline Draft | Version: Resolution: | Keywords: Blocked By: | Blocking: ------------------------------+---------------------
Comment (by patches):
Hi, can we get these changes merged soon, please? There are [https://lists.fedoraproject.org/pipermail/nodejs/2014-January/000093.html some packages that aren't working properly now] because packagers are missing important information that was supposed to be added in this update. Thanks!
#311: Node.js guidelines update ------------------------------+-------------------- Reporter: patches | Owner: Type: enhancement | Status: closed Priority: minor | Milestone: Component: Guideline Draft | Version: Resolution: fixed | Keywords: Blocked By: | Blocking: ------------------------------+-------------------- Changes (by spot):
* status: writeup => closed * resolution: => fixed
nodejs@lists.fedoraproject.org