Added tag 1.1-b1 for changeset 3782adc3000c
Prepare release 1.1-b1. This deals with the various outstanding issues, but doesn't include the separate work to use QUDT2, which will happen next. This revision includes some reworking of the way that the version numbers are wrangled, in a slight simplification.
Include references to FITS spec v4.0. Thanks to Mark Taylor for notes on the relevant difference between versions 3 an 4 (https://github.com/ivoa-std/VOUnits/issues/7). Closes issue #6.
Build/doc/dist tweaks
Improve (slightly) C documentation of unit dimensions. This addresses issue ~nxg/unity#8, in the rather limited sense that, since I realise that there is no support for breaking down units in the C library, there is little to fix.
Add a note about (not) parsing the empty string, and add helper methods. Document that rejecting the empty string is deliberate, and not an oversight. Make the `UnitExpr.getDimensionlessExpression()` public, not private, and add C function `unity_get_dimensionless`.
Adjust version info in unity-grammars/README
Add missing ln flag when building the distribution
Adjust the list of terminals, mentioning LIT10
Mention known units, and include table, in package-info.txt
Migrate from org.mulgara MRG RDF parsers to RDF4j. Closes issue unity#9
Add LIT1 testcases to Java and C libraries
Refactor lexing
Added `"1"` as an indicator of the ‘dimensionless expression’. This is in the VOUnits syntax only. This is slightly provisional, anticipating this change in the VOUnits spec. There is still no indicator of a dimensionless expression in the other units (ie, `""` is still unparseable in all syntaxes).
Invert the sense of the second argument to UnitExpr.allUnitsRecognised(Syntax,boolean)
Added `OneUnit.getOriginalString()`. This retrieves the string representation originally found in the parsed string, whether or not it is valid, preferred, or guessed. Thanks to Mark Taylor for persuading me that this was legitimately useful.
Change method signatures of `OneUnit.toString and .unitString. The methods `OneUnit.toString(Syntax)` and `OneUnit.unitString(Syntax)` have changed their signature: both now throw a (new) `UnwritableExpression` exception. Method `OneUnit.toString()` does not throw an exception. Various other minor documentation and API clarifications around writing.
Add further unit tests. This adds the test that provoked the change in revision 2b0e171f (in SimpleUnit.java). I should of course have added it then but I was in a hurry. Adding the test as usual prompted other tests, and some added functionality.
Adjust Makefile.in -- remove inadvertent new default target
Update the README with new functionality; fix uncovered bug. It turns out that the guessing process would guess `ergs` but not `erg`; added a new catch-all guesser. Also, with the right combination of input units and syntax (parse `mergs` in the CDS syntax), it was possible to prompt a NullPointerException, because a previously-impossible case had become possible due to the guessing process.