Skip to content

Releases: corgibytes/freshli-cli

v0.6.5

25 Sep 13:49
Compare
Choose a tag to compare

Another attempt at building a working ARM Docker image:

  • Writes platform information that was used during the build to /app/.buildinfo so that it can be inspected to make sure that the correct architecture was used when building the DotNet executables.
  • Also takes the opportunity to upgrade Maven to version 3.9.4. Some of the packages that ship with Maven were getting flag as security vulnerabilities by Docker Scout.

v0.6.4

25 Sep 12:32
Compare
Choose a tag to compare

Another attempt at building a valid ARM Docker image.

v0.6.3

25 Sep 01:56
Compare
Choose a tag to compare

Corrects an issue with cross-platform Docker builds

v0.6.2

25 Sep 00:53
Compare
Choose a tag to compare

Another attempt at fixing an issue with builds of production Docker container images

v0.6.1

24 Sep 15:14
Compare
Choose a tag to compare

Fixes an issue with Docker container production builds

v0.6.0

24 Sep 03:34
8a50fb9
Compare
Choose a tag to compare

Summary

  • Adds support for working with freshli-agent-dotnet
  • Adds progress bar to analyze command
  • analyze command can be halted with ctrl-c
  • Removes Hangfire as a dependency; replaced with custom task queue and worker
  • Numerous performance improvements
  • Numerous bug fixes

What's Changed

  • Adds contributors file by @mscottford in #613
  • build(deps): bump gitreleasemanager.tool from 0.13.0 to 0.14.0 by @dependabot in #629
  • build(deps): bump rubocop from 1.56.0 to 1.56.1 by @dependabot in #628
  • build(deps): bump Google.Protobuf from 3.24.0 to 3.24.1 by @dependabot in #614
  • build(deps): bump Microsoft.NET.Test.Sdk from 17.7.0 to 17.7.1 by @dependabot in #603
  • Prevents handling OperationCancelledExceptions as unhandled by @mscottford in #597
  • Bump Microsoft.CodeAnalysis.* from 4.6.0 to 4.7.0 by @mscottford in #631
  • Bump gitreleasemanager.tool from 0.13.0 to 0.14.0 by @mscottford in #630
  • Bump gitreleasemanager.tool from 0.14.0 to 0.15.0 by @dependabot in #633
  • build(deps): bump FluentAssertions from 6.11.0 to 6.12.0 by @dependabot in #632
  • Uses health service to determine if language agent is up and running by @mscottford in #634
  • Bump jetbrains.resharper.globaltools from 2023.2.0 to 2023.2.1 by @dependabot in #635
  • Grpc.* Dependency Upgrades by @mscottford in #641
  • build(deps): bump Google.Protobuf from 3.24.1 to 3.24.2 by @dependabot in #639
  • build(deps): bump Grpc.Core.Api from 2.55.0 to 2.56.0 by @dependabot in #640
  • build(deps): bump YamlDotNet from 13.2.0 to 13.3.1 by @dependabot in #642
  • build(deps): bump sqlite3 from 1.6.3 to 1.6.4 by @dependabot in #636
  • build(deps): bump Microsoft.NET.Test.Sdk from 17.7.1 to 17.7.2 by @dependabot in #655
  • build(deps): bump Microsoft.Build.Locator from 1.5.5 to 1.5.6 by @dependabot in #654
  • build(deps): bump rubocop from 1.56.1 to 1.56.2 by @dependabot in #653
  • build(deps): bump Microsoft.Build.Locator from 1.5.6 to 1.6.1 by @dependabot in #656
  • build(deps): bump aruba from 2.1.0 to 2.2.0 by @dependabot in #657
  • build(deps): bump NLog from 5.2.3 to 5.2.4 by @dependabot in #665
  • build(deps): bump Google.Protobuf from 3.24.2 to 3.24.3 by @dependabot in #668
  • build(deps): bump Grpc.Core.Api from 2.56.0 to 2.57.0 by @dependabot in #663
  • build(deps): bump CycloneDX.Core from 5.4.0 to 6.0.0 by @dependabot in #658
  • build(deps): bump rubocop from 1.56.2 to 1.56.3 by @dependabot in #671
  • build(deps): bump Grpc.Tools from 2.57.0 to 2.58.0 by @dependabot in #670
  • build(deps): bump sqlite3 from 1.6.4 to 1.6.5 by @dependabot in #669
  • build(deps): bump NLog.Extensions.Logging from 5.3.3 to 5.3.4 by @dependabot in #666
  • build(deps): bump Grpc.Net.Client from 2.56.0 to 2.57.0 by @dependabot in #664
  • build(deps): bump actions/checkout from 3 to 4 by @dependabot in #659
  • build(deps): bump sqlite3 from 1.6.5 to 1.6.6 by @dependabot in #679
  • build(deps): bump docker/build-push-action from 4 to 5 by @dependabot in #678
  • build(deps): bump docker/setup-qemu-action from 2 to 3 by @dependabot in #677
  • build(deps): bump docker/login-action from 2 to 3 by @dependabot in #676
  • build(deps): bump docker/setup-buildx-action from 2 to 3 by @dependabot in #675
  • build(deps): bump Microsoft.EntityFrameworkCore.Sqlite from 7.0.10 to 7.0.11 by @dependabot in #674
  • Bump dotnet-ef from 7.0.10 to 7.0.11 by @dependabot in #673
  • build(deps): bump Grpc.Net.ClientFactory from 2.56.0 to 2.57.0 by @dependabot in #667
  • build(deps): bump NLog.Extensions.Hosting from 5.3.3 to 5.3.4 by @dependabot in #662
  • build(deps): bump Microsoft.EntityFrameworkCore.Design from 7.0.10 to 7.0.11 by @dependabot in #672
  • build(deps): bump contributor-assistant/github-action from 2.3.0 to 2.3.1 by @dependabot in #682
  • build(deps): bump xunit.runner.visualstudio from 2.5.0 to 2.5.1 by @dependabot in #680
  • build(deps): bump xunit from 2.5.0 to 2.5.1 by @dependabot in #681
  • Switches to Corgibytes fork of Spectre.Console by @mscottford in #684
  • build(deps): bump Corgibytes.Fork.Spectre.Console from 0.47.1-preview.0.23 to 0.47.1-preview.0.29 by @dependabot in #686
  • Addresses issues discovered while integrating DotNet agent by @mscottford in #689
  • build(deps): bump YamlDotNet from 13.3.1 to 13.4.0 by @dependabot in #688
  • build(deps): bump Microsoft.Build.Locator from 1.6.1 to 1.6.10 by @dependabot in #687
  • DotNet in docker container by @mscottford in #691

