Comments (11)
I answered a while before for you. See your issue of audio-misc-settings.
from usb-samplerate-unlocker.
So TL;DR: you won't provide an update.json
and I should go with a local one instead? Which then would fail as file names are not consistent (e.g. the file at v1.5.4 has an additional -1
appended, v1.5.1 a -3
)?
from usb-samplerate-unlocker.
As I said before, you can get the right name automatically. See my makeUpdateJson.sh or use it.
from usb-samplerate-unlocker.
I've looked but didn't see any makeUpdateJson.sh
. But apart from that, I cannot use custom update scripts for each module in my repo. So I'll have to accept that you won't provide an update.json
in your repo here, and that I cannot update your module in my repo β which means when updates fail (as currently 1.5.4 does), they fail and won't be available in my repo π€·ββοΈ
from usb-samplerate-unlocker.
makeUpdateJson.sh is in previous your issue and discussed a while. Did You forget that?
And I said in that issue makeUpdateJson.sh was a general script for all Github magisk modules! Not for my own modules. I think this needs perhaps only several line changes in your script.
from usb-samplerate-unlocker.
It would need some other adjustments as well I guess. This is what it produces for its pre-configured default, for example:
{
"versionCode": ,
"version": "",
"zipUrl": "https://github.com/Magisk-Modules-Alt-Repo/audio-misc-settings/releases/download/v1.3.5/magisk-module-audio-misc-v1.3.5.zip",
"changelog": "https://raw.githubusercontent.com/Magisk-Modules-Alt-Repo/audio-misc-settings//changelog.md"
}
version info cannot be found as there was no match on overview_actions
in that one page, and thus the default branch could not be determined. Crawling HTML of pages is unreliable as the content is subject to change. And even if, not every module has its module.prop
in the repo root, so it would fail at that point. Same for the changelog, which is not even present for all modules.
It also causes a lot of traffic overhead (pulling multiple full pages each around 200 kB) just to get those few lines of update.json
on every update check run run (i.e. usually daily) while the module itself might just be updated twice a year, which is not acceptable for keeping hundreds of modules updated in my repo, sorry. In contrast to that, what I currently use for apps without update.json
where the ZIP file names at releases are using a constant pattern containing the versionName
(which is the only changing part) only pulls a single small file: module.prop
. And it would also work if instead of versionName
the file name would be using versionCode
.
So let me conclude with what I already wrote there, about a year ago:
/releases/latest
does not include pre-releases. So modules using pre-releases would not be covered- modules are not only hosted at Github
- too much network overhead
Did You forget that? Back then I switched to repo-util's "git" method, but that's breaking too often and leaves a mess behind. So at this point the only variants left are either an update.json
or stable file names based on either versionName
of versionCode
and no other changing parts. Or disabling updates on my end for the module in question.
from usb-samplerate-unlocker.
- Why not use caching? updateJson don't change frequently, perhaps once a week or month (you can check the update by checking module.prop only)
- Magisk modules on Github are major and account more than half of all magisk modules
- Pre-releases are for beta testers. Don't include them for casual users. We don't intend this
- Your method is ad hoc and needs frequent maintenance for each module
from usb-samplerate-unlocker.
- a) because I have no time to implement such thing, it b) would add complexity here, c) I cannot tell which module will need what frequency
- which does not mean it's the only source, and your method would only work for Github
- that can be ensured via file name patterns (this is what triggered the issue initially, remember? If the pattern does not matchβ¦)
- my method proved to work fine for over a year now. I've set it up once, and up to now it didn't need any maintenance. It simply works β without all the network overhead, complexity etc. While yours will need maintenance whenever MS decides to change the page structures.
It makes no sense to discuss this over and again, sorry. I won't implement a complex method especially when a simple one proved to work fine for "more than half of all magisk modules" (actually, more than 90% of them in my repo are covered by that β only 5 out of 100+ modules are not). So if you cannot provide an update.json
(which most modules do, to use your argument number 2: more than 75% have it), I'll have to accept that β and if there's no other matching method as it's too hard for you to even keep the file names consistent, I simply won't be able to have it updated here or would have to remove it if it falls behind too far.
from usb-samplerate-unlocker.
I cannot understand your justification. Caching (in this case, update.json (dev. provided and locally made) DB maintenance) is simple, efficient in time and space, and automatic, which is proven by the Fox's Manager. I consider this issue is for your own, not for me because of the fault of your program.
from usb-samplerate-unlocker.
π€·ββοΈ
from usb-samplerate-unlocker.
Updates disabled then, this eats too much time and is not worth it for just 2 modules. In the time spent on discussing this you could have provided update.json
files for all missing modules β or I could have implemented maybe 20% of what you suggest just to cover a handful of modules not wanting to provide their own update.json
or keep their file names at releases consistent.
Sorry, but it seems we cannot find a solution we both can accept. It's of course your full right to decide how to deal with your modules β as it's mine in how to deal with my repo. So no bad feelings, but this is what it comes to then.
Thanks for sharing your approach and taking your time for it! Should you one day have an update.json
here or stick to consistent file names, be welcome to give me a ping.
from usb-samplerate-unlocker.
Related Issues (12)
- No USB Audio Galaxy S7 Edge + Fiio BTR5 Lineage OS 11 HOT 3
- No audio on Pixel 6 HOT 15
- For all of your audio modules, I cannot install them on KernelSU HOT 12
- Magisk alpha has missed compatibility with Official Magisk HOT 22
- add support of pixel tablet HOT 2
- Incompatible Magisk variant error HOT 4
- No recovery after install HOT 3
- Pixel 7 no unlock 48khz HOT 2
- Doesn't work on Pixel 8 Pro HOT 1
- add pixel 8 support HOT 1
- Pixel 8 Pro No Sound HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from usb-samplerate-unlocker.