-
-
Notifications
You must be signed in to change notification settings - Fork 656
Require a package's own tests to pass before allowing a version bump #2777
Comments
@jiahao pointed me to this. There's a lot to like about this proposal. The only problem I see with it is that I occasionally find myself reluctant to comment out tests that are failing for reasons "beyond my control," by which I mean highly-nontrivial upstream bugs that do not affect any of the platforms I depend on (like this one). I nevertheless sometimes would prefer to leave the test there to deliberately annoy myself. But maybe I just need to dig into more flexible testing frameworks? |
If you use the FactCheck package, you can use |
We should add that feature to the base testing support. It should not error but print a loud warning. |
This issue could use more automation. Right now we look over new packages in a pretty arbitrary way, depending on how deeply whoever looks at a proposed package feels like checking. Expanding either the checks on Travis or using an external service to do some quick checks, does your package have a REQUIRE file, LICENSE file, can it be added successfully, does it have unregistered dependencies, does it pass tests, does the case of the top filename match the package and module name, etc. We could start making Travis fail for these, but I think it would almost be better to have a bot leave comments with a link or summary of a package-lint report. Fedora and Debian have lots of little warnings when you make a package, and they're usually right pointing out things you should be fixing. |
👍 for this idea. |
I think the idea of just leaving a comment to the owner is a good practice. |
This is moot and can be closed. |
METADATA.jl is no longer maintained, so I am closing this issue. If this issue is still relevant, please re-open a new issue on the Julia General registry: https://github.com/JuliaRegistries/General |
As discussed at JuliaCon 2015 Thursday evening:
On Julia version bumps (minor or major), all packages would be re-run if the package has no upper limit on julia version compatibility to ensure that its tests still pass:
Pkg.add()
that package on the newer julia version would result in ano version compatible with your julia version exists
or something like thatObviously this is a lot of buildbot/testing infrastructure, but it seems like this would allow the state of METADATA packages to be 100% passing their own tests, with full transparency if changes to julia occur that break the package. The ideal goal here is that a user would never be able to
Pkg.add()
and get a package that "doesn't work" (at least according ot their own tests).A related issue to discuss would be:
The text was updated successfully, but these errors were encountered: