Skip to content
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

Please make 1.3.1 available again #232

Open
rotode opened this issue Dec 27, 2022 · 22 comments
Open

Please make 1.3.1 available again #232

rotode opened this issue Dec 27, 2022 · 22 comments

Comments

@rotode
Copy link

rotode commented Dec 27, 2022

I made the mistake of updating VIA today and now my custom board is not compatible with all features in via. 1.3.1 worked fine, regretting updating big time right now...

@wilba
Copy link

wilba commented Dec 27, 2022

Have you tried loading the .json with "Use V2 definitions" turned on?

image

@wilba
Copy link

wilba commented Dec 27, 2022

See the-via/app#91

@rotode
Copy link
Author

rotode commented Dec 27, 2022

Have you tried loading the .json with "Use V2 definitions" turned on?

image

Thanks! That does help. However for some reason in this version of VIA it's telling me my firmware doesn't support macros whereas in the last version it did. Not sure if this is a VIA problem or a problem with my board in particular (since it's a one off custom).

Appreciate the tip!

@david-christ
Copy link

Same issue here, 1.3.1 worked fine. 2.0.5 for Mac doesn't seem to have the "Use V2" option. So can't use this version.

WhatGeek has the 1.3.1 executables mirrored on their own servers, in packages paired with a particular keyboard, see https://www.whatgeek.com/products/feker-alice-80-mechanical-keyboard

I am using the executables from their website now.

Of course now people have to rely on the trustworthiness of a third party "random" website, rather than getting the app from the original authors. I think the authors are shooting themselves in the foot here a bit.

@rotode
Copy link
Author

rotode commented Dec 30, 2022

Life saver! Thanks for that link. :)

@wilba
Copy link

wilba commented Dec 30, 2022

2.0.5 for Mac doesn't seem to have the "Use V2" option. So can't use this version.

Please explain this in more detail, as it makes no sense, the web app and the 2.0.5 client should be the same on all platforms.

@david-christ
Copy link

@wilba The VIA v2 app I downloaded from here neither has a menu item to import JSON files, nor can I find a toggle "Use V2 definitions (deprecated)" as per the above screenshot.

@wilba
Copy link

wilba commented Jan 1, 2023

@david-christ the Design tab needs to be enabled from the Settings page.

@david-christ
Copy link

Thanks, I found the setting, and it worked. Still, it appears to me like I have to enable the legacy switch at every application start; I also have to go to the Design tab at every start, where v1 had the import in the Mac menu bar. In that case the old application is still preferable to me. And I think this is also a good example of how this new behaviour is less friendly to new users.

I wonder, why were old releases removed in the first place? Besides the fact that for me and @rubyswb version 1 seems to provide the better workflow, I understand and appreciate that application developers make decisions about application design that can not please every single user. So I don't hold the design of VIA v2 against you. However, by removing the old releases you strip people like us from having easy access to these versions, and do no good with regards of concerns of digital preservation. All with no benefits that would be clear to me. (If it is you preventing people filing bug reports for old versions, there would be easier ways to mark those old versions as deprecated, but still keep them available.) Worst case, this behaviour leads people like @rubyswb and myself to downloading v1 from other sources. Ones that are not as trustworthy as the original author's releases page, which opens the door for malware.

I'm sure you had your reasons and motivations, and I don't want to make this Github issue into a long troll thread. I just kindly want to ask you to reconsider your reasoning in light of the above, and maybe restore the historic download archive.

@wilba
Copy link

wilba commented Jan 2, 2023

See the-via/app#91 which explains why the workflow that Keychron expects users to follow is not the way VIA should be used.

The way the VIA client downloads keyboard definitions changed, it uses much less bandwidth now. Other changes were made, like the switch to V3 definitions, making the v1.3.1 release deprecated - it cannot load the newer V3 definitions and thus cannot work with firmware built from the latest QMK source code, which is also the firmware that is hosted on the VIA website.

The VIA team decided that the current version of VIA must be backward compatible to all existing firmware out in the wild, and we put in a lot of effort to ensure this, continuing to maintain the V2 definitions to support this, while migrating all existing definitions to V3.

The older releases were removed primarily because they are now deprecated. Also, they were removed to avoid user confusion, so users don't download older versions instead of using the web app or the latest release (which is essentially the same as the web app). The VIA team wants to encourage users to use the latest version, and if there are issues with the latest version, we will spend time resolving those issues.

Since the latest version of VIA can work the same as v1.3.1 (with respect to older, pre-V3 firmware), and in theory, all of Keychron's keyboards can (or could) work with the latest version of VIA (either using V2 or V3 definitions), I don't see it as a problem of digital preservation. I see this more as a problem of Keychron keyboards not being supported in VIA the way they should be, and users trying to work around this problem.

@david-christ
Copy link

For me, I don't have a keychron, I have a Feker Alice 80 with a custom firmware that makes it VIA compatible with a provided JSON file. So I rely on loading it externally.

I understand that you want to funnel people to using the newer version, but I remain with my above arguments and that from my point of view it'd be better to conserve the previous ones.

In any case, maybe there are some improvements that can find their way into V2, so the process is more streamlined

  • It could be made more obvious to the user how to actually read in config files, especially old ones. Enabling a tab, and then enabling a setting in that tab feels too hidden. As I am not a product designer, and as you might have guidelines for that, I can not give a concrete suggestion here.
  • The setting to enable legacy config files should persist through application restart. For me, the "use V2 definitions" needed to be set again after application restart. Wonder whether that is a bug or a feature, or whether it's related to OS?
  • In V1, I could import files through the macOS menu bar (VIA > Import file...). The current version only allows this through the "Load" button in the design tab. This means on application start I first have to go to that tab, load the file, and then go back to the main tab. Maybe you could bring that menu entry back, which would make the import faster and leave the tab on the main window.

Hopefully some of those suggestions might be useful.

@wilba
Copy link

wilba commented Jan 9, 2023

Thanks for the suggestions. In case you care to hear my opinions:

  • It's supposed to be hidden. Explicitly loading keyboard definitions is supposed to be only used by people creating/editing keyboard definitions, not end-users.
  • It defaults to V3 because this is what matches firmware built with current QMK source code. Explicitly loading V2 keyboard definitions is supposed to be only used by people creating/editing V2 keyboard definitions, which right now should be only people fixing up existing V2 definitions as new definitions should be V3.
  • I agree that loading/saving of keyboard layouts (not definitions) could be made more easily accessible.

Why isn't the source code for the Feker Alice 80 firmware in QMK Github, and a matching VIA definition in VIA Github? If they were there, then VIA would work without the need to explicitly load the definition.

@david-christ
Copy link

It's not in there because it's not an official firmware, haha.

The keyboard comes with an in-house firmware from Feker, to be used with the Feker software. However, someone wrote a VIA-compatible firmware and has made that publicly available. It is an EXE file to flash the firmware onto the keyboard, plus a JSON file to be loaded into the VIA software.

I doubt it will ever be official enough to be in the official VIA Github repo.

@ValdisThomann
Copy link
Contributor

@rubyswb we've added the ability to read the VIA protocol version of your firmware in the latest version of VIA. Would you be able to tell me which version you have?

image

@philosowaffle
Copy link

philosowaffle commented Feb 5, 2023

As someone who only really needs to fiddle with VIA once every 6months or so, the version messaging here is pretty confusing.

For instance, I was previously using Via v1.3.1 which I gather from this thread supported "v2 definitions", but now I've upgraded to Via v2.x.x and this uses "v3 definitions" and "v2 definitions" are considered deprecated. On the surface, as your average end user, this makes no sense, why wouldn't Via V2 support V2 definitions.

I know its all semantics and can understand that your App version may diverge from your Definition version... but would make a lot more sense to me as a user if there was clearer terminology/documentation around App version vs. Definition version. Even now, I could be misunderstanding the relationship between the two. I kind of pieced it together only after reading through this thread.

Side thought: would be nice if the Settings tab also displayed the current installed App version, and possibly the supported definition version(s)?

@Wvvatt
Copy link

Wvvatt commented Feb 20, 2023

I also hope so !

@shiroshiro14
Copy link

Weird question for this, but would it be illegal for me in any form to upload the 1.3.1 executable to github and keep it in public for anyone in need?

@biggestsonicfan
Copy link

Weird question for this, but would it be illegal for me in any form to upload the 1.3.1 executable to github and keep it in public for anyone in need?

Version v1.3.1 did not have a license. The "license" wasn't added until 2.0.4, but even then there was no code included in it's source files. If VIA did proper git versioning, 1.3.1 would be available here, however the "source code" contains nothing more than a readme.

@shiroshiro14
Copy link

If anyone still looking for version 1.3.1 for any reason: https://github.com/shiroshiro14/the-old-via

@reisnobre
Copy link

@shiroshiro14 do you think we can get a version for macOS also added to the repository?

@shiroshiro14
Copy link

shiroshiro14 commented Jul 14, 2023

@shiroshiro14 do you think we can get a version for macOS also added to the repository?

@reisnobre Updated in releases, please check if it is correct/working.
Thanks

@aetherwu
Copy link

aetherwu commented May 9, 2024

If anyone still looking for version 1.3.1 for any reason: https://github.com/shiroshiro14/the-old-via

You saved my life...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

10 participants