{"action":"created","issue":{"url":"https://api.github.com/repos/SSEHUB/EASyProducer/issues/28","labels_url":"https://api.github.com/repos/SSEHUB/EASyProducer/issues/28/labels{/name}","comments_url":"https://api.github.com/repos/SSEHUB/EASyProducer/issues/28/comments","events_url":"https://api.github.com/repos/SSEHUB/EASyProducer/issues/28/events","html_url":"https://github.com/SSEHUB/EASyProducer/issues/28","id":105968571,"number":28,"title":"Reasoner finds too many projects for cyclic imports","user":{"login":"eichelbe","id":6482848,"avatar_url":"https://avatars.githubusercontent.com/u/6482848?v=3","gravatar_id":"","url":"https://api.github.com/users/eichelbe","html_url":"https://github.com/eichelbe","followers_url":"https://api.github.com/users/eichelbe/followers","following_url":"https://api.github.com/users/eichelbe/following{/other_user}","gists_url":"https://api.github.com/users/eichelbe/gists{/gist_id}","starred_url":"https://api.github.com/users/eichelbe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eichelbe/subscriptions","organizations_url":"https://api.github.com/users/eichelbe/orgs","repos_url":"https://api.github.com/users/eichelbe/repos","events_url":"https://api.github.com/users/eichelbe/events{/privacy}","received_events_url":"https://api.github.com/users/eichelbe/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/SSEHUB/EASyProducer/labels/IVML%20core","name":"IVML core","color":"d4c5f9"}],"state":"open","locked":false,"assignee":{"login":"eichelbe","id":6482848,"avatar_url":"https://avatars.githubusercontent.com/u/6482848?v=3","gravatar_id":"","url":"https://api.github.com/users/eichelbe","html_url":"https://github.com/eichelbe","followers_url":"https://api.github.com/users/eichelbe/followers","following_url":"https://api.github.com/users/eichelbe/following{/other_user}","gists_url":"https://api.github.com/users/eichelbe/gists{/gist_id}","starred_url":"https://api.github.com/users/eichelbe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eichelbe/subscriptions","organizations_url":"https://api.github.com/users/eichelbe/orgs","repos_url":"https://api.github.com/users/eichelbe/repos","events_url":"https://api.github.com/users/eichelbe/events{/privacy}","received_events_url":"https://api.github.com/users/eichelbe/received_events","type":"User","site_admin":false},"milestone":null,"comments":1,"created_at":"2015-09-11T08:42:55Z","updated_at":"2015-11-11T10:22:26Z","closed_at":null,"body":"A. Krafczy:\r\n\r\nproject MainProject {\r\n\timport Project1;\r\n\r\n\ta = 1;\r\n}\r\nproject Project1 {\r\n\timport Project2;\r\n\r\n\tInteger a;\r\n\ta > 2;\r\n}\r\nproject Project2 {\r\n\timport Project1;\r\n}\r\n\r\nRunning the reasoner on these projects causes too many error messages. This is because Resolver.findImportedProjects() finds Project1 and Project2 more than once.\r\n\r\nResolver.findImportedProjects() uses a Set<Project> to keep track of already found projects, but this doesn't work, since it seems that ProjectImport.getResolved() returns different instances (i.e. different Java objects) for the same projects.\r\n\r\nFor testing purposes, I added a custom equals() method to ModelElement, that compares the qualified name. This almost fixes the problem; Project2 is found only 1 time but Project1 is found 2 times. This indicates that there may be another issue, apart from the different objects for the same project.\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/SSEHUB/EASyProducer/issues/comments/155727052","html_url":"https://github.com/SSEHUB/EASyProducer/issues/28#issuecomment-155727052","issue_url":"https://api.github.com/repos/SSEHUB/EASyProducer/issues/28","id":155727052,"user":{"login":"eichelbe","id":6482848,"avatar_url":"https://avatars.githubusercontent.com/u/6482848?v=3","gravatar_id":"","url":"https://api.github.com/users/eichelbe","html_url":"https://github.com/eichelbe","followers_url":"https://api.github.com/users/eichelbe/followers","following_url":"https://api.github.com/users/eichelbe/following{/other_user}","gists_url":"https://api.github.com/users/eichelbe/gists{/gist_id}","starred_url":"https://api.github.com/users/eichelbe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eichelbe/subscriptions","organizations_url":"https://api.github.com/users/eichelbe/orgs","repos_url":"https://api.github.com/users/eichelbe/repos","events_url":"https://api.github.com/users/eichelbe/events{/privacy}","received_events_url":"https://api.github.com/users/eichelbe/received_events","type":"User","site_admin":false},"created_at":"2015-11-11T10:22:26Z","updated_at":"2015-11-11T10:22:26Z","body":"Sascha added an initial test case..."}}