Comments (13)
Now with a section called testing improvements
from dagmc.
Currently the releaser has to write all the review text, with this approach the releaser would just have to read the auto-generated text and delete minor PRs. They can also correct the names of PR.
Not really true. RIght now the author of the PR has to contribute to the release text. There is almost no work to do on the part of the releaser!
from dagmc.
This could potentially create more work for the releaser where it makes sense for multiple PRs to be included in the same change entry. That is, it's not uncommon for us to have multiple PRs that all relate to a single conceptual change, that may be best referred to in a single change entry. This occurs when tweaking CI configurations and/or iterating to asymptotically improve some new feature. Right now the PR author can choose to introduce a delta in the Changelog by just adding the PR number to an existing line in the Changelog. Using the automated tools, those will necessarily be 2 different entries. Moreover, those entries may be removed from each other in the autogenerated list, possibly being a little confusing for readers. At the very least, I'd like to see them grouped near each other, and ever better would be merging them into a single entry. The releaser will have to do this work, and so I anticipate that it won't happen. I recognize that this may be a rather controlling view, and many of you may not care as much about this. If there is a strong community sense that this is not important, I'll follow along with that.
from dagmc.
I'm very on board w/ this @shimwell! Good motivation for using labels in our PRs and issues more consistently. I also like that it will reduce noise in our commits.
Question and thought:
- Is there a way to label PRs so they don't appear in release notes? We probably don't want trivial PRs w/ typo fixes to appear in the release summary, for example.
- We'll want to update our developer's guide and PR template to note that the PR title and labels now matter.
One fundamental change in adopting this approach is that the changelog is no longer part of the repository itself, meaning we're relinquishing our summary of changes to GitHub. I'm okay with that since we always have the git history itself and the changelog is tied to GitHub itself.
from dagmc.
My only concern is at the intersection of @pshriwise's question about omitting small/trivial PRs. In our current paradigm, the PR number can be associated with another related entry in the CHANGELOG. If feature is added in PR X and a small tweak/improvement/bug fix to that code is in PR Y, we can list both (X, Y) in the line for that feature.
We could do this manually at release? But that is trading off distributed manual labor at the time of PR for concentrated manual labor at the time of release.
from dagmc.
Look at PR 170 & 172 in the screenshot above, for example...
from dagmc.
In the situation where we have a tiny PR which we don't want to include then we can just delete that line of text from the auto-generated text.
Currently the releaser has to write all the review text, with this approach the releaser would just have to read the auto-generated text and delete minor PRs. They can also correct the names of PR.
from dagmc.
Thanks for spotting those small PRs I have edited the release text to remove them 😄
No more PR 170 or 172 in the release details
from dagmc.
@pshriwise - there seems to be some nice control over which PRs get included with labels, and the ability to have sections in this with certain labels mapped to certain sections. E.g. Additions vs Bug Fixes vs Build System, etc...
from dagmc.
@pshriwise - there seems to be some nice control over which PRs get included with labels, and the ability to have sections in this with certain labels mapped to certain sections. E.g. Additions vs Bug Fixes vs Build System, etc...
Nice! I was hoping so. Just wanted to check.
from dagmc.
Yeah, it looks like this feature would do the trick!
changelog.categories[*].exclude.labels | A list of labels that exclude a pull request from appearing in this category.
from dagmc.
If we do make this change, we'll want to make some intentional decisions about how we review PRs to include:
- review of the PR title to be appropriate for inclusion in the change log
- review of the PR tags to allow us to use specific tags to group the change log in semantically meaningful ways as we do now
from dagmc.
Perhaps we can add a check box to PULL_REQUEST_TEMPLATE, somthing like this
- PR has meaningful title
from dagmc.
Related Issues (20)
- DAGMC not compatible with Geant4 v11.1.1 HOT 2
- DBUILD_MW_REG_TESTS requires h5m models that can't be found as URL missing HOT 9
- Add information on representation of metadata and topological relationships HOT 2
- dagmc tet mesh tallies 5.5x higher when run with MPI version of dag-mcnp6.2 HOT 6
- Remove DagMC class from MOAB namespace HOT 1
- Tests build with installed version of DAGMC if present HOT 8
- Windows Build Failure with Gtest HOT 7
- Can we detect sheet bodies?
- test dagmc compile with double down in Docker file CI
- Build error HOT 11
- CI requires contributors to build/publish packages
- Add CI soft test for newer/newest HDF5 version HOT 3
- Docker build error HOT 3
- Review HDF5 dependencies HOT 4
- Implicit Complement Position in DAGMC Indices HOT 4
- Allow implicit complement material assignment on empty group/block
- Switch to default `FindMOAB.cmake` HOT 7
- Surface has no facets warning HOT 7
- Failiure to build DAGMC with Double Down HOT 1
- Integration of FLUKA with DAGMC in CI HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dagmc.