8 ms·
Bad naming.. WHAT(1) BSD General Commands Manual WHAT(1) NAME what -- show what versions of object modules were u
by lazyjones 7y ago
Bad naming..
WHAT(1) BSD General Commands Manual WHAT(1)
NAME
what -- show what versions of object modules were used to construct a file
(MacOS ...)
- mobilemidget 7y agocargo install what (fails) Package `trust-dns-proto v0.18.0` does not have these features: `tokio-compat` (MacOS 10.15.2)
- djsumdog 7y agoThis is one of the biggest problems I've had with any neat Rust thing posted up here. The language changes a lot. I have rust/cargo 1.37.0 installed (it's the latest marked stable in Gentoo) and adler32 v1.0.4 fails to compile with "`core::slice::<impl [T]>::len` is not yet stable as a const fn". I'm installing 1.40.0 from the unstable tree to see if that will build it. I've had situations where I'm either not on the latest version of rust, or I'm on too current a version of rust, which deprecated/removed some feature needed for a dependency. I'm not sure if devs can define their min/max versions, but that kinda check should probably be done before cargo starts building packages.
- StavrosK 7y agoAgreed, and I had the same problem. It seems like an easy fix to add a requires_rust_version thing in Cargo.toml, and devs could at least set it to "the version I'm currently using" so we know it's guaranteed to build on that.
- steveklabnik 7y agoIt’s not that easy; the real world has a lot of complexity. That said, we finally did accept a design for this in October; it’s not clear when it’s going to land though.
- StavrosK 7y agoBecause of dependencies, you mean? Even an indication of "this builds fine for me at version X" would be good.
- steveklabnik 7y agoTons of stuff. Various aspects of dependencies, for example, should this affect resolution? Is this a semver range? A minimum version? Is whatever we choose reasonably forward compatible for any extensions we might pick in the future? Can you write `cfg` attributes based on versions? Many of the same questions apply there. Etc etc etc. It took about a year to get stuff figured out.
- codetrotter 7y agoI also suspect that if the plan is to add this as an attribute that developers put in Cargo.toml then there will be a lot of packages that will have the value set to a higher version than need be. Speaking for myself, I don't know in which exact version of Rust the features that I use was first introduced, and I don't think anyone else knows that either if they use a lot of different Rust language features. So if I were to add a minimum required version to Cargo.toml for the crates that I put out, I would for sure end up putting the current stable version that I am using myself. In practice I think that is probably fine, but also a bit unfortunate in a way, that anyone using an older version of Rust, such as those using distro packaged Rust will see Cargo tell them they can't build and run my crate, because I set minimum version to say 1.40.0, and they are using 1.37.0, but actually I might happen to not be using any features beyond what was available in 1.35.0 or whatever in some random crate of mine, but I don't know that and I don't wish to test every change I make to my crates in a bunch of older versions of Rust also because that would slow me down considerably. On the other hand, if the Rust Team had the resources for it, could the crates.io service be made to detect minimum version of Rust needed based on the features used? Probably a lot of work I would guess. Doubly so when considering different feature flags and other cfg switches. Again, I don't know the plans you have for how to do it so maybe you are already planning to do it that way but, you guys sometimes run builds on basically all of the crates on crates.io, don't you? Would it be feasible that the crates.io service runs a background service that builds each crate with a few different versions of Rust and records the build results and possibly test results into the meta data for the crates on crates.io? I think that would probably require a lot of server time, and therefore likely cost too much to be possible but it would have been really cool if it was doable.
- zlynx 7y agoJust a nitpick: Rust 1.40 seems to be the stable version for a couple of weeks now.
- mlindner 7y agoThere's no such thing as a "too current a version of rust". All Rust compilers (since 1.0) compile all previous versions of code and will continue to do so. In the rare case you might hit something that was removed/modified because of a security exploit, but those are very very rare.
- edflsafoiewq 7y agoThis is not true in practice. Old code has failed to compile for various reasons; off the top of my head, new additions to the prelude, and denied lints that became more restrictive. It's not super rare.
- bluejekyll 7y agoFirst, it’s really cool that their using trust-dns! Second, they probably want to upgrade to the 0.18 release. It’s interesting that the cargo.lock file didn’t restrict the package versions for this case. Anyway, this tool should probably upgrade to the current 0.18 release now that it’s out, if possible.
- Symbiote 7y ago'whence' would be more specific – it's archaic in English, it means 'from where' – although it's used within the ksh shell.
- xorcist 7y agozsh also implements whence
- bitlevel 7y agoPerhaps 'whip' for 'what internet protocol'?
- drivers99 7y agoksh as well. Found someone’s reference to various “what” type commands[1]: > The whence command is a Korn Shell feature that tells how a name would be interpreted by the shell: it detects commands and aliases, and searches your path. [1] http://www.robelle.com/smugbook/whence.html http://www.robelle.com/smugbook/whence.html
- kps 7y ago‘whence’ is POSIX-reserved even in shells that don't implement it¹. (‘what’ is also in POSIX². And ‘who’ is on first³.) ¹ https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_09_01_01 https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V... ² https://pubs.opengroup.org/onlinepubs/9699919799/idx/utilities.html https://pubs.opengroup.org/onlinepubs/9699919799/idx/utiliti... ³ https://youtu.be/kTcRRaXV-fg https://youtu.be/kTcRRaXV-fg
- anilgulecha 7y agoThis is in the top class of utilities (htopm etc). A good name could probably be bwtop, or tcptop or iftop. Actually I searched for these, and turns out iftop exists! (https://linux.die.net/man/8/iftop https://linux.die.net/man/8/iftop)
- floatingatoll 7y ago‘whatop’
- dpwm 7y agoiftop is a remarkably useful utility. It's often one of the first things I install on new openwrt installations.
- acranox 7y agoEver since I installed SQM on openwrt, I don’t really care what’s using the bandwidth anymore since it doesn’t impact any other users on the network. :) It’s true though that iftop is a very useful tool.
- joshspankit 7y agoStill nice in some cases to find applications/devices that are going wild due to a bug
- iso1631 7y agoiftop (and ifstat) are part of my preseed file, along with tcpdump, (and htop/iostat/pidstat/mpstat) For a router I'd also put ntopng on.
- rotten 7y agoMy complaint about the name is that it would be hard to "google" it. This means if I don't bookmark it or remember where I found it, then a couple of years from now when my laptop needs to be rebuilt, I'll have the darndest time finding it to install it again.
- Chris2048 7y agoWhen the bb is slow, it might be because someone is "hogging" the bb - so maybe "whathog"? or "wiccapig/wicpig" (whichhog) ;-)
- msla 7y agoMore evidence that the best names are short, pronounceable, and meaningless, like Hadoop. Git almost qualifies, except for the fact it's a pejorative, so using a really obscure or off-the-wall word is almost as good. Marketers were forced into this by trademarks, but it shouldn't take the threat of a trademark lawsuit to convince you that stepping too close to something else's toes is annoying for everyone. (And don't be afraid to go with words that have negative meanings: Aside from git, MUMPS has been a successful medical records database environment for decades.)
- saganus 7y agoHow is Git pejorative? I haven't heard that word used like that, but I've only heard it to refer to the vcs.
- nneonneo 7y agoThe word “git” as a pejorative (calling someone unpleasant, e.g. “Linus Torvalds is such a git”) long predates the VCS. Linus himself chose the name for the VCS partly due to the meaning, sarcastically remarking that he was naming another project after himself (first Linux, then Git). See the Wikipedia entry for more detail: https://en.m.wikipedia.org/wiki/Git#Naming https://en.m.wikipedia.org/wiki/Git#Naming
- saganus 7y agoInteresting, thanks!
- Waterluvian 7y agoIs there a website one can test names against? Of course you can locally but that doesn't easily cover the distros you might be thinking of targeting.
- abathur 7y agoI doubt any of these will help you if you pick the name of a shell builtin, but: The closest (but not perfect) answer I know of is the open source project name checker (http://ivantomic.com/projects/ospnc/ http://ivantomic.com/projects/ospnc/). Repology (https://repology.org/projects/?search=what https://repology.org/projects/?search=what) can also help a bit, but it's less of a direct answer.
- ckuehl 7y agoAnother thing that isn't perfect but could help is doing a search of package contents of a large distro, e.g. here's a search of Debian for packages that provide a file called "node": https://packages.debian.org/search?searchon=contents&keywords=node&mode=exactfilename&suite=stable&arch=any https://packages.debian.org/search?searchon=contents&keyword...
- vhiremath4 7y agoThis is the main problem keeping me from using this right now. I don't like installing binaries that conflict with system package names because I'm tin foil about stability and the super small chance that some installation/config script for some other package I rely on references `what` and breaks. @imsnif 2 questions: 1. Any chance you'd be willing to rename the package? I get it if not, but that would be so dope. 2. Would you consider putting this up as a cask on Brew? Brew is essentially the most popular package manager for Mac that I know of. This isn't as big of a deal for me honestly, but thought I'd ask.
- imsnif 7y ago1. Done. It's now known as "bandwhich" 2. This is in progress: https://github.com/imsnif/bandwhich/issues/9 https://github.com/imsnif/bandwhich/issues/9
- ComputerGuru 7y agoI love the name.
- deleted 7y ago[deleted]
- vhiremath4 7y agoLeft you a thank you video. :-) https://www.loom.com/share/4a5ca0429da04955b0cde8217aebce12 https://www.loom.com/share/4a5ca0429da04955b0cde8217aebce12
- kazinator 7y agoA good name would be "nettop"; it's so good that several projects (on github alone) have already used it as the name of some network monitor. The shortened "ntop" is also taken. At least two projects have claimed "iptop".
- monkin 7y agonettop already exists on macOS and does the same thing. https://www.unix.com/man-page/osx/1/nettop/ https://www.unix.com/man-page/osx/1/nettop/
- wscott 7y agoThe author has renamed this project to 'bandwhich'.
- blaser-waffle 7y agoGood. Not a beautiful name but distinct, and still captures some of the meaning of the tool.