Full Changelog: v0.5.3...v0.6.0

v0.5.3

02 Nov 14:41
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.5.2...v0.5.3

v0.5.2

01 Nov 19:44
Compare
Choose a tag to compare

Addresses an issue caused by multiple copies of mvn running plugins for the first time while the local maven repository directory was empty. This has been solved by ensuring that the local maven repository directory is prepopulated with the dependencies of the plugins that are run by freshli-agent-java.

What's Changed

Full Changelog: v0.5.1...v0.5.2

v0.5.1

01 Nov 16:50
Compare
Choose a tag to compare

Fixes issue with mvn not being installed in the production container image.

What's Changed

Full Changelog: v0.5.0...v0.5.1

v0.5.0

31 Oct 19:46
Compare
Choose a tag to compare

As part of this release we had 86 issues closed.

  • Packaged as a Docker container instead of as a dotnet tool
  • Adds the analyze command
    • Implements a new processing pipeline
    • Relies on "language agent" executables for language-specific operations and
    • Uses language-agent-generated CycloneDX file as a data-source computing LibYear.
  • Adds the cache prepare command
    • Prepares the cache that's used by the analyze command. This is performed implicitly when analyze is run and the cache does not already exist.
  • Adds the cache destroy command
    • This command can be used to remove the cache
  • Adds the agents detect command
    • This command is used to list all of the language agents that are available to the freshli executable. This operation is run implicitly when analyze is run.
  • Adds the agents verify command
    • This command is used to verify that each language agent (or a specific language agent) behaves in a way that is compatible with the freshli command.

Note: the scan command is now deprecated. It will be removed in the next release.

