Releases: JordanWelsman/jutils
jutils 0.5.3
Description
This version of jutils implements a small Timer feature. You can now specify the precision of which you want it to print the total time.
Changelog
- Added
precision
argument when calling objects of the Timer class.
jutils 0.5.2
Description
This version of jutils comes with a data structure implementation: the Stack.
Changelog
Stack()
jutils defines a queue as a first-in, first-out list of elements. All types supported by Python's intrinsic list
object are supported by Queue
. Users can use enqueue()
to add one or many elements to a queue and dequeue()
to remove elements one-by-one. Queues can be combined with other queues with extend()
or simply by adding one to another. While there are multiple methods of adding elements to the queue, there is only one method for removing queue elements. There are now new property methods for getting the front and rear elements of the queue. You can do this by using .front
and .rear
respectively.
Queue()
As previously mentioned, there are now new property methods for getting the top and bottom elements of the stack. You can do this by using .top
and .bottom
respectively. Queues now support maximum sizes with the capacity
argument, and new object properties including .is_empty
and .is_full
.
Bugfixes
Some bugs were fixed including:
- A
Stack
bug which would cause the out-of-order removal of duplicate elements when using.pop()
- A
Stack
is_full
self.__len__
bug which would cause errors with tests on all dunder methods.
jutils 0.5.1
Description
This version of jutils fixes a bug caused by the Stack reporting its top element when it has none. It also fixes a bug when removing the last element and then popping it.
jutils 0.5.0
Description
This version of jutils comes with a data structure implementation: the Stack.
Changelog
Stack()
jutils defines a stack as a first-in, last-out list of elements. All types supported by Python's intrinsic list
object are supported by Stack
. Users can use push()
to add one or many elements to a stack and pop()
to remove elements one-by-one. Stacks can be combined with other stacks with extend()
or simply by adding one to another. While there are multiple methods of adding elements to the stack, there is only one method for removing stack elements.
jutils 0.4.1
Description
This minor update for jutils comes with a few new features! 🚀
Changelog
- Timer methods now have the capability to output colored text to the terminal.
- jutils now comes with custom exceptions for more precise debugging.
jutils 0.4.0 (The Pipeline Update)
Description
This release of jutils enables users to create pipelines constructed from functions and easily pass single or multiple pieces of data through the entire pipeline. This is enabled by the respective new classes:
Changelog
InstructionPipeline()
jutils defines an instruction pipeline as a series of functions connected in series so users can pass a single piece of data through it and get a result after a series of functional operations has been applied. You can construct an instruction pipeline by passing the functions at instantiation, or by using the build-in add()
function. You can also list()
the pipeline functions and remove()
functions if required.
DataPipeline()
The data pipeline extends the functionality of the instruction pipeline by allowing the passage of multiple pieces of data. The returned value is a list of all data passed after the series of operations has been equally applied to each. You can construct an instruction pipeline by passing the functions at instantiation, or by using the build-in add()
function. You can also list()
the pipeline functions and remove()
functions if required.
jutils 0.3.0 (The Time Flies Update)
Description
This release of jutils lets users benchmark and time their code with two new fully-featured classes:
Changelog
Stopwatch()
This class comes with an array of methods that a real stopwatch would have, including start()
, lap()
, pause()
, and reset()
. It also features overridden dunder methods which allow users to invoke math and comparison operators on their stopwatch objects.
Timer()
This class emulates the workings of a real timer with start()
, pause()
, resume()
, stop()
, and reset()
methods. Like the Stopwatch class, this class also includes overhauled dunder methods which allow for math and comparison operations.
Bugfixes
This release fixes a significant issue which prevented users from importing submodules.
jutils 0.2.0 (The Color Update)
Description
This release of jutils
comes with terminal coloring utilities! Users can use the text formatting classes or the built-in apply()
function to format their output.
Changelog
Please see the project's wiki for changes.
jutils 0.0.1 (Initial Pre-release)
Description
This is the initial release of jutils
!
Changelog
Please see the project's README.md
for changes.