-
-
Notifications
You must be signed in to change notification settings - Fork 28
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
feature request: rename rust_xlsxwriter
into excelwriter
#69
Comments
I am tempted to do this. I started to migrate to the
I can see now that the "brand" have already been diluted in the Rust domain by the existence of an established crate with the same name so I should have used a new name. So, anyway, I am in favour of this but there will be some technical difficulties:
There will probably be a lot of other unintentional gotchas as well but they could be ironed out over time.
|
This is similar to the GitHub stars, it is an indicator to a passerby that the crate is being used and hence some indicator of quality. But a year from now the numbers will be back at a similar level so I am not so worried. Just on downloads. Taking a visual averaging of
By comparison the Python XlsxWriter module has 400,000 daily downloads (averaged over the last year). I don't have a point to make about this, it is just some interesting information. |
Personally I would prefer the derive macro name Thoughs: proc-macros hinder dependency renamingAlthough xlsxwriter = {package = "rust_xlsxwriter", version = "*" }
# or equivalently `cargo add rust_xlsxwriter --rename xlsxwriter` But with derive feature being complete, this trick is strongly discouraged, since it breaks macro hygiene: proc-macros don't know the crate names, specifically proc-macro defined in |
As a compromise how about Something like this: #[derive(ExcelSerialize, Serialize)]
#[serde(rename_all = "PascalCase")]
#[excel(header_format = Format::new().set_bold())]
struct Produce {
fruit: &'static str,
#[excel(num_format = "$0.00")]
cost: f64,
#[serde(skip)]
in_stock: bool,
} |
Cool. It's a good idea. I can come up with several other options:
Among these, I'm lucky not to decide which one to be the final APIs. I'm open to all your thoughs. ❤️ |
At the end I think it depends on what's your plan for the future. If you plan to keep both Once the library name decision is finalized, maybe the trait name and annotation tag should be aligned. In case of These of course are just my 2 cents, I'm also happy not to have to decide... but you can be certain that this library will be great anyway! |
Thanks for the input folks. I'm going to go with I'll make the changes and start prepping the proc macros for release. It needs to be released separately as a crate and then set as a dependency in rust_xlsxwriter (main)$ cargo publish --dry-run
Updating crates.io index
error: all dependencies must have a version specified when publishing.
dependency `rust_xlsxwriter_derive` does not specify a version
Note: The published dependency will use the version from crates.io,
the `path` specification will be removed from the dependency declaration. Once that is done and working I'll start prepping |
This change has now been made on main. |
Not exactly. I intend to continue adding to and maintaining the C/Python/Rust/Perl versions. |
Folks, I've change my mind again on renaming I am one month short of 10 years maintaining the Python version (released February 17 2013) and that eventually reached critical mass as well. At some point in time people started asking Closing as won't fix. |
Feature Request
The reasons for this feature request were discussed here:
I would suggest to change name into
excelwriter
, for two reasons. The first one is to reduce library and path name lengths, as suggested by @zjp-CN. The second one, in my opinion even more important, is to make this project much more reachable and to avoid confusion with the other existing*xlsxwriter
libraries.I remember the first time I was looking for a library to use in my code, I started my research on
crates.io
with theexcel
keyword, before thexlsx
keyword. Then, it was quite difficult to orient myself among the*xlsxwriter
libraries, and to finally understand thatrust_xlsxwriter
was the best one. Even nowadays, when I googlerust_xlsxwriter docs
, the linkxlsxwriter - Rust
comes beforerust_xlsxwriter - Rust
, and this is an additional source of confusion. Now I know the difference, but I can imagine new users getting confused among these two Rust libraries, andlibxlsxwriter
.You now have 88k downloads, it is unfortunate to loose them but soon you will have much more, and I think changing name will help that. It may actually be the last opportunity to think about this. You are now implementing these Serde integration features which will be a game changer. You could freeze the
rust_xlsxwriter
development at release v0.6.0, and notify that all new features will be implemented inexcelwriter
. I think this is still possible, and if you need some help in changing name references I could help.The text was updated successfully, but these errors were encountered: