@featurevisor/core 1.1.1 → 1.2.0

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.
Files changed (36) hide show
  1. package/.eslintcache +1 -1
  2. package/CHANGELOG.md +11 -0
  3. package/coverage/clover.xml +161 -5
  4. package/coverage/coverage-final.json +2 -0
  5. package/coverage/lcov-report/index.html +32 -32
  6. package/coverage/lcov-report/lib/builder/allocator.js.html +1 -1
  7. package/coverage/lcov-report/lib/builder/index.html +1 -1
  8. package/coverage/lcov-report/lib/builder/traffic.js.html +1 -1
  9. package/coverage/lcov-report/lib/tester/checkIfObjectsAreEqual.js.html +1 -1
  10. package/coverage/lcov-report/lib/tester/index.html +25 -10
  11. package/coverage/lcov-report/lib/tester/matrix.js.html +487 -0
  12. package/coverage/lcov-report/src/builder/allocator.ts.html +1 -1
  13. package/coverage/lcov-report/src/builder/index.html +1 -1
  14. package/coverage/lcov-report/src/builder/traffic.ts.html +1 -1
  15. package/coverage/lcov-report/src/tester/checkIfObjectsAreEqual.ts.html +1 -1
  16. package/coverage/lcov-report/src/tester/index.html +25 -10
  17. package/coverage/lcov-report/src/tester/matrix.ts.html +640 -0
  18. package/coverage/lcov.info +276 -0
  19. package/lib/linter/testSchema.js +19 -4
  20. package/lib/linter/testSchema.js.map +1 -1
  21. package/lib/tester/matrix.d.ts +13 -0
  22. package/lib/tester/matrix.js +135 -0
  23. package/lib/tester/matrix.js.map +1 -0
  24. package/lib/tester/matrix.spec.d.ts +1 -0
  25. package/lib/tester/matrix.spec.js +42 -0
  26. package/lib/tester/matrix.spec.js.map +1 -0
  27. package/lib/tester/testFeature.js +26 -16
  28. package/lib/tester/testFeature.js.map +1 -1
  29. package/lib/tester/testSegment.js +14 -11
  30. package/lib/tester/testSegment.js.map +1 -1
  31. package/package.json +5 -5
  32. package/src/linter/testSchema.ts +21 -2
  33. package/src/tester/matrix.spec.ts +49 -0
  34. package/src/tester/matrix.ts +185 -0
  35. package/src/tester/testFeature.ts +121 -114
  36. package/src/tester/testSegment.ts +17 -11
