Skip to content

Latest commit

 

History

History
184 lines (159 loc) · 7.17 KB

NEWS.rst

File metadata and controls

184 lines (159 loc) · 7.17 KB

IntelHex releases

2.3.0 (2020-10-20)

  • Add IntelHex.find() method to find a given byte pattern. (Scott Armitage)
  • API changes: IntelHex.segments() method supports new optional parameter min_gap to allow consolidation of segments with small but existing gaps into a single segment. Default value is 1. (Ryan Downing)
  • API changes: IntelHex.tofile() now supports the optional byte_count parameter from IntelHex.write_hex_file(). Only used if format = hex. (Reis Baltaoglu)
  • Fix Python 3.9 compatibility issue with 'array' module (Piotr Korowacki)
  • Fix installation for Python version taking setup rather from setuptools than distutils (Theo Sbrissa)

2.2.1 (2018-01-30)

  • Fixes for PyPI.

2.2 (2018-01-28)

  • API changes: IntelHex.write_hex_file method: added support for new parameter: eolstyle = native | CRLF. (Alexander Belchenko)
  • API changes: IntelHex.write_hex_file() method gets new optional parameter byte_count to specify how many bytes should be written to each data record in output file. Default value is 16. (patch from GitHub user erki1993)
  • Unit tests: Fixed xrange overflow test for Python 2.7 on 64-bit platforms. Use sys.maxint to ensure we trigger an exception. (Masayuki Takeda)
  • Script hexinfo.py: Python 3 compatibility for processing start address dict keys. (patch from GitHub user mentaal)
  • Added get_memory_size() method: approx memory footprint of IntelHex object plus data. (Alexander Belchenko)
  • Better compatibility with Python 3. (Alexander Belchenko)

2.1 (2016-03-31)

  • API changes: added IntelHex.segments() method that returns a list of ordered tuple objects, representing contiguous occupied data addresses. (Andrew Fernandes)
  • New command-line script hexinfo.py to print summary about hex files contents (file name, start address, address ranges covered by the data) in YAML format. (Andrew Fernandes)
  • Better Python 3 compatibility when hex2bin.py and bin2hex.py scripts are trying to read/write binary data from stdin or to stdout. (GitHub issue #4)
  • The main activity of the IntelHex project slowly drifting towards GitHub - the main social network for OSS developers. I'd really like to get some help from additional maintainer though.
  • API changes: IntelHex.dump() method gets new optional parameters: width, withpadding to control generation of output text. (patch from GitHub user durexyl)
  • Script hex2dump.py gets new option --width to support corresponding parameter in IntelHex.dump() method.

2.0 (2015-04-12)

  • The same codebase can be run on both Python 2 (2.4-2.7) and Python 3 (3.2+). No need to use 2to3.
  • compat.py: provide more helper functions and aliases to reduce changes required to convert python 2 compatible sources to python 3. The code becomes quite ugly, but such compatibility has its price.
  • Python 3 compatibility: tobinstr should return bytes not unicode string (Bug #1212698).
  • Python 2: better support for long int addresses (over 2GB) (Bug #1408934)

1.5 (2013-08-02)

  • API changes: Functions tobinarray/tobinstr/tobinfile: pad parameter is deprecated and will be removed in future releases. Use IntelHex.padding attribute instead, and don't pass pad as None explicitly please. If you need to use size parameter, then use syntax like that: ih.tobinarray(start=xxx, size=yyy)
  • API changes: Functions tobinarray/tobinstr/tobinfile: default value of pad is None now (was 0xFF) to allow using value of IntelHex.padding if no explicit pad specified.
  • Fixed bug: wrong getopt error handling in some scripts. (Thanks to Andy Mozhevilov for bug report)
  • PEP-8 style improvements. (Thanks to Stefan Schmitt)
  • IntelHex16bit.tobinarray method returns array of unsigned short (words) values. (Feature request from Stefan Schmitt)
  • Improved Python 3 compatibility (don't use old file() function). (Thanks to Luis Panadero Guardeño for bug report)

1.4 (2012-04-25)

  • New feature: compare 2 hex files using hex dump as string representation. Feature available as worker function diff_dumps() and as command-line utility hexdiff.py (#627924).
  • Changes in the codebase suggested by 2to3 tool to provide compatibility with Python3. Now sources can be successfully converted to Python3 with 2to3 utility. See Python 3 notes in README.txt and documentation. (Thanks to Bernhard Leiner for his help)
  • Fixed bug #988148: IntelHex16bit should copy all public attributes from source IntelHex 8-bit object. (Thanks to Morgan McClure)

1.3 (2010-11-24)

  • hex2dump: show 0x7F character as dot for better compatibility with GNU less utility.
  • tobinarray, tobinfile, tobinstr: added size parameter. (Bug #408748)
  • fixed error in hexmerge.py script. (#676023)

1.2 (2009-08-04)

  • Fixed bug 372620: tobinarray on empty file should return pad bytes when address range explicitly specified.
  • Improved docstrings: explicitly say that end param of to-* methods is always inclusive. (see bug #372625 for details).
  • Improved documentation on ih.dump(tofile).

1.1 (2009-03-12)

  • Fixed bug in writing hex files with small chains of bytes
  • Improved Python 2.6 compatibility

1.0 (2009-01-01)

  • Improved API, better performance
  • New User Manual (Zachary Clifford)

0.9 (2007-06-16)

New API release.

  • New API
  • Performance improvements: read hex file now ~45% faster

0.8.6 (2007-04-27)

Bug fixes and performance improvements.

  • IntelHex is able to read/write start address records (HEX record type 03 and 05). (fix bug #109872)
  • Backport (from 0.9 branch) of performance improvements for reading hex files

0.8.5 (2007-02-26)

BugFix Release.

Performance improvements for writing big hex files when starting address is far from 0. Patch from Heiko Henkelmann.

0.8.4 (2007-02-26)

License added.

The code is actually licensed under BSD, but there was no LICENSE file in sources archive. Added license file and explicit declaration in the source code.

0.8.3 (2006-09-05)

BugFix Release.

Fix writing hex files with extended linear records (when address overlaps 64K boundary). Patch from Henrik Maier.

0.8.2 (2006-04-11)

Major improvements release.

  • Introduced new class IntelHex16bit for manipulate data as 16-bit values
  • You can manipulate data using dictionary-like interface (i.e. syntax like: ih[addr] = value)
  • Added new method writefile(file) for writing data to hex file
  • Using unittest for testing functionality

0.6 (2006-03)

Convertor engine hex2bin extracted to stand-alone function for using by external clients of intelhex.

0.5 (2005)

First public release.