{
  "_class" : "io.jenkins.plugins.analysis.core.restapi.ReportApi",
  "issues" : [
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "OwnerRoleFactoryProvider.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/role/spi/OwnerRoleFactoryProvider.java",
      "fingerprint" : "A385C86811235CE5309B74C76ED6EC77",
      "lineEnd" : 42,
      "lineStart" : 42,
      "message" : "will go away with Java 17",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.role.spi",
      "reference" : "1325",
      "severity" : "NORMAL",
      "toString" : "OwnerRoleFactoryProvider.java(42,0): TODO: : will go away with Java 17",
      "type" : "TODO"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "SystemRoleFactorySupport.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/role/spi/SystemRoleFactorySupport.java",
      "fingerprint" : "B450C102AA85EC8BA39A12DFAA656BD1",
      "lineEnd" : 69,
      "lineStart" : 69,
      "message" : "use ConcurrentHashMap",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.role.spi",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "SystemRoleFactorySupport.java(69,0): FIXME: : use ConcurrentHashMap",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "SystemRoleFactorySupport.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/role/spi/SystemRoleFactorySupport.java",
      "fingerprint" : "06FCAF91D36EFE8CCE756D9A45FA5A5F",
      "lineEnd" : 160,
      "lineStart" : 160,
      "message" : "it's injecting null, but perhaps should it throw exception?",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.role.spi",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "SystemRoleFactorySupport.java(160,0): FIXME: : it's injecting null, but perhaps should it throw exception?",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "As.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/As.java",
      "fingerprint" : "9905796CDF66AEC3DB3A833F5226FA8A",
      "lineEnd" : 175,
      "lineStart" : 175,
      "message" : "there's no static check of the argument",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "As.java(175,0): FIXME: : there's no static check of the argument",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "AsExtensions.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/AsExtensions.java",
      "fingerprint" : "C887CFA7649EA7456E4AB01C1C026CBC",
      "lineEnd" : 37,
      "lineStart" : 37,
      "message" : "this class doesn't cache - every as*() call instantiates new objects.",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "AsExtensions.java(37,0): FIXME: : this class doesn't cache - every as*() call instantiates new objects.",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "Key.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/Key.java",
      "fingerprint" : "C7AA933D1745CF5B492CAAA99FE6C3CB",
      "lineEnd" : 54,
      "lineStart" : 54,
      "message" : "a Set would be enough.",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "Key.java(54,0): FIXME: : a Set would be enough.",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "ReflectionUtils.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/ReflectionUtils.java",
      "fingerprint" : "B8965423A25E7B78DA6C6F021B7B8320",
      "lineEnd" : 84,
      "lineStart" : 84,
      "message" : "works only for one interface in hierarchy",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "ReflectionUtils.java(84,0): FIXME: : works only for one interface in hierarchy",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "TimeProvider.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/TimeProvider.java",
      "fingerprint" : "945D2954DE8B5E78A9E62D0596CA3AE5",
      "lineEnd" : 48,
      "lineStart" : 48,
      "message" : "should be private",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "TimeProvider.java(48,0): FIXME: : should be private",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "DefaultPreferencesHandler.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/impl/DefaultPreferencesHandler.java",
      "fingerprint" : "2060B6AD14D0353E602F74A4DA8B77A7",
      "lineEnd" : 114,
      "lineStart" : 114,
      "message" : "should be made persistent (JSON?)",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.impl",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "DefaultPreferencesHandler.java(114,0): FIXME: : should be made persistent (JSON?)",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "SupplierFinder.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/impl/finder/SupplierFinder.java",
      "fingerprint" : "AF826051E1AB49FE6E15844E754041B9",
      "lineEnd" : 65,
      "lineStart" : 65,
      "message" : "or computeNeededResults()?",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.impl.finder",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "SupplierFinder.java(65,0): FIXME: : or computeNeededResults()?",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "ContextSnapshot.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/spi/ContextSnapshot.java",
      "fingerprint" : "FFC744601D54DCB87DCB7DB1CB2689C8",
      "lineEnd" : 49,
      "lineStart" : 49,
      "message" : "should be weak references? Should a context be alive as soon as all the objects created with it are",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.spi",
      "reference" : "1325",
      "severity" : "NORMAL",
      "toString" : "ContextSnapshot.java(49,0): TODO: : should be weak references? Should a context be alive as soon as all the objects created with it are",
      "type" : "TODO"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "DefaultProcessExecutor.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/spi/DefaultProcessExecutor.java",
      "fingerprint" : "0B0A7BE5D84863AA98DF8CC75405AADD",
      "lineEnd" : 180,
      "lineStart" : 180,
      "message" : "sync",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.spi",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "DefaultProcessExecutor.java(180,0): FIXME: : sync",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "DefaultProcessExecutor.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/spi/DefaultProcessExecutor.java",
      "fingerprint" : "C716517C995ACF1FF3BC24B577322385",
      "lineEnd" : 207,
      "lineStart" : 207,
      "message" : "sync",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.spi",
      "reference" : "1325",
      "severity" : "NORMAL",
      "toString" : "DefaultProcessExecutor.java(207,0): TODO: : sync",
      "type" : "TODO"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "DefaultProcessExecutor.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/spi/DefaultProcessExecutor.java",
      "fingerprint" : "767F9DB41E3515F0F040869DA28374E6",
      "lineEnd" : 249,
      "lineStart" : 249,
      "message" : "polls because it doesn't get notified",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.spi",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "DefaultProcessExecutor.java(249,0): FIXME: : polls because it doesn't get notified",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "DefaultProcessExecutor.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/spi/DefaultProcessExecutor.java",
      "fingerprint" : "84A3B850DB872EAD13F33384A345ADB2",
      "lineEnd" : 442,
      "lineStart" : 442,
      "message" : "",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.spi",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "DefaultProcessExecutor.java(442,0): FIXME: : ",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "ThreadAssertions.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/thread/ThreadAssertions.java",
      "fingerprint" : "E0CE2FB263D0432FE9A1D76537CEA7C9",
      "lineEnd" : 59,
      "lineStart" : 59,
      "message" : "",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.thread",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "ThreadAssertions.java(59,0): FIXME: : ",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "ThreadAssertions.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/main/java/it/tidalwave/util/thread/ThreadAssertions.java",
      "fingerprint" : "FE340D16744EEAB95F0F113A396B4721",
      "lineEnd" : 62,
      "lineStart" : 62,
      "message" : "",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.util.thread",
      "reference" : "1325",
      "severity" : "HIGH",
      "toString" : "ThreadAssertions.java(62,0): FIXME: : ",
      "type" : "FIXME"
    },
    {
      "addedAt" : 0,
      "authorEmail" : "-",
      "authorName" : "-",
      "baseName" : "DefaultContextManagerTest.java",
      "category" : "",
      "columnEnd" : 0,
      "columnStart" : 0,
      "commit" : "-",
      "description" : "",
      "fileName" : "modules/Utilities/src/test/java/it/tidalwave/role/impl/DefaultContextManagerTest.java",
      "fingerprint" : "AB7EA4706236625CEA67389A8D93256E",
      "lineEnd" : 224,
      "lineStart" : 224,
      "message" : "test findContextOfType()",
      "moduleName" : "TheseFoolishThings :: Utilities",
      "origin" : "open-tasks",
      "originName" : "Open Tasks Scanner",
      "packageName" : "it.tidalwave.role.impl",
      "reference" : "1325",
      "severity" : "NORMAL",
      "toString" : "DefaultContextManagerTest.java(224,0): TODO: : test findContextOfType()",
      "type" : "TODO"
    }
  ],
  "size" : 18,
  "toString" : "18 warnings (high: 14, normal: 4)"
}