-
Notifications
You must be signed in to change notification settings - Fork 31
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
More informative changelogs for breaking releases #242
Comments
(The change that broke my code is that EDIT: It also changes the |
Don't forget that this package is a volunteer driven project. If you (or somebody else) have the time to help with testing and writing example for the release notes that would be more than welcome. As in julia, what is considered as public API and covered by semantic versioning is what documented (https://docs.julialang.org/en/v1/manual/faq/#How-does-Julia-define-its-public-API?). If there is anything in the documentation, that is not (or no longer) accurate, please let me know. In the past, also some user have contributed examples in the documentation for some feature they depend on. I think that is a great way to give additional stability to the features that are important to you. But not every observable feature of NCDatasets is considered as public API.
Can you elaborate what was Array-like in In NCDatasets 0.13 I have:
Also in NCDatasets 0.13, you can index ds[:data].attrib[:foo] Let me know if there is something in the documentation that misled you. In any case, please provide minimal reproducible example. It helps me a lot to find what is the issue.
I really agree that this would be useful, but the free time that I can dedicate to this is limited. |
And, I really appreciate your work! Please, don't take this issue as me demanding anything, I have full respect for your time and effort and didn't mean to sound ungrateful. Feel free to ping me before a release if you want me to check compatibility with some CliMA packages. I would be more than happy to test the new version out and sort out potential problems.
Your comment made me have a second look, and indeed I shouldn't have said that is Array-like. From the docs I can clearly see that is Dict-like. The code that stopped working was ERROR: map is not defined on dictionaries
Stacktrace:
[1] error(s::String)
@ Base ./error.jl:35
[2] map(f::Function, #unused#::CommonDataModel.Dimensions{NCDataset{Nothing}})
@ Base ./abstractarray.jl:3293
[3] top-level scope
@ REPL[5]:1
I didn't know Symbols could be used for indexing. I just searched That said, |
Thank for providing this additional information! I will try to ping you when I have a "major" change this this (but sadly, I am sometimes a bit in a rush, if I need to release to code before a workshop...) Yes, I should add the fact that one can use Symbols as keys to the documentation. Good point! Thanks to your example, I have now a better idea what happened. Previously, At the next line of the same file, you see that map is explicitly disallowed for I already added a summary of this info to the release notes of 0.14 as it might help others. |
I also found this:
I can probably open a PR if it is just a matter of adding a type annotation for
|
thanks, I add it to the release notes. |
It would be very useful to have informative release notes for breaking releases with clear instructions on how to move to the new version (more like in version
0.13.0
).For example, in
0.14.0
we haveIt sounds something that might affect me, but I don't understand what this really means. I tried looking at the commits, but that's something I can easily pick up by skimming throw the logs.
(In general, I found that
0.14.0
is incompatible with my code, but I couldn't understand why from the release notes)Ideally, I think the release notes should:
Adding examples allows developers to more easily identify patterns that have to be changed and learn what needs to be done.
Thank you!
The text was updated successfully, but these errors were encountered: