-
Notifications
You must be signed in to change notification settings - Fork 154
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tracking tasks related to supporting other types of remote repo URLs in PR#1644 #1726
Comments
Hi, I wonder if this is still ongoing and if I can attempt it? I have an idea for the 2nd point regarding |
Hi @chan-j-d, any update on this? |
Hi @SkyBlaise99, apologies I missed your original message. You're welcome to attempt any of them! Do update me if you're attempting any of the others. |
@chan-j-d I have a question regarding my part about the backward compatibility. Would you like the program to just be able to read from older |
The part on the backward compatibility might involve changing quite a lot of the codes. Currently the parsers recognize the header using the What I have in mind is to change this into an array that stores both the new and old headers. So something like private static final String[] GIT_ID_HEADERS = {"Author's Git Host ID", "Author's GitHub ID"}; Doing so will allow the parser to scan through the array to ensure that none of the headers match. Good side to this will be that this can then be extended to any headers if we wish to change in the future. Down side will also be that I might need to change quite a bit of the code base. What do you think? |
I think I prefer the first solution, allowing the program to read the additional header. If I'm understanding what you mean by the second solution correctly, I think updating the user's file is not a simple task. What I had in mind is more in line with what you're suggesting in the next comment though I didn't actually think it would require a lot of changes. |
Ok noted.
For this, I had already given it a quick try. Basically when I change to For example, Essentially, I'm expecting to change the return type of these 2 abstract methods to a I'll try to get a PR up by mid of next week then you can see what I mean. Update: I think I found a way to achieve fewer changes. |
I'm giving part 4 a try also. |
@SkyBlaise99 sure, you have been assigned it. |
Any chance there is some dummy repo from gitlab and bitbucket to be used directly? |
For part 3, does unsupported links refer to those links other than github, gitlab and bitbucket? If so, I can just do it together with part 4 to avoid future merge conflict. Something like this for warning message? (just for example, I know GitHub is supported) Also, since I'm testing if the icons are indeed working, part 5 is kind of covered as well. Currently able to get all 3 icons out correctly. The default icon |
There currently exists an issue #1689 documenting broken report links. You could see if it makes sense to fix those issues with this one, and possibly add details / discussion @SkyBlaise99. |
@SkyBlaise99 Yes, #1801 does look like a separate issue from #1689. Task 3 in this issue on unsupported links seems fairly broad, so a fix would likely need to address both #1801 (probably unsupported unless the profile pages exist) and #1689 (definitely unsupported currently) in some fashion. |
A bit confusing to me. I need to clarify this first. I raised #1801 because the supported repos' links are not working. Unless I didn't understand what 'supported' here refers to. I believe that Github, Gitlab, and Bitbucket are the only 3 supported currently, is that corrected? On that basis, the current situation is as such: Github: authors link working For Gitlab, there is a link to authors profile, but not the url that is currently used, hence leading it to 404. So there is a need to update the For Bitbucket, I cannot find the profile page. So perhaps we can hide it until someone manage to find the correct link. Then follow as above. The fix for #1801 should be oriented on getting the correct link, and not hiding the button like mentioned in #1689. So a fix for #1689 and maybe task 3 shouldn't be able to fix #1801. Essentially, to fix #1689, your proposed way is to remove or hide the button. To fix #1801, my proposed way is to fix the url. |
@SkyBlaise99 oh yes, apologies for the confusion (I should have specified what I was responding to). I meant to suggest that the two issues are in fact separate with separate fixes. I was responding to your earlier reply to this issue on part 3's warning message where issue #1689 would be relevant. Regarding the meaning of 'unsupported' I think we can discuss if it's worth the trouble explicitly handling the Bitbucket profile links the same way we do the non GitHub/GitLab/Bitbucket links |
@gok99 OK now I get what you mean. For task 3, I agree it is similar to #1689. In fact the only difference should be the handling of merge conflict actually. Perhaps @chan-j-d can take a look and decide what to do with task 3. As for #1801, I agree that more discussion would be needed before implementing the solve. We can discuss more there. |
Apologies for the confusion. My original intention with part 3 was a direct result of the way I implemented handling of remote repo link generation that isn't GitHub, GitLab or BitBucket in that the user is redirected to a URL that is some variant of Also for this,
Probably shouldn't combine PRs together just to avoid merge conflicts. Separating allows for easier independent reviews and more atomic commits. The two parts are quite different in their functions. |
Ok, but my part 4 indirectly covers part 5 as a result of me adding the new repos to try out if the icons are working. But I think this is fine? |
I don't think part 5 is quite that simple. I'll mention first that I was not the one who thought of part 5 for this issue. My understanding of it would be to not just add gitlab and bitbucket repos to Perhaps @dcshzj can help clarify |
@dcshzj any updates on part 5? |
Currently, 'database' is used as the generic icon for all repository types. As we allow more repository types, it will be clearer to the user if the icon reflects the repository used. Currently we are supporting 'GitHub', 'GitLab', and 'BitBucket'. 'database' icon is kept as the default icon for repositories that does not belong to any of the above mentioned. Let's use the respective icons for known repository types.
Hello @SkyBlaise99, my apologies. I can't remember exactly the context when I added part 5, but I believe my intent was to add more repositories that clones from other git hosting providers. It does not necessarily need to be test repos, but just a generic repository so that we can verify that RepoSense works for places other than GitHub. With #1800, it also helps to ensure that code designed for other git hosting providers are not broken. I think it would be sufficient for now to pull from repositories not connected to RepoSense, and are small enough that it does not cause our builds to take too long. If there is sufficient need in the future, we can look at creating the RepoSense organizations in the other git hosting platforms. |
So I take it that part 5 is purely adding 2 repos that are not GitHub and testing out if the current code is able to work with them? Then how about my proposed solution for part 5 above? Just add 2 dummy repos I created? Would there be needs for more test cases? |
Yup I think using 2 dummy repos is sufficient, I doubt there would be more test cases needed. |
Ok. In that case, can you assign me part 5 and I'll add my test repos back @chan-j-d? Also, can you try accessing the GitLab repo again to double-check if it is now made public? |
It has been assigned to you. I would request that you also add some commits to the dummy repos such that when it shows up in the dashboard, there are also commits to click on in order to test those links |
I think I already have 1 commit for both repos (updating of |
Maybe get it up to about 5. I don't think this might happen but having multiple different commits to test on would give me more confidence |
Sure. I will make something up haha |
…osense#1800) Currently, 'database' is used as the generic icon for all repository types. As we allow more repository types, it will be clearer to the user if the icon reflects the repository used. Currently we are supporting 'GitHub', 'GitLab', and 'BitBucket'. 'database' icon is kept as the default icon for repositories that does not belong to any of the above mentioned. Let's use the respective icons for known repository types.
Previously, Reposense is only used with GitHub, hence "Author's GitHub ID" was used as the header in author-config.csv. This header should be updated as we expand Reposense to be compatible with other platforms. Meanwhile, we would also like to still support the older version of author-config.csv that uses "Author's GitHub ID". Let's update the header of author-config.csv to "Author's Git Host ID" while maintaining backward compatibility to the older version that still uses the "Author's GitHub ID" header.
Currently, only GitHub repos are used for testing. As we allow more repository types, we should also include repos from other platforms that we now support, namely GitLab and BitBucket. Let's add GitLab and BitBucket repositories for testing.
@chan-j-d Do you think the one remaining task would be suitable for first-timers? |
This seems like a pretty mundane and tedious task for first timers. I think not as it is not immediately obvious what is expected and how to go about doing it. I should really go about to finishing this soon. |
* [#2027] Fix date range bug (#2034) Currently, users are unable to select a zoom range that includes the until date. This results in misleading data being presented to users. * [#2039] Update cypress minimum requirement to 12.15.0 (#2041) Chrome bug is causing cypress to fail to open a browser on Github Actions, causing frontend tests and CI to fail. Upgrading cypress to greater than 12.15.0 will fix this issue. Let's upgrade cypress to fix the failing CI. * [#1936] Migrate c-segment.vue to typescript (#2035) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate the rest of the JavaScript code to TypeScript code to facilitate future changes to the code. * [#1936] Migrate load-font-awesome-icons.js to typescript (#2040) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate the rest of the JavaScript code to TypeScript code to facilitate future changes to the code. * [#2045] Fix cypress zoom feature test (#2047) Currently, Cypress zoom feature tests are failing due to a recent change in behavior caused by a bug fix. With the tests failing, we are unable to detect any future regressions. Let's update the Cypress tests to test for the new intended behavior. * [#1936] Migrate random-color-gen.js to typescript (#2043) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate random-color-generator.js JavaScript code to TypeScript code to facilitate future changes to the code. * [#1936] Migrate c-segment-collection.vue to typescript (#2036) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate the rest of the JavaScript code to TypeScript code to facilitate future changes to the code. * [#1936] Migrate c-resizer.vue to typescript (#2038) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate the rest of the JavaScript code to TypeScript code to facilitate future changes to the code. * Bump zod from 3.20.6 to 3.22.3 in /frontend (#2048) Bumps [zod](https://github.com/colinhacks/zod) from 3.20.6 to 3.22.3. - [Release notes](https://github.com/colinhacks/zod/releases) - [Changelog](https://github.com/colinhacks/zod/blob/master/CHANGELOG.md) - [Commits](colinhacks/zod@v3.20.6...v3.22.3) --- updated-dependencies: - dependency-name: zod dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump @cypress/request and cypress in /frontend/cypress (#2042) Bumps [@cypress/request](https://github.com/cypress-io/request) to 3.0.1 and updates ancestor dependency [cypress](https://github.com/cypress-io/cypress). These dependencies need to be updated together. Updates `@cypress/request` from 2.88.12 to 3.0.1 - [Release notes](https://github.com/cypress-io/request/releases) - [Changelog](https://github.com/cypress-io/request/blob/master/CHANGELOG.md) - [Commits](cypress-io/request@v2.88.12...v3.0.1) Updates `cypress` from 12.17.4 to 13.3.0 - [Release notes](https://github.com/cypress-io/cypress/releases) - [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md) - [Commits](cypress-io/cypress@v12.17.4...v13.3.0) --- updated-dependencies: - dependency-name: "@cypress/request" dependency-type: indirect - dependency-name: cypress dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * [#1936] Migrate c-ramp.vue to typescript (#2037) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate the rest of the JavaScript code to TypeScript code to facilitate future changes to the code. * Give partial credit if annotated author is not the same as the blame author * [#2054] Fix zoom view bug (#2055) Currently, when granularity is set to day or week, clicking on a ramp will open up a zoom view where commit messages are not being displayed and sorting by insertions does not result in any sorting. Let's fix the unintended behaviour of the zoom view. * [#1936] Migrate repo-sorter.js to typescript (#2052) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate repo-sorter.js to TypeScript code to facilitate future changes to the code. * [#1936] Migrate safari_date.js to typescript (#2053) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate safari_date.js to TypeScript code to facilitate future changes to the code. * Remove frontend JS lint (#2063) Currently, frontend linter is failing due to lint scripts checking javascript files, the last of which has been removed in PR #2053. Lets update the lint command to exclude javascript files front the check. * use full and partial credit color * [#1929] Add dynamic positioning support for tooltips (#2056) Currently, most tooltips are shown above buttons and text. When these tooltips appear at the top of the viewport, part of the tooltips will not be rendered. Let's implement changes such that these tooltips appear below the text or button, when appearing at the top of the viewport. * Add test cases for annotated author overriding last author's credit * revert merge from master * revert merge from master 58b7002 * [#1928] Fix tooltip zIndex such that it doesn't occlude next file title (#2057) Currently, if one hovers over a tooltip of the pinned title of a file whose content is scrolled almost completely, such that the title of the next file is just below the pinned title, the tooltip is not displayed appropriately, as the title of the next file obstructs it. Let's fix this issue. * [#1726] Update GitHub-specific references in codebase and docs (#2050) There are still leftover references specific to GitHub on parts of the codebase and docs that have been generalized to accept other remote git hosts. Let's update these GitHub references to use more general language. * Trigger workflow * Revert "Merge branch 'master' into 944-analyze-authorship" This reverts commit 950c912, reversing changes made to 4bd05a7. * fix frontend test failing --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: jq1836 <95712150+jq1836@users.noreply.github.com> Co-authored-by: Chan Jun Da <65345505+chan-j-d@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Pratham Jain <71367149+pratham31012002@users.noreply.github.com>
* [#2027] Fix date range bug (#2034) Currently, users are unable to select a zoom range that includes the until date. This results in misleading data being presented to users. * [#2039] Update cypress minimum requirement to 12.15.0 (#2041) Chrome bug is causing cypress to fail to open a browser on Github Actions, causing frontend tests and CI to fail. Upgrading cypress to greater than 12.15.0 will fix this issue. Let's upgrade cypress to fix the failing CI. * [#1936] Migrate c-segment.vue to typescript (#2035) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate the rest of the JavaScript code to TypeScript code to facilitate future changes to the code. * [#1936] Migrate load-font-awesome-icons.js to typescript (#2040) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate the rest of the JavaScript code to TypeScript code to facilitate future changes to the code. * [#2045] Fix cypress zoom feature test (#2047) Currently, Cypress zoom feature tests are failing due to a recent change in behavior caused by a bug fix. With the tests failing, we are unable to detect any future regressions. Let's update the Cypress tests to test for the new intended behavior. * [#1936] Migrate random-color-gen.js to typescript (#2043) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate random-color-generator.js JavaScript code to TypeScript code to facilitate future changes to the code. * [#1936] Migrate c-segment-collection.vue to typescript (#2036) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate the rest of the JavaScript code to TypeScript code to facilitate future changes to the code. * [#1936] Migrate c-resizer.vue to typescript (#2038) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate the rest of the JavaScript code to TypeScript code to facilitate future changes to the code. * Bump zod from 3.20.6 to 3.22.3 in /frontend (#2048) Bumps [zod](https://github.com/colinhacks/zod) from 3.20.6 to 3.22.3. - [Release notes](https://github.com/colinhacks/zod/releases) - [Changelog](https://github.com/colinhacks/zod/blob/master/CHANGELOG.md) - [Commits](colinhacks/zod@v3.20.6...v3.22.3) --- updated-dependencies: - dependency-name: zod dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump @cypress/request and cypress in /frontend/cypress (#2042) Bumps [@cypress/request](https://github.com/cypress-io/request) to 3.0.1 and updates ancestor dependency [cypress](https://github.com/cypress-io/cypress). These dependencies need to be updated together. Updates `@cypress/request` from 2.88.12 to 3.0.1 - [Release notes](https://github.com/cypress-io/request/releases) - [Changelog](https://github.com/cypress-io/request/blob/master/CHANGELOG.md) - [Commits](cypress-io/request@v2.88.12...v3.0.1) Updates `cypress` from 12.17.4 to 13.3.0 - [Release notes](https://github.com/cypress-io/cypress/releases) - [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md) - [Commits](cypress-io/cypress@v12.17.4...v13.3.0) --- updated-dependencies: - dependency-name: "@cypress/request" dependency-type: indirect - dependency-name: cypress dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * [#1936] Migrate c-ramp.vue to typescript (#2037) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate the rest of the JavaScript code to TypeScript code to facilitate future changes to the code. * Give partial credit if annotated author is not the same as the blame author * [#2054] Fix zoom view bug (#2055) Currently, when granularity is set to day or week, clicking on a ramp will open up a zoom view where commit messages are not being displayed and sorting by insertions does not result in any sorting. Let's fix the unintended behaviour of the zoom view. * [#1936] Migrate repo-sorter.js to typescript (#2052) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate repo-sorter.js to TypeScript code to facilitate future changes to the code. * [#1936] Migrate safari_date.js to typescript (#2053) Currently, there is still some JavaScript code which remains unmigrated. This allows for type unsafe code to be written, potentially resulting in unintended behavior. Let's migrate safari_date.js to TypeScript code to facilitate future changes to the code. * Remove frontend JS lint (#2063) Currently, frontend linter is failing due to lint scripts checking javascript files, the last of which has been removed in PR #2053. Lets update the lint command to exclude javascript files front the check. * use full and partial credit color * [#1929] Add dynamic positioning support for tooltips (#2056) Currently, most tooltips are shown above buttons and text. When these tooltips appear at the top of the viewport, part of the tooltips will not be rendered. Let's implement changes such that these tooltips appear below the text or button, when appearing at the top of the viewport. * Add test cases for annotated author overriding last author's credit * revert merge from master * revert merge from master 58b7002 * [#1928] Fix tooltip zIndex such that it doesn't occlude next file title (#2057) Currently, if one hovers over a tooltip of the pinned title of a file whose content is scrolled almost completely, such that the title of the next file is just below the pinned title, the tooltip is not displayed appropriately, as the title of the next file obstructs it. Let's fix this issue. * [#1726] Update GitHub-specific references in codebase and docs (#2050) There are still leftover references specific to GitHub on parts of the codebase and docs that have been generalized to accept other remote git hosts. Let's update these GitHub references to use more general language. * Trigger workflow * Revert "Merge branch 'master' into 944-analyze-authorship" This reverts commit 950c912, reversing changes made to 4bd05a7. * fix frontend test failing * switch to originality score and threshold * update originality threshold * revert frontend code changes --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: jq1836 <95712150+jq1836@users.noreply.github.com> Co-authored-by: Chan Jun Da <65345505+chan-j-d@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Pratham Jain <71367149+pratham31012002@users.noreply.github.com>
The following are a list of necessary tasks related to but not implemented in PR#1644. This issue is meant to document and track the necessary changes.
author-config.json
column headerAuthor's GitHub ID
toAuthor's Git Host ID
while maintaining backward compatibility with olderauthor-config.json
files that still useAuthor's GitHub ID
column header[Frontend] Add message or warning when unsupported links are clicked to notify user that the link is not supportedThe text was updated successfully, but these errors were encountered: