Skip to content

Latest commit

 

History

History
168 lines (96 loc) · 3.08 KB

CHANGELOG.md

File metadata and controls

168 lines (96 loc) · 3.08 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

3.1.0 - 2021-12-17

This version adds type annotations and doc strings to many methods.

Added

  • Type annotations
  • pylint and mypy as linters

Changed

  • replaced pass with ...
  • replaced .format() with "f-strings"

Deprecated

  • Versioning will change to yyyy.mm format soon

Removed

  • child_left and child_right in the BinaryTree

3.0.3 - 2020-01-31

This version fixes various bugs and performance issues found during the book review.

Added

  • shebang line to __init__.py files
  • flake8 and codecov are part of the development requirements now

Changed

  • Implementation of Bubble, Merge, and Heap sorting algorithms
  • Start using venv instead of pipenv

Deprecated

  • Tree methods will be renamed for better alignment with the textbook
  • Graph methods will be renamed for better alignment with the textbook
  • Incomplete (not implemented) methods will be removed in 3.1.0

Removed

  • N/A

Fixed

  • Heapsort implementation is more efficient

Security

  • N/A

3.0.2 - 2019-01-10

This version follows pylint recommendations and uses black to format code.

Added

  • Shebang line to all source files

Changed

  • Source formatting using black

Deprecated

  • N/A

Removed

  • Some code as recommended by pylint

Fixed

  • N/A

Security

  • N/A

3.0.1 - 2018-07-25

This version adds examples of usage and updates tests.

Added

  • HOWTO explaining the usage of this package.
  • HOWTO-DEV with the development guidelines.

Changed

  • Tests for all algorithms and data structures are using pytest.

Deprecated

  • N/A

Removed

  • N/A

Fixed

  • N/A

Security

  • N/A

3.0.0 - 2018-06-20

Initial release.

It's a rewrite of the pythonds project with the code restructured and (mostly) PEP8-compliant. The changes are breaking and may be inconsistent with the current edition of the textbook.

The changes between pythonds and pythonds3 are as follows:

Added

  • Linked list implementation (unordered and ordered).
  • HashTable.
  • Sorting algorithms
    • Bubble
    • Selection
    • Insertion
    • Shell sort
    • Mergesort
    • Quicksort
    • Heapsort
  • Dijkstra's shortest path algorithm.
  • Bellman-Ford shortest path algorithm.
  • Prim's spanning tree algorithm.
  • Tests for all algorithms and data structures.

Changed

  • Project structure.

Deprecated

  • CamelCase names.

Removed

  • __main__ functions from all modules.

Fixed

Security

  • Not all exceptions are handled properly.