Hello community, here is the log from the commit of package rubygem-hitimes for openSUSE:Factory checked in at 2016-05-29 03:11:25 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rubygem-hitimes (Old) and /work/SRC/openSUSE:Factory/.rubygem-hitimes.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-hitimes" Changes: -------- --- /work/SRC/openSUSE:Factory/rubygem-hitimes/rubygem-hitimes.changes 2015-09-27 08:38:50.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.rubygem-hitimes.new/rubygem-hitimes.changes 2016-05-29 03:12:42.000000000 +0200 @@ -1,0 +2,12 @@ +Wed May 4 04:37:44 UTC 2016 - co...@suse.com + +- updated to version 1.2.4 + see installed HISTORY.md + + ## Version 1.2.4 2016-05-01 + + * Fix finding the extension on ruby 2.1.10 (thanks @wpiekutowski) + * Add more readable load error (thanks @mbautin) + * Update README with what versions of ruby are supported. + +------------------------------------------------------------------- Old: ---- hitimes-1.2.3.gem New: ---- hitimes-1.2.4.gem ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rubygem-hitimes.spec ++++++ --- /var/tmp/diff_new_pack.x7NBos/_old 2016-05-29 03:12:43.000000000 +0200 +++ /var/tmp/diff_new_pack.x7NBos/_new 2016-05-29 03:12:43.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package rubygem-hitimes # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -24,7 +24,7 @@ # Name: rubygem-hitimes -Version: 1.2.3 +Version: 1.2.4 Release: 0 %define mod_name hitimes %define mod_full_name %{mod_name}-%{version} @@ -36,18 +36,16 @@ Url: http://github.com/copiousfreetime/hitimes Source: http://rubygems.org/gems/%{mod_full_name}.gem Source1: gem2rpm.yml -Summary: Hitimes is a fast, high resolution timer library for recording +Summary: A fast, high resolution timer library for recording peformance License: ISC Group: Development/Languages/Ruby %description -Hitimes is a fast, high resolution timer library for recording performance -metrics. It uses the appropriate low method calls for each system to get the -highest granularity time increments possible. It currently supports any of the -following systems: * any system with the POSIX call `clock_gettime()` * Mac OS -X * Windows * JRuby Using Hitimes can be faster than using a series of -`Time.new` calls, and it will have a much higher granularity. It is definitely -faster than using `Process.times`. +A fast, high resolution timer library for recording peformance metrics. * +(http://github.com/copiousfreetime/hitimes) * +(http://github.com.org/copiousfreetime/hitimes) * email jeremy at +copiousfreetime dot org * `git clone url +git://github.com/copiousfreetime/hitimes.git`. %prep ++++++ hitimes-1.2.3.gem -> hitimes-1.2.4.gem ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CONTRIBUTING.md new/CONTRIBUTING.md --- old/CONTRIBUTING.md 2015-09-13 09:49:36.000000000 +0200 +++ new/CONTRIBUTING.md 2016-05-03 06:48:30.000000000 +0200 @@ -27,15 +27,27 @@ * Fork the [repo][]. * Create a new branch for your issue: `git checkout -b issue/my-issue` * Lovingly craft your contribution: - * `rake develop` to get started, or if you prefer bundler `rake develop:using_bunder && bundle`. + * `rake develop` to get started * `rake test` to run tests * Make sure that `rake test` passes. Its important, I said it twice. * Add yourself to the contributors section below. * Submit your [pull request][]. +## Building Windows Binaries + +This is done using https://github.com/rake-compiler/rake-compiler-dock + +1. have VirtualBox installed +2. have Docker Machine installed (https://docs.docker.com/engine/installation/) +3. `gem install rake-compiler-dock` +4. `rake-compiler-dock` (this could take a while) +5. `bundle` +6. `rake cross native gem` + # Contributors * Jeremy Hinegardner +* Wojciech Piekutowski [GitHub Account]: https://github.com/signup/free "GitHub Signup" [GitHub Issues]: https://github.com/copiousfreetime/hitimes/issues "Hitimes Issues" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/HISTORY.md new/HISTORY.md --- old/HISTORY.md 2015-09-13 09:49:36.000000000 +0200 +++ new/HISTORY.md 2016-05-03 06:48:30.000000000 +0200 @@ -1,5 +1,11 @@ # Hitimes Changelog +## Version 1.2.4 2016-05-01 + +* Fix finding the extension on ruby 2.1.10 (thanks @wpiekutowski) +* Add more readable load error (thanks @mbautin) +* Update README with what versions of ruby are supported. + ## Version 1.2.3 2015-09-13 * Release new fatbinary version for windows diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/README.md new/README.md --- old/README.md 2015-09-13 09:49:36.000000000 +0200 +++ new/README.md 2016-05-03 06:48:30.000000000 +0200 @@ -1,39 +1,52 @@ -## hitimes +# Hitimes + +A fast, high resolution timer library for recording peformance metrics. * [Homepage](http://github.com/copiousfreetime/hitimes) * [Github project](http://github.com.org/copiousfreetime/hitimes) * email jeremy at copiousfreetime dot org * `git clone url git://github.com/copiousfreetime/hitimes.git` -## INSTALL +## Table of Contents -* `gem install hitimes` +* [Requirements](#requirements) +* [Usage](#usage) +* [Contributing](#contributing) +* [Support](#support) +* [License](#license) -## DESCRIPTION +## Requirements -Hitimes is a fast, high resolution timer library for recording -performance metrics. It uses the appropriate low method calls for each -system to get the highest granularity time increments possible. +Hitimes requires the following to run: -It currently supports any of the following systems: + * Ruby -* any system with the POSIX call `clock_gettime()` -* Mac OS X -* Windows -* JRuby +## Usage + +Hitimes easiest to use when installed with `rubygems`: + +```sh +gem install hitimes +``` + +Or as part of your bundler `Gemfile`: + +```ruby +gem 'hitimes' +``` -Using Hitimes can be faster than using a series of `Time.new` calls, and -it will have a much higher granularity. It is definitely faster than -using `Process.times`. +You can load it with the standard ruby require statement. -## SYNOPSIS +```ruby +require 'hitimes' +``` ### Interval -Use Hitimes::Interval to calculate only the duration of a block of code. Returns -the time as seconds. +Use `Hitimes::Interval` to calculate only the duration of a block of code. +Returns the time as seconds. -``` ruby +```ruby duration = Hitimes::Interval.measure do 1_000_000.times do |x| 2 + 2 @@ -45,15 +58,15 @@ ### TimedMetric -Use a Hitimes::TimedMetric to calculate statistics about an iterative operation +Use a `Hitimes::TimedMetric` to calculate statistics about an iterative operation -``` ruby +```ruby timed_metric = Hitimes::TimedMetric.new('operation on items') ``` Explicitly use `start` and `stop`: -``` ruby +```ruby collection.each do |item| timed_metric.start # .. do something with item @@ -61,26 +74,26 @@ end ``` -Or use the block. In TimedMetric the return value of +measure+ is the return -value of the block +Or use the block. In `TimedMetric` the return value of `measure` is the return +value of the block. -``` ruby +```ruby collection.each do |item| result_of_do_something = timed_metric.measure { do_something( item ) } end ``` And then look at the stats -``` ruby +```ruby puts timed_metric.mean puts timed_metric.max puts timed_metric.min puts timed_metric.stddev puts timed_metric.rate ``` -### ValueMetric +### ValueMetric -Use a Hitimes::ValueMetric to calculate statistics about measured samples +Use a `Hitimes::ValueMetric` to calculate statistics about measured samples. ``` ruby value_metric = Hitimes::ValueMetric.new( 'size of thing' ) @@ -99,7 +112,7 @@ ### TimedValueMetric -Use a Hitimes::TimedValueMetric to calculate statistics about batches of samples +Use a `Hitimes::TimedValueMetric` to calculate statistics about batches of samples. ``` ruby timed_value_metric = Hitimes::TimedValueMetric.new( 'batch times' ) @@ -123,28 +136,51 @@ puts timed_value_metric.value_stats.stddev ``` -## CHANGES +### Implementation details -Read the HISTORY.md file. +Hitimes use the appropriate low-level system call for each operating system to +get the highest granularity time increment possible. Generally this is +nanosecond resolution, or whatever the hardware chip in the CPU supports. + +It currently supports any of the following systems: -## BUILDING FOR WINDOWS +* any system with the POSIX call `clock_gettime()` +* Mac OS X +* Windows +* JRuby -This is done using https://github.com/rake-compiler/rake-compiler-dock +## Support -1. have VirtualBox installed -2. Install boot2docker `brew install boot2docker` -3. `gem install rake-compiler-dock` -4. `rake-compiler-dock` -5. `bundle` -6 `rake cross native gem` +Hitimes is supported on whatever versions of ruby are currently supported. +Hitimes also follows [semantic versioning](http://semver.org/). -## CREDITS +The current officially supported versions of Ruby are: + +* MRI Ruby 2.2, 2.3 +* JRuby 1.7.25, 9.0.5.0 + +Unofficially supported versions, they have been supported in the past when they +were the primary rubies around. In all likelihood they still work, but are not +supported. + +* MRI Ruby - everything from 1.8.7 to 2.1 +* JRuby - I think everything back to 1.4 +* Rubinius + +## Contributing + +Please read the [CONTRIBUTING.md](CONTRIBUTING.md) + +## Credits * [Bruce Williams](https://github.com/bruce) for suggesting the idea -## ISC License +## License + +Hitimes is licensed under the [ISC](https://opensource.org/licenses/ISC) +license. -Copyright (c) 2008-2015 Jeremy Hinegardner +Copyright (c) 2008-2016 Jeremy Hinegardner Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Rakefile new/Rakefile --- old/Rakefile 2015-09-13 09:49:36.000000000 +0200 +++ new/Rakefile 2016-05-03 06:48:30.000000000 +0200 @@ -12,6 +12,7 @@ spec.add_development_dependency( 'rdoc' , '~> 4.2' ) spec.add_development_dependency( 'json' , '~> 1.8' ) spec.add_development_dependency( 'rake-compiler', '~> 0.9' ) + spec.add_development_dependency( 'rake-compiler-dock', '~> 0.4' ) spec.add_development_dependency( 'simplecov' , '~> 0.9' ) spec.extensions.concat This.extension_conf_files Files old/checksums.yaml.gz and new/checksums.yaml.gz differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ext/hitimes/c/extconf.rb new/ext/hitimes/c/extconf.rb --- old/ext/hitimes/c/extconf.rb 2015-09-13 09:49:36.000000000 +0200 +++ new/ext/hitimes/c/extconf.rb 2016-05-03 06:48:30.000000000 +0200 @@ -20,5 +20,5 @@ end # put in a different location if on windows so we can have fat binaries -subdir = RUBY_VERSION.gsub(/\.\d$/,'') +subdir = RUBY_VERSION.gsub(/\.\d+$/,'') create_makefile("hitimes/#{subdir}/hitimes") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/hitimes/version.rb new/lib/hitimes/version.rb --- old/lib/hitimes/version.rb 2015-09-13 09:49:36.000000000 +0200 +++ new/lib/hitimes/version.rb 2016-05-03 06:48:30.000000000 +0200 @@ -4,5 +4,5 @@ #++ module Hitimes - VERSION = "1.2.3" + VERSION = "1.2.4" end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/hitimes.rb new/lib/hitimes.rb --- old/lib/hitimes.rb 2015-09-13 09:49:36.000000000 +0200 +++ new/lib/hitimes.rb 2016-05-03 06:48:30.000000000 +0200 @@ -31,19 +31,30 @@ # this is the method recommended by rake-compiler attempts = [ - "hitimes/#{RUBY_VERSION.sub(/\.\d$/,'')}/hitimes", + "hitimes/#{RUBY_VERSION.sub(/\.\d+$/,'')}/hitimes", "hitimes/hitimes" ] loaded = false +path_exceptions = [] attempts.each do |path| begin require path loaded = true - rescue LoadError + break + rescue LoadError => load_error + full_path = File.expand_path(path) + path_exceptions << [ full_path, load_error.message ] end end -raise LoadError, "Unable to find binary extension, was hitimes installed correctly?" unless loaded + +if !loaded then + msg = ["Unable to find binary extension, was hitimes installed correctly? The following paths were tried."] + path_exceptions.each do |path, message| + msg << "#{path} : #{message}" + end + raise LoadError, msg.join("\n") +end require 'hitimes/stats' require 'hitimes/mutexed_stats' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metadata new/metadata --- old/metadata 2015-09-13 09:49:36.000000000 +0200 +++ new/metadata 2016-05-03 06:48:30.000000000 +0200 @@ -1,14 +1,14 @@ --- !ruby/object:Gem::Specification name: hitimes version: !ruby/object:Gem::Version - version: 1.2.3 + version: 1.2.4 platform: ruby authors: - Jeremy Hinegardner autorequire: bindir: bin cert_chain: [] -date: 2015-09-13 00:00:00.000000000 Z +date: 2016-05-03 00:00:00.000000000 Z dependencies: - !ruby/object:Gem::Dependency name: rake @@ -81,6 +81,20 @@ - !ruby/object:Gem::Version version: '0.9' - !ruby/object:Gem::Dependency + name: rake-compiler-dock + requirement: !ruby/object:Gem::Requirement + requirements: + - - "~>" + - !ruby/object:Gem::Version + version: '0.4' + type: :development + prerelease: false + version_requirements: !ruby/object:Gem::Requirement + requirements: + - - "~>" + - !ruby/object:Gem::Version + version: '0.4' +- !ruby/object:Gem::Dependency name: simplecov requirement: !ruby/object:Gem::Requirement requirements: @@ -94,12 +108,9 @@ - - "~>" - !ruby/object:Gem::Version version: '0.9' -description: 'Hitimes is a fast, high resolution timer library for recording performance - metrics. It uses the appropriate low method calls for each system to get the highest - granularity time increments possible. It currently supports any of the following - systems: * any system with the POSIX call `clock_gettime()` * Mac OS X * Windows - * JRuby Using Hitimes can be faster than using a series of `Time.new` calls, and - it will have a much higher granularity. It is definitely faster than using `Process.times`.' +description: A fast, high resolution timer library for recording peformance metrics. + * (http://github.com/copiousfreetime/hitimes) * (http://github.com.org/copiousfreetime/hitimes) + * email jeremy at copiousfreetime dot org * `git clone url git://github.com/copiousfreetime/hitimes.git` email: jer...@copiousfreetime.org executables: [] extensions: @@ -178,12 +189,10 @@ version: '0' requirements: [] rubyforge_project: -rubygems_version: 2.4.5 +rubygems_version: 2.6.4 signing_key: specification_version: 4 -summary: Hitimes is a fast, high resolution timer library for recording performance - metrics. It uses the appropriate low method calls for each system to get the highest - granularity time increments possible. +summary: A fast, high resolution timer library for recording peformance metrics. test_files: - spec/hitimes_spec.rb - spec/interval_spec.rb diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tasks/default.rake new/tasks/default.rake --- old/tasks/default.rake 2015-09-13 09:49:36.000000000 +0200 +++ new/tasks/default.rake 2016-05-03 06:48:31.000000000 +0200 @@ -29,7 +29,7 @@ end end end -desc "Boostrap development" +desc "Bootstrap development" task :develop => "develop:default" #------------------------------------------------------------------------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tasks/this.rb new/tasks/this.rb --- old/tasks/this.rb 2015-09-13 09:49:36.000000000 +0200 +++ new/tasks/this.rb 2016-05-03 06:48:31.000000000 +0200 @@ -180,7 +180,7 @@ # Internal: Return the DESCRIPTION section of the README.rdoc file def description_section - section_of( 'README.md', 'DESCRIPTION') + section_of( 'README.md', 'Hitimes') end # Internal: Return the summary text from the README