HISTORY

v1.3.0

Date:2018-12-3
Features:
  • SmartTimer: new stats() to compute total, min, max, and avg statistics.
  • SmartTimer: label support for toc() in cascade scheme.
  • SmartTimer: new relative and cumulative time data.
  • SmartTimer: new to_array() to transform timing data to list/numpy array (numpy is optional).
  • Timer, SmartTimer: added sleep().
  • README: minor update to examples.
  • Tests: updated some cases to support SmartTimer changes.
  • Exceptions: error messages are given explicitly when raised.

v1.0.0

Date:2018-11-29
Features:
  • SmartTimer: complete test cases.
  • SmartTimer: consistent API behavior.
  • Added basic documentation and example in README.
  • Update configuration files.

v0.9.5

Date:2018-11-28
Features:
  • Changed package name to smarttimers.
  • SmartTimer: complete documentation.
  • SmartTimer: added example.
  • SmartTimer: improved exception handling.
Bug fixes:
  • SmartTimer: walltime is calculated from first tic until most recent toc.
  • SmartTimer: name attribute cannot be set to empty string.

v0.9.0

Date:2018-11-26
Features:
  • SmartTimer: time lists maintain ordering relative to tic() calls.
  • SmartTimer: support for consecutive, nested, cascade, interleaved, and key-paired code blocks.
  • Improved error handling and exceptions raised.
Bug fixes:
  • SmartTimer: changed times() to use new labels() output format.

v0.8.5

Date:2018-11-25
Features
  • SmartTimer: implemented container for tic-toc support.
  • Improved module dependencies for setup, tests, and docs.
  • Code style is compliant with flake8.

v0.6.0

Date:2018-11-22
Features
  • Timer: time values are read-only.
  • Timer: new clear, reset, (un)register_clock methods.
  • Timer: new custom exception classes and improved exception handling.
  • Timer: rename sum, print_info, and print_clocks methods.
  • Timer: complete documentation.
  • Timer: complete test cases.
  • Integrated tox, Travis CI, code coverage, and Read the Docs.
  • Cleaned code adhering to flake8.

v0.4.0

Date:2018-11-19
Features
  • Timer: new print/get_clock_info methods.
  • Timer: improved compatibility checks.
  • Timer: new TimerCompatibilityError exception.
  • Timer: documentation revision.

v0.3.0

Date:2018-11-18
Features
  • Timer: include an example script.
  • Timer: new MetaTimerProperty and TimerDict for handling class variable properties.
  • Timer: improved exception coverage.
  • Timer: improved methods for checking compatibility and print clock info.
  • Timer: time values are cleared automatically when clock name is changed.

v0.2.2

Date:2018-11-18
Features
  • Timer: new methods to print clock details using time.get_clock_info.
  • Timer: updated docstrings and provide usage examples.

v0.2.0

Date:2018-11-17
Features
  • Timer: new methods to support sum, difference, and comparison operators.
  • Timer: new methods to check compatibility between Timers.

v0.1.0

Date:2018-11-15
Features
  • Created Timer class with timing functions from standard module time.
  • Ubuntu 16.04 (Linux 4.15.0-38) support.

CONTRIBUTING

All types of contributions are welcomed. A guide for developers will be made available soon.

Meanwhile:
  • Clone repository
  • Make improvements
  • Fix bugs
  • Make pull requests

CREDITS

Many thanks to all people who have provided useful feedback and recommendations during the development of SmartTimer. These credits use a convention based on Linux CREDITS where the fields are: name (N), email (E), web-address (W), country (C), description (D), issues (I).

Author

N: Eduardo Ponce
E: edponce2010@gmail.com
W: https://github.com/edponce
C: TN, USA
D: Lead developer

LICENSE

Copyright 2018 Eduardo Ponce

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.