-
Notifications
You must be signed in to change notification settings - Fork 406
Expand file tree
/
Copy pathRakefile
More file actions
38 lines (31 loc) · 1.35 KB
/
Rakefile
File metadata and controls
38 lines (31 loc) · 1.35 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
require 'bundler'
Bundler::GemHelper.install_tasks
# Check if versions are correct between VERSION constants and .js files
#
task :release => [:guard_version]
task :guard_version do
def check_version(file, pattern, constant)
body = File.read("vendor/assets/javascripts/#{file}")
match = body.match(pattern) or abort "Version check failed: no pattern matched in #{file}"
file_version = match[1]
constant_version = Jquery::Rails.const_get(constant)
unless constant_version == file_version
abort "Jquery::Rails::#{constant} was #{constant_version} but it should be #{file_version}"
end
end
check_version('jquery.js', /jQuery JavaScript Library v([\S]+)/, 'JQUERY_VERSION')
end
desc "Update jQuery versions"
task :update_jquery do
def download_jquery(filename, version)
suffix = "-#{version}"
puts "Downloading #{filename}.js"
puts `curl -o vendor/assets/javascripts/#{filename}.js https://code.jquery.com/jquery#{suffix}.js`
puts "Downloading #{filename}.min.js"
puts `curl -o vendor/assets/javascripts/#{filename}.min.js https://code.jquery.com/jquery#{suffix}.min.js`
puts "Downloading #{filename}.min.map"
puts `curl -o vendor/assets/javascripts/#{filename}.min.map https://code.jquery.com/jquery#{suffix}.min.map`
end
download_jquery('jquery', Jquery::Rails::JQUERY_VERSION)
puts "\e[32mDone!\e[0m"
end