Bugs

  • #123 CurrentCulture is explicitly set to InvariantCulture but where?
  • #133 Calling freshli git clone .. twice in a row, results in a git error
  • #175 Exceptions thrown by IApplicationActivity.Handle and IApplicationEvent.Handle need to be more visible
  • #184 Make date time output format consistent with other Freshli projects
  • #213 Compute history should be able to work with custom intervals like 2weeks or 3months
  • #268 Change DateTimeOffset format string to 'o'
  • #281 Generate error event if no agents are found
  • #308 Analyzing repository with an interval bigger than it's age will fail
  • #322 Use "as of" date when computing package LibYear value
  • #342 git is missing from production Docker container image
  • #343 Fix url for viewing results
  • #344 PrepareCacheActivity is ignoring the result of calling CacheManager.Prepare
  • #345 The PrepareCacheActivity should not save a CachedAnalysis object to the database
  • #346 Handle "database is locked" error when writing to cache database
  • #347 Handle child modules in multi-module project
  • #361 Prevent process-manifests from being called in parallel for the same directory

DevOps

  • #33 Warning when adding assets to GitHub release in CI
  • #41 Fixes #33, removes warning for GitReleaseManager on Add Asset
  • #47 Workflows are referencing vulnerable actions
  • #66 Configure Dependabot for auto upgrading dependencies
  • #72 Upgrade GitVersion and GitReleaseManager to latest versions
  • #74 Address warning messages during publish step
  • #83 Add support for *.rb to the .editorconfig file
  • #124 MainCommand.cs keeps being edited by the formatter
  • #227 Fix failing CI on main branch
  • #316 Build production image and push to Docker Hub
  • #317 Ensure Freshli Web API is deployed
  • #359 Get CI passing on the main branch

Documentation

  • #82 Document project style guidelines for C#
  • #226 Clean up README file and NuGet
  • #271 Auto-generate diagram for activities and events

Enhancements

  • #25 Add Scan and Help commands
  • #45 Specify level of debug information
  • #49 Add cache prepare command
  • #50 Add cache destroy command
  • #51 Add git clone command
  • #52 Add git compute-history command
  • #53 Add git checkout-histories command
  • #54 Add git checkout-history command
  • #56 Add analyze command
  • #57 Add bom generate-histories command
  • #58 Add bom generate-history command
  • #59 Add bom detect-all-manifests command
  • #60 Add bom process-all-manifests command
  • #61 Add agents detect command
  • #62 Add agents verify command
  • #65 Change executable name to freshli
  • #87 Add version command
  • #97 Add compute libyear command
  • #137 Add a Message Bus
  • #146 Prepare Cache
  • #147 Start analysis
  • #148 Clone git repository
  • #149 Compute history
  • #150 Checkout history
  • #151 Detect Manifests
  • #152 Generate bill of materials
  • #153 Compute libyear
  • #163 Cache Destroy
  • #174 Use cache prepare activities and events to prepare cache from CacheWasNotPreparedEvent handler
  • #192 Create Docker image that includes freshli-cli and freshli-agent-java for running freshli analyze
  • #205 Let GitRepositoryClonedEvent.Handle pass ComputeHistoryActivity to the activity engine
  • #208 Let HistoryIntervalStopFoundEvent.Handle pass CheckoutHistoryActivity to the activity engine
  • #215 Let AnalysisStartedEvent.Handle pass CloneGitRepositoryActivity to the activity engine
  • #232 Adjust number of workers that should be running
  • #234 Add option to analyze command so that it does not collect historical metrics
  • #235 Send analyze results to Freshli-Web API
  • #237 Let HistoryStopCheckedOutEvent.Handle pass DetectAgentsForDetectManifestsActivity to the Activity Engine
  • #238 ManifestDetectedEvent dispatch GenerateBillOfMaterialsActivity
  • #239 BillOfMaterialsGeneratedEvent dispatch ComputeLibYearActivity
  • #240 Flesh out acceptance tests
  • #242 AnalyzeRunner able to return a non-zero exit code in case something went wrong
  • #287 Analyze a codebase that already has been checked out
  • #315 Add acceptance test for QuestDB repository
  • #323 Spawn an activity for computing the LibYear of each package
  • [#324](https://github.com/corgibytes/freshli-cli/i...
Read more