package/.eslintcache CHANGED
@@ -1 +1 @@
1
- [{"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/allocator.spec.ts":"1","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/allocator.ts":"2","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/buildDatafile.ts":"3","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/buildProject.ts":"4","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/getFeatureRanges.ts":"5","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/index.ts":"6","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/traffic.spec.ts":"7","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/traffic.ts":"8","/home/runner/work/featurevisor/featurevisor/packages/core/src/config/index.ts":"9","/home/runner/work/featurevisor/featurevisor/packages/core/src/config/parsers.ts":"10","/home/runner/work/featurevisor/featurevisor/packages/core/src/config/projectConfig.ts":"11","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/adapter.ts":"12","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/datasource.ts":"13","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/filesystemAdapter.ts":"14","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/index.ts":"15","/home/runner/work/featurevisor/featurevisor/packages/core/src/dependencies.ts":"16","/home/runner/work/featurevisor/featurevisor/packages/core/src/find-duplicate-segments/findDuplicateSegments.ts":"17","/home/runner/work/featurevisor/featurevisor/packages/core/src/find-duplicate-segments/index.ts":"18","/home/runner/work/featurevisor/featurevisor/packages/core/src/generate-code/index.ts":"19","/home/runner/work/featurevisor/featurevisor/packages/core/src/generate-code/typescript.ts":"20","/home/runner/work/featurevisor/featurevisor/packages/core/src/index.ts":"21","/home/runner/work/featurevisor/featurevisor/packages/core/src/init/index.ts":"22","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/attributeSchema.ts":"23","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/checkCircularDependency.ts":"24","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/conditionSchema.ts":"25","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/featureSchema.ts":"26","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/groupSchema.ts":"27","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/index.ts":"28","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/lintProject.ts":"29","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/printJoiError.ts":"30","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/segmentSchema.ts":"31","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/testSchema.ts":"32","/home/runner/work/featurevisor/featurevisor/packages/core/src/restore/index.ts":"33","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/exportSite.ts":"34","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/generateHistory.ts":"35","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/generateSiteSearchIndex.ts":"36","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getLastModifiedFromHistory.ts":"37","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getOwnerAndRepoFromUrl.ts":"38","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getRelativePaths.ts":"39","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getRepoDetails.ts":"40","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/index.ts":"41","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/serveSite.ts":"42","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfArraysAreEqual.ts":"43","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfObjectsAreEqual.spec.ts":"44","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfObjectsAreEqual.ts":"45","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/cliFormat.ts":"46","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/index.ts":"47","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testFeature.ts":"48","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testProject.ts":"49","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testSegment.ts":"50","/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/extractKeys.ts":"51","/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/git.ts":"52","/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/index.ts":"53"},{"size":3214,"mtime":1705000668093,"results":"54","hashOfConfig":"55"},{"size":1014,"mtime":1705000668093,"results":"56","hashOfConfig":"55"},{"size":8883,"mtime":1705000668093,"results":"57","hashOfConfig":"55"},{"size":1359,"mtime":1705000668093,"results":"58","hashOfConfig":"55"},{"size":1755,"mtime":1705000668093,"results":"59","hashOfConfig":"55"},{"size":65,"mtime":1705000668093,"results":"60","hashOfConfig":"55"},{"size":12889,"mtime":1705000668093,"results":"61","hashOfConfig":"55"},{"size":5052,"mtime":1705000668093,"results":"62","hashOfConfig":"55"},{"size":60,"mtime":1705000668093,"results":"63","hashOfConfig":"55"},{"size":1035,"mtime":1705000668093,"results":"64","hashOfConfig":"55"},{"size":3464,"mtime":1705000668093,"results":"65","hashOfConfig":"55"},{"size":1305,"mtime":1705000668093,"results":"66","hashOfConfig":"55"},{"size":5028,"mtime":1705000668093,"results":"67","hashOfConfig":"55"},{"size":9261,"mtime":1705000668093,"results":"68","hashOfConfig":"55"},{"size":94,"mtime":1705000668093,"results":"69","hashOfConfig":"55"},{"size":279,"mtime":1705000668093,"results":"70","hashOfConfig":"55"},{"size":1033,"mtime":1705000668093,"results":"71","hashOfConfig":"55"},{"size":540,"mtime":1705000668093,"results":"72","hashOfConfig":"55"},{"size":1476,"mtime":1705000668097,"results":"73","hashOfConfig":"55"},{"size":6250,"mtime":1705000668097,"results":"74","hashOfConfig":"55"},{"size":318,"mtime":1705000668097,"results":"75","hashOfConfig":"55"},{"size":1308,"mtime":1705000668097,"results":"76","hashOfConfig":"55"},{"size":351,"mtime":1705000668097,"results":"77","hashOfConfig":"55"},{"size":1119,"mtime":1705000668097,"results":"78","hashOfConfig":"55"},{"size":3003,"mtime":1705000668097,"results":"79","hashOfConfig":"55"},{"size":5833,"mtime":1705000668097,"results":"80","hashOfConfig":"55"},{"size":2114,"mtime":1705000668097,"results":"81","hashOfConfig":"55"},{"size":31,"mtime":1705000668097,"results":"82","hashOfConfig":"55"},{"size":4524,"mtime":1705000668097,"results":"83","hashOfConfig":"55"},{"size":323,"mtime":1705000668097,"results":"84","hashOfConfig":"55"},{"size":368,"mtime":1705000668097,"results":"85","hashOfConfig":"55"},{"size":1267,"mtime":1705000668097,"results":"86","hashOfConfig":"55"},{"size":641,"mtime":1705000668097,"results":"87","hashOfConfig":"55"},{"size":1481,"mtime":1705000668097,"results":"88","hashOfConfig":"55"},{"size":1178,"mtime":1705000668097,"results":"89","hashOfConfig":"55"},{"size":6187,"mtime":1705000668097,"results":"90","hashOfConfig":"55"},{"size":516,"mtime":1705000668097,"results":"91","hashOfConfig":"55"},{"size":496,"mtime":1705000668097,"results":"92","hashOfConfig":"55"},{"size":607,"mtime":1705000668097,"results":"93","hashOfConfig":"55"},{"size":1560,"mtime":1705000668097,"results":"94","hashOfConfig":"55"},{"size":59,"mtime":1705000668097,"results":"95","hashOfConfig":"55"},{"size":1681,"mtime":1705000668097,"results":"96","hashOfConfig":"55"},{"size":298,"mtime":1705000668097,"results":"97","hashOfConfig":"55"},{"size":932,"mtime":1705000668097,"results":"98","hashOfConfig":"55"},{"size":468,"mtime":1705000668097,"results":"99","hashOfConfig":"55"},{"size":156,"mtime":1705000668097,"results":"100","hashOfConfig":"55"},{"size":31,"mtime":1705000668097,"results":"101","hashOfConfig":"55"},{"size":5582,"mtime":1705000668097,"results":"102","hashOfConfig":"55"},{"size":2654,"mtime":1705000668097,"results":"103","hashOfConfig":"55"},{"size":1441,"mtime":1705000668097,"results":"104","hashOfConfig":"55"},{"size":1993,"mtime":1705000668097,"results":"105","hashOfConfig":"55"},{"size":3641,"mtime":1705000668097,"results":"106","hashOfConfig":"55"},{"size":54,"mtime":1705000668097,"results":"107","hashOfConfig":"55"},{"filePath":"108","messages":"109","suppressedMessages":"110","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"o8ti19",{"filePath":"111","messages":"112","suppressedMessages":"113","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"114","messages":"115","suppressedMessages":"116","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"117","messages":"118","suppressedMessages":"119","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"120","messages":"121","suppressedMessages":"122","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"123","messages":"124","suppressedMessages":"125","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"126","messages":"127","suppressedMessages":"128","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"129","messages":"130","suppressedMessages":"131","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"132","messages":"133","suppressedMessages":"134","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"135","messages":"136","suppressedMessages":"137","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"138","messages":"139","suppressedMessages":"140","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"141","messages":"142","suppressedMessages":"143","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"144","messages":"145","suppressedMessages":"146","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"147","messages":"148","suppressedMessages":"149","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"150","messages":"151","suppressedMessages":"152","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"153","messages":"154","suppressedMessages":"155","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"156","messages":"157","suppressedMessages":"158","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"159","messages":"160","suppressedMessages":"161","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"162","messages":"163","suppressedMessages":"164","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"165","messages":"166","suppressedMessages":"167","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"168","messages":"169","suppressedMessages":"170","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"171","messages":"172","suppressedMessages":"173","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"174","messages":"175","suppressedMessages":"176","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"177","messages":"178","suppressedMessages":"179","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"180","messages":"181","suppressedMessages":"182","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"183","messages":"184","suppressedMessages":"185","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"186","messages":"187","suppressedMessages":"188","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"189","messages":"190","suppressedMessages":"191","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"192","messages":"193","suppressedMessages":"194","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"195","messages":"196","suppressedMessages":"197","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"198","messages":"199","suppressedMessages":"200","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"201","messages":"202","suppressedMessages":"203","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"204","messages":"205","suppressedMessages":"206","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"207","messages":"208","suppressedMessages":"209","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"210","messages":"211","suppressedMessages":"212","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"213","messages":"214","suppressedMessages":"215","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"216","messages":"217","suppressedMessages":"218","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"219","messages":"220","suppressedMessages":"221","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"222","messages":"223","suppressedMessages":"224","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"225","messages":"226","suppressedMessages":"227","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"228","messages":"229","suppressedMessages":"230","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"231","messages":"232","suppressedMessages":"233","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"234","messages":"235","suppressedMessages":"236","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"237","messages":"238","suppressedMessages":"239","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"240","messages":"241","suppressedMessages":"242","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"243","messages":"244","suppressedMessages":"245","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"246","messages":"247","suppressedMessages":"248","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"249","messages":"250","suppressedMessages":"251","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"252","messages":"253","suppressedMessages":"254","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"255","messages":"256","suppressedMessages":"257","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"258","messages":"259","suppressedMessages":"260","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"261","messages":"262","suppressedMessages":"263","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"264","messages":"265","suppressedMessages":"266","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/allocator.spec.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/allocator.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/buildDatafile.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/buildProject.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/getFeatureRanges.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/traffic.spec.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/traffic.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/config/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/config/parsers.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/config/projectConfig.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/adapter.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/datasource.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/filesystemAdapter.ts",[],["267","268"],"/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/dependencies.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/find-duplicate-segments/findDuplicateSegments.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/find-duplicate-segments/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/generate-code/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/generate-code/typescript.ts",[],["269"],"/home/runner/work/featurevisor/featurevisor/packages/core/src/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/init/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/attributeSchema.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/checkCircularDependency.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/conditionSchema.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/featureSchema.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/groupSchema.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/lintProject.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/printJoiError.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/segmentSchema.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/testSchema.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/restore/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/exportSite.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/generateHistory.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/generateSiteSearchIndex.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getLastModifiedFromHistory.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getOwnerAndRepoFromUrl.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getRelativePaths.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getRepoDetails.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/serveSite.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfArraysAreEqual.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfObjectsAreEqual.spec.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfObjectsAreEqual.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/cliFormat.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testFeature.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testProject.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testSegment.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/extractKeys.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/git.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/index.ts",[],[],{"ruleId":"270","severity":2,"message":"271","line":22,"column":7,"nodeType":"272","messageId":"273","endLine":22,"endColumn":18,"suppressions":"274"},{"ruleId":"275","severity":2,"message":"276","line":22,"column":21,"nodeType":"277","messageId":"278","endLine":22,"endColumn":81,"fix":"279","suppressions":"280"},{"ruleId":"270","severity":2,"message":"281","line":51,"column":10,"nodeType":"272","messageId":"273","endLine":51,"endColumn":38,"suppressions":"282"},"@typescript-eslint/no-unused-vars","'commitRegex' is assigned a value but never used.","Identifier","unusedVar",["283"],"no-regex-spaces","Spaces are hard to count. Use {3}.","Literal","multipleSpaces",{"range":"284","text":"285"},["286"],"'getFeaturevisorTypeFromValue' is defined but never used.",["287"],{"kind":"288","justification":"289"},[515,518]," {3}",{"kind":"288","justification":"289"},{"kind":"288","justification":"289"},"directive",""]
1
+ [{"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/allocator.spec.ts":"1","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/allocator.ts":"2","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/buildDatafile.ts":"3","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/buildProject.ts":"4","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/getFeatureRanges.ts":"5","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/index.ts":"6","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/traffic.spec.ts":"7","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/traffic.ts":"8","/home/runner/work/featurevisor/featurevisor/packages/core/src/config/index.ts":"9","/home/runner/work/featurevisor/featurevisor/packages/core/src/config/parsers.ts":"10","/home/runner/work/featurevisor/featurevisor/packages/core/src/config/projectConfig.ts":"11","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/adapter.ts":"12","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/datasource.ts":"13","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/filesystemAdapter.ts":"14","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/index.ts":"15","/home/runner/work/featurevisor/featurevisor/packages/core/src/dependencies.ts":"16","/home/runner/work/featurevisor/featurevisor/packages/core/src/find-duplicate-segments/findDuplicateSegments.ts":"17","/home/runner/work/featurevisor/featurevisor/packages/core/src/find-duplicate-segments/index.ts":"18","/home/runner/work/featurevisor/featurevisor/packages/core/src/generate-code/index.ts":"19","/home/runner/work/featurevisor/featurevisor/packages/core/src/generate-code/typescript.ts":"20","/home/runner/work/featurevisor/featurevisor/packages/core/src/index.ts":"21","/home/runner/work/featurevisor/featurevisor/packages/core/src/init/index.ts":"22","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/attributeSchema.ts":"23","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/checkCircularDependency.ts":"24","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/conditionSchema.ts":"25","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/featureSchema.ts":"26","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/groupSchema.ts":"27","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/index.ts":"28","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/lintProject.ts":"29","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/printJoiError.ts":"30","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/segmentSchema.ts":"31","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/testSchema.ts":"32","/home/runner/work/featurevisor/featurevisor/packages/core/src/restore/index.ts":"33","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/exportSite.ts":"34","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/generateHistory.ts":"35","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/generateSiteSearchIndex.ts":"36","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getLastModifiedFromHistory.ts":"37","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getOwnerAndRepoFromUrl.ts":"38","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getRelativePaths.ts":"39","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getRepoDetails.ts":"40","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/index.ts":"41","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/serveSite.ts":"42","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfArraysAreEqual.ts":"43","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfObjectsAreEqual.spec.ts":"44","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfObjectsAreEqual.ts":"45","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/cliFormat.ts":"46","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/index.ts":"47","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/matrix.spec.ts":"48","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/matrix.ts":"49","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testFeature.ts":"50","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testProject.ts":"51","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testSegment.ts":"52","/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/extractKeys.ts":"53","/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/git.ts":"54","/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/index.ts":"55"},{"size":3214,"mtime":1705426709019,"results":"56","hashOfConfig":"57"},{"size":1014,"mtime":1705426709019,"results":"58","hashOfConfig":"57"},{"size":8883,"mtime":1705426709019,"results":"59","hashOfConfig":"57"},{"size":1359,"mtime":1705426709019,"results":"60","hashOfConfig":"57"},{"size":1755,"mtime":1705426709019,"results":"61","hashOfConfig":"57"},{"size":65,"mtime":1705426709019,"results":"62","hashOfConfig":"57"},{"size":12889,"mtime":1705426709019,"results":"63","hashOfConfig":"57"},{"size":5052,"mtime":1705426709019,"results":"64","hashOfConfig":"57"},{"size":60,"mtime":1705426709019,"results":"65","hashOfConfig":"57"},{"size":1035,"mtime":1705426709019,"results":"66","hashOfConfig":"57"},{"size":3464,"mtime":1705426709019,"results":"67","hashOfConfig":"57"},{"size":1305,"mtime":1705426709019,"results":"68","hashOfConfig":"57"},{"size":5028,"mtime":1705426709019,"results":"69","hashOfConfig":"57"},{"size":9261,"mtime":1705426709019,"results":"70","hashOfConfig":"57"},{"size":94,"mtime":1705426709019,"results":"71","hashOfConfig":"57"},{"size":279,"mtime":1705426709019,"results":"72","hashOfConfig":"57"},{"size":1033,"mtime":1705426709019,"results":"73","hashOfConfig":"57"},{"size":540,"mtime":1705426709019,"results":"74","hashOfConfig":"57"},{"size":1476,"mtime":1705426709019,"results":"75","hashOfConfig":"57"},{"size":6250,"mtime":1705426709019,"results":"76","hashOfConfig":"57"},{"size":318,"mtime":1705426709019,"results":"77","hashOfConfig":"57"},{"size":1308,"mtime":1705426709019,"results":"78","hashOfConfig":"57"},{"size":351,"mtime":1705426709019,"results":"79","hashOfConfig":"57"},{"size":1119,"mtime":1705426709019,"results":"80","hashOfConfig":"57"},{"size":3003,"mtime":1705426709019,"results":"81","hashOfConfig":"57"},{"size":5833,"mtime":1705426709019,"results":"82","hashOfConfig":"57"},{"size":2114,"mtime":1705426709019,"results":"83","hashOfConfig":"57"},{"size":31,"mtime":1705426709019,"results":"84","hashOfConfig":"57"},{"size":4524,"mtime":1705426709019,"results":"85","hashOfConfig":"57"},{"size":323,"mtime":1705426709023,"results":"86","hashOfConfig":"57"},{"size":368,"mtime":1705426709023,"results":"87","hashOfConfig":"57"},{"size":1890,"mtime":1705426709023,"results":"88","hashOfConfig":"57"},{"size":641,"mtime":1705426709023,"results":"89","hashOfConfig":"57"},{"size":1481,"mtime":1705426709023,"results":"90","hashOfConfig":"57"},{"size":1178,"mtime":1705426709023,"results":"91","hashOfConfig":"57"},{"size":6187,"mtime":1705426709023,"results":"92","hashOfConfig":"57"},{"size":516,"mtime":1705426709023,"results":"93","hashOfConfig":"57"},{"size":496,"mtime":1705426709023,"results":"94","hashOfConfig":"57"},{"size":607,"mtime":1705426709023,"results":"95","hashOfConfig":"57"},{"size":1560,"mtime":1705426709023,"results":"96","hashOfConfig":"57"},{"size":59,"mtime":1705426709023,"results":"97","hashOfConfig":"57"},{"size":1681,"mtime":1705426709023,"results":"98","hashOfConfig":"57"},{"size":298,"mtime":1705426709023,"results":"99","hashOfConfig":"57"},{"size":932,"mtime":1705426709023,"results":"100","hashOfConfig":"57"},{"size":468,"mtime":1705426709023,"results":"101","hashOfConfig":"57"},{"size":156,"mtime":1705426709023,"results":"102","hashOfConfig":"57"},{"size":31,"mtime":1705426709023,"results":"103","hashOfConfig":"57"},{"size":1188,"mtime":1705426709023,"results":"104","hashOfConfig":"57"},{"size":5029,"mtime":1705426709023,"results":"105","hashOfConfig":"57"},{"size":5979,"mtime":1705426709023,"results":"106","hashOfConfig":"57"},{"size":2654,"mtime":1705426709023,"results":"107","hashOfConfig":"57"},{"size":1599,"mtime":1705426709023,"results":"108","hashOfConfig":"57"},{"size":1993,"mtime":1705426709023,"results":"109","hashOfConfig":"57"},{"size":3641,"mtime":1705426709023,"results":"110","hashOfConfig":"57"},{"size":54,"mtime":1705426709023,"results":"111","hashOfConfig":"57"},{"filePath":"112","messages":"113","suppressedMessages":"114","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"o8ti19",{"filePath":"115","messages":"116","suppressedMessages":"117","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"118","messages":"119","suppressedMessages":"120","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"121","messages":"122","suppressedMessages":"123","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"124","messages":"125","suppressedMessages":"126","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"127","messages":"128","suppressedMessages":"129","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"130","messages":"131","suppressedMessages":"132","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"133","messages":"134","suppressedMessages":"135","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"136","messages":"137","suppressedMessages":"138","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"139","messages":"140","suppressedMessages":"141","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"142","messages":"143","suppressedMessages":"144","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"145","messages":"146","suppressedMessages":"147","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"148","messages":"149","suppressedMessages":"150","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"151","messages":"152","suppressedMessages":"153","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"154","messages":"155","suppressedMessages":"156","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"157","messages":"158","suppressedMessages":"159","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"160","messages":"161","suppressedMessages":"162","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"163","messages":"164","suppressedMessages":"165","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"166","messages":"167","suppressedMessages":"168","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"169","messages":"170","suppressedMessages":"171","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"172","messages":"173","suppressedMessages":"174","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"175","messages":"176","suppressedMessages":"177","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"178","messages":"179","suppressedMessages":"180","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"181","messages":"182","suppressedMessages":"183","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"184","messages":"185","suppressedMessages":"186","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"187","messages":"188","suppressedMessages":"189","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"190","messages":"191","suppressedMessages":"192","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"193","messages":"194","suppressedMessages":"195","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"196","messages":"197","suppressedMessages":"198","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"199","messages":"200","suppressedMessages":"201","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"202","messages":"203","suppressedMessages":"204","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"205","messages":"206","suppressedMessages":"207","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"208","messages":"209","suppressedMessages":"210","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"211","messages":"212","suppressedMessages":"213","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"214","messages":"215","suppressedMessages":"216","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"217","messages":"218","suppressedMessages":"219","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"220","messages":"221","suppressedMessages":"222","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"223","messages":"224","suppressedMessages":"225","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"226","messages":"227","suppressedMessages":"228","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"229","messages":"230","suppressedMessages":"231","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"232","messages":"233","suppressedMessages":"234","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"235","messages":"236","suppressedMessages":"237","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"238","messages":"239","suppressedMessages":"240","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"241","messages":"242","suppressedMessages":"243","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"244","messages":"245","suppressedMessages":"246","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"247","messages":"248","suppressedMessages":"249","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"250","messages":"251","suppressedMessages":"252","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"253","messages":"254","suppressedMessages":"255","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"256","messages":"257","suppressedMessages":"258","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"259","messages":"260","suppressedMessages":"261","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"262","messages":"263","suppressedMessages":"264","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"265","messages":"266","suppressedMessages":"267","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"268","messages":"269","suppressedMessages":"270","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"271","messages":"272","suppressedMessages":"273","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"274","messages":"275","suppressedMessages":"276","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/allocator.spec.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/allocator.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/buildDatafile.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/buildProject.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/getFeatureRanges.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/traffic.spec.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/traffic.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/config/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/config/parsers.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/config/projectConfig.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/adapter.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/datasource.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/filesystemAdapter.ts",[],["277","278"],"/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/dependencies.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/find-duplicate-segments/findDuplicateSegments.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/find-duplicate-segments/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/generate-code/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/generate-code/typescript.ts",[],["279"],"/home/runner/work/featurevisor/featurevisor/packages/core/src/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/init/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/attributeSchema.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/checkCircularDependency.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/conditionSchema.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/featureSchema.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/groupSchema.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/lintProject.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/printJoiError.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/segmentSchema.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/testSchema.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/restore/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/exportSite.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/generateHistory.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/generateSiteSearchIndex.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getLastModifiedFromHistory.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getOwnerAndRepoFromUrl.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getRelativePaths.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getRepoDetails.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/site/serveSite.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfArraysAreEqual.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfObjectsAreEqual.spec.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfObjectsAreEqual.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/cliFormat.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/index.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/matrix.spec.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/matrix.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testFeature.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testProject.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testSegment.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/extractKeys.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/git.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/index.ts",[],[],{"ruleId":"280","severity":2,"message":"281","line":22,"column":7,"nodeType":"282","messageId":"283","endLine":22,"endColumn":18,"suppressions":"284"},{"ruleId":"285","severity":2,"message":"286","line":22,"column":21,"nodeType":"287","messageId":"288","endLine":22,"endColumn":81,"fix":"289","suppressions":"290"},{"ruleId":"280","severity":2,"message":"291","line":51,"column":10,"nodeType":"282","messageId":"283","endLine":51,"endColumn":38,"suppressions":"292"},"@typescript-eslint/no-unused-vars","'commitRegex' is assigned a value but never used.","Identifier","unusedVar",["293"],"no-regex-spaces","Spaces are hard to count. Use {3}.","Literal","multipleSpaces",{"range":"294","text":"295"},["296"],"'getFeaturevisorTypeFromValue' is defined but never used.",["297"],{"kind":"298","justification":"299"},[515,518]," {3}",{"kind":"298","justification":"299"},{"kind":"298","justification":"299"},"directive",""]
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [1.2.0](https://github.com/featurevisor/featurevisor/compare/v1.1.1...v1.2.0) (2024-01-16)
7
+
8
+
9
+ ### Features
10
+
11
+ * Matrix for test specs ([#244](https://github.com/featurevisor/featurevisor/issues/244)) ([bfcb9c2](https://github.com/featurevisor/featurevisor/commit/bfcb9c21703e182bf5cadd58f371935df4bef3d4))
12
+
13
+
14
+
15
+
16
+
6
17
  ## [1.1.1](https://github.com/featurevisor/featurevisor/compare/v1.1.0...v1.1.1) (2024-01-11)
7
18
 
8
19
  **Note:** Version bump only for package @featurevisor/core
@@ -1,7 +1,7 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
- <coverage generated="1705000807859" clover="3.2.0">
3
- <project timestamp="1705000807860" name="All files">
4
- <metrics statements="205" coveredstatements="193" conditionals="117" coveredconditionals="98" methods="30" coveredmethods="30" elements="352" coveredelements="321" complexity="0" loc="205" ncloc="205" packages="4" files="6" classes="6"/>
2
+ <coverage generated="1705426845189" clover="3.2.0">
3
+ <project timestamp="1705426845189" name="All files">
4
+ <metrics statements="355" coveredstatements="236" conditionals="181" coveredconditionals="109" methods="52" coveredmethods="35" elements="588" coveredelements="380" complexity="0" loc="355" ncloc="355" packages="4" files="8" classes="8"/>
5
5
  <package name="lib.builder">
6
6
  <metrics statements="92" coveredstatements="87" conditionals="52" coveredconditionals="42" methods="14" coveredmethods="14"/>
7
7
  <file name="allocator.js" path="/home/runner/work/featurevisor/featurevisor/packages/core/lib/builder/allocator.js">
@@ -104,7 +104,7 @@
104
104
  </file>
105
105
  </package>
106
106
  <package name="lib.tester">
107
- <metrics statements="15" coveredstatements="14" conditionals="14" coveredconditionals="13" methods="1" coveredmethods="1"/>
107
+ <metrics statements="95" coveredstatements="38" conditionals="54" coveredconditionals="21" methods="13" coveredmethods="4"/>
108
108
  <file name="checkIfObjectsAreEqual.js" path="/home/runner/work/featurevisor/featurevisor/packages/core/lib/tester/checkIfObjectsAreEqual.js">
109
109
  <metrics statements="15" coveredstatements="14" conditionals="14" coveredconditionals="13" methods="1" coveredmethods="1"/>
110
110
  <line num="2" count="1" type="stmt"/>
@@ -123,6 +123,89 @@
123
123
  <line num="21" count="3" type="stmt"/>
124
124
  <line num="23" count="1" type="stmt"/>
125
125
  </file>
126
+ <file name="matrix.js" path="/home/runner/work/featurevisor/featurevisor/packages/core/lib/tester/matrix.js">
127
+ <metrics statements="80" coveredstatements="24" conditionals="40" coveredconditionals="8" methods="12" coveredmethods="3"/>
128
+ <line num="2" count="1" type="cond" truecount="3" falsecount="0"/>
129
+ <line num="3" count="2" type="cond" truecount="1" falsecount="1"/>
130
+ <line num="4" count="0" type="stmt"/>
131
+ <line num="5" count="0" type="stmt"/>
132
+ <line num="6" count="0" type="cond" truecount="0" falsecount="2"/>
133
+ <line num="7" count="0" type="stmt"/>
134
+ <line num="9" count="0" type="stmt"/>
135
+ <line num="11" count="2" type="stmt"/>
136
+ <line num="13" count="1" type="stmt"/>
137
+ <line num="14" count="1" type="stmt"/>
138
+ <line num="17" count="10" type="stmt"/>
139
+ <line num="18" count="10" type="stmt"/>
140
+ <line num="19" count="10" type="stmt"/>
141
+ <line num="20" count="20" type="stmt"/>
142
+ <line num="21" count="20" type="cond" truecount="2" falsecount="0"/>
143
+ <line num="22" count="12" type="stmt"/>
144
+ <line num="25" count="8" type="stmt"/>
145
+ <line num="30" count="3" type="stmt"/>
146
+ <line num="31" count="3" type="cond" truecount="2" falsecount="0"/>
147
+ <line num="32" count="1" type="stmt"/>
148
+ <line num="34" count="2" type="stmt"/>
149
+ <line num="35" count="2" type="stmt"/>
150
+ <line num="36" count="2" type="stmt"/>
151
+ <line num="38" count="1" type="stmt"/>
152
+ <line num="40" count="0" type="cond" truecount="0" falsecount="2"/>
153
+ <line num="41" count="0" type="stmt"/>
154
+ <line num="43" count="0" type="cond" truecount="0" falsecount="2"/>
155
+ <line num="44" count="0" type="stmt"/>
156
+ <line num="47" count="0" type="cond" truecount="0" falsecount="5"/>
157
+ <line num="48" count="0" type="stmt"/>
158
+ <line num="49" count="0" type="stmt"/>
159
+ <line num="52" count="0" type="stmt"/>
160
+ <line num="54" count="0" type="stmt"/>
161
+ <line num="56" count="1" type="stmt"/>
162
+ <line num="61" count="0" type="stmt"/>
163
+ <line num="63" count="0" type="stmt"/>
164
+ <line num="65" count="0" type="stmt"/>
165
+ <line num="66" count="0" type="stmt"/>
166
+ <line num="67" count="0" type="stmt"/>
167
+ <line num="70" count="0" type="stmt"/>
168
+ <line num="71" count="0" type="cond" truecount="0" falsecount="2"/>
169
+ <line num="72" count="0" type="stmt"/>
170
+ <line num="78" count="0" type="cond" truecount="0" falsecount="2"/>
171
+ <line num="79" count="0" type="stmt"/>
172
+ <line num="81" count="0" type="stmt"/>
173
+ <line num="83" count="1" type="stmt"/>
174
+ <line num="85" count="0" type="cond" truecount="0" falsecount="2"/>
175
+ <line num="86" count="0" type="stmt"/>
176
+ <line num="87" count="0" type="cond" truecount="0" falsecount="2"/>
177
+ <line num="88" count="0" type="stmt"/>
178
+ <line num="90" count="0" type="stmt"/>
179
+ <line num="91" count="0" type="stmt"/>
180
+ <line num="92" count="0" type="stmt"/>
181
+ <line num="93" count="0" type="stmt"/>
182
+ <line num="94" count="0" type="stmt"/>
183
+ <line num="95" count="0" type="cond" truecount="0" falsecount="2"/>
184
+ <line num="96" count="0" type="stmt"/>
185
+ <line num="98" count="0" type="stmt"/>
186
+ <line num="100" count="1" type="stmt"/>
187
+ <line num="105" count="0" type="stmt"/>
188
+ <line num="107" count="0" type="stmt"/>
189
+ <line num="108" count="0" type="stmt"/>
190
+ <line num="109" count="0" type="stmt"/>
191
+ <line num="112" count="0" type="cond" truecount="0" falsecount="2"/>
192
+ <line num="113" count="0" type="stmt"/>
193
+ <line num="115" count="0" type="stmt"/>
194
+ <line num="117" count="1" type="stmt"/>
195
+ <line num="119" count="0" type="cond" truecount="0" falsecount="2"/>
196
+ <line num="120" count="0" type="stmt"/>
197
+ <line num="121" count="0" type="cond" truecount="0" falsecount="2"/>
198
+ <line num="122" count="0" type="stmt"/>
199
+ <line num="124" count="0" type="stmt"/>
200
+ <line num="125" count="0" type="stmt"/>
201
+ <line num="126" count="0" type="stmt"/>
202
+ <line num="127" count="0" type="stmt"/>
203
+ <line num="128" count="0" type="stmt"/>
204
+ <line num="129" count="0" type="cond" truecount="0" falsecount="2"/>
205
+ <line num="130" count="0" type="stmt"/>
206
+ <line num="132" count="0" type="stmt"/>
207
+ <line num="134" count="1" type="stmt"/>
208
+ </file>
126
209
  </package>
127
210
  <package name="src.builder">
128
211
  <metrics statements="85" coveredstatements="80" conditionals="41" coveredconditionals="34" methods="14" coveredmethods="14"/>
@@ -219,7 +302,7 @@
219
302
  </file>
220
303
  </package>
221
304
  <package name="src.tester">
222
- <metrics statements="13" coveredstatements="12" conditionals="10" coveredconditionals="9" methods="1" coveredmethods="1"/>
305
+ <metrics statements="83" coveredstatements="31" conditionals="34" coveredconditionals="12" methods="11" coveredmethods="3"/>
223
306
  <file name="checkIfObjectsAreEqual.ts" path="/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfObjectsAreEqual.ts">
224
307
  <metrics statements="13" coveredstatements="12" conditionals="10" coveredconditionals="9" methods="1" coveredmethods="1"/>
225
308
  <line num="1" count="1" type="stmt"/>
@@ -236,6 +319,79 @@
236
319
  <line num="19" count="2" type="stmt"/>
237
320
  <line num="23" count="3" type="stmt"/>
238
321
  </file>
322
+ <file name="matrix.ts" path="/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/matrix.ts">
323
+ <metrics statements="70" coveredstatements="19" conditionals="24" coveredconditionals="3" methods="10" coveredmethods="2"/>
324
+ <line num="10" count="10" type="stmt"/>
325
+ <line num="11" count="10" type="stmt"/>
326
+ <line num="13" count="10" type="stmt"/>
327
+ <line num="14" count="20" type="stmt"/>
328
+ <line num="16" count="20" type="cond" truecount="2" falsecount="0"/>
329
+ <line num="17" count="12" type="stmt"/>
330
+ <line num="19" count="8" type="stmt"/>
331
+ <line num="24" count="1" type="stmt"/>
332
+ <line num="25" count="3" type="stmt"/>
333
+ <line num="27" count="3" type="cond" truecount="1" falsecount="0"/>
334
+ <line num="28" count="1" type="stmt"/>
335
+ <line num="31" count="2" type="stmt"/>
336
+ <line num="32" count="2" type="stmt"/>
337
+ <line num="34" count="2" type="stmt"/>
338
+ <line num="37" count="1" type="stmt"/>
339
+ <line num="38" count="0" type="cond" truecount="0" falsecount="1"/>
340
+ <line num="39" count="0" type="stmt"/>
341
+ <line num="42" count="0" type="cond" truecount="0" falsecount="1"/>
342
+ <line num="43" count="0" type="stmt"/>
343
+ <line num="47" count="0" type="cond" truecount="0" falsecount="4"/>
344
+ <line num="48" count="0" type="stmt"/>
345
+ <line num="50" count="0" type="stmt"/>
346
+ <line num="54" count="0" type="stmt"/>
347
+ <line num="57" count="0" type="stmt"/>
348
+ <line num="63" count="1" type="stmt"/>
349
+ <line num="67" count="0" type="stmt"/>
350
+ <line num="70" count="0" type="stmt"/>
351
+ <line num="76" count="0" type="stmt"/>
352
+ <line num="77" count="0" type="stmt"/>
353
+ <line num="79" count="0" type="stmt"/>
354
+ <line num="83" count="0" type="stmt"/>
355
+ <line num="84" count="0" type="cond" truecount="0" falsecount="1"/>
356
+ <line num="85" count="0" type="stmt"/>
357
+ <line num="92" count="0" type="cond" truecount="0" falsecount="1"/>
358
+ <line num="93" count="0" type="stmt"/>
359
+ <line num="99" count="0" type="stmt"/>
360
+ <line num="102" count="1" type="stmt"/>
361
+ <line num="106" count="0" type="cond" truecount="0" falsecount="1"/>
362
+ <line num="107" count="0" type="stmt"/>
363
+ <line num="108" count="0" type="stmt"/>
364
+ <line num="112" count="0" type="stmt"/>
365
+ <line num="115" count="0" type="stmt"/>
366
+ <line num="116" count="0" type="stmt"/>
367
+ <line num="118" count="0" type="stmt"/>
368
+ <line num="119" count="0" type="stmt"/>
369
+ <line num="120" count="0" type="stmt"/>
370
+ <line num="121" count="0" type="stmt"/>
371
+ <line num="125" count="0" type="stmt"/>
372
+ <line num="128" count="0" type="stmt"/>
373
+ <line num="134" count="1" type="stmt"/>
374
+ <line num="138" count="0" type="stmt"/>
375
+ <line num="141" count="0" type="stmt"/>
376
+ <line num="142" count="0" type="stmt"/>
377
+ <line num="144" count="0" type="stmt"/>
378
+ <line num="148" count="0" type="cond" truecount="0" falsecount="1"/>
379
+ <line num="149" count="0" type="stmt"/>
380
+ <line num="155" count="0" type="stmt"/>
381
+ <line num="158" count="1" type="stmt"/>
382
+ <line num="162" count="0" type="cond" truecount="0" falsecount="1"/>
383
+ <line num="163" count="0" type="stmt"/>
384
+ <line num="164" count="0" type="stmt"/>
385
+ <line num="168" count="0" type="stmt"/>
386
+ <line num="171" count="0" type="stmt"/>
387
+ <line num="172" count="0" type="stmt"/>
388
+ <line num="174" count="0" type="stmt"/>
389
+ <line num="175" count="0" type="stmt"/>
390
+ <line num="176" count="0" type="stmt"/>
391
+ <line num="177" count="0" type="stmt"/>
392
+ <line num="181" count="0" type="stmt"/>
393
+ <line num="184" count="0" type="stmt"/>
394
+ </file>
239
395
  </package>
240
396
  </project>
241
397
  </coverage>