legionio 1.4.115 → 1.4.116

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: abcb24b9f1dbcec868c68b5b66d203405896b38487f4197f352f2ad69e96b2b4
4
- data.tar.gz: 9a684aa568b3d19fcc9e19c186a4d2a9efdc7d5001776cceae9d33d9aa0cc7dd
3
+ metadata.gz: 6979926154eb319a990087443af9becaa5831d4eb0ab5525f1b044287e2c279f
4
+ data.tar.gz: '0129c7452e19e2f9c63f996ea254b44764a6caebfccb84f50ad0c8d058b910bb'
5
5
  SHA512:
6
- metadata.gz: 41610c2dec55f16656d15356ffc29c7d0f76020623e662fa47dbd54ed67038962a02b1f4dfadfa9a3057d6fd3d124a24dc476f95ae14e3f5cb7510f71283fcbc
7
- data.tar.gz: 2cfbdefeb8d689545a5fb62b47255dcae967cc83087feaf950bc0169aedce32b5c89c24e7f9dc951d74c43b2ac45cd49e0100740dffd786d447dc2c11f71a94d
6
+ metadata.gz: c1d1b49e93559deda93761855fa70fb72fe76673af87cf7c5fa4819a326d57318a2cc43c7c1f8bf9d0311487e3bbe1ee9d2154f52f14254630f4db8d7302f23f
7
+ data.tar.gz: fec26b4465b3806815ca5ddc62a476a54c4e88ce94654a18983aadab6940fcca9197ee8545b85038960d9688a9ba64d810499eef09374d0723081e523048766c
data/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # Legion Changelog
2
2
 
3
+ ## [1.4.116] - 2026-03-22
4
+
5
+ ### Added
6
+ - `legion detect scan --format sarif|markdown|json` option for CI-friendly output formats
7
+
8
+ ## [1.4.115] - 2026-03-22
9
+
10
+ ### Changed
11
+ - Extension parallel pool size now reads from `Legion::Settings[:extensions][:parallel_pool_size]` (default: 24) instead of hardcoded 4
12
+ - Significantly faster boot with many extensions: all load concurrently instead of in batches of 4
13
+
3
14
  ## [1.4.114] - 2026-03-22
4
15
 
5
16
  ### Changed
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'json'
3
4
  require 'thor'
4
5
  require 'legion/cli/output'
5
6
 
@@ -20,13 +21,17 @@ module Legion
20
21
  desc 'scan', 'Scan environment and recommend extensions (default)'
21
22
  option :install, type: :boolean, default: false, desc: 'Install missing extensions after scan'
22
23
  option :dry_run, type: :boolean, default: false, desc: 'Show what would be installed without installing'
24
+ option :format, type: :string, enum: %w[sarif markdown json], desc: 'Output format (sarif, markdown, json)'
23
25
  def scan
24
26
  out = formatter
25
27
  require_detect_gem
26
28
 
27
29
  results = Legion::Extensions::Detect.scan
28
30
 
29
- if options[:json]
31
+ if options[:format]
32
+ output = Legion::Extensions::Detect.format_results(format: options[:format], detections: results)
33
+ puts output.is_a?(String) ? output : ::JSON.pretty_generate(output)
34
+ elsif options[:json]
30
35
  out.json(detections: results)
31
36
  else
32
37
  display_detections(out, results)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Legion
4
- VERSION = '1.4.115'
4
+ VERSION = '1.4.116'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: legionio
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.115
4
+ version: 1.4.116
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esity