Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Added high-level diagrams#30135

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Closed
ivanmilevtues wants to merge1 commit intomatplotlib:mainfromCodeBoarding:main

Conversation

ivanmilevtues
Copy link

I love matplotlib, however as many other projects that I love it is quite hard to contribute as the project is big and feels intimidating at the begining. That is why I want to improve this on-boarding (get-to-know) process for all people who want to help the OSS community.

This PR adds auto-generated high-level diagrams and component-level documentation using CodeBoarding, aimed at improving developer onboarding by making it easier to get to know the codebase and lowering the barrier to contribution.

We would love to hear what you think about the generated diagrams — feedback is more than welcome. If you are interested in this, please feel free to reach out to me.

added high-level diagrams to help people navigate the codebase.
Copy link

@github-actionsgithub-actionsbot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

Thank you for opening your first PR into Matplotlib!

If you have not heard from us in a week or so, please leave a new comment below and that should bring it to our attention. Most of our reviewers are volunteers and sometimes things fall through the cracks.

You can also join uson gitter for real-time discussion.

For details on testing, writing docs, and our review process, please seethe developer guide

We strive to be a welcoming and open project. Please follow ourCode of Conduct.

@rcomer
Copy link
Member

Thank you for the potential contribution. Is there a workflow for keeping these markdown files up-to-date? In particular, they include links to specific lines of code, which will change frequently.

@WeatherGod
Copy link
Member

WeatherGod commentedJun 3, 2025 via email

It should be noted that Codeboarding uses LLMs for generating its outputs.Seems like one would have to regularly rerun it to keep the documents up todate, along with extensive review of LLM-generated content.
On Tue, Jun 3, 2025 at 11:42 AM Ruth Comer ***@***.***> wrote: *rcomer* left a comment (matplotlib/matplotlib#30135) <#30135 (comment)> Thank you for the potential contribution. Is there a workflow for keeping these markdown files up-to-date? In particular, they include links to specific lines of code, which will change frequently. — Reply to this email directly, view it on GitHub <#30135 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AACHF6FWTD3MVLGIHSX2J633BW647AVCNFSM6AAAAAB6QDKCQ6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDSMZWGA2DGOBXGA> . You are receiving this because you are subscribed to this thread.Message ID: ***@***.***>
rcomer and ivanmilevtues reacted with thumbs up emoji

@oscargus
Copy link
Member

I was just about to comment something similar.

Nice tool, but I think a potentially better way is to link to CodeBoarding as a potential resource to understand the codebase better. Not sure if it is possible to create a direct link?

It seems like the idea is not really to run this in CI, which is a bit unfortunate (even without the proofing aspects).

Probably, they would benefit from linking to the documentation through Sphinx inventory files to handle line numbers that way. (And then have doc-build use the source link feature.) In that way, one does not have to update the LLM part (plus proofing), and thet will link to the documentation, from which one can find the code. An additional step, but more consistent.

rcomer and jklymak reacted with thumbs up emoji

@tacaswell
Copy link
Member

We do already have inheritance diagrams in the reference docs:https://matplotlib.org/stable/api/artist_api.html and the reference docs already include (version pinned) links back to GH for the source.

It looks like these are just stand-alone files? Is there a plan to integrate them into the docs build?

@oscargus
Copy link
Member

After a closer look at the generated text, I must second the statement:

" I am impressed with AI in topics I do not know much about, but in topics I know about, it is flawed."

ivanmilevtues reacted with thumbs up emojircomer, jklymak, tacaswell, ivanmilevtues, and timhoffm reacted with laugh emoji

@anntzer
Copy link
Contributor

Frankly, the text is pretty poorly written, unhelpful, and in some places just plain wrong (e.g., saying that errorbar is based on Line2D is quite a stretch).

jklymak and ivanmilevtues reacted with thumbs up emoji

@ivanmilevtues
Copy link
Author

ivanmilevtues commentedJun 3, 2025
edited
Loading

Hey all,
Thanks for all the responses. The project is just in the beginning and the road ahead is still to be decided.

What you say with the workflow makes a lot of sence, I definetely agree with you that the line references have to be updated whenever change happen - that is why we decided to go into the direction of having the diagrams in VSCode. We are doing the extension right now -screenshot

Further I definetely agree with the statements about AI (being unreliable), that is why we are trying to leverage a lot of static analysis for the diagram itself. For the supporting text, do you think it is too short? (This is partially the reason why it can be too vague at times which can lead to over-generations or over-focussing and missing the point).

Would love to hear what is your opinion on having the VSCode extension vs having the static (often updated) documentation!

@timhoffm
Copy link
Member

I believe statically adding AI generated architecture to our docs is the wrong way. If we add something, it must be high-quality and mostly error-free. At least for now, this requires manual curation. OTOH AI tools can be used to dynamically explore the code base.

jklymak reacted with thumbs up emoji

@tacaswell
Copy link
Member

I'm going to go ahead and close this for now.If (and a that is a big if) we were going to go the route of adding AI generated summaries to our docs I would expect the tool chain to be open source and wrapped in a sphinx extension not statically generated files (completely leaving aside the quality issue).

Digging a bit, it looks like CodeBoarding is a startup that you are associated with@ivanmilevtues (https://github.com/CodeBoarding?q=&type=source&language=&sort= only shows a repo of generated output and it looks like you opened similar PRs to a bunch of projects)? If so I am disappointed about the lack of disclosure about that. With that context this feels less like trying to help the project and more like uncompensated (and un-notified) market/product research.

That said, you deserve a better response thanpsf/requests#6958 .

rcomer reacted with thumbs up emojiivanmilevtues reacted with heart emoji

@ivanmilevtues
Copy link
Author

ivanmilevtues commentedJun 4, 2025
edited
Loading

Thank you for the response@tacaswell. And thanks to everyone for the feedback, I've already written it down and we will definetly try to refine the explanations for each component!

Thanks for also giving feedback that we should disclose the relationship with CodeBoarding. From now on I will also mention it more explicititly. At the moment it is more of an idea and we are still trying to navigate what will be useful for people and we didn't want to seem like a sales team as it is just me and a friend who noticed the problem and checking if we can do something about it :).

And again, thank you all! I will be back after sometime with our improved generations, also the github action workflow is something that we will take a look into!

Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers

@github-actionsgithub-actions[bot]github-actions[bot] left review comments

Assignees
No one assigned
Labels
None yet
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

7 participants
@ivanmilevtues@rcomer@WeatherGod@oscargus@tacaswell@anntzer@timhoffm

[8]ページ先頭

©2009-2025 Movatter.jp