diff --git a/ChangeLog b/ChangeLog
index e944aae..e69de29 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,703 +0,0 @@
-2016-02-23  Dain Nilsson <dain@yubico.com>
-
-	* NEWS, release.py, yubico/yubico_version.py: Bumped version and
-	updated NEWS for release.
-
-2015-11-03  Klas Lindfors <klas@yubico.com>
-
-	* yubico/yubikey_usb_hid.py: change logic for pgm seq if no config is valid, seq 0 is ok
-
-2015-11-03  Klas Lindfors <klas@yubico.com>
-
-	* yubico/yubikey_usb_hid.py: that the new sequence is 0 is also ok
-
-2015-10-07  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_frame.py: Added comments explaining debug data.
-
-2015-10-07  Dain Nilsson <dainzor@gmail.com>
-
-	* : Merge pull request #31 from axhoffmann/master Solved: Unlock code couldn't be set
-
-2015-10-01  Dain Nilsson <dain@yubico.com>
-
-	* MANIFEST.in: Include tests.
-
-2015-10-01  Dain Nilsson <dain@yubico.com>
-
-	* NEWS, yubico/yubico_version.py: Bumped version post release.
-
-2015-10-01  Dain Nilsson <dain@yubico.com>
-
-	* NEWS, yubico/yubico_version.py: Update version and NEWS for
-	release.
-
-2015-10-01  Dain Nilsson <dain@yubico.com>
-
-	* NEWS, yubico/yubico_version.py: Bump version.
-
-2015-10-01  Dain Nilsson <dain@yubico.com>
-
-	* setup.py: Fix setup.py.
-
-2015-10-01  Dain Nilsson <dain@yubico.com>
-
-	* MANIFEST.in: Revert "Remove release.py from MANIFEST." This reverts commit 1fbef1fae87d97a8f61a2e5a042200e82f5db764.
-
-2015-10-01  Dain Nilsson <dain@yubico.com>
-
-	* .gitmodules, README, release.py, setup.py, vendor/yubicommon,
-	yubico/yubicommon: Revert "Use python-yubicommon" This reverts commit 920d43d3c1ad3ee72e094c214801cbb44691e9ac.
-
-2015-10-01  Dain Nilsson <dain@yubico.com>
-
-	* NEWS, yubico/yubico_version.py: Updated NEWS and version for
-	release.
-
-2015-10-01  Dain Nilsson <dain@yubico.com>
-
-	* .travis.yml: Use Travis container based infrastructure.
-
-2015-10-01  Dain Nilsson <dain@yubico.com>
-
-	* MANIFEST.in: Remove release.py from MANIFEST.
-
-2015-10-01  Dain Nilsson <dain@yubico.com>
-
-	* .gitmodules, README, release.py, setup.py, vendor/yubicommon,
-	yubico/yubicommon: Use python-yubicommon
-
-2015-09-30  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_usb_hid.py: Correctly handle cases where
-	programming counter shouldn't increase.
-
-2015-09-14  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_neo_usb_hid.py: Add missing import.
-
-2015-09-10  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_neo_usb_hid.py: Fix write commands for YubiKey NEO.
-
-2015-09-09  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_defs.py: Don't use set literals (not available in
-	python <2.7)
-
-2015-09-09  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_4_usb_hid.py, yubico/yubikey_config.py,
-	yubico/yubikey_defs.py, yubico/yubikey_usb_hid.py: Moved some stuff
-	around.
-
-2015-09-09  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_config_util.py: Made flags work with YK4.
-
-2015-09-09  Dain Nilsson <dain@yubico.com>
-
-	* yubico/ykdef.py, yubico/yubikey_4_usb_hid.py,
-	yubico/yubikey_config.py, yubico/yubikey_defs.py,
-	yubico/yubikey_frame.py, yubico/yubikey_neo_usb_hid.py,
-	yubico/yubikey_usb_hid.py: Combined ykdef with yubikey_defs.
-
-2015-09-09  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey.py, yubico/yubikey_4_usb_hid.py: Added support for
-	YK4-based devices.
-
-2015-09-09  Dain Nilsson <dain@yubico.com>
-
-	* yubico/ykdef.py, yubico/yubico_util.py, yubico/yubikey_base.py,
-	yubico/yubikey_neo_usb_hid.py, yubico/yubikey_usb_hid.py: Moved
-	constants to yubico/ykdef.py
-
-2015-09-08  Dain Nilsson <dain@yubico.com>
-
-	* README: Updated README.
-
-2015-09-08  Dain Nilsson <dain@yubico.com>
-
-	* NEWS: Updated NEWS.
-
-2015-09-08  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_neo_usb_hid.py: Added scancode programming for NEO.
-
-2015-09-08  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_config.py: Added zapping of slots.
-
-2015-09-08  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_base.py, yubico/yubikey_neo_usb_hid.py: Added
-	have_scanmap and have_usb_mode.
-
-2015-09-08  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_base.py, yubico/yubikey_neo_usb_hid.py: Added
-	support for programming NDEF slot 2 (fixes #23)
-
-2015-09-08  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_usb_hid.py: Sleep before read (closes #18)
-
-2015-09-08  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubico_exception.py, yubico/yubikey_base.py,
-	yubico/yubikey_config.py, yubico/yubikey_config_util.py,
-	yubico/yubikey_neo_usb_hid.py, yubico/yubikey_usb_hid.py: Switch to
-	new-style classes.
-
-2015-09-08  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubico_version.py, yubico/yubikey.py,
-	yubico/yubikey_base.py, yubico/yubikey_neo_usb_hid.py,
-	yubico/yubikey_usb_hid.py: Improved support for YubiKey NEO.
-
-2015-08-26  Dain Nilsson <dain@yubico.com>
-
-	* .travis.yml: Fixed test command in travis.
-
-2015-08-26  Dain Nilsson <dain@yubico.com>
-
-	* .travis.yml, setup.py, test/__init__.py, test/soft/__init__.py,
-	test/soft/test_yubico.py, test/soft/test_yubikey_config.py,
-	test/soft/test_yubikey_frame.py, test/test_yubico.py,
-	test/test_yubikey_config.py, test/test_yubikey_frame.py,
-	test/test_yubikey_usb_hid.py, test/usb/__init__.py,
-	test/usb/test_yubikey_usb_hid.py: Separated tests that require a
-	YubiKey from those that do not.
-
-2015-07-20  Henrik Stråth <minisu@users.noreply.github.com>
-
-	* : Merge pull request #25 from Yubico/travis Added Travis CI support
-
-2015-07-20  Henrik Stråth <minisu@users.noreply.github.com>
-
-	* : Merge pull request #24 from encukou/py3 Add Python3 compatibility to util and examples
-
-2015-07-03  Dain Nilsson <dainzor@gmail.com>
-
-	* : Merge pull request #20 from encukou/py3 Add support for Python 3
-
-2015-07-01  Petr Viktorin <pviktori@redhat.com>
-
-	* test/test_yubico.py, test/test_yubikey_config.py,
-	test/test_yubikey_frame.py, test/test_yubikey_usb_hid.py,
-	yubico/yubico_util.py, yubico/yubikey_config.py,
-	yubico/yubikey_frame.py, yubico/yubikey_neo_usb_hid.py,
-	yubico/yubikey_usb_hid.py: Distinguish text strings and bytestrings
-	for Python 3 compatibility All (potentially binary) data is bytestrings; text (including e.g.
-	hexdumps and exception messages) is text strings.  Note that in Python 2, there's no difference between text (str,
-	'...') and bytestrings (bytes, b'...').
-
-2015-07-01  Petr Viktorin <pviktori@redhat.com>
-
-	* test/test_yubikey_config.py, test/test_yubikey_frame.py,
-	test/test_yubikey_usb_hid.py, yubico/__init__.py,
-	yubico/yubico_exception.py, yubico/yubico_util.py,
-	yubico/yubikey.py, yubico/yubikey_base.py,
-	yubico/yubikey_config.py, yubico/yubikey_defs.py,
-	yubico/yubikey_frame.py, yubico/yubikey_neo_usb_hid.py,
-	yubico/yubikey_usb_hid.py: Use Python 3-compatible syntax - Use parentheses with print   (python-yubico only ever gives one argument to print) - Use 'as' syntax when catching expressions (PEP; Python 2.6+) - Use explicit relative imports (PEP 328; Python 2.4+) - Use range instead of xrange   (this is in a debugging tool, the memory overhead is negligible,   and the entire result is iterated over)
-
-2015-07-01  Petr Viktorin <pviktori@redhat.com>
-
-	* yubico/yubikey.py, yubico/yubikey_base.py,
-	yubico/yubikey_config.py, yubico/yubikey_usb_hid.py: Breaking
-	circular imports: Move base classes to yubico_base.py This breaks the yubikey <-> yubikey_usb_hid circular import
-
-2015-07-01  Petr Viktorin <pviktori@redhat.com>
-
-	* yubico/yubikey_config.py, yubico/yubikey_defs.py,
-	yubico/yubikey_frame.py, yubico/yubikey_usb_hid.py: Breaking
-	circular imports: Move command definitions to yubikey_defs This breaks the yubikey_config <-> yubikey_frame circular import.
-
-2015-07-01  Petr Viktorin <pviktori@redhat.com>
-
-	* setup.py, yubico/__init__.py, yubico/yubico_exception.py,
-	yubico/yubico_util.py, yubico/yubico_version.py, yubico/yubikey.py,
-	yubico/yubikey_config.py, yubico/yubikey_defs.py,
-	yubico/yubikey_frame.py, yubico/yubikey_neo_usb_hid.py,
-	yubico/yubikey_usb_hid.py: Breaking circular imports: Move
-	__version__ to a dedicated module
-
-2015-03-23  Dain Nilsson <dain@yubico.com>
-
-	* NEWS, yubico/__init__.py: Updated version.
-
-2015-03-23  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_usb_hid.py: Added PIDs and ignore failure to
-	setConfiguration.
-
-2015-02-24  Henrik Stråth <minisu@users.noreply.github.com>
-
-	* README: Update README
-
-2015-02-24  Henrik Stråth <minisu@users.noreply.github.com>
-
-	* README: Updated link to PyUSB. Closes #16
-
-2015-02-24  Henrik Stråth <minisu@users.noreply.github.com>
-
-	* : Merge pull request #15 from vladimir-v-diaz/patch-2 Update README
-
-2015-02-23  Vladimir Diaz <vladimir.v.diaz@gmail.com>
-
-	* README: Update README Provide pip installation instructions for `pyusb`
-
-2015-02-19  Vladimir Diaz <vladimir.v.diaz@gmail.com>
-
-	* README: Update README Specify the correct package in the `pip install` installation
-	instruction.
-
-2015-02-11  Dain Nilsson <dain@yubico.com>
-
-	* NEWS: Updated NEWS for release.
-
-2015-02-10  Dain Nilsson <dain@yubico.com>
-
-	* setup.py, yubico/__init__.py: Read version from yubico/__init__.py
-
-2015-02-10  Dain Nilsson <dain@yubico.com>
-
-	* NEWS: Updated NEWS.
-
-2015-02-10  Dain Nilsson <dain@yubico.com>
-
-	* setup.py: Bumped version number.
-
-2015-02-10  Dain Nilsson <dain@yubico.com>
-
-	* .gitignore: Updated .gitignore.
-
-2015-02-10  Dain Nilsson <dain@yubico.com>
-
-	* test/test_yubikey_usb_hid.py: Release YK in tearDown.
-
-2015-02-10  Dain Nilsson <dain@yubico.com>
-
-	* README, README.adoc: Reformatted README to Asciidoc and added
-	README.adoc symlink for Github (fixed #11).
-
-2015-02-10  Dain Nilsson <dain@yubico.com>
-
-	* test/run.sh: Remove test/run.sh, test with "python setup.py test"
-	instead.
-
-2015-02-09  Dain Nilsson <dain@yubico.com>
-
-	* .gitignore: Updated .gitignore.
-
-2014-06-24  Dain Nilsson <dain@yubico.com>
-
-	* setup.py: Only require nose for tests (fixes #12).
-
-2014-01-23  Dain Nilsson <dain@yubico.com>
-
-	* util/yubikey-totp: Corrected timestamp used by yubikey-totp (fixes
-	#6).
-
-2013-09-05  Dain Nilsson <dain@yubico.com>
-
-	* NEWS, setup.py: Prepare for 1.2.1 release.
-
-2013-08-20  Dain Nilsson <dain@yubico.com>
-
-	* README: Updated README.
-
-2013-08-20  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_usb_hid.py: Fix _close method.
-
-2013-08-20  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_usb_hid.py: Fix: Used PID instead of VID for PyUSB
-	1.0.
-
-2013-08-20  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_usb_hid.py: Try to re-attach kernel driver if
-	possible on close.
-
-2013-08-19  Dain Nilsson <dain@yubico.com>
-
-	* yubico/yubikey_usb_hid.py: libusb fixes for Windows.
-
-2013-08-07  Dain Nilsson <dain@yubico.com>
-
-	* README: Updated README to point to the yubico/stable PPA.
-
-2013-08-07  Dain Nilsson <dain@yubico.com>
-
-	* NEWS: Updated NEWS for release.
-
-2013-08-07  Dain Nilsson <dain@yubico.com>
-
-	* Lib/yubico/__init__.py, Lib/yubico/yubico_exception.py,
-	Lib/yubico/yubico_util.py, Lib/yubico/yubikey.py,
-	Lib/yubico/yubikey_config.py, Lib/yubico/yubikey_config_util.py,
-	Lib/yubico/yubikey_defs.py, Lib/yubico/yubikey_frame.py,
-	Lib/yubico/yubikey_neo_usb_hid.py, Lib/yubico/yubikey_usb_hid.py,
-	NEWS, setup.py, util/yubikey-totp, yubico/__init__.py,
-	yubico/yubico_exception.py, yubico/yubico_util.py,
-	yubico/yubikey.py, yubico/yubikey_config.py,
-	yubico/yubikey_config_util.py, yubico/yubikey_defs.py,
-	yubico/yubikey_frame.py, yubico/yubikey_neo_usb_hid.py,
-	yubico/yubikey_usb_hid.py: Moved modules from Lib/ to root.
-
-2013-08-05  Dain Nilsson <dain@yubico.com>
-
-	* .gitignore, Lib/yubico/__init__.py, MANIFEST.in, NEWS,
-	Tests/run.sh, Tests/test_yubico.py, Tests/test_yubikey_config.py,
-	Tests/test_yubikey_frame.py, Tests/test_yubikey_usb_hid.py,
-	maintainer-scripts/make-release.sh, release.py, setup.cfg,
-	setup.py, test/run.sh, test/test_yubico.py,
-	test/test_yubikey_config.py, test/test_yubikey_frame.py,
-	test/test_yubikey_usb_hid.py: Use python setup.py for testing and
-	releasing.
-
-2013-03-25  Klas Lindfors <klas@yubico.com>
-
-	* : commit bd90abb268733d322586a0de2c2eed1376600ab9 Author: Klas
-	Lindfors <klas@yubico.com> Date:   Mon Mar 11 15:10:38 2013 +0100
-
-2013-03-01  Klas Lindfors <klas@yubico.com>
-
-	* Lib/yubico/yubikey_usb_hid.py: add support for yubikey NEO pids
-
-2012-12-04  Myroslav Opyr <myroslav@quintagroup.com>
-
-	* examples/yubikey-inventory: Handling 255 yubikeys Hypothetically you can return None in case all of the 255
-	find_yubikey() invocations return an instance...
-
-2012-08-30  Fredrik Thulin <fredrik@yubico.com>
-
-	* : commit f76b63265755cfd69720e332912cf433adabb379 Merge: ddddefc
-	e324860 Author: Fredrik Thulin <f-github@spam.thulin.net> Date:
-	Thu Aug 30 00:09:16 2012 -0700
-
-2012-08-28  Paul McMillan <Paul@McMillan.ws>
-
-	* examples/rolling_challenge_response: fix spelling in comment
-
-2012-06-08  Fredrik Thulin <fredrik@yubico.com>
-
-	* util/yubikey-totp.1: Hyphen fixes.
-
-2012-06-08  Fredrik Thulin <fredrik@yubico.com>
-
-	* .gitattributes: init
-
-2012-06-08  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/__init__.py, setup.py: Prepare version 1.1.0.
-
-2012-06-08  Fredrik Thulin <fredrik@yubico.com>
-
-	* maintainer-scripts/make-release.sh: init, copy from python-pyhsm
-
-2012-06-08  Fredrik Thulin <fredrik@yubico.com>
-
-	* COPYING, README: Add 2012 to Copyright years.
-
-2012-06-08  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey.py: Remove no-op destructor.
-
-2012-06-08  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_neo_usb_hid.py: Add have_nfc_ndef.
-
-2012-06-08  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_config.py, Lib/yubico/yubikey_config_util.py,
-	Lib/yubico/yubikey_frame.py, Lib/yubico/yubikey_neo_usb_hid.py,
-	Lib/yubico/yubikey_usb_hid.py, doc/ykdef.h,
-	examples/update_cfg_remove_cr: Implement 2.3 functionality.
-
-2012-06-08  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_usb_hid.py, examples/yubikey-inventory: Store
-	status information in it's own class.  This breaks backwards compatibility in that it changes the returned
-	result of the 'YK.status()' function.  Old :   flags = YK.status() New :   flags = YK.status().flags Add function YK.status().valid_configs() to see what slots are
-	configured with a valid configuration (requires firmware >= 2.1).
-
-2012-06-08  Fredrik Thulin <fredrik@yubico.com>
-
-	* : commit 697199fa8da433a381f34fa9b0cc74e6c709375e Author: Fredrik
-	Thulin <fredrik@yubico.com> Date:   Fri Jun 8 10:16:10 2012 +0200
-
-2012-03-27  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_config.py, Lib/yubico/yubikey_config_util.py,
-	Lib/yubico/yubikey_usb_hid.py: Fix some bugs my refactoring caused.
-
-2012-03-22  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_config.py, Lib/yubico/yubikey_config_util.py,
-	Lib/yubico/yubikey_usb_hid.py: Add checking of YubiKey model to the
-	ticket/config/extended flags.
-
-2012-03-22  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey.py, Lib/yubico/yubikey_config.py,
-	Lib/yubico/yubikey_neo_usb_hid.py, Lib/yubico/yubikey_usb_hid.py,
-	Tests/test_yubikey_config.py, examples/yubikey-inventory: Implement
-	concept of capabilities.  The introduction of the YubiKey NEO BETA using the same USB product
-	id, but only supporting a subset of the functionality of a YubiKey
-	with the same version meant we needed a more powerful way to
-	determine which YubiKey can do what.  With classes deriving from the new YubiKeyCapabilities() this is now
-	possible, and should give us greater flexibility in the future.  Change also adds some other things, such as a separate exception
-	class raised when a YubiKey cannot do what is asked, and
-	model/description data on the YubiKey object classes.
-
-2012-03-22  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_config_util.py: Fix __repr__ bug.
-
-2012-03-22  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_usb_hid.py: Fix destructor to not produce
-	warnings.
-
-2012-03-21  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey.py: Detect YubiKey NEO BETA units.
-
-2012-03-21  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_usb_hid.py: Write classname as prefix in
-	_debug.
-
-2012-03-21  Fredrik Thulin <fredrik@yubico.com>
-
-	* examples/yubikey-inventory: Enable debug on -v.
-
-2012-03-21  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_usb_hid.py: write_config: check slot number
-
-2012-03-20  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_neo_usb_hid.py: Implement proper encoding of
-	NDEF text messages.
-
-2012-03-19  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/__init__.py, Lib/yubico/yubikey_neo_usb_hid.py,
-	examples/configure_neo_ndef: Preliminary YubiKey NEO NDEF writing
-	support.
-
-2011-12-14  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/__init__.py, setup.py: Prepare version 1.0.0
-
-2011-12-14  Fredrik Thulin <fredrik@yubico.com>
-
-	* COPYING, Lib/yubico/__init__.py, Lib/yubico/yubico_exception.py,
-	Lib/yubico/yubico_util.py, Lib/yubico/yubikey.py,
-	Lib/yubico/yubikey_config.py, Lib/yubico/yubikey_config_util.py,
-	Lib/yubico/yubikey_defs.py, Lib/yubico/yubikey_frame.py,
-	Lib/yubico/yubikey_usb_hid.py, README,
-	examples/rolling_challenge_response, util/yubikey-totp: Clarify
-	copyright by referencing COPYING file.
-
-2011-12-14  Fredrik Thulin <fredrik@yubico.com>
-
-	* util/yubikey-totp: init, small util to do OATH TOTP using a
-	YubiKey.
-
-2011-12-14  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubico_util.py: Add hotp_truncate().
-
-2011-12-07  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_config.py: Add mode_yubikey_otp().
-
-2011-06-07  Fredrik Thulin <fredrik@yubico.com>
-
-	* README: Update PPA name.
-
-2011-04-20  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey.py, Lib/yubico/yubikey_usb_hid.py: small
-	corrections
-
-2011-04-20  Fredrik Thulin <fredrik@yubico.com>
-
-	* Tests/test_yubikey_config.py: Fix test case after change in
-	a24fd7b83.
-
-2011-04-20  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey.py, Lib/yubico/yubikey_usb_hid.py: Add
-	may_block to serial() and challenge_response().
-
-2011-04-20  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_config.py: Expect 16 byte key for Yubico-OTP
-	challenge response.  Also rename 'mode' when configuring from 'yubico' to 'OTP' to match
-	the mode used when issuing challenges.
-
-2011-04-20  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_defs.py, Lib/yubico/yubikey_usb_hid.py: Bugfix
-	Yubico OTP challenge-response.
-
-2011-04-20  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey.py, Lib/yubico/yubikey_defs.py,
-	Lib/yubico/yubikey_usb_hid.py: _challenge_response: automatic
-	padding.  Don't require the user of the function to know the details about how
-	the YubiKey expects challenges to be padded.
-
-2011-04-18  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/__init__.py: Update version to 0.0.5.
-
-2011-04-18  Fredrik Thulin <fredrik@yubico.com>
-
-	* examples/yubikey-inventory: Add another example enumerating
-	YubiKeys.
-
-2011-04-18  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_config.py, Tests/test_yubikey_config.py: Rename
-	mode_oath_hotp keyword 'bytes' to 'digits'.
-
-2011-04-18  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/__init__.py, Lib/yubico/yubikey.py, README,
-	examples/configure_nist_test_key, examples/nist_challenge_response,
-	examples/rolling_challenge_response: Make 'import yubico' the only
-	needed one.
-
-2011-04-18  Fredrik Thulin <fredrik@yubico.com>
-
-	* doc/ykdef.h: init, from yubikey-personalization 1.5.1
-
-2011-04-13  Fredrik Thulin <fredrik@yubico.com>
-
-	* examples/rolling_challenge_response: Update comment.
-
-2011-04-13  Fredrik Thulin <fredrik@yubico.com>
-
-	* examples/rolling_challenge_response: Example/demo of 'rolling
-	challenges'.  This is a technique that can be used to protect for example an
-	eCryptfs mount passphrase using ever changing challenges to a
-	YubiKey.
-
-2011-04-10  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubico_exception.py: documentation
-
-2011-04-10  Fredrik Thulin <fredrik@yubico.com>
-
-	* README: Updates after feedback from Serge Hallyn.
-
-2011-02-21  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/__init__.py: Version 0.0.4.
-
-2011-02-21  Fredrik Thulin <fredrik@yubico.com>
-
-	* examples/nist_challenge_response: Include C/R operation in
-	try-catch block.
-
-2011-02-19  Stuart Longland <redhatter@gentoo.org>
-
-	* Lib/yubico/yubikey.py: yubico.yubikey: Fix typo in YubiKeyTimeout When a yubikey.YubiKeyTimeout exception is created to be thrown,
-	Python throws a NameError instead because the constructor uses an
-	undefined variable..  The bug can be reproduced by altering the configure_nist_test_key;
-	setting require_button to True in the call to
-	Cfg.mode_challenge_response on line 20, running it and the actual
-	test, then letting the YubiKey time out instead of pressing the
-	button.  The constructor has a parameter, 'value', which was probably
-	intended to be called 'reason' (or the constructor meant to pass
-	'value' instead).  This patch renames the constructor parameter to
-	make it consistent with other modules' usage of the class.
-
-2011-02-19  Stuart Longland <redhatter@gentoo.org>
-
-	* Lib/yubico/yubikey_usb_hid.py: yubico.yubikey_usb_hid: add missing
-	import When a timeout occurs in the method YubiKeyUSBHID._waitfor, instead
-	of throwing the exception, yubikey.YubiKeyTimeout as expected,
-	Python throws a NameError instead because the yubikey module has not
-	been imported (only the YubiKey class).  The bug can be reproduced by altering the configure_nist_test_key;
-	setting require_button to True in the call to
-	Cfg.mode_challenge_response on line 20, running it and the actual
-	test, then letting the YubiKey time out instead of pressing the
-	button.  The alternate fix to this would be to import the YubiKeyTimeout
-	exception class in addition to the YubiKey class.
-
-2011-02-15  Fredrik Thulin <fredrik@yubico.com>
-
-	* README, examples/configure_nist_test_key,
-	examples/nist_challenge_response: Update to match change in
-	yubico_exception.YubicoError.  'value' was changed to 'reason' a while back.
-
-2011-01-19  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/__init__.py: Version 0.0.3.
-
-2011-01-18  Fredrik Thulin <fredrik@yubico.com>
-
-	* : commit f2ef95e6f9082a06becef7ebba8d671e722c22d9 Merge: db7762f
-	d7b90e9 Author: Fredrik Thulin <fredrik@yubico.com> Date:   Tue Jan
-	18 21:03:58 2011 +0100
-
-2011-01-18  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_usb_hid.py: Fix problem with non-set
-	configuration on Windows.  With libusb-win32 1.2.2.0 on Windows 7, python-yubico would fail
-	with an error message about invalid configuration for the interface
-	being claimed :   usb.USBError: libusb0-dll:err [claim_interface] could not claim                 interface 0, invalid configuration 0 Apparently, the correct thing to do is to set configuration to one
-	that exists on the Yubikey (identified with 'lsusb' or similar).  The only available configuration on my YubiKey is 1.
-
-2011-01-18  Fredrik Thulin <fredrik@yubico.com>
-
-	* Lib/yubico/yubikey_config.py, Tests/test_yubikey_config.py: Fix
-	shadowed test case, and fix bug with OATH-HOTP fixed string being
-	set even if there were no 'omp' or 'tt'.
-
-2011-01-05  Fredrik Thulin <fredrik@yubico.com>
-
-	* README: Add installation instructions.
-
-2011-01-02  Fredrik Thulin <fredrik@yubico.com>
-
-	* .gitignore, COPYING, Lib/yubico/__init__.py,
-	Lib/yubico/yubico_exception.py, Lib/yubico/yubico_util.py,
-	Lib/yubico/yubikey.py, Lib/yubico/yubikey_config.py,
-	Lib/yubico/yubikey_config_util.py, Lib/yubico/yubikey_defs.py,
-	Lib/yubico/yubikey_frame.py, Lib/yubico/yubikey_usb_hid.py, README,
-	Tests/run.sh, Tests/test_yubico.py, Tests/test_yubikey_config.py,
-	Tests/test_yubikey_frame.py, Tests/test_yubikey_usb_hid.py,
-	examples/configure_nist_test_key, examples/nist_challenge_response,
-	setup.py: Create first public version of python-yubico.
-
-2011-01-02  Fredrik Thulin <fredrik@yubico.com>
-
-	* .gitignore, Lib/yubico/__init__.py,
-	Lib/yubico/yubico_exception.py, Lib/yubico/yubico_util.py,
-	Lib/yubico/yubikey.py, Lib/yubico/yubikey_config.py,
-	Lib/yubico/yubikey_config_util.py, Lib/yubico/yubikey_defs.py,
-	Lib/yubico/yubikey_frame.py, Lib/yubico/yubikey_usb_hid.py, README,
-	Tests/run.sh, Tests/test_yubico.py, Tests/test_yubikey_config.py,
-	Tests/test_yubikey_frame.py, Tests/test_yubikey_usb_hid.py,
-	examples/configure_nist_test_key, examples/nist_challenge_response,
-	setup.py: Create first public version of python-yubico.
-
-2010-12-06  Fredrik Thulin <fredrik@yubico.com>
-
-	* README: init
-
-2010-12-06  Fredrik Thulin <ft@it.su.se>
-
-	* init
-
diff --git a/NEWS b/NEWS
index ed668d5..853b0a4 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,6 @@
+* Version 1.3.3 (released 2019-02-28)
+ ** Fixes in Python 3 compatibility.
+
 * Version 1.3.2 (released 2016-02-23)
  ** Various fixes to sequence number checking.
  ** Fix issue with using an access code with the debug flag on.
diff --git a/PKG-INFO b/PKG-INFO
index d1ec1e4..f7354f1 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,10 +1,12 @@
-Metadata-Version: 1.1
+Metadata-Version: 1.2
 Name: python-yubico
-Version: 1.3.2
+Version: 1.3.3
 Summary: Python code for talking to Yubico's YubiKeys
 Home-page: https://github.com/Yubico/python-yubico
-Author: Yubico Open Source Maintainers
-Author-email: ossmaint@yubico.com
+Author: Dain Nilsson
+Author-email: dain@yubico.com
+Maintainer: Yubico Open Source Maintainers
+Maintainer-email: ossmaint@yubico.com
 License: BSD 2 clause
 Description: UNKNOWN
 Platform: UNKNOWN
diff --git a/debian/changelog b/debian/changelog
index cc613f7..1ee85df 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+python-yubico (1.3.3-1) UNRELEASED; urgency=medium
+
+  * New upstream release.
+
+ -- Debian Janitor <janitor@jelmer.uk>  Mon, 09 Sep 2019 18:08:18 +0000
+
 python-yubico (1.3.2-2) unstable; urgency=medium
 
   * Acknowledge NMU.
diff --git a/python_yubico.egg-info/PKG-INFO b/python_yubico.egg-info/PKG-INFO
index d1ec1e4..f7354f1 100644
--- a/python_yubico.egg-info/PKG-INFO
+++ b/python_yubico.egg-info/PKG-INFO
@@ -1,10 +1,12 @@
-Metadata-Version: 1.1
+Metadata-Version: 1.2
 Name: python-yubico
-Version: 1.3.2
+Version: 1.3.3
 Summary: Python code for talking to Yubico's YubiKeys
 Home-page: https://github.com/Yubico/python-yubico
-Author: Yubico Open Source Maintainers
-Author-email: ossmaint@yubico.com
+Author: Dain Nilsson
+Author-email: dain@yubico.com
+Maintainer: Yubico Open Source Maintainers
+Maintainer-email: ossmaint@yubico.com
 License: BSD 2 clause
 Description: UNKNOWN
 Platform: UNKNOWN
diff --git a/setup.cfg b/setup.cfg
index 861a9f5..8bfd5a1 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,5 +1,4 @@
 [egg_info]
 tag_build = 
 tag_date = 0
-tag_svn_revision = 0
 
diff --git a/yubico/yubico_version.py b/yubico/yubico_version.py
index f708a9b..7b1e312 100644
--- a/yubico/yubico_version.py
+++ b/yubico/yubico_version.py
@@ -1 +1 @@
-__version__ = "1.3.2"
+__version__ = "1.3.3"
diff --git a/yubico/yubikey_4_usb_hid.py b/yubico/yubikey_4_usb_hid.py
index 31c6f5d..b44bb90 100644
--- a/yubico/yubikey_4_usb_hid.py
+++ b/yubico/yubikey_4_usb_hid.py
@@ -104,7 +104,7 @@ class YubiKey4_USBHID(yubikey_neo_usb_hid.YubiKeyNEO_USBHID):
         frame = yubikey_frame.YubiKeyFrame(command=SLOT.YK4_CAPABILITIES)
         self._device._write(frame)
         response = self._device._read_response()
-        r_len = ord(response[0])
+        r_len = yubico_util.ord_byte(response[0])
 
         # 1 byte length, 2 byte CRC.
         if not yubico_util.validate_crc16(response[:r_len+3]):
diff --git a/yubico/yubikey_usb_hid.py b/yubico/yubikey_usb_hid.py
index 513eec1..c07dcaa 100644
--- a/yubico/yubikey_usb_hid.py
+++ b/yubico/yubikey_usb_hid.py
@@ -136,7 +136,7 @@ class YubiKeyHIDDevice(object):
         try:
             if self._usb_handle:
                 self._close()
-        except IOError:
+        except (IOError, AttributeError):
             pass
 
     def _write_config(self, cfg, slot):