1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
* Changelog
All notable changes in this project will be shown in this file.
** Unreleased
*** Added
- *Added specifications for all types data files used by 7Units.*
*** Changed
- Configuration file is now located at a standard location in the system, instead of being in the project directory.
- Simplified some setting values in the config file
- Made the various data files more consistent with each other:
- Addition and subtraction may be used in prefix expressions.
- Exponentation works for all bases in dimension expressions.
- All types of config files support comments.
** v0.4.1 - [2023-04-15 Sat]
*** Fixed
- Upgrade Gradle from 6.3 to 8.1 to support users of new Java versions
(though 7Units still uses Java 11, the old Gradle distribution would fail if compiled with a newer version of Java)
** v0.4.0 - [2022-07-17 Sun]
*** Added
- *Added tests for the GUI*
- *Added search rules that determine which prefixes are shown in the unit conversion view.*
- Added an object for the version numbers (SemanticVersionNumber)
- Added some toString methods to NameSymbol and Nameable
*** Changed
- *Rewrote the GUI code internally using an MVP model to make it easier to maintain and improve*
- BaseDimension is now Nameable. As a consequence, its name and symbol return Optional<String> instead of String, even though they will always succeed.
- The UnitDatabase's units, prefixes and dimensions are now always named
- The toString method of the common unit classes is now simpler. Alternate toString functions that describe the full unit are provided.
- UncertainDouble and LinearUnitValue accept a RoundingMode in their complicated toString functions.
- Rounding rules are now in their own classes
- The "Show Duplicates" setting now affects the prefix viewer in addition to units
- Tweaked the look of the unit and expression conversion sections of the view
- Default dimension names are in title case, not uppercase.
** v0.3.2 - [2021-12-02 Thu]
*** Added
- Added lots more tests for the backend and utilities
*** Fixed
- The UnitDatabase's unit map acted as if it were empty if it had units but no prefixes
- Non-exact LinearUnitValue instances had their value printed as "(", meaning "(5.0 ± 0.1) m" would be printed as "( m"
** v0.3.1 - [2021-08-26 Thu]
*** Added
- Created a user manual
- Create a design document (a document detailing the program's design for programmer use)
*** Changed
- Changed the name of the project from "Unit Converter" to "7Units"
- Changed the main package from ~unitConverter~ to ~sevenUnits~
- Tweaked the README, removing content that belongs in the new user manual
- Renamed ~SI~ to ~Metric~
** v0.3.0 - [2021-06-12 Sat]
*** Added
- Added a simple unit conversion method to the Unit interface
- Added a static factory to create nonlinear units to the Unit interface
- Added a settings menu with many settings to change the system's behaviour. Allows you to control the precision settings, prefix repetition, and more.
*** Changed
- Changed the unit system again!
- You can now use tabs or spaces to separate unit names and their definitions in unit files.
- Unit Converter uses Gradle instead of Maven.
** v0.2.0 - [2019-04-14]
*** Added
- A selection-based unit converter which allows you to select two units, input a value, and convert.
- The UnitDatabase now stores dimensions.
- A system to parse mathematical expressions, used to parse unit expressions.
- You can now add and subtract in unit expressions!
- Instructions for obtaining unit instances are provided in the relevant classes
- The UnitPrefix interface now provides default times, dividedBy and toExponent methods.
*** Changed
- When searching for units, units with no prefixes are searched for before prefixed units
- Smaller prefixes are searched for before larger prefixes
- Moved project to Maven
- Downgraded JUnit to 4.11
- BaseUnit is now a subclass of LinearUnit
- In unit files, Comments can now start in the middle of lines
- UnitsDatabase.addAllFromFile() has been renamed to loadUnitsFile()
** v0.1.0 - [2019-02-01]
NOTE: At this stage, the API is subject to significant change.
*** Added
- Unit interface, implemented and supporting classes
- UnitPrefix interface, implemented and supporting classes
- UnitDimension and supporting classes
- UnitDatabase to store and parse units
- A GUI for unit conversion
|