Skip to content

Releases: aegoroff/solv

0.16.0

26 Feb 20:13
Compare
Choose a tag to compare

0.16.0 - 2024-02-26

Bug Fixes

  • [breaking]Mapping of Solution Configuration to Project Configuration is missing (issue #6). Build.0 flag value is not available in the parsed output (issue #5) - (fd3ed30) - Alexander Egorov

Documentation

  • comments improvements - (b241f09) - Alexander Egorov

Miscellaneous Chores

  • exta empty line - (ee4585b) - Alexander Egorov
  • mute clippy pedanic warnings on generated code - (bdff5f7) - Alexander Egorov
  • git cliff config file added to automate changelog creating - (1526782) - egoroff
  • more clippy hints to mute useless warnings in pedantic mode - (4e1b982) - egoroff
  • forbid unsafe code - (62f9e5b) - Alexander Egorov
  • bump clap to 4.4.11 - (452c9a0) - egoroff
  • bump clap_complete - (ea84a0e) - egoroff
  • bump clap to 4.4.12 - (548acfb) - egoroff
  • bump clap to 4.4.12 - (03578d6) - Alexander Egorov
  • bump crates to new versions - (5821a0f) - Alexander Egorov
  • bump clap to 4.4.16 - (1638ad6) - Alexander Egorov
  • bump clap to latest version - (6132a3e) - Alexander Egorov
  • bump clap_complete to latest version - (73d8940) - Alexander Egorov
  • bump serde to the latest version - (dbe3265) - egoroff
  • bump crates to the latest versions - (5f01809) - Alexander Egorov
  • bump crates to the latest versions - (205c46e) - Alexander Egorov
  • bump crates to the latest version - (7726d3b) - Alexander Egorov
  • bump clap and serde to the latest versions - (3d07e0c) - Alexander Egorov

Performance

  • bump lalrpop to 0.20.1 that improves performance - (c3bc7b8) - Alexander Egorov
  • useless new Vec removed from from_id_and_configs - (fd9c16e) - Alexander Egorov

Refactoring

  • unnecessary match removed from current function of lexer. Important comments added - (575b53d) - Alexander Egorov
  • all duplicated arguments definition code extracted into functions while cli define - (e1c5676) - Alexander Egorov
  • path cli argument extracted into separate function - (39cdfb0) - egoroff

Changelog

  • v0.16.0 - (40c61cf) - Alexander Egorov

Ci

  • bump docker build actions versions - (fabd60c) - Alexander Egorov
  • cocogitto git-cliff template - (b451071) - Alexander Egorov
  • changelog header set to empty - (e6e9d91) - Alexander Egorov
  • changelog template corrected - (b0e65fb) - Alexander Egorov
  • automatic changelog while releasing implemented - (6d38440) - Alexander Egorov
  • unneeded condition removed from generating changelog - (3ec135f) - Alexander Egorov

Deps

  • bump comfy-table crate - (93e7034) - egoroff
  • bump clap - (1b62c41) - Alexander Egorov
  • downgrade lalrpop because version was yanked - (7ce18ff) - Alexander Egorov
  • bump serde - (d1909ad) - Alexander Egorov
  • bump serde_json - (129ea47) - Alexander Egorov
  • bump serde - (5eb792e) - Alexander Egorov
  • bump serde - (ed761a5) - Alexander Egorov
  • bump proptest - (0fefc70) - Alexander Egorov
  • bump clap - (5abbb79) - egoroff
  • bump itertools to 0.12 - (f589dfa) - egoroff
  • bump url and serde verions - (d428116) - egoroff
  • bump clap to 4.4.10 - (dc59787) - Alexander Egorov

0.15.3

20 Oct 19:29
Compare
Choose a tag to compare

v0.15.3 (2023-10-20)

Bug Fixes

  • debian package publishing fixed

0.15.0

09 Oct 18:53
Compare
Choose a tag to compare

v0.15.0 (2023-10-09)

Features (BREAKING CHANGE)

  • solp module that contains internal parser implementation made internal and not visible outside library
  • functions that parsing strings of single files returns Result now, not Option as before to normal output erros to user. Directory scanning method not changed and just skips parsing errors so as not to interrupt scanning

Features

  • Some arguments of json and info command made valid only if path argument present if not they are not allowed
  • info and json command support reading solution file from stdin now

Code Refactoring (BREAKING CHANGE)

  • Parsing single file propagates file errors to the caller without handling them inside the method itself

Code Refactoring

  • scan_path_or_stdin function added into main to eliminate duplication
  • convert module renamed to json
  • Create Solution from Sol instance using from function uses Sol borrowing but not owning now

0.14.0

03 Oct 17:12
Compare
Choose a tag to compare

v0.14.0 (2023-10-03)

Features (BREAKING CHANGE)

  • solp API redesign. Old public Solution and its components renamed and made not exportable from solp. New rich contracts that were before convert module part made solp public contracts

Features

  • Solution(s) conversion into JSON implemented using new command

Bug Fixes

  • Small UX glitch corrected (margin)
  • correct mismatches logic implementation
  • printing error message in case of nuget mismatches found restored
  • small code style fixes
  • changelog template fixed to show breaking changes refactorings in separate section

Code Refactoring

  • some ast structures renamed
  • projects visitor simplified
  • is_close_element funtion greatly improved
  • identifier method of lexer small changes to improve readability + useful comments
  • one more Lexer identifier method refactoring - moving all code inside recognition loop
  • duplicated code in lexer (identifier function) replaced by closure
  • solution grammar simplified - redundant root production removed and Solution production replaced by it's content

0.13.0

10 Sep 11:03
Compare
Choose a tag to compare

v0.13.0 (2023-09-10)

Code Refactoring

  • "for ... in ..." replaced by fold iterator adapter
  • large visit method separated to several traits that implements Visitor pattern
  • analyze function renamed to visit because it's more common term
  • ast module made private to crate solp all needed public code moved to new api module and AST not is implementation details that not visible outside crate
  • more ideomatic for usage in validation printing code
  • AST getters implementation more ideomatic
  • parameters renamed to match new AST node enum name

0.12.1

04 Sep 16:58
Compare
Choose a tag to compare

v0.12.1 (2023-09-04)

Features

  • Optional benchmarking if scanning directory. fixes #4

0.12.0

31 Aug 18:01
Compare
Choose a tag to compare

v0.12.0 (2023-08-31)

Features (BREAKING CHANGE)

  • Option to scan only directory specified without scanning all directory tree. This behavior made by default so if you specify dir to scan only this directory will be scanned. If you need to scan whole directory tree option -r or --recursively can be used. fixes #3

Performance Improvements

  • small potential memory improvement when output nuget packages info (by using unstable sorting)

0.11.1

25 Aug 15:59
Compare
Choose a tag to compare

v0.11.1 (2023-08-25)

Bug Fixes

  • add missing space to unify padding when output error about missing configutaion|platform option
  • restore spacing margin of no problems text while validating projects

Code Refactoring

  • UX related - spaces moved to tempate from text

Improvements

  • coloring only text without spaces which moved to template if they are necessary

0.11.0

20 Aug 17:11
Compare
Choose a tag to compare

v0.11.0 (2023-08-20)

Bug Fixes

  • UX problem fixed - extra line added after invalid solution detected while validating path

Code Refactoring

  • Printing one column tables functions made more universal and can accept any iterator with Item that implements ToString trait
  • useless format! usage eliminated
  • more elegant way to merge nuget packages from projects and packages.config files into single collection
  • build_cli() function separated into several ones
  • nugets duspaying code simplified
  • code slightly simplified by using table.add_rows

Features

  • migration from prettytable-rs to comfy-table

Improvements

  • dont set explicit terminal width. It calculated automatically
  • dont wrap long solution path in info command
  • validation UX improved
  • info command UX improved

0.10.1

30 Jul 14:55
Compare
Choose a tag to compare

v0.10.1 (2023-07-30)

Bug Fixes

  • small UX problem - insert space before elapsed word