@featurevisor/core 1.11.1 → 1.13.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 (40) hide show
  1. package/.eslintcache +1 -1
  2. package/CHANGELOG.md +22 -0
  3. package/LICENSE +1 -1
  4. package/coverage/clover.xml +69 -69
  5. package/coverage/coverage-final.json +2 -2
  6. package/coverage/lcov-report/index.html +7 -7
  7. package/coverage/lcov-report/lib/builder/allocator.js.html +1 -1
  8. package/coverage/lcov-report/lib/builder/index.html +5 -5
  9. package/coverage/lcov-report/lib/builder/revision.js.html +1 -1
  10. package/coverage/lcov-report/lib/builder/traffic.js.html +5 -11
  11. package/coverage/lcov-report/lib/tester/checkIfObjectsAreEqual.js.html +1 -1
  12. package/coverage/lcov-report/lib/tester/index.html +1 -1
  13. package/coverage/lcov-report/lib/tester/matrix.js.html +1 -1
  14. package/coverage/lcov-report/src/builder/allocator.ts.html +1 -1
  15. package/coverage/lcov-report/src/builder/index.html +5 -5
  16. package/coverage/lcov-report/src/builder/revision.ts.html +1 -1
  17. package/coverage/lcov-report/src/builder/traffic.ts.html +6 -15
  18. package/coverage/lcov-report/src/tester/checkIfObjectsAreEqual.ts.html +1 -1
  19. package/coverage/lcov-report/src/tester/index.html +1 -1
  20. package/coverage/lcov-report/src/tester/matrix.ts.html +1 -1
  21. package/coverage/lcov.info +113 -117
  22. package/lib/builder/buildDatafile.js +23 -6
  23. package/lib/builder/buildDatafile.js.map +1 -1
  24. package/lib/builder/traffic.js +1 -3
  25. package/lib/builder/traffic.js.map +1 -1
  26. package/lib/config/projectConfig.d.ts +1 -0
  27. package/lib/config/projectConfig.js +3 -1
  28. package/lib/config/projectConfig.js.map +1 -1
  29. package/lib/find-usage/index.d.ts +17 -0
  30. package/lib/find-usage/index.js +379 -0
  31. package/lib/find-usage/index.js.map +1 -0
  32. package/lib/index.d.ts +1 -0
  33. package/lib/index.js +1 -0
  34. package/lib/index.js.map +1 -1
  35. package/package.json +2 -2
  36. package/src/builder/buildDatafile.ts +16 -6
  37. package/src/builder/traffic.ts +2 -5
  38. package/src/config/projectConfig.ts +4 -1
  39. package/src/find-usage/index.ts +279 -0
  40. package/src/index.ts +1 -0
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/revision.spec.ts":"7","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/revision.ts":"8","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/traffic.spec.ts":"9","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/traffic.ts":"10","/home/runner/work/featurevisor/featurevisor/packages/core/src/config/index.ts":"11","/home/runner/work/featurevisor/featurevisor/packages/core/src/config/parsers.ts":"12","/home/runner/work/featurevisor/featurevisor/packages/core/src/config/projectConfig.ts":"13","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/adapter.ts":"14","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/datasource.ts":"15","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/filesystemAdapter.ts":"16","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/index.ts":"17","/home/runner/work/featurevisor/featurevisor/packages/core/src/dependencies.ts":"18","/home/runner/work/featurevisor/featurevisor/packages/core/src/find-duplicate-segments/findDuplicateSegments.ts":"19","/home/runner/work/featurevisor/featurevisor/packages/core/src/find-duplicate-segments/index.ts":"20","/home/runner/work/featurevisor/featurevisor/packages/core/src/generate-code/index.ts":"21","/home/runner/work/featurevisor/featurevisor/packages/core/src/generate-code/typescript.ts":"22","/home/runner/work/featurevisor/featurevisor/packages/core/src/index.ts":"23","/home/runner/work/featurevisor/featurevisor/packages/core/src/init/index.ts":"24","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/attributeSchema.ts":"25","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/checkCircularDependency.ts":"26","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/checkPercentageExceedingSlot.ts":"27","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/conditionSchema.ts":"28","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/featureSchema.ts":"29","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/groupSchema.ts":"30","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/index.ts":"31","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/lintProject.ts":"32","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/printError.ts":"33","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/segmentSchema.ts":"34","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/testSchema.ts":"35","/home/runner/work/featurevisor/featurevisor/packages/core/src/restore/index.ts":"36","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/exportSite.ts":"37","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/generateHistory.ts":"38","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/generateSiteSearchIndex.ts":"39","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getLastModifiedFromHistory.ts":"40","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getOwnerAndRepoFromUrl.ts":"41","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getRelativePaths.ts":"42","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getRepoDetails.ts":"43","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/index.ts":"44","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/serveSite.ts":"45","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfArraysAreEqual.ts":"46","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfObjectsAreEqual.spec.ts":"47","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfObjectsAreEqual.ts":"48","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/cliFormat.ts":"49","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/index.ts":"50","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/matrix.spec.ts":"51","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/matrix.ts":"52","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/prettyDuration.ts":"53","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/printTestResult.ts":"54","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testFeature.ts":"55","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testProject.ts":"56","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testSegment.ts":"57","/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/extractKeys.ts":"58","/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/git.ts":"59","/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/index.ts":"60"},{"size":3214,"mtime":1710435751243,"results":"61","hashOfConfig":"62"},{"size":1014,"mtime":1710435751243,"results":"63","hashOfConfig":"62"},{"size":10066,"mtime":1710435751243,"results":"64","hashOfConfig":"62"},{"size":2673,"mtime":1710435751243,"results":"65","hashOfConfig":"62"},{"size":1755,"mtime":1710435751243,"results":"66","hashOfConfig":"62"},{"size":65,"mtime":1710435751243,"results":"67","hashOfConfig":"62"},{"size":688,"mtime":1710435751243,"results":"68","hashOfConfig":"62"},{"size":760,"mtime":1710435751243,"results":"69","hashOfConfig":"62"},{"size":12889,"mtime":1710435751243,"results":"70","hashOfConfig":"62"},{"size":5052,"mtime":1710435751243,"results":"71","hashOfConfig":"62"},{"size":60,"mtime":1710435751243,"results":"72","hashOfConfig":"62"},{"size":1035,"mtime":1710435751243,"results":"73","hashOfConfig":"62"},{"size":3464,"mtime":1710435751243,"results":"74","hashOfConfig":"62"},{"size":1423,"mtime":1710435751243,"results":"75","hashOfConfig":"62"},{"size":5208,"mtime":1710435751243,"results":"76","hashOfConfig":"62"},{"size":10198,"mtime":1710435751243,"results":"77","hashOfConfig":"62"},{"size":94,"mtime":1710435751243,"results":"78","hashOfConfig":"62"},{"size":279,"mtime":1710435751243,"results":"79","hashOfConfig":"62"},{"size":1033,"mtime":1710435751243,"results":"80","hashOfConfig":"62"},{"size":540,"mtime":1710435751243,"results":"81","hashOfConfig":"62"},{"size":1476,"mtime":1710435751243,"results":"82","hashOfConfig":"62"},{"size":6250,"mtime":1710435751243,"results":"83","hashOfConfig":"62"},{"size":318,"mtime":1710435751243,"results":"84","hashOfConfig":"62"},{"size":1308,"mtime":1710435751243,"results":"85","hashOfConfig":"62"},{"size":359,"mtime":1710435751243,"results":"86","hashOfConfig":"62"},{"size":1119,"mtime":1710435751243,"results":"87","hashOfConfig":"62"},{"size":1464,"mtime":1710435751243,"results":"88","hashOfConfig":"62"},{"size":4007,"mtime":1710435751243,"results":"89","hashOfConfig":"62"},{"size":7758,"mtime":1710435751243,"results":"90","hashOfConfig":"62"},{"size":1221,"mtime":1710435751243,"results":"91","hashOfConfig":"62"},{"size":31,"mtime":1710435751243,"results":"92","hashOfConfig":"62"},{"size":9986,"mtime":1710435751243,"results":"93","hashOfConfig":"62"},{"size":982,"mtime":1710435751243,"results":"94","hashOfConfig":"62"},{"size":364,"mtime":1710435751243,"results":"95","hashOfConfig":"62"},{"size":2432,"mtime":1710435751243,"results":"96","hashOfConfig":"62"},{"size":641,"mtime":1710435751243,"results":"97","hashOfConfig":"62"},{"size":1481,"mtime":1710435751243,"results":"98","hashOfConfig":"62"},{"size":1178,"mtime":1710435751243,"results":"99","hashOfConfig":"62"},{"size":6187,"mtime":1710435751243,"results":"100","hashOfConfig":"62"},{"size":516,"mtime":1710435751243,"results":"101","hashOfConfig":"62"},{"size":496,"mtime":1710435751243,"results":"102","hashOfConfig":"62"},{"size":607,"mtime":1710435751243,"results":"103","hashOfConfig":"62"},{"size":1560,"mtime":1710435751243,"results":"104","hashOfConfig":"62"},{"size":59,"mtime":1710435751243,"results":"105","hashOfConfig":"62"},{"size":1681,"mtime":1710435751243,"results":"106","hashOfConfig":"62"},{"size":298,"mtime":1710435751243,"results":"107","hashOfConfig":"62"},{"size":932,"mtime":1710435751243,"results":"108","hashOfConfig":"62"},{"size":468,"mtime":1710435751243,"results":"109","hashOfConfig":"62"},{"size":212,"mtime":1710435751243,"results":"110","hashOfConfig":"62"},{"size":62,"mtime":1710435751243,"results":"111","hashOfConfig":"62"},{"size":1188,"mtime":1710435751243,"results":"112","hashOfConfig":"62"},{"size":5021,"mtime":1710435751243,"results":"113","hashOfConfig":"62"},{"size":516,"mtime":1710435751243,"results":"114","hashOfConfig":"62"},{"size":1691,"mtime":1710435751243,"results":"115","hashOfConfig":"62"},{"size":6968,"mtime":1710435751243,"results":"116","hashOfConfig":"62"},{"size":5702,"mtime":1710435751243,"results":"117","hashOfConfig":"62"},{"size":2328,"mtime":1710435751243,"results":"118","hashOfConfig":"62"},{"size":1993,"mtime":1710435751243,"results":"119","hashOfConfig":"62"},{"size":3641,"mtime":1710435751243,"results":"120","hashOfConfig":"62"},{"size":54,"mtime":1710435751243,"results":"121","hashOfConfig":"62"},{"filePath":"122","messages":"123","suppressedMessages":"124","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"2syfed",{"filePath":"125","messages":"126","suppressedMessages":"127","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"128","messages":"129","suppressedMessages":"130","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"131","messages":"132","suppressedMessages":"133","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"134","messages":"135","suppressedMessages":"136","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"137","messages":"138","suppressedMessages":"139","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"140","messages":"141","suppressedMessages":"142","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"143","messages":"144","suppressedMessages":"145","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"146","messages":"147","suppressedMessages":"148","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"149","messages":"150","suppressedMessages":"151","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"152","messages":"153","suppressedMessages":"154","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"155","messages":"156","suppressedMessages":"157","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"158","messages":"159","suppressedMessages":"160","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"161","messages":"162","suppressedMessages":"163","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"164","messages":"165","suppressedMessages":"166","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"167","messages":"168","suppressedMessages":"169","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"170","messages":"171","suppressedMessages":"172","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"173","messages":"174","suppressedMessages":"175","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"176","messages":"177","suppressedMessages":"178","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"179","messages":"180","suppressedMessages":"181","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"182","messages":"183","suppressedMessages":"184","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"185","messages":"186","suppressedMessages":"187","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"188","messages":"189","suppressedMessages":"190","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"191","messages":"192","suppressedMessages":"193","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"194","messages":"195","suppressedMessages":"196","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"197","messages":"198","suppressedMessages":"199","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"200","messages":"201","suppressedMessages":"202","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"203","messages":"204","suppressedMessages":"205","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"206","messages":"207","suppressedMessages":"208","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"209","messages":"210","suppressedMessages":"211","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"212","messages":"213","suppressedMessages":"214","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"215","messages":"216","suppressedMessages":"217","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"218","messages":"219","suppressedMessages":"220","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"221","messages":"222","suppressedMessages":"223","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"224","messages":"225","suppressedMessages":"226","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"227","messages":"228","suppressedMessages":"229","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"230","messages":"231","suppressedMessages":"232","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"233","messages":"234","suppressedMessages":"235","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"236","messages":"237","suppressedMessages":"238","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"239","messages":"240","suppressedMessages":"241","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"242","messages":"243","suppressedMessages":"244","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"245","messages":"246","suppressedMessages":"247","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"248","messages":"249","suppressedMessages":"250","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"251","messages":"252","suppressedMessages":"253","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"254","messages":"255","suppressedMessages":"256","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"257","messages":"258","suppressedMessages":"259","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"260","messages":"261","suppressedMessages":"262","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"263","messages":"264","suppressedMessages":"265","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"266","messages":"267","suppressedMessages":"268","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"269","messages":"270","suppressedMessages":"271","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"272","messages":"273","suppressedMessages":"274","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"275","messages":"276","suppressedMessages":"277","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"278","messages":"279","suppressedMessages":"280","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"281","messages":"282","suppressedMessages":"283","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"284","messages":"285","suppressedMessages":"286","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"287","messages":"288","suppressedMessages":"289","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"290","messages":"291","suppressedMessages":"292","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"293","messages":"294","suppressedMessages":"295","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"296","messages":"297","suppressedMessages":"298","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"299","messages":"300","suppressedMessages":"301","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/revision.spec.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/revision.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",[],["302","303"],"/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",[],["304"],"/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/checkPercentageExceedingSlot.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/printError.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/prettyDuration.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/printTestResult.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":"305","severity":2,"message":"306","line":22,"column":7,"nodeType":"307","messageId":"308","endLine":22,"endColumn":18,"suppressions":"309"},{"ruleId":"310","severity":2,"message":"311","line":22,"column":21,"nodeType":"312","messageId":"313","endLine":22,"endColumn":81,"fix":"314","suppressions":"315"},{"ruleId":"305","severity":2,"message":"316","line":51,"column":10,"nodeType":"307","messageId":"308","endLine":51,"endColumn":38,"suppressions":"317"},"@typescript-eslint/no-unused-vars","'commitRegex' is assigned a value but never used.","Identifier","unusedVar",["318"],"no-regex-spaces","Spaces are hard to count. Use {3}.","Literal","multipleSpaces",{"range":"319","text":"320"},["321"],"'getFeaturevisorTypeFromValue' is defined but never used.",["322"],{"kind":"323","justification":"324"},[515,518]," {3}",{"kind":"323","justification":"324"},{"kind":"323","justification":"324"},"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/revision.spec.ts":"7","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/revision.ts":"8","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/traffic.spec.ts":"9","/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/traffic.ts":"10","/home/runner/work/featurevisor/featurevisor/packages/core/src/config/index.ts":"11","/home/runner/work/featurevisor/featurevisor/packages/core/src/config/parsers.ts":"12","/home/runner/work/featurevisor/featurevisor/packages/core/src/config/projectConfig.ts":"13","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/adapter.ts":"14","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/datasource.ts":"15","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/filesystemAdapter.ts":"16","/home/runner/work/featurevisor/featurevisor/packages/core/src/datasource/index.ts":"17","/home/runner/work/featurevisor/featurevisor/packages/core/src/dependencies.ts":"18","/home/runner/work/featurevisor/featurevisor/packages/core/src/find-duplicate-segments/findDuplicateSegments.ts":"19","/home/runner/work/featurevisor/featurevisor/packages/core/src/find-duplicate-segments/index.ts":"20","/home/runner/work/featurevisor/featurevisor/packages/core/src/find-usage/index.ts":"21","/home/runner/work/featurevisor/featurevisor/packages/core/src/generate-code/index.ts":"22","/home/runner/work/featurevisor/featurevisor/packages/core/src/generate-code/typescript.ts":"23","/home/runner/work/featurevisor/featurevisor/packages/core/src/index.ts":"24","/home/runner/work/featurevisor/featurevisor/packages/core/src/init/index.ts":"25","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/attributeSchema.ts":"26","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/checkCircularDependency.ts":"27","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/checkPercentageExceedingSlot.ts":"28","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/conditionSchema.ts":"29","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/featureSchema.ts":"30","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/groupSchema.ts":"31","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/index.ts":"32","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/lintProject.ts":"33","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/printError.ts":"34","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/segmentSchema.ts":"35","/home/runner/work/featurevisor/featurevisor/packages/core/src/linter/testSchema.ts":"36","/home/runner/work/featurevisor/featurevisor/packages/core/src/restore/index.ts":"37","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/exportSite.ts":"38","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/generateHistory.ts":"39","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/generateSiteSearchIndex.ts":"40","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getLastModifiedFromHistory.ts":"41","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getOwnerAndRepoFromUrl.ts":"42","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getRelativePaths.ts":"43","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/getRepoDetails.ts":"44","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/index.ts":"45","/home/runner/work/featurevisor/featurevisor/packages/core/src/site/serveSite.ts":"46","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfArraysAreEqual.ts":"47","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfObjectsAreEqual.spec.ts":"48","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/checkIfObjectsAreEqual.ts":"49","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/cliFormat.ts":"50","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/index.ts":"51","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/matrix.spec.ts":"52","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/matrix.ts":"53","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/prettyDuration.ts":"54","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/printTestResult.ts":"55","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testFeature.ts":"56","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testProject.ts":"57","/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/testSegment.ts":"58","/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/extractKeys.ts":"59","/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/git.ts":"60","/home/runner/work/featurevisor/featurevisor/packages/core/src/utils/index.ts":"61"},{"size":3214,"mtime":1711489375467,"results":"62","hashOfConfig":"63"},{"size":1014,"mtime":1711489375467,"results":"64","hashOfConfig":"63"},{"size":10477,"mtime":1711489375467,"results":"65","hashOfConfig":"63"},{"size":2673,"mtime":1711489375467,"results":"66","hashOfConfig":"63"},{"size":1755,"mtime":1711489375467,"results":"67","hashOfConfig":"63"},{"size":65,"mtime":1711489375467,"results":"68","hashOfConfig":"63"},{"size":688,"mtime":1711489375467,"results":"69","hashOfConfig":"63"},{"size":760,"mtime":1711489375467,"results":"70","hashOfConfig":"63"},{"size":12889,"mtime":1711489375467,"results":"71","hashOfConfig":"63"},{"size":4894,"mtime":1711489375467,"results":"72","hashOfConfig":"63"},{"size":60,"mtime":1711489375467,"results":"73","hashOfConfig":"63"},{"size":1035,"mtime":1711489375467,"results":"74","hashOfConfig":"63"},{"size":3555,"mtime":1711489375467,"results":"75","hashOfConfig":"63"},{"size":1423,"mtime":1711489375467,"results":"76","hashOfConfig":"63"},{"size":5208,"mtime":1711489375467,"results":"77","hashOfConfig":"63"},{"size":10198,"mtime":1711489375467,"results":"78","hashOfConfig":"63"},{"size":94,"mtime":1711489375467,"results":"79","hashOfConfig":"63"},{"size":279,"mtime":1711489375467,"results":"80","hashOfConfig":"63"},{"size":1033,"mtime":1711489375467,"results":"81","hashOfConfig":"63"},{"size":540,"mtime":1711489375467,"results":"82","hashOfConfig":"63"},{"size":7734,"mtime":1711489375467,"results":"83","hashOfConfig":"63"},{"size":1476,"mtime":1711489375467,"results":"84","hashOfConfig":"63"},{"size":6250,"mtime":1711489375467,"results":"85","hashOfConfig":"63"},{"size":348,"mtime":1711489375467,"results":"86","hashOfConfig":"63"},{"size":1308,"mtime":1711489375467,"results":"87","hashOfConfig":"63"},{"size":359,"mtime":1711489375467,"results":"88","hashOfConfig":"63"},{"size":1119,"mtime":1711489375467,"results":"89","hashOfConfig":"63"},{"size":1464,"mtime":1711489375467,"results":"90","hashOfConfig":"63"},{"size":4007,"mtime":1711489375467,"results":"91","hashOfConfig":"63"},{"size":7758,"mtime":1711489375467,"results":"92","hashOfConfig":"63"},{"size":1221,"mtime":1711489375467,"results":"93","hashOfConfig":"63"},{"size":31,"mtime":1711489375467,"results":"94","hashOfConfig":"63"},{"size":9986,"mtime":1711489375467,"results":"95","hashOfConfig":"63"},{"size":982,"mtime":1711489375467,"results":"96","hashOfConfig":"63"},{"size":364,"mtime":1711489375467,"results":"97","hashOfConfig":"63"},{"size":2432,"mtime":1711489375467,"results":"98","hashOfConfig":"63"},{"size":641,"mtime":1711489375467,"results":"99","hashOfConfig":"63"},{"size":1481,"mtime":1711489375467,"results":"100","hashOfConfig":"63"},{"size":1178,"mtime":1711489375467,"results":"101","hashOfConfig":"63"},{"size":6187,"mtime":1711489375467,"results":"102","hashOfConfig":"63"},{"size":516,"mtime":1711489375467,"results":"103","hashOfConfig":"63"},{"size":496,"mtime":1711489375467,"results":"104","hashOfConfig":"63"},{"size":607,"mtime":1711489375467,"results":"105","hashOfConfig":"63"},{"size":1560,"mtime":1711489375467,"results":"106","hashOfConfig":"63"},{"size":59,"mtime":1711489375467,"results":"107","hashOfConfig":"63"},{"size":1681,"mtime":1711489375467,"results":"108","hashOfConfig":"63"},{"size":298,"mtime":1711489375467,"results":"109","hashOfConfig":"63"},{"size":932,"mtime":1711489375467,"results":"110","hashOfConfig":"63"},{"size":468,"mtime":1711489375467,"results":"111","hashOfConfig":"63"},{"size":212,"mtime":1711489375467,"results":"112","hashOfConfig":"63"},{"size":62,"mtime":1711489375467,"results":"113","hashOfConfig":"63"},{"size":1188,"mtime":1711489375467,"results":"114","hashOfConfig":"63"},{"size":5021,"mtime":1711489375467,"results":"115","hashOfConfig":"63"},{"size":516,"mtime":1711489375467,"results":"116","hashOfConfig":"63"},{"size":1691,"mtime":1711489375467,"results":"117","hashOfConfig":"63"},{"size":6968,"mtime":1711489375467,"results":"118","hashOfConfig":"63"},{"size":5702,"mtime":1711489375467,"results":"119","hashOfConfig":"63"},{"size":2328,"mtime":1711489375467,"results":"120","hashOfConfig":"63"},{"size":1993,"mtime":1711489375467,"results":"121","hashOfConfig":"63"},{"size":3641,"mtime":1711489375467,"results":"122","hashOfConfig":"63"},{"size":54,"mtime":1711489375467,"results":"123","hashOfConfig":"63"},{"filePath":"124","messages":"125","suppressedMessages":"126","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"2syfed",{"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},{"filePath":"277","messages":"278","suppressedMessages":"279","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"280","messages":"281","suppressedMessages":"282","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"283","messages":"284","suppressedMessages":"285","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"286","messages":"287","suppressedMessages":"288","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"289","messages":"290","suppressedMessages":"291","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"292","messages":"293","suppressedMessages":"294","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"295","messages":"296","suppressedMessages":"297","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"298","messages":"299","suppressedMessages":"300","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"301","messages":"302","suppressedMessages":"303","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"304","messages":"305","suppressedMessages":"306","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/revision.spec.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/revision.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",[],["307","308"],"/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/find-usage/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",[],["309"],"/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/checkPercentageExceedingSlot.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/printError.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/prettyDuration.ts",[],[],"/home/runner/work/featurevisor/featurevisor/packages/core/src/tester/printTestResult.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":"310","severity":2,"message":"311","line":22,"column":7,"nodeType":"312","messageId":"313","endLine":22,"endColumn":18,"suppressions":"314"},{"ruleId":"315","severity":2,"message":"316","line":22,"column":21,"nodeType":"317","messageId":"318","endLine":22,"endColumn":81,"fix":"319","suppressions":"320"},{"ruleId":"310","severity":2,"message":"321","line":51,"column":10,"nodeType":"312","messageId":"313","endLine":51,"endColumn":38,"suppressions":"322"},"@typescript-eslint/no-unused-vars","'commitRegex' is assigned a value but never used.","Identifier","unusedVar",["323"],"no-regex-spaces","Spaces are hard to count. Use {3}.","Literal","multipleSpaces",{"range":"324","text":"325"},["326"],"'getFeaturevisorTypeFromValue' is defined but never used.",["327"],{"kind":"328","justification":"329"},[515,518]," {3}",{"kind":"328","justification":"329"},{"kind":"328","justification":"329"},"directive",""]
package/CHANGELOG.md CHANGED
@@ -3,6 +3,28 @@
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.13.0](https://github.com/featurevisor/featurevisor/compare/v1.12.0...v1.13.0) (2024-03-26)
7
+
8
+
9
+ ### Features
10
+
11
+ * find usage of segments and attributes ([#289](https://github.com/featurevisor/featurevisor/issues/289)) ([c1319b3](https://github.com/featurevisor/featurevisor/commit/c1319b32d46ae7bbb03eb7b7e5dd19e37f2be51d))
12
+
13
+
14
+
15
+
16
+
17
+ # [1.12.0](https://github.com/featurevisor/featurevisor/compare/v1.11.1...v1.12.0) (2024-03-23)
18
+
19
+
20
+ ### Features
21
+
22
+ * introduce new project config stringify ([#286](https://github.com/featurevisor/featurevisor/issues/286)) ([96bd230](https://github.com/featurevisor/featurevisor/commit/96bd2309da6b45c44efdec764ff0a4f63d885fa6))
23
+
24
+
25
+
26
+
27
+
6
28
  ## [1.11.1](https://github.com/featurevisor/featurevisor/compare/v1.11.0...v1.11.1) (2024-03-14)
7
29
 
8
30
 
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2023 Fahad Heylaal (https://fahad19.com)
3
+ Copyright (c) 2024 Fahad Heylaal (https://fahad19.com)
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -1,9 +1,9 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
- <coverage generated="1710435893156" clover="3.2.0">
3
- <project timestamp="1710435893157" name="All files">
4
- <metrics statements="377" coveredstatements="256" conditionals="194" coveredconditionals="121" methods="54" coveredmethods="37" elements="625" coveredelements="414" complexity="0" loc="377" ncloc="377" packages="4" files="10" classes="10"/>
2
+ <coverage generated="1711489511257" clover="3.2.0">
3
+ <project timestamp="1711489511257" name="All files">
4
+ <metrics statements="377" coveredstatements="256" conditionals="190" coveredconditionals="119" methods="54" coveredmethods="37" elements="621" coveredelements="412" complexity="0" loc="377" ncloc="377" packages="4" files="10" classes="10"/>
5
5
  <package name="lib.builder">
6
- <metrics statements="104" coveredstatements="98" conditionals="60" coveredconditionals="49" methods="15" coveredmethods="15"/>
6
+ <metrics statements="104" coveredstatements="98" conditionals="58" coveredconditionals="48" methods="15" coveredmethods="15"/>
7
7
  <file name="allocator.js" path="/home/runner/work/featurevisor/featurevisor/packages/core/lib/builder/allocator.js">
8
8
  <metrics statements="27" coveredstatements="27" conditionals="6" coveredconditionals="6" methods="2" coveredmethods="2"/>
9
9
  <line num="2" count="2" type="stmt"/>
@@ -50,7 +50,7 @@
50
50
  <line num="22" count="1" type="stmt"/>
51
51
  </file>
52
52
  <file name="traffic.js" path="/home/runner/work/featurevisor/featurevisor/packages/core/lib/builder/traffic.js">
53
- <metrics statements="65" coveredstatements="60" conditionals="46" coveredconditionals="36" methods="12" coveredmethods="12"/>
53
+ <metrics statements="65" coveredstatements="60" conditionals="44" coveredconditionals="35" methods="12" coveredmethods="12"/>
54
54
  <line num="2" count="1" type="stmt"/>
55
55
  <line num="3" count="1" type="stmt"/>
56
56
  <line num="4" count="1" type="stmt"/>
@@ -82,40 +82,40 @@
82
82
  <line num="62" count="9" type="stmt"/>
83
83
  <line num="63" count="9" type="stmt"/>
84
84
  <line num="64" count="9" type="stmt"/>
85
- <line num="73" count="9" type="cond" truecount="1" falsecount="1"/>
86
- <line num="74" count="0" type="stmt"/>
87
- <line num="76" count="9" type="cond" truecount="1" falsecount="1"/>
88
- <line num="77" count="0" type="stmt"/>
85
+ <line num="71" count="9" type="cond" truecount="1" falsecount="1"/>
86
+ <line num="72" count="0" type="stmt"/>
87
+ <line num="74" count="9" type="cond" truecount="1" falsecount="1"/>
88
+ <line num="75" count="0" type="stmt"/>
89
+ <line num="78" count="9" type="stmt"/>
90
+ <line num="79" count="9" type="cond" truecount="4" falsecount="0"/>
89
91
  <line num="80" count="9" type="stmt"/>
90
- <line num="81" count="9" type="cond" truecount="4" falsecount="0"/>
91
- <line num="82" count="9" type="stmt"/>
92
- <line num="83" count="9" type="stmt"/>
93
- <line num="84" count="9" type="cond" truecount="4" falsecount="0"/>
94
- <line num="88" count="9" type="stmt"/>
95
- <line num="89" count="9" type="cond" truecount="4" falsecount="0"/>
96
- <line num="91" count="1" type="stmt"/>
97
- <line num="92" count="1" type="stmt"/>
98
- <line num="93" count="2" type="stmt"/>
99
- <line num="94" count="2" type="stmt"/>
100
- <line num="98" count="2" type="stmt"/>
101
- <line num="99" count="2" type="stmt"/>
102
- <line num="101" count="1" type="stmt"/>
103
- <line num="103" count="9" type="cond" truecount="1" falsecount="1"/>
104
- <line num="104" count="9" type="stmt"/>
105
- <line num="105" count="22" type="stmt"/>
106
- <line num="106" count="22" type="stmt"/>
107
- <line num="107" count="22" type="cond" truecount="2" falsecount="0"/>
108
- <line num="110" count="22" type="stmt"/>
109
- <line num="111" count="22" type="stmt"/>
110
- <line num="112" count="21" type="stmt"/>
111
- <line num="117" count="22" type="stmt"/>
112
- <line num="120" count="9" type="stmt"/>
113
- <line num="121" count="23" type="cond" truecount="3" falsecount="1"/>
114
- <line num="122" count="0" type="stmt"/>
115
- <line num="124" count="23" type="stmt"/>
92
+ <line num="81" count="9" type="stmt"/>
93
+ <line num="82" count="9" type="cond" truecount="4" falsecount="0"/>
94
+ <line num="86" count="9" type="stmt"/>
95
+ <line num="87" count="9" type="cond" truecount="4" falsecount="0"/>
96
+ <line num="89" count="1" type="stmt"/>
97
+ <line num="90" count="1" type="stmt"/>
98
+ <line num="91" count="2" type="stmt"/>
99
+ <line num="92" count="2" type="stmt"/>
100
+ <line num="96" count="2" type="stmt"/>
101
+ <line num="97" count="2" type="stmt"/>
102
+ <line num="99" count="1" type="stmt"/>
103
+ <line num="101" count="9" type="cond" truecount="1" falsecount="1"/>
104
+ <line num="102" count="9" type="stmt"/>
105
+ <line num="103" count="22" type="stmt"/>
106
+ <line num="104" count="22" type="stmt"/>
107
+ <line num="105" count="22" type="cond" truecount="2" falsecount="0"/>
108
+ <line num="108" count="22" type="stmt"/>
109
+ <line num="109" count="22" type="stmt"/>
110
+ <line num="110" count="21" type="stmt"/>
111
+ <line num="115" count="22" type="stmt"/>
112
+ <line num="118" count="9" type="stmt"/>
113
+ <line num="119" count="23" type="cond" truecount="3" falsecount="1"/>
114
+ <line num="120" count="0" type="stmt"/>
115
+ <line num="122" count="23" type="stmt"/>
116
+ <line num="124" count="9" type="stmt"/>
116
117
  <line num="126" count="9" type="stmt"/>
117
- <line num="128" count="9" type="stmt"/>
118
- <line num="130" count="1" type="stmt"/>
118
+ <line num="128" count="1" type="stmt"/>
119
119
  </file>
120
120
  </package>
121
121
  <package name="lib.tester">
@@ -223,7 +223,7 @@
223
223
  </file>
224
224
  </package>
225
225
  <package name="src.builder">
226
- <metrics statements="95" coveredstatements="89" conditionals="46" coveredconditionals="39" methods="15" coveredmethods="15"/>
226
+ <metrics statements="95" coveredstatements="89" conditionals="44" coveredconditionals="38" methods="15" coveredmethods="15"/>
227
227
  <file name="allocator.ts" path="/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/allocator.ts">
228
228
  <metrics statements="25" coveredstatements="25" conditionals="5" coveredconditionals="5" methods="2" coveredmethods="2"/>
229
229
  <line num="3" count="2" type="stmt"/>
@@ -266,7 +266,7 @@
266
266
  <line num="21" count="0" type="stmt"/>
267
267
  </file>
268
268
  <file name="traffic.ts" path="/home/runner/work/featurevisor/featurevisor/packages/core/src/builder/traffic.ts">
269
- <metrics statements="60" coveredstatements="55" conditionals="36" coveredconditionals="29" methods="12" coveredmethods="12"/>
269
+ <metrics statements="60" coveredstatements="55" conditionals="34" coveredconditionals="28" methods="12" coveredmethods="12"/>
270
270
  <line num="2" count="1" type="stmt"/>
271
271
  <line num="4" count="1" type="stmt"/>
272
272
  <line num="6" count="1" type="stmt"/>
@@ -295,38 +295,38 @@
295
295
  <line num="78" count="9" type="stmt"/>
296
296
  <line num="79" count="9" type="stmt"/>
297
297
  <line num="81" count="9" type="stmt"/>
298
- <line num="92" count="9" type="cond" truecount="0" falsecount="1"/>
299
- <line num="93" count="0" type="stmt"/>
300
- <line num="96" count="9" type="cond" truecount="0" falsecount="1"/>
301
- <line num="97" count="0" type="stmt"/>
298
+ <line num="89" count="9" type="cond" truecount="0" falsecount="1"/>
299
+ <line num="90" count="0" type="stmt"/>
300
+ <line num="93" count="9" type="cond" truecount="0" falsecount="1"/>
301
+ <line num="94" count="0" type="stmt"/>
302
+ <line num="98" count="9" type="stmt"/>
303
+ <line num="99" count="9" type="cond" truecount="4" falsecount="0"/>
304
+ <line num="100" count="9" type="stmt"/>
302
305
  <line num="101" count="9" type="stmt"/>
303
- <line num="102" count="9" type="cond" truecount="4" falsecount="0"/>
304
- <line num="103" count="9" type="stmt"/>
305
- <line num="104" count="9" type="stmt"/>
306
- <line num="107" count="9" type="cond" truecount="4" falsecount="0"/>
307
- <line num="112" count="9" type="stmt"/>
308
- <line num="114" count="9" type="cond" truecount="3" falsecount="0"/>
309
- <line num="116" count="1" type="stmt"/>
310
- <line num="118" count="1" type="stmt"/>
311
- <line num="119" count="2" type="stmt"/>
312
- <line num="124" count="2" type="stmt"/>
313
- <line num="126" count="2" type="stmt"/>
314
- <line num="129" count="1" type="stmt"/>
315
- <line num="132" count="9" type="cond" truecount="1" falsecount="0"/>
316
- <line num="133" count="9" type="stmt"/>
317
- <line num="134" count="22" type="stmt"/>
318
- <line num="135" count="22" type="stmt"/>
319
- <line num="137" count="22" type="cond" truecount="2" falsecount="0"/>
320
- <line num="140" count="22" type="stmt"/>
321
- <line num="142" count="22" type="stmt"/>
322
- <line num="143" count="21" type="stmt"/>
323
- <line num="149" count="22" type="stmt"/>
324
- <line num="156" count="9" type="stmt"/>
325
- <line num="157" count="23" type="cond" truecount="2" falsecount="1"/>
326
- <line num="158" count="0" type="stmt"/>
327
- <line num="161" count="23" type="stmt"/>
306
+ <line num="104" count="9" type="cond" truecount="4" falsecount="0"/>
307
+ <line num="109" count="9" type="stmt"/>
308
+ <line num="111" count="9" type="cond" truecount="3" falsecount="0"/>
309
+ <line num="113" count="1" type="stmt"/>
310
+ <line num="115" count="1" type="stmt"/>
311
+ <line num="116" count="2" type="stmt"/>
312
+ <line num="121" count="2" type="stmt"/>
313
+ <line num="123" count="2" type="stmt"/>
314
+ <line num="126" count="1" type="stmt"/>
315
+ <line num="129" count="9" type="cond" truecount="1" falsecount="0"/>
316
+ <line num="130" count="9" type="stmt"/>
317
+ <line num="131" count="22" type="stmt"/>
318
+ <line num="132" count="22" type="stmt"/>
319
+ <line num="134" count="22" type="cond" truecount="2" falsecount="0"/>
320
+ <line num="137" count="22" type="stmt"/>
321
+ <line num="139" count="22" type="stmt"/>
322
+ <line num="140" count="21" type="stmt"/>
323
+ <line num="146" count="22" type="stmt"/>
324
+ <line num="153" count="9" type="stmt"/>
325
+ <line num="154" count="23" type="cond" truecount="2" falsecount="1"/>
326
+ <line num="155" count="0" type="stmt"/>
327
+ <line num="158" count="23" type="stmt"/>
328
+ <line num="161" count="9" type="stmt"/>
328
329
  <line num="164" count="9" type="stmt"/>
329
- <line num="167" count="9" type="stmt"/>
330
330
  </file>
331
331
  </package>
332
332
  <package name="src.tester">