Skip to content

Releases: frossm/rpncalc

Release - v4.6.13

04 Sep 18:40
Compare
Choose a tag to compare

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

20 Aug 15:18
Compare
Choose a tag to compare

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 converts line1 from ounces to grams
    • gram2oz convers line1from 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

06 Aug 02:35
Compare
Choose a tag to compare

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 either left, decimal, or right
    -- memslots Which define how many memory slots are available.
  • User Guide Updates to reflect the above

Release - v4.6.5

03 Aug 16:24
Compare
Choose a tag to compare

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

29 Jul 22:34
Compare
Choose a tag to compare

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

26 Jul 22:34
Compare
Choose a tag to compare

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

23 Jul 19:54
Compare
Choose a tag to compare

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 the set command as described below
  • Width command (-w NUM): This was removed from the command line and will now be set with the set command as described below
  • Memory Slots (-m NUM): This was removed from the command line and will now be set with the set command as described below

Commands Removed

  • Align command (a l|d|r) was removed and will now be set with the set command.

Added Commands

  • set align l|d|r: Set the alignment of the stack when it's displayed. The default is l 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 or set memoryslots may also be used. See the memory commands chapter for more information
  • reset: This command resets the configuration setting that are set with the set 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

11 Jul 16:50
Compare
Choose a tag to compare

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

02 Jul 23:59
e24c022
Compare
Choose a tag to compare

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 to sol will pull up the constant
  • Added the command rec which is a synonym to record
  • 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

01 Jun 17:59
Compare
Choose a tag to compare

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.