Releases: frossm/rpncalc
Release - v4.6.13
Release Notes
- Added a
rev
command which will reverse all of the items in the stack. The top of the stack item will become the last and the last items will move to the top - Updates to the RPNCalc UserGuide
- Tweaks to the snapcraft config used to generate the Snaps
- Improved the unit tests
- Updated the screenshot
Release - v4.6.11
Release Notes
- Corrected display bug with
frac
command if a parameter error occurred or if there were no items in the stack - Added two new commands
oz2gram
convertsline1
from ounces to gramsgram2oz
conversline1
from grams to ounces
- Corrected a slight display error making sure everything lines up correctly
- Added a custom wrapper for SNAP installations. Trying to work through an issue where the arrow keys do not work correct in RPNCalc if installed via SNAP. If you download and run the JAR file this change isn't relevant.
Release - v4.6.8
Release Notes
delete
: Added the ability to delete stack items by adding a range of lines. For example,del 2-4
will delete lines 2, 3, and 4.set
: If set is given without any parameters, it will display the current values of the persistent configurable settings. At the time of this release, there are three configurable items
--width
Program width
--align
Alignment which can be eitherl
eft,d
ecimal, orr
ight
--memslots
Which define how many memory slots are available.- User Guide Updates to reflect the above
Release - v4.6.5
Release Notes
This is a fairly large release with quite a few changes. I'd like to thank Dr Roberts Klotins
for helping me test an enhancement he requested.
New Capabilities
- Added the ability to use arrow keys in Linux as requested by Roberts. This has always worked well in Windows, but you could not use arrow up and down to move through your history. This has been fixed by replacing the java user input library (scanner) with another (jline3)
ctrl-c
will now gracefully exit RPNCalc instead of just crashing it. This will ensure that the stacks and memory slots get saved- Streamlined the program dependencies so try to keep the file size as small as possible
- Added
quit
as an exit command - Updates to the User Guide to include license of libraries and an enhanced acknowledgements chapter
Bugs
- Corrected bug in the
load
command - Corrected a bug in
undo
Additional undo layers were being created if another command was called with too few items on the stack
Developer Enhancements
- Added more automated unit tests. There are currently 53 tests but more improvements can be made here.
Release - v4.5.4
Release Notes
This release corrected several smaller bugs and updates as listed below.
- Corrected several crashes if stack was empty
- Fixed bug on extra undo snapshots when a command failed due to stack size
- Updated dependences
- Added additional JUnit tests
- Updates to the User Guide
- Updates to Snap description
Release - v4.5.2
Release Notes
Quite a few behind the scenes changes with this release. The automated testing will help with future changes and jCommander is a better framework than GetOpt as is the update to Shade.
- Replaced Java GetOpt with jCommander. It's time to move to something a little more modern
- Corrected bug in
-l
load command that as part of my jCommander implementation - Implemented 50 JUnit tests which should make future testing much less manual
- Replaced "FatJar" creation from the Maven Assembly Plugin to the Apache Shade Maven Plugin
- Updated several other Maven plugins to their latest versions
- Corrected spelling mistakes in the User Guide
- Updated JUnit library to v5.9.0
Overall, these were not functionality impacting changes. I didn't add any new commands or capabilities.
Release - v4.5.0
Release Notes
This release included a lot of changes which I believe will make a better and more extensible program.
User Guide
I finally took the time to create a more comprehensive User Guide replacing a README.md that was getting very long. The User Guide goes into more detail and the different chapters allow you to jump quickly to what you want to see. The Search feature is also useful finding what you need.
Undo Across Primary & Secondary Stacks
A major issue with previous issues is that the undo
capability was global. So if you switched stacks you could undo
that stack with another stack's undo data. This has been corrected and was fairly complex. It necessitated major changes to the underlying way the data was kept. So now, the primary and the secondary stack has it's own undo data.
Command Line Options Removed
- Align command (
-a l|d|r
): This was removed from the command line and will now be set with theset
command as described below - Width command (
-w NUM
): This was removed from the command line and will now be set with theset
command as described below - Memory Slots (
-m NUM
): This was removed from the command line and will now be set with theset
command as described below
Commands Removed
- Align command (
a l|d|r
) was removed and will now be set with theset
command.
Added Commands
set align l|d|r
: Set the alignment of the stack when it's displayed. The default isl
or left alignment. The numbers are aligned to the left.r
or right alignment has the numbers aligned to the right.d
or decimal aligns all of the decimal points together in a column. This setting is persistent across RPNCalc executions. set alignment may also be used.set width NUM
: Sets the width of the program. The default is 80 characters. If you are using a small display, and the calculator wraps, this can be used to make the width smaller (or larger). Please note that there is a minimum width that must be used. At the time of this writing, it's 46 characters. This setting is persistent across RPNCalc executions.set memslots NUM
: Set the number of memory slots available to RPNCalc to NUM. The default is 10 slots, numbered 0 through 9. If you need more, or less, it can be changed with this command. The setting is persistent across RPNCalc executions.set mem
orset memoryslots
may also be used. See the memory commands chapter for more informationreset
: This command resets the configuration setting that are set with theset
command back to their default values
As always, if there are thoughts, questions, or ideas, please let me know. Contact links are on the Introduction page in the User Guide.
Release - v3.3.2
Release Notes
Fixed a bug with Undo. When a fraction was entered, it did not correctly save the undo stack before adding. Therefore, if you did and u
undo after entering a fraction, it would undo the last item BEFORE fractions was entered. This has been corrected.
If you use fractional input, I would suggest you update to this version.
Release - v3.3.1
Release Notes
Added a release to keep it consistent with the SNAP version. There are only several small changes:
- Added the command
speedoflight
which, in addition tosol
will pull up the constant - Added the command
rec
which is a synonym torecord
- Updated to the latest of my "library" (2022-06-28) which contains methods common across my programs.
- Tweaks to the readme.md file
If you are a system that supports SNAPs, I would encourage that you leverage it. Not only are the applications "sandboxed" so it's secure, all of the dependencies are bundled in so you don't need to have java installed on the machine. It is also automatically updated so you'll always have the latest. You can force this with sudo snap refresh
Just a suggestion.
Release - v3.3.0
Release Notes
When a user defined function (UDF) was created with the record
command, in order to run it you would execute func run NAME
That didn't seem to be needed. Why couldn't you just type the function name as a command.
This release does just that. If use the function name as a command at the prompt. Much easier. I've removed the func run NAME
command, updated the help, README, and graphics.
As a reminder, there is no need to install anything. Just download the JAR file and if java is in your path, running java -jar rpncalc.jar
will run it.