Releases: google/mug
Releases · google/mug
Release 9.9.2
@ParametersMustMatchByNameapplicable to package level
Release 9.9.1
@ParametersMustMatchByName- light-weight named parameterParser.matches(string)BiStream.adjacentPairsFrom()BiStream.from()undeprecated
Release 9.8
Minor changes and BOM update
Release 9.7
SafeSql.args()for interoperability with JdbcTemplateIteration.lazily(),Iteration.emit().
Release 9.5
Parser.quotedBy().Parser.first()to search for an anchor point.Parser.sequence()for 3 and 4 parsers.SafeSql.prepareToBatch()for JDBC batching.Csv.join(),Csv.joining().
mug-root-9.4
Release 9.4
- More parser combinators
Release 9.3
- Dot Parse.
- Easy, safe parser combinator library (no infinite loop possible).
- Supports lazy, streaming parsing (
jsonParser.parseToStream(Reader)). Csvand regex parsers included.- Tiny — 1/5 the size of jparsec.
- New
StringFormat.format()overloads for more efficient formatting.
Release 9.2
SafeSql.queryForOne().- Supports public fields besides Java Beans.
{names? -> AND name IN (names?)}BoundedConcurrencyin mug-concurrent24.concurrently()as a higher-throughputmapConcurrent().race().
Release 9.1
- Automatic module names
- Fixed accidental JDK 9 references
Release 9.0
Major release fixing dependencies.
SafeSqlsupports converting ResultSet into Java Beans and records.- Removed guava dependency from the
mug-safesqlartifact to help avoid jar hell. - Added
mug-spannerartifact withParameterizedQueryto offer safe templating for Cloud Spanner dynamic queries (no extra dependency other than mug and cloud spanner). - Fixed
mug-guavasplit package by renaming packages to make it more friendly to JPMS - Moved CaseBreaker into Mug core artifact.
- Split out the CaseFormat-dependent method into mug-guava as
CaseFormatsclass. - Added optional template parameter support. For example:
SafeSql.of("... {filter? -> WHERE filter?}", optionalFilter())