Sha256: baeeb0dfa4d725e9d0c5fa79e4a32d1c51f1f4953ce743d95f82ebc3386488a0
Contents?: true
Size: 867 Bytes
Versions: 1
Compression:
Stored size: 867 Bytes
Contents
require 'bundler/gem_tasks' require 'rspec/core/rake_task' require 'yard' RSpec::Core::RakeTask.new(:spec) task default: :spec YARD::Rake::YardocTask.new def unpickle(file) out, status = Open3.capture2e("bin/pickle2json #{file.inspect}") abort out unless status.success? JSON.parse(out).to_h end def gzip_dump(file, obj) require 'fileutils' require 'zlib' FileUtils.mkdir_p(File.dirname(file)) Zlib::GzipWriter.open(file) do |gz| gz.write(Marshal.dump(obj)) end end task :unpickle, [:file] do |_t, args| require 'json' require 'open3' files = Dir[args[:file] || 'data/src/**/*'].select do |f| File.file?(f) end files.map do |src| fork do puts "Unpickling #{src} ..." gzip_dump(src.sub('/src/', '/'), unpickle(src)) end end.map do |pid| Process.wait2(pid).last end.all?(&:success?) or exit(1) end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
splitta-5.0.0 | Rakefile |