9. NEWS¶
9.1. bitmath-2.0.0¶
bitmath-2.0.0 will be the first new release since 1.3.3 was released in 2018!
Beginning with the release of 2.0.0 bitmath will only officially support supported python versions. It is considered a happy bonus if bitmath works with an unsupported Python version.
The focus of the first “bitmath 2” releases will be simplification. Some things will go again, they may come back a little later.
9.1.1. What to Expect¶
In the semantic versioning world, a major version number increase is meant to express fundamental changes to the software. Changes which will almost certainly result in breakages for at least some of the user base. For bitmath this will be true as well, and in this case that user base is specifically anyone still using the library on Python 2.x.
- The Bitmath API - The fundamental API will remain unchanged. What will change are Python language features used and dropping of workarounds for older Python versions
- Bitmath Integrations - Integrations will be removed from the primary source code for now. Many of these can be provided as code examples instead which will simplify packaging and testing requirements for the project. They’ll be in the docs or just in git, not sure yet.
- Packaging - It looks like a lot has changed in the last 2.5 years in the Python packaging world, and I have a lot to catch up on. I guess we use TOML instead of setup.py now, that’s neat.
- Distribution - I daily drive Fedora Linux and Mac OS X, I don’t have time to keep up with other platforms. If someone wants to bring back debian packaging, contact me and we’ll work something out.
9.2. bitmath-1.3.3-1¶
bitmath-1.3.3-1 was published on 2018-08-23.
9.2.1. Project¶
Version 1.3.3 is a minor update primarily released to synchronize versions across platforms. Additionally there are small packaging updates to keep up with changing standards.
Minor bug fixes and documentation tweaks are included as well.
The project now has an official Code of Conduct, as well as issue and pull request templates.
What happened to bitmath 1.3.2? It only ever existed as an idea in source control.
9.2.2. Changes¶
Bug Fixes
Alexander Kapshuna has submitted several fixes since the last release. Thanks!
- Packaging requirements fixes
- Python 3 compatibility
- Subclassing and Type checking fixes/improvements
Marcus Kazmierczak submitted a fix for some broken documentation links.
And Dawid Gosławski make sure our documentation is accurate.
Thanks to all the bitmath contributors over the years!
9.3. bitmath-1.3.1-1¶
bitmath-1.3.1-1 was published on 2016-07-17.
9.3.1. Changes¶
Added Functionality
- New function:
bitmath.parse_string_unsafe()
, a less strict version ofbitmath.parse_string()
. Accepts inputs using non-standard prefix units (such as single-letter, or mis-capitalized units). - Inspired by @darkblaze69’s request in #60 “Problems in parse_string”.
9.3.2. Project¶
Ubuntu
- Bitmath is now available for installation via Ubuntu Xenial, Wily, Vivid, Trusty, and Precise PPAs.
- Ubuntu builds inspired by @hkraal reporting an installation issue on Ubuntu systems.
Documentation
- Cleaned up a lot
of broken or re-directing links using output from the Sphinx
make linkcheck
command.
9.4. bitmath-1.3.0-1¶
bitmath-1.3.0-1 was published on 2016-01-08.
9.4.1. Changes¶
Bug Fixes
- Closed GitHub Issue #55 “best_prefix for
negative values”. Now
bitmath.best_prefix()
returns correct prefix units for negative values. Thanks mbdm!
9.5. bitmath-1.2.4-1¶
bitmath-1.2.4-1 was published on 2015-11-30.
9.5.1. Changes¶
Added Functionality
- New bitmath module function:
bitmath.query_device_capacity()
. Createbitmath.Byte
instances representing the capacity of a block device. Support is presently limited to Linux and Mac. - The
bitmath.parse_string()
function now can parse ‘octet’ based units. Enhancement requested in #53 parse french unit names by walidsa3d.
Bug Fixes
- #49 - Fix handling unicode input in the bitmath.parse_string function. Thanks drewbrew!
- #50 - Update the
setup.py
script to be python3.x compat. Thanks ssut!
9.5.2. Documentation¶
- The project documentation is now installed along with the bitmath library in RPM packages.
9.5.3. Project¶
Fedora/EPEL
Look for separate python3.x and python2.x packages coming soon to Fedora and EPEL. This is happening because of the initiative to update the base Python implementation on Fedora to Python 3.x
9.6. bitmath-1.2.3-1¶
bitmath-1.2.3-1 was published on 2015-01-03.
9.6.1. Changes¶
Added Functionality
- New utility:
progressbar
integration: bitmath.integrations.BitmathFileTransferSpeed. A more functional file transfer speed widget.
9.6.2. Documentation¶
- The command-line
bitmath
tool now has online documentation - A full demo of the
argparse
andprogressbar
integrations has been written. Additionally, it includes a comprehensive demonstration of the full capabilities of the bitmath library. View it in the Real Life Demos Creating Download Progress Bars example.
9.6.3. Project¶
Tests
- Travis-CI had some issues with installing dependencies for the 3.x build unittests. These were fixed and the build status has returned back to normal.
9.7. bitmath-1.2.0-1¶
bitmath-1.2.0-1 was published on 2014-12-29.
9.7.1. Changes¶
Added Functionality
- New utility:
argparse
integration: bitmath.BitmathType. Allows you to specify arguments as bitmath types.
9.7.2. Documentation¶
- The command-line
bitmath
tool now has a proper manpage
9.7.3. Project¶
Tests
- The command-line
bitmath
tool is now properly unittested. Code coverage back to ~100%.
9.8. bitmath-1.1.0-1¶
bitmath-1.1.0-1 was published on 2014-12-20.
9.8.1. Changes¶
Added Functionality
- New
bitmath
command-line tool added. Provides CLI access to basic unit conversion functions - New utility function bitmath.parse_string for parsing a human-readable string into a bitmath object. Patch submitted by new contributor tonycpsu.
9.9. bitmath-1.0.5-1 through 1.0.8-1¶
bitmath-1.0.8-1 was published on 2014-08-14.
9.9.1. Major Updates¶
- bitmath has a proper documentation website up now on Read the Docs, check it out: bitmath.readthedocs.io
- bitmath is now Python 3.x compatible
- bitmath is now included in the Extra Packages for Enterprise Linux EPEL6 and EPEL7 repositories (pkg info)
- merged 6 pull requests from 3 contributors
9.9.2. Bug Fixes¶
- fixed some math implementation bugs
9.9.3. Changes¶
Added Functionality
- best-prefix guessing: automatic best human-readable unit selection
- support for bitwise operations
- formatting customization methods (including plural/singular selection)
- exposed many more instance attributes (all instance attributes are usable in custom formatting)
- a context manager for applying formatting to an entire block of code
- utility functions for sizing files and directories
- add instance properties
equivalent to
instance.to_THING()
methods
9.9.4. Project¶
Tests
- Test suite is now implemented using Python virtualenv’s for consistency across across platforms
- Test suite now contains 150 unit tests. This is 110 more tests than the previous major release (1.0.4-1)
- Test suite now runs on EPEL6 and EPEL7
- Code coverage is stable around 95-100%
9.10. bitmath-1.0.4-1¶
This is the first release of bitmath. bitmath-1.0.4-1 was published on 2014-03-20.
9.10.1. Project¶
Available via:
- PyPi
- Fedora 19
- Fedora 20
bitmath had been under development for 12 days when the 1.0.4-1 release was made available.
9.10.2. Debut Functionality¶
- Converting between SI and NIST prefix units (
GiB
tokB
) - Converting between units of the same type (SI to SI, or NIST to NIST)
- Basic arithmetic operations (subtracting 42KiB from 50GiB)
- Rich comparison operations (
1024 Bytes == 1KiB
) - Sorting
- Useful console and print representations