native_messenger icon indicating copy to clipboard operation
native_messenger copied to clipboard

"updatenative" or "nativeinstall" and the script "install.sh" install different release numbers

Open m040601 opened this issue 3 years ago • 7 comments

From time to time I check the github repos, both, for the addon as for the "native_messenger" component, to make sure I am running the latest versions.

I noticed in September 2021, the latest version released on github as being "0.3.5" in April 2021. I then noticed that I was running and old version of "native". I noticed my installed version has being "0.3.1" or "0.3.4" (forgot exactly), by running "native"

So I followed the usual way to update it. That is, running "nativeupdate" or "updatenative".

But. No matter how I tried, it kept installing the "0.3.4" version, and saying I was running the latest version.

Native messenger is correctly installed, version 0.3.4"

I even tried, "nativeinstall":

  • copy the curl lines to the clipboard
  • shut down firefox
  • physical remove ~/.loca/share/tridactyl and ~/.mozilla/native-messaging-hosts/tridactyl.json

Same thing. It would always install 0.3.4

I then decided to clone the repo, and manually run the "install.sh" script. This time I got the 0.3.5 version. Or at least it reports it so.

m040601 avatar Sep 23 '21 00:09 m040601

Are you using the release version of Tridactyl from addons.mozilla.org or the beta version? Release is at version 1.21.1, which corresponds to native messenger version 0.3.4, while beta uses native messenger 0.3.5. Unless you're using beta, I don't think there is a bug here. Edit, forgot to mention: when manually running install.sh without specifying a Tridactyl version, it defaults to installing the messenger corresponding to Tridactyl master, i.e. beta.

Rummskartoffel avatar Sep 23 '21 19:09 Rummskartoffel

Are you using the release ...or the beta version?

The release. Whatever is official on Mozilla addons. I want to play safe and stick to the stable versions and defaults.

Release is at version 1.21.1, which corresponds to native messenger version 0.3.4, while beta uses native messenger 0.3.5.

Thanks for your insights. I finaly understand it now. This explains everything then.

Although I have to say, I personally find it confusing and cumbersome for end users.Althought the addon and the native are kind of "different/separate" projects. They are related.

So if you "release" something in the native project, like some new native version, this should be properly tagged. If the latest released version is supposed to only work with or match the "beta addon", then it should be called or tagged "beta native" or something. Or at least, add one line to the native README page explaining this.

Or even better, try to synchronize their release calendars. Thanks for the great work, making Firefox usable.

m040601 avatar Sep 23 '21 23:09 m040601

Let's add a line to the readme here explaining that https://github.com/tridactyl/tridactyl/blob/e84df4f527ce53b736bc7a5ab76eb78d978e69eb/native/current_native_version#L1 tracks which version of native is supported by the add-on version corresponding to that commit

bovine3dom avatar Sep 28 '21 12:09 bovine3dom

Thanks again for your explanations and time.

Let's add a line to the readme here explaining

That might help. But, I (personally) still find it cumbersome and difficult to "fit in my head". Maybe, actullay editing the README of the "native-installer" , and adding whats explained here? I understand the explanations, butI find it very very difficult to "parse it" and, above all, remember it for the next time.

Or maybe it is just me, that cant remember this at all.

Just to give you an example, I came back here, because the exact same thing that I describe in my first post on this thread, happen again one year later, with the release 1.23.0 of tridactyl.

Got again confused by seing a 0.37 release for native-messenger, and me still running the 0.36.

Had to come back here to read what I myself had written to understand this.

In any case, if you feel like this is "solved" for the average user, feel free to close the issue.

m040601 avatar Nov 29 '22 07:11 m040601

No, I agree, it's confusing, we need to rewrite the docs :)

Also apparently I forgot to update the version of the native messenger, it should really be 0.3.7. I'll add it to my release checklist...

bovine3dom avatar Nov 29 '22 10:11 bovine3dom

Another thing I forgot to mention is the issue of language. Like "natural language". Like the native language of tridactyl users. English, German, Spanish etc.

That, and the need to write instructions, "name things", explain procedures in and the choice of vocabulary and jargon in English. It might also play a role here. Or in similar situations.

I'll leave it here, just as a reminder, not as a critique.

I assume that English is the native language of most of the owners/top commiters of this project. So I am writing this just as a reminder for something that might not be obvious for a native English speaker.

This tool, tridactyl, appeals to really a lot of potential users. Unlike other tools, those users, are not necessarly "programmers" or "developers", but can be for example, simply, super skilled command line / keyboard / TUI users.

Statistically, with such a huge potential user population, their mother language is not necessarly English.

I'll give you just a quick funny example that happened with me just now.

I had never noticed the command "gobble" until now. I had also read the latest changelog, and remembered something about "gobble". But I ignored it, thought was some extra functionality I didnt need.

I had already other bindings to "m" and "M". The latest update binds "m" and "M" to "gobble 1 quickmark/markadd". So they clash. So I get warning and advise. So far so good everything functions flawlessly. I understand the issue, and can decided further what to do.

Now the funny thing.

I realize I dont even know the meaning of the english word "gobble".

I go to "help gobble" int tridactyl and can only barely understand what it relates to. So I go to, https://en.wikipedia.org/wiki/Gobble or https://www.dictionary.com/browse/gobble. Hhhmm . Think to self: How come I hadn heard this word before ?. Right. Write it down and remember it for next time...

So now I learned a need word. But I must say I would have preferred another choice of word for this functionality in Tridactyl. This word "gobble" just doesnt stick in my head :-) ....

This is of course not an issue of Tridactyl. It happens with many other powerfull tools, that need extensive technical docs and "naming things and concepts". I remember many years ago I had the same issue with vim. For some reason my brain struggled with the word "argument". Like in the vim "arguments list" etc. Why the hell did they choose "that" word ? It would have made my little non native english brain felt more confortable. And possibly also, grasp and master the power of such functionality much faster than what I eventually did end up doing.

Anyway, thanks for all the great work and time devoted to this project. For me it is so much or even more important than Firefox itself. I cant conceive of using Firefox without Tridactyl.

m040601 avatar Nov 29 '22 23:11 m040601

There's an old joke that goes something like "the hardest problem in computer science is naming things" :)

I always try to explain what a command does using different words on the help pages. If you look at :help gobble it does say what it does. I suppose we could have called it consume, eat or collect...

But thanks for the feedback, I will try to bear it in mind in the future. One day it would be nice to have translated versions of Tridactyl but I don't think we are big enough for that yet :)

bovine3dom avatar Nov 30 '22 12:11 bovine3dom