From 3384e4434f4c06bfd83795153348314491db005e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20=C5=A0abata?= Date: Thu, 15 Oct 2020 14:22:31 +0200 Subject: [PATCH] RHEL 9.0.0 Alpha bootstrap The content of this branch was automatically imported from Fedora ELN with the following as its source: https://src.fedoraproject.org/rpms/js-jquery#abe7281d638bcf7933225468522ddb48dc50f75f --- .gitignore | 9 ++ js-jquery-disable-gzip-js.patch | 29 ++++++ js-jquery.spec | 156 ++++++++++++++++++++++++++++++++ sources | 2 + update-sources.sh | 118 ++++++++++++++++++++++++ 5 files changed, 314 insertions(+) create mode 100644 js-jquery-disable-gzip-js.patch create mode 100644 js-jquery.spec create mode 100644 sources create mode 100755 update-sources.sh diff --git a/.gitignore b/.gitignore index e69de29..77cd870 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1,9 @@ +*.swp +jquery-*/* +/js-jquery-4dec426aa2a6cbabb1b064319ba7c272d594a688.tar.gz +/js-jquery-8f2a9d9272d6ed7f32d3a484740ab342c02541e0.tar.gz +/jquery-2.2.4.tar.gz +/jquery-3.2.1.tar.gz +/jquery-3.3.1.tar.gz +/jquery-3.5.0.tar.gz +/jquery_3.5.0_node_modules.tar.gz diff --git a/js-jquery-disable-gzip-js.patch b/js-jquery-disable-gzip-js.patch new file mode 100644 index 0000000..a76ca1c --- /dev/null +++ b/js-jquery-disable-gzip-js.patch @@ -0,0 +1,29 @@ +From da2978fde58fb84175ae0b9b7a83c963430a7747 Mon Sep 17 00:00:00 2001 +From: Stephen Gallagher +Date: Mon, 13 Apr 2020 14:04:00 -0400 +Subject: [PATCH] Disable gzip-js + +Signed-off-by: Stephen Gallagher +--- + Gruntfile.js | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/Gruntfile.js b/Gruntfile.js +index 486a0f303932734b868b065d3c7b99a36002fac5..5ff8cdec4810d0cdf2180da2f4432020f91e6b10 100644 +--- a/Gruntfile.js ++++ b/Gruntfile.js +@@ -11,11 +11,10 @@ module.exports = function( grunt ) { + } catch ( e ) {} + return data; + } + + var fs = require( "fs" ), +- gzip = require( "gzip-js" ), + isTravis = process.env.TRAVIS, + travisBrowsers = process.env.BROWSERS && process.env.BROWSERS.split( "," ); + + if ( !grunt.option( "filename" ) ) { + grunt.option( "filename", "jquery.js" ); +-- +2.26.0 + diff --git a/js-jquery.spec b/js-jquery.spec new file mode 100644 index 0000000..419c140 --- /dev/null +++ b/js-jquery.spec @@ -0,0 +1,156 @@ +Name: js-jquery +Version: 3.5.0 +Release: 4%{?dist} +Summary: JavaScript DOM manipulation, event handling, and AJAX library +BuildArch: noarch + +%global ver_x %(echo %{version} | cut -d. -f1) +%global ver_y %(echo %{version} | cut -d. -f2) +%global ver_z %(echo %{version} | cut -d. -f3) + +License: MIT +URL: https://jquery.com/ +Source0: https://github.com/jquery/jquery/archive/%{version}/jquery-%{version}.tar.gz +# Created by ./update_sources.sh +Source1: jquery_%{version}_node_modules.tar.gz + +# disable gzip-js during build +Patch1: %{name}-disable-gzip-js.patch + + +BuildRequires: web-assets-devel +BuildRequires: nodejs-packaging +BuildRequires: nodejs + +Provides: jquery = %{version}-%{release} +Provides: %{name}-static = %{version}-%{release} +Provides: %{name}%{ver_x} = %{version}-%{release} +Provides: %{name}%{ver_x}-static = %{version}-%{release} + +Requires: web-assets-filesystem + +# Bundles sizzle (https://github.com/jquery/sizzle/) in node_modules/sizzle +# Get version from package.json +Provides: bundled(sizzle) = 2.3.5 +Provides: bundled(js-sizzle) = 2.3.5 + + +%description +jQuery is a fast, small, and feature-rich JavaScript library. It makes things +like HTML document traversal and manipulation, event handling, animation, and +Ajax much simpler with an easy-to-use API that works across a multitude of +browsers. With a combination of versatility and extensibility, jQuery has +changed the way that millions of people write JavaScript. + +%prep +%autosetup -n jquery-%{version} -v -p1 + +#remove precompiled stuff +rm -rf dist/* + +# Install the cached node modules +tar xf %{SOURCE1} + + +%build +./node_modules/grunt-cli/bin/grunt -v 'build:*:*' uglify + + +%check +./node_modules/grunt-cli/bin/grunt -v 'build:*:*' test:prepare test:fast + + +%install +%global installdir %{buildroot}%{_jsdir}/jquery + +mkdir -p %{installdir}/%{version} +cp -p dist/* %{installdir}/%{version} + +mkdir -p %{buildroot}%{_webassetdir} +ln -s ../javascript/jquery %{buildroot}%{_webassetdir}/jquery + +ln -s %{version} %{installdir}/latest +ln -s %{version} %{installdir}/%{ver_x} +ln -s %{version} %{installdir}/%{ver_x}.%{ver_y} + + +%files +%{_jsdir}/jquery +%{_webassetdir}/jquery +%doc AUTHORS.txt CONTRIBUTING.md LICENSE.txt README.md + + +%changelog +* Tue Jul 28 2020 Fedora Release Engineering - 3.5.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Fri Apr 17 2020 Stephen Gallagher - 3.5.0-3 +- Add explicit dependency on nodejs + +* Wed Apr 15 2020 Stephen Gallagher - 3.5.0-2 +- Add virtual Provides: for bundled sizzle + +* Mon Apr 13 2020 Stephen Gallagher - 3.5.0-1 +- Update to 3.5.0 +- Bundle the build dependencies in the source RPM +- Drop unneeded patches + +* Wed Jan 29 2020 Fedora Release Engineering - 3.3.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Jul 25 2019 Fedora Release Engineering - 3.3.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Fri Feb 01 2019 Fedora Release Engineering - 3.3.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Wed Jul 18 2018 Christopher Tubbs - 3.3.1-1 +- Update to 3.3.1; fixes rhbz#1536772 rhbz#1445079 rhbz#1591846 Security fix for + CVE-2012-6708 + +* Fri Jul 13 2018 Fedora Release Engineering - 3.2.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Feb 07 2018 Fedora Release Engineering - 3.2.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 3.2.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed Apr 12 2017 Christopher Tubbs - 3.2.1-1 +- Update to jQuery 3.2.1 + +* Tue Apr 11 2017 Christopher Tubbs - 2.2.4-3 +- Update provides in prep for js-jquery package rename to js-jquery2 + +* Fri Feb 10 2017 Fedora Release Engineering - 2.2.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Dec 20 2016 Christopher Tubbs - 2.2.4-1 +- Update to 2.2.4 and backport XSS patch (bz#1399550,bz#1399549) + +* Thu Feb 04 2016 Fedora Release Engineering - 2.1.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jun 17 2015 Fedora Release Engineering - 2.1.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Wed Mar 04 2015 T.C. Hollingsworth - 2.1.3-1 +- new upstream release 2.1.3 + http://blog.jquery.com/2014/12/18/jquery-1-11-2-and-2-1-3-released-safari-fail-safe-edition/ + +* Tue Oct 21 2014 T.C. Hollingsworth - 2.1.1-4 +- drop unneccessary symlinks + +* Tue Jun 03 2014 T.C. Hollingsworth - 2.1.1-3 +- follow the github SourceURL guidelines + +* Sat May 31 2014 T.C. Hollingsworth - 2.1.1-2 +- drop sed hack now that grunt is fixed + +* Fri May 30 2014 T.C. Hollingsworth - 2.1.1-1 +- update to 2.1.1 +- use system packages for build (with help from Jamie Nguyen) + +* Wed Mar 19 2014 T.C. Hollingsworth - 2.1.0-0.1 +- initial package diff --git a/sources b/sources new file mode 100644 index 0000000..80c4549 --- /dev/null +++ b/sources @@ -0,0 +1,2 @@ +SHA512 (jquery-3.5.0.tar.gz) = a59782f614915ccca99b2529d473961697a28533e85f186e014cc481690fb7480e7c7f7cb9ace49fa0494fa7ab270487c914ce0d9109eb9cdd6e4b58c931ac91 +SHA512 (jquery_3.5.0_node_modules.tar.gz) = b41a3989334a9fa77ff19694459506f50476a0d7de4c022ace904546dd2c18c05d5b3057e36196cf8f0a47de6dec5bd78f32275eddc49cc3fdfefb8000b6a168 diff --git a/update-sources.sh b/update-sources.sh new file mode 100755 index 0000000..b9059c2 --- /dev/null +++ b/update-sources.sh @@ -0,0 +1,118 @@ +#!/bin/bash + +# Created by argbash-init v2.8.1 +# ARG_POSITIONAL_SINGLE([version]) +# ARG_DEFAULTS_POS() +# ARG_HELP([Download and cache all build dependencies for jquery]) +# ARGBASH_GO() +# needed because of Argbash --> m4_ignore([ +### START OF CODE GENERATED BY Argbash v2.8.1 one line above ### +# Argbash is a bash code generator used to get arguments parsing right. +# Argbash is FREE SOFTWARE, see https://argbash.io for more info + + +die() +{ + local _ret=$2 + test -n "$_ret" || _ret=1 + test "$_PRINT_HELP" = yes && print_help >&2 + echo "$1" >&2 + exit ${_ret} +} + + +begins_with_short_option() +{ + local first_option all_short_options='h' + first_option="${1:0:1}" + test "$all_short_options" = "${all_short_options/$first_option/}" && return 1 || return 0 +} + +# THE DEFAULTS INITIALIZATION - POSITIONALS +_positionals=() +_arg_version= +# THE DEFAULTS INITIALIZATION - OPTIONALS + + +print_help() +{ + printf '%s\n' "Download and cache all build dependencies for jquery" + printf 'Usage: %s [-h|--help] \n' "$0" + printf '\t%s\n' "-h, --help: Prints help" +} + + +parse_commandline() +{ + _positionals_count=0 + while test $# -gt 0 + do + _key="$1" + case "$_key" in + -h|--help) + print_help + exit 0 + ;; + -h*) + print_help + exit 0 + ;; + *) + _last_positional="$1" + _positionals+=("$_last_positional") + _positionals_count=$((_positionals_count + 1)) + ;; + esac + shift + done +} + + +handle_passed_args_count() +{ + local _required_args_string="'version'" + test "${_positionals_count}" -ge 1 || _PRINT_HELP=yes die "FATAL ERROR: Not enough positional arguments - we require exactly 1 (namely: $_required_args_string), but got only ${_positionals_count}." 1 + test "${_positionals_count}" -le 1 || _PRINT_HELP=yes die "FATAL ERROR: There were spurious positional arguments --- we expect exactly 1 (namely: $_required_args_string), but got ${_positionals_count} (the last one was: '${_last_positional}')." 1 +} + + +assign_positional_args() +{ + local _positional_name _shift_for=$1 + _positional_names="_arg_version " + + shift "$_shift_for" + for _positional_name in ${_positional_names} + do + test $# -gt 0 || break + eval "$_positional_name=\${1}" || die "Error during argument parsing, possibly an Argbash bug." 1 + shift + done +} + +parse_commandline "$@" +handle_passed_args_count +assign_positional_args 1 "${_positionals[@]}" + +# OTHER STUFF GENERATED BY Argbash + +### END OF CODE GENERATED BY Argbash (sortof) ### ]) +# [ <-- needed because of Argbash + +version=$_arg_version +rm -rf jquery-$version jquery-$version.tar.gz jquery_${version}_node_modules.tar.gz +wget https://github.com/jquery/jquery/archive/$version/jquery-$version.tar.gz + +tar xf jquery-$version.tar.gz + +pushd jquery-$version +npm install --save-dev +tar cfz ../jquery_${version}_node_modules.tar.gz node_modules + +# Husky tries to install a git hook that doesn't play well with dist-git +npm uninstall husky +popd + +fedpkg new-sources jquery-$version.tar.gz jquery_${version}_node_modules.tar.gz + +# ] <-- needed because of Argbash