@featurevisor/core 1.11.0 → 1.12.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 (35) 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/tester/testSegment.js +3 -2
  30. package/lib/tester/testSegment.js.map +1 -1
  31. package/package.json +3 -3
  32. package/src/builder/buildDatafile.ts +16 -6
  33. package/src/builder/traffic.ts +2 -5
  34. package/src/config/projectConfig.ts +4 -1
  35. package/src/tester/testSegment.ts +3 -2
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":1710096134471,"results":"61","hashOfConfig":"62"},{"size":1014,"mtime":1710096134471,"results":"63","hashOfConfig":"62"},{"size":10066,"mtime":1710096134471,"results":"64","hashOfConfig":"62"},{"size":2673,"mtime":1710096134471,"results":"65","hashOfConfig":"62"},{"size":1755,"mtime":1710096134471,"results":"66","hashOfConfig":"62"},{"size":65,"mtime":1710096134471,"results":"67","hashOfConfig":"62"},{"size":688,"mtime":1710096134471,"results":"68","hashOfConfig":"62"},{"size":760,"mtime":1710096134471,"results":"69","hashOfConfig":"62"},{"size":12889,"mtime":1710096134471,"results":"70","hashOfConfig":"62"},{"size":5052,"mtime":1710096134471,"results":"71","hashOfConfig":"62"},{"size":60,"mtime":1710096134471,"results":"72","hashOfConfig":"62"},{"size":1035,"mtime":1710096134471,"results":"73","hashOfConfig":"62"},{"size":3464,"mtime":1710096134471,"results":"74","hashOfConfig":"62"},{"size":1423,"mtime":1710096134471,"results":"75","hashOfConfig":"62"},{"size":5208,"mtime":1710096134471,"results":"76","hashOfConfig":"62"},{"size":10198,"mtime":1710096134471,"results":"77","hashOfConfig":"62"},{"size":94,"mtime":1710096134471,"results":"78","hashOfConfig":"62"},{"size":279,"mtime":1710096134471,"results":"79","hashOfConfig":"62"},{"size":1033,"mtime":1710096134471,"results":"80","hashOfConfig":"62"},{"size":540,"mtime":1710096134471,"results":"81","hashOfConfig":"62"},{"size":1476,"mtime":1710096134471,"results":"82","hashOfConfig":"62"},{"size":6250,"mtime":1710096134471,"results":"83","hashOfConfig":"62"},{"size":318,"mtime":1710096134471,"results":"84","hashOfConfig":"62"},{"size":1308,"mtime":1710096134471,"results":"85","hashOfConfig":"62"},{"size":359,"mtime":1710096134471,"results":"86","hashOfConfig":"62"},{"size":1119,"mtime":1710096134471,"results":"87","hashOfConfig":"62"},{"size":1464,"mtime":1710096134471,"results":"88","hashOfConfig":"62"},{"size":4007,"mtime":1710096134471,"results":"89","hashOfConfig":"62"},{"size":7758,"mtime":1710096134475,"results":"90","hashOfConfig":"62"},{"size":1221,"mtime":1710096134475,"results":"91","hashOfConfig":"62"},{"size":31,"mtime":1710096134475,"results":"92","hashOfConfig":"62"},{"size":9986,"mtime":1710096134475,"results":"93","hashOfConfig":"62"},{"size":982,"mtime":1710096134475,"results":"94","hashOfConfig":"62"},{"size":364,"mtime":1710096134475,"results":"95","hashOfConfig":"62"},{"size":2432,"mtime":1710096134475,"results":"96","hashOfConfig":"62"},{"size":641,"mtime":1710096134475,"results":"97","hashOfConfig":"62"},{"size":1481,"mtime":1710096134475,"results":"98","hashOfConfig":"62"},{"size":1178,"mtime":1710096134475,"results":"99","hashOfConfig":"62"},{"size":6187,"mtime":1710096134475,"results":"100","hashOfConfig":"62"},{"size":516,"mtime":1710096134475,"results":"101","hashOfConfig":"62"},{"size":496,"mtime":1710096134475,"results":"102","hashOfConfig":"62"},{"size":607,"mtime":1710096134475,"results":"103","hashOfConfig":"62"},{"size":1560,"mtime":1710096134475,"results":"104","hashOfConfig":"62"},{"size":59,"mtime":1710096134475,"results":"105","hashOfConfig":"62"},{"size":1681,"mtime":1710096134475,"results":"106","hashOfConfig":"62"},{"size":298,"mtime":1710096134475,"results":"107","hashOfConfig":"62"},{"size":932,"mtime":1710096134475,"results":"108","hashOfConfig":"62"},{"size":468,"mtime":1710096134475,"results":"109","hashOfConfig":"62"},{"size":212,"mtime":1710096134475,"results":"110","hashOfConfig":"62"},{"size":62,"mtime":1710096134475,"results":"111","hashOfConfig":"62"},{"size":1188,"mtime":1710096134475,"results":"112","hashOfConfig":"62"},{"size":5021,"mtime":1710096134475,"results":"113","hashOfConfig":"62"},{"size":516,"mtime":1710096134475,"results":"114","hashOfConfig":"62"},{"size":1691,"mtime":1710096134475,"results":"115","hashOfConfig":"62"},{"size":6968,"mtime":1710096134475,"results":"116","hashOfConfig":"62"},{"size":5702,"mtime":1710096134475,"results":"117","hashOfConfig":"62"},{"size":2273,"mtime":1710096134475,"results":"118","hashOfConfig":"62"},{"size":1993,"mtime":1710096134475,"results":"119","hashOfConfig":"62"},{"size":3641,"mtime":1710096134475,"results":"120","hashOfConfig":"62"},{"size":54,"mtime":1710096134475,"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/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":1711219091496,"results":"61","hashOfConfig":"62"},{"size":1014,"mtime":1711219091496,"results":"63","hashOfConfig":"62"},{"size":10477,"mtime":1711219091496,"results":"64","hashOfConfig":"62"},{"size":2673,"mtime":1711219091496,"results":"65","hashOfConfig":"62"},{"size":1755,"mtime":1711219091496,"results":"66","hashOfConfig":"62"},{"size":65,"mtime":1711219091496,"results":"67","hashOfConfig":"62"},{"size":688,"mtime":1711219091496,"results":"68","hashOfConfig":"62"},{"size":760,"mtime":1711219091496,"results":"69","hashOfConfig":"62"},{"size":12889,"mtime":1711219091496,"results":"70","hashOfConfig":"62"},{"size":4894,"mtime":1711219091496,"results":"71","hashOfConfig":"62"},{"size":60,"mtime":1711219091496,"results":"72","hashOfConfig":"62"},{"size":1035,"mtime":1711219091496,"results":"73","hashOfConfig":"62"},{"size":3555,"mtime":1711219091496,"results":"74","hashOfConfig":"62"},{"size":1423,"mtime":1711219091496,"results":"75","hashOfConfig":"62"},{"size":5208,"mtime":1711219091496,"results":"76","hashOfConfig":"62"},{"size":10198,"mtime":1711219091496,"results":"77","hashOfConfig":"62"},{"size":94,"mtime":1711219091496,"results":"78","hashOfConfig":"62"},{"size":279,"mtime":1711219091496,"results":"79","hashOfConfig":"62"},{"size":1033,"mtime":1711219091496,"results":"80","hashOfConfig":"62"},{"size":540,"mtime":1711219091496,"results":"81","hashOfConfig":"62"},{"size":1476,"mtime":1711219091496,"results":"82","hashOfConfig":"62"},{"size":6250,"mtime":1711219091496,"results":"83","hashOfConfig":"62"},{"size":318,"mtime":1711219091496,"results":"84","hashOfConfig":"62"},{"size":1308,"mtime":1711219091496,"results":"85","hashOfConfig":"62"},{"size":359,"mtime":1711219091496,"results":"86","hashOfConfig":"62"},{"size":1119,"mtime":1711219091496,"results":"87","hashOfConfig":"62"},{"size":1464,"mtime":1711219091496,"results":"88","hashOfConfig":"62"},{"size":4007,"mtime":1711219091496,"results":"89","hashOfConfig":"62"},{"size":7758,"mtime":1711219091496,"results":"90","hashOfConfig":"62"},{"size":1221,"mtime":1711219091496,"results":"91","hashOfConfig":"62"},{"size":31,"mtime":1711219091496,"results":"92","hashOfConfig":"62"},{"size":9986,"mtime":1711219091496,"results":"93","hashOfConfig":"62"},{"size":982,"mtime":1711219091496,"results":"94","hashOfConfig":"62"},{"size":364,"mtime":1711219091496,"results":"95","hashOfConfig":"62"},{"size":2432,"mtime":1711219091496,"results":"96","hashOfConfig":"62"},{"size":641,"mtime":1711219091496,"results":"97","hashOfConfig":"62"},{"size":1481,"mtime":1711219091496,"results":"98","hashOfConfig":"62"},{"size":1178,"mtime":1711219091496,"results":"99","hashOfConfig":"62"},{"size":6187,"mtime":1711219091496,"results":"100","hashOfConfig":"62"},{"size":516,"mtime":1711219091496,"results":"101","hashOfConfig":"62"},{"size":496,"mtime":1711219091496,"results":"102","hashOfConfig":"62"},{"size":607,"mtime":1711219091496,"results":"103","hashOfConfig":"62"},{"size":1560,"mtime":1711219091496,"results":"104","hashOfConfig":"62"},{"size":59,"mtime":1711219091496,"results":"105","hashOfConfig":"62"},{"size":1681,"mtime":1711219091496,"results":"106","hashOfConfig":"62"},{"size":298,"mtime":1711219091496,"results":"107","hashOfConfig":"62"},{"size":932,"mtime":1711219091496,"results":"108","hashOfConfig":"62"},{"size":468,"mtime":1711219091496,"results":"109","hashOfConfig":"62"},{"size":212,"mtime":1711219091496,"results":"110","hashOfConfig":"62"},{"size":62,"mtime":1711219091496,"results":"111","hashOfConfig":"62"},{"size":1188,"mtime":1711219091496,"results":"112","hashOfConfig":"62"},{"size":5021,"mtime":1711219091496,"results":"113","hashOfConfig":"62"},{"size":516,"mtime":1711219091496,"results":"114","hashOfConfig":"62"},{"size":1691,"mtime":1711219091496,"results":"115","hashOfConfig":"62"},{"size":6968,"mtime":1711219091496,"results":"116","hashOfConfig":"62"},{"size":5702,"mtime":1711219091496,"results":"117","hashOfConfig":"62"},{"size":2328,"mtime":1711219091496,"results":"118","hashOfConfig":"62"},{"size":1993,"mtime":1711219091496,"results":"119","hashOfConfig":"62"},{"size":3641,"mtime":1711219091500,"results":"120","hashOfConfig":"62"},{"size":54,"mtime":1711219091500,"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",""]
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.12.0](https://github.com/featurevisor/featurevisor/compare/v1.11.1...v1.12.0) (2024-03-23)
7
+
8
+
9
+ ### Features
10
+
11
+ * introduce new project config stringify ([#286](https://github.com/featurevisor/featurevisor/issues/286)) ([96bd230](https://github.com/featurevisor/featurevisor/commit/96bd2309da6b45c44efdec764ff0a4f63d885fa6))
12
+
13
+
14
+
15
+
16
+
17
+ ## [1.11.1](https://github.com/featurevisor/featurevisor/compare/v1.11.0...v1.11.1) (2024-03-14)
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * move to next condition if parsing fails ([#279](https://github.com/featurevisor/featurevisor/issues/279)) ([9f198e2](https://github.com/featurevisor/featurevisor/commit/9f198e2303498c2c74fb2a9a2fcfa5c320acf93f))
23
+
24
+
25
+
26
+
27
+
6
28
  # [1.11.0](https://github.com/featurevisor/featurevisor/compare/v1.10.1...v1.11.0) (2024-03-10)
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="1710096274744" clover="3.2.0">
3
- <project timestamp="1710096274744" 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="1711219227898" clover="3.2.0">
3
+ <project timestamp="1711219227898" 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">