-
Notifications
You must be signed in to change notification settings - Fork 485
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
New package: Kraken v1.2.0 #127181
base: master
Are you sure you want to change the base?
New package: Kraken v1.2.0 #127181
Conversation
JuliaRegistrator
commented
Mar 18, 2025
•
edited
Loading
edited
- Registering package: Kraken
- Repository: https://github.com/vardister/Kraken.jl
- Created by: @vardister
- Version: v1.2.0
- Commit: 297dbdd7a5ceb56562c24a07ab37403556792001
- Reviewed by: @vardister
- Reference: register package to Julia vardister/Kraken.jl#1 (comment)
Hello, I am an automated registration bot. I help manage the registration process by checking your registration against a set of AutoMerge guidelines. If all these guidelines are met, this pull request will be merged automatically, completing your registration. It is strongly recommended to follow the guidelines, since otherwise the pull request needs to be manually reviewed and merged by a human. 1. New package registrationPlease make sure that you have read the package naming guidelines. 2. AutoMerge Guidelines are all met! ✅Your new package registration met all of the guidelines for auto-merging and is scheduled to be merged when the mandatory waiting period (3 days) has elapsed. 3. To pause or stop registrationIf you want to prevent this pull request from being auto-merged, simply leave a comment. If you want to post a comment without blocking auto-merging, you must include the text Tip: You can edit blocking comments to add |
3a5fd07
to
7d5a68d
Compare
UUID: 269dd85f-649c-4475-a373-cd87bf6afec3 Repo: https://github.com/vardister/Kraken.jl.git Tree: 8d15abf20a6cf4084f76e3dfa680095b2035f00b Registrator tree SHA: 17aec322677d9b81cdd6b9b9236b09a3f1374c6a
7d5a68d
to
e36d699
Compare
[noblock] How does this compare to https://github.com/org-arl/AcousticsToolbox.jl? @mchitre |
[noblock] @goerz @mchitre Here is a version of Kraken entirely written in Julia, with extra support for calling the Fortran version through Some parts of this program are also inspired by https://github.com/org-arl/UnderwaterAcoustics.jl, and credit will be given once I finish writing the README file. |
[noblock] @vardister Would it be possible to implement the model API in I noticed that you have so and dll files checked into your repo. This may make things tricky to support different architectures and OSs. You may want to consider using BinaryBuilder infrastructure for native compilation across platforms. |
I would generally ask that the README file is complete before the registration goes through. The general point, is to have a description of the package's purpose and a small usage example in (or linked from) the README. An important part of packages in General is that any potential user can figure out what the package is about and how to get started with using it. That is really difficult when there is a lack of documentation. In the longer term, I definitely recommend setting up a Documenter-based documentation. Before a I also wanted to make a general comment on the name: I haven't been able to find out very much about the original KRAKEN, specifically whether it is an acronym or not. It seems like it is not, but that the uppercase spelling is a remnant of Fortran code using uppercase formatting back in the day. If it was an acronym (and widely recognized as such), That being said, a search shows the "Kraken" is a heavily overloaded name in software projects. At least, there's a popular OCR project, a cryptocurrency exchange, an image optimizer and possibly more. That makes me a little uneasy about monopolizing the name in When you renamed from |
Oh, I also just noticed you are already at a version > 1.0. If you intend to follow semantic versioning, that means your package should have a stable and fully documented API, and that you track breaking and non-breaking changes. In my opinion, the latter requires automated tests with decent coverage. So I would very much recommend that you polish up the package a bit more with full documentation and testing before continuing with the registration. |
I'm not 100% sure if there's a hard rule against compilation artifacts in the So that's probably more of a blocker for the registration of this package than the naming or the state of documentation/testing. |
[noblock]
@mchitre It's absolutely possible! I would be happy to be working with you on that. What's the best channel of communication for you? And thanks for the suggestion about the binary files. I thought I would get by with a Make file, but BinaryBuilder is definitely the way to go. |
[noblock]
You are correct. I will get it back to version 1.0 and start from there. I will polish a test set for this as well.
Good opportunity to work on my README file then!
KRAKEN is just a very well known name for a program in the field of underwater acoustics, and it is referenced in dozens, if not hundreds, of papers in the field. My thinking goes that it would make it much easier for people in the field to recognize the program and understand its implementation, as it is quite similar to the original Fortran version. I will give it some thought though following your comments.
I deleted the binary files. I do have a Make file ready to go. Will try and use it with BinaryBuilder. @goerz Generally, wanted to say thanks for for all the helpful comments! |
[noblock] @vardister I think the suggestion was to go to a pre-release version |
That's one possibility, the other being to go to 1.0 (or keep 1.2), but bringing the documentation and tests into shape, for that label to be justified. Personally, I would usually make the initial public release <1.0. You can still go from, e.g., v0.1 to v1.0 without substantive changes later on, if the original API proves to be useful. However, for a package like this, where the API is determined by the original KRAKEN project, there might be less room for the "experimental" pre-1.0 stage of development. An initial public version 1.0 would then be fine, provided it can live up to the expectations set by semantic versioning.
Just to clarify this further: Different languages have different naming conventions. Especially with compiled languages like Fortran/C++, there's never been a central authority, and names tend towards "short" and also towards acronyms. This is very much not the case with Julia, where the community expectation is mostly for There are exceptions to the naming guidelines for wrappers, or potentially for translations as well. The automatic rule again all-cap names is mainly to protect against random acronyms. At least in my opinion, it should not cover pronounceable acronyms. But still, it doesn't seem like the original KRAKEN is actually an acronym, so I think the more Julian variation of that name, |
I think I will strive towards getting the version down below 1.0.0 as I won't have nearly enough time to get everything in order soon. @goerz Should I go with getting a new issue opened with the registration bot or just commit the new version numbering? @mchitre Would you have a good suggestion for a good package name? |
[noblock] I personally like just |
If you make any changes, you just retrigger the registration the same way you did the original registration. Personally, I just comment In any case, if you change the name of the package or the version number, this will automatically create a new registration PR here (and we would close this PR in favor of the new one). For other things, like updating the documentation, or hypothetically fixing many of the issues that the registration bot flags (like invalid compat bounds), retriggering the registration would update an existing PR. [noblock] |