Skip to content
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

Version 5.0 #280

Merged
merged 141 commits into from
Feb 3, 2025
Merged

Version 5.0 #280

merged 141 commits into from
Feb 3, 2025

Conversation

bockthom
Copy link
Collaborator

@bockthom bockthom commented Feb 2, 2025

5.0

Announcement

  • coronet is not compatible with igraph versions below 2.1.0 anymore. This is due to the simultaneous deprecation of subgraph.edges and the introduction of the replacement for it, subgraph_from_edges, in igraph version 2.1.0.
  • The plotting module of coronet is not compatible with ggplot2 versions below 3.5.0 anymore. This is due to the simultaneous deprecation of the scale_name parameter of discrete_scale (which is used within the function plot.network of coronet) in ggplot2 version 3.5.0.

Added

Changed/Improved

Fixed

Leo-Send added 30 commits April 17, 2024 15:11
This includes reading and storing the data as well as building author
and artifact networks.

Signed-off-by: Christian Hechtl <[email protected]>
Applied-by: Leo Sendelbach <[email protected]>
Also removed comments and browser statements, as well as added updating
of commit-interaction data when commit data is changed if
commit-interactions are configured

Signed-off-by: Leo Sendelbach <[email protected]>
outdated comment with local data path removed

Signed-off-by: Leo Sendelbach <[email protected]>
Uses 'equals' function on Project Data with new commit-interactions

Signed-off-by: Leo Sendelbach <[email protected]>
new test reads commit-interactions data and asserts its correctness

Signed-off-by: Leo Sendelbach <[email protected]>
An empty file and an example file with four interactions

Signed-off-by: Leo Sendelbach <[email protected]>
Checks that the empty dataframe has correct col and rownames

Signed-off-by: Leo Sendelbach <[email protected]>
Test that commit-interactions are updated when they are configured and
commit data is changed

Signed-off-by: Leo Sendelbach <[email protected]>
Also added some linebreaks

Signed-off-by: Leo Sendelbach <[email protected]>
in 'update.commit.interactions'

Signed-off-by: Leo Sendelbach <[email protected]>
using 'expect_false(isTRUE(all.equal(x, y)))'

Signed-off-by: Leo Sendelbach <[email protected]>
Also change the test to reflect this change

Signed-off-by: Leo Sendelbach <[email protected]>
'update.commit.interactions' no longer duplicates 'base.author' and
'interacting.author' columns

Signed-off-by: Leo Sendelbach <[email protected]>
The merge now always keeps all commit interactions, even if there is no
commit data for them (for example if the commits were made by deleted
users). Also introduced a warning if that happens. Case is tested with
new part in 'test-data.R'

Signed-off-by: Leo Sendelbach <[email protected]>
columns 'base.author' and 'interacting.author' are initialized as NA and
will be overwritten in 'update.commit.interactions'.
Also, introduce check for correctness of returned data frame at the end
of 'read.commit.interactions'.

Signed-off-by: Leo Sendelbach <[email protected]>
Test now checks for 'base.author' and 'interacting.author' as intended

Signed-off-by: Leo Sendelbach <[email protected]>
Function removes lines from commit-interactions that do not contain an
author in either 'base.author' or 'interacting.author'

Signed-off-by: Leo Sendelbach <[email protected]>
Test that a line is removed from a data frame with a missing author

Signed-off-by: Leo Sendelbach <[email protected]>
Test easy construction of an author network with interaction as relation

Signed-off-by: Leo Sendelbach <[email protected]>
Also in 'get.artifact.network.commit.interaction' distinguish between
'file' and 'function' artifact networks

Signed-off-by: Leo Sendelbach <[email protected]>
One simple test for each artifact network configuration (either 'file'
or 'function')

Signed-off-by: Leo Sendelbach <[email protected]>
It now uses the correct vertices depending on the configuration of
either 'file' or 'function'.

Signed-off-by: Leo Sendelbach <[email protected]>
Tests now expect the correct vertex kind

Signed-off-by: Leo Sendelbach <[email protected]>
vertices now have the correct 'kind' attribute
also restructured if statements in artifact network construction

Signed-off-by: Leo Sendelbach <[email protected]>
Same points as before with more references to commits

Signed-off-by: Leo Sendelbach <[email protected]>
Warning is now uniform with other warnings in project

Signed-off-by: Leo Sendelbach <[email protected]>
Also made small changes to testing data to include a commit with
specified function and added a warning that should only occur when the
commit-interaction data was generated incorrectly

Signed-off-by: Leo Sendelbach <[email protected]>
Now uses a custom handler for type 'int' that converts the int to a
string, which lets us read the 'region' value for the commits

Signed-off-by: Leo Sendelbach <[email protected]>
Fix style issues, modify README.md, add small test and add some comments
for clarity

Signed-off-by: Leo Sendelbach <[email protected]>
Also add more available edge attributes to network construction

Signed-off-by: Leo Sendelbach <[email protected]>
bockthom and others added 22 commits January 14, 2025 16:55
Some links to Codeface in our README.md still pointed to siemens/codeface,
which had been archived already two years ago. Instead of these outdated
links, we link to the se-sic/codeface repository now.

This partly addresses #272.

Signed-off-by: Thomas Bock <[email protected]>
Add functions to compute a developer's last activity

Reviewed-by: Maximilian Löffler <[email protected]>
Merged-by: Thomas Bock <[email protected]>
Base implementation for new classification metrics.
Documentation and testing still missing.

Signed-off-by: Leo Sendelbach <[email protected]>
Tests use already existing network, this test cases are quite small.
Additional research into potential rounding errors may be required.

Signed-off-by: Leo Sendelbach <[email protected]>
Add default documentation, same as for already existing
classification methods

Signed-off-by: Leo Sendelbach <[email protected]>
add new entry under 'unversioned"

Signed-off-by: Leo Sendelbach <[email protected]>
Also minor fixes as requested in PR

Signed-off-by: Leo Sendelbach <[email protected]>
Changed ordering in readme

Signed-off-by: Leo Sendelbach <[email protected]>
tests hierarchy with network previously used for another unit test

Signed-off-by: Leo Sendelbach <[email protected]>
formulation change as requested

Signed-off-by: Leo Sendelbach <[email protected]>
NEWS.md now includes update to README

Signed-off-by: Leo Sendelbach <[email protected]>
expanded descripotion of network-based metrics to make clear that
they can be used on any type of network

Signed-off-by: Leo Sendelbach <[email protected]>
also changed some wording issues in NEWS and README

Signed-off-by: Leo Sendelbach <[email protected]>
also corrected copyright headers

Signed-off-by: Leo Sendelbach <[email protected]>
Changed comment explaining potential issues with hierarchy classification

Signed-off-by: Leo Sendelbach <[email protected]>
Putting the verb before the adverb

Signed-off-by: Leo Sendelbach <[email protected]>
implemented feedback on PR

Signed-off-by: Leo Sendelbach <[email protected]>
Additional Core/Peripheral Classification Methods

Reviewed-by: Thomas Bock <[email protected]>
Reviewed-by: Christian Hechtl <[email protected]>
This commit works towards #260.

Signed-off-by: Thomas Bock <[email protected]>
As of `ggplot2` version 3.5.0, the function `discrete_scale`, which is used
for `plot.network` in coronet, does not require a `scale_name` parameter
anymore. Even more, this parameter has been deprecated. Therefore, we also
don't use it any more in coronet. However, as a consequence of this, the
plotting module of coronet requires `ggplot2` version 3.5.0 or higher,
as of now.

Signed-off-by: Thomas Bock <[email protected]>
Signed-off-by: Thomas Bock <[email protected]>
Replace deprecated function calls and parameters

Reviewed-by: Thomas Bock <[email protected]>
@bockthom bockthom added this to the v5.0 milestone Feb 2, 2025
Copy link

codecov bot commented Feb 2, 2025

Codecov Report

Attention: Patch coverage is 91.45729% with 51 lines in your changes missing coverage. Please review.

Please upload report for BASE (master@49c0d2c). Learn more about missing BASE report.

Files with missing lines Patch % Lines
util-plot.R 0.00% 14 Missing ⚠️
util-networks.R 96.09% 13 Missing ⚠️
util-networks-metrics.R 0.00% 10 Missing ⚠️
util-data.R 90.27% 7 Missing ⚠️
util-bulk.R 0.00% 4 Missing ⚠️
util-read.R 94.64% 3 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff            @@
##             master     #280   +/-   ##
=========================================
  Coverage          ?   81.69%           
=========================================
  Files             ?       16           
  Lines             ?     5146           
  Branches          ?        0           
=========================================
  Hits              ?     4204           
  Misses            ?      942           
  Partials          ?        0           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@bockthom
Copy link
Collaborator Author

bockthom commented Feb 3, 2025

Heartfelt thanks to @Leo-Send, @maxloeffler, and @hechtlC for your contributions to this amazing new release of coronet! I will merge right away and release our new version.

@bockthom bockthom merged commit a462006 into master Feb 3, 2025
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants