-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Support different release channels [released, beta, alpha] #147
Comments
If this is a feature you'd like to see supported and you have an example of how the software is published, please share this to help us gather data on the best way to proceed. |
Java (AdoptOpenJdk) is a good example for this. There are two LTS releases at the moment (versions 8 and 11) and the current release is 14. This feature would be useful for having at least the option to install version 8 or 11. It might also be possible to just have different packages (e.g. openjdk8 and openjdk11, that's what Ubuntu is using I believe) but that feels less clean. Also, all Java versions can be installed side-by-side, so winget should probably support having e.g. versions 8 and 11 installed at the same time. (they're in separate directories when installed manually) |
The ideal scenario (which is familiar to Linux folks, I believe), is that The best solution, I think, is to require major version numbers for packages with multiple supported releases, and then winget needs to support "shortcuts", such that running |
Chocolatey: Personally I like the npm format. |
Another example of this would be the Node.js package. Many times the recommended version is |
I want to support this. Today my script tried to download and install a 7Zip alpha(!) version. First I want to question the need to distribute alpha/beta versions over package management in general. I don't think that's a good idea. |
@KorbenDev mildly horrifying. @KevinLaMS it looks like you did the manual approval steps on microsoft/winget-pkgs#2088 ...what happened here? Has the Package Manager team defined any sort of policy or procedure regarding release channels and the stability of versions that should be accepted into winget? |
Pinging @KevinLaMS and @denelon for an update here. I went to install 7zip and found that it would be an alpha version (20.0.0-alpha). This is not something I want to install on my development machine and expected that I would be installing the latest stable release of 7zip (19.00)... Can we please revert microsoft/winget-pkgs#2088? |
This is probably why @kayone shouldn't have given up just because Microsoft entered the space. Months later, Microsoft appears to be unable to decide how to handle this, when handling decisionmaking on what releases to push is fundamental to operating a good package manager. |
I agree. Can we at least, for now, consider adopting the same behaviour as is done for Visual Studio Code to differentiate it from Visual Studio Code Insiders? I've drafted a PR that follows the example of VSCode/VSCode Insiders and that I believe would sort the 7-Zip issue that @tusharb86 raised. Would welcome thoughts from all (@KevinLaMS and @denelon too, perhaps?). |
@KorbenDev and @tusharb86 - Hopefully, at least in the case of 7-Zip, this will now be resolved. See: microsoft/winget-pkgs#3756 - Create 7-Zip 20.02 Alpha in separate listing |
@peterlewis Thanks for fixing this! Adding an "alpha" version for 7zip in a similar way to how VS Code handles the "Insiders" build was a great idea. 👍
|
No worries, happy to help! I can't take a huge amount of credit for it, though. I've just installed GitHub Desktop and it appears that it's also apparently used to differentiate between |
The way I would go about this would be making winget ignore any manifest with beta/alpha/prerelease in its version by default, unless the user explicitly used something like an --allow-pre-releases flag in the command to install/upgrade. |
94d3bfd3 Fix format regex escape sequences 25dcdb1c Merge pull request microsoft#160 from jrave/time-format-fields dee2fa64 Support for time related format fields 5f49d77b Basic structure for format constraint a6a4fbb5 Remove redundant call to baseline 0de61e0c Tidy up readme 1ff36254 Add script to bundle library into a single header 21322b2d Move Adapter and BasicAdapter classes to internal 23724b97 Merge pull request microsoft#159 from jackorobot/fix_poco_get_integer 72afeb1f Fixed PocoJsonValue::getInteger being limited to 32-bit integers 4d603df4 Update Authors file 0e3f48c8 Remove vendored copy of urdl 9e7dbd84 Remove outdated Xcode project files 2f6760f6 Merge pull request microsoft#154 from psigen/yaml-cpp-support f4bbf4e0 Remove non-critical yaml-cpp files from PR. b685584e Add optimization for find implementation. c688aa3b Add a unit test for object member access. 76c9f40c Added simple loading utility. 66424a11 Added a column limit to the file. f03461bb Fixed issue with YAML::Node reference usage. 7f23f369 Fix unit tests to match property tree. 698936ae Added missing dep for YAML-cpp. 328db2f6 Initial pass at yaml-cpp support. 34f75118 Add note about GCC versions to readme 5ca87a61 Remove very obsolete valgrind suppressions file 27d30658 Update vendored jsoncpp to version 1.9.5 c2822576 Update CMakeLists to use add_compile_definitions f9701392 Remove unnecessary indentation from code snippets in readme 7d4ea908 Add boost::json example and delete problematic constructors d34f78b4 Improve error messaging when parsing schemas and documents dd32f66d Build tests for fuzzing 8b5f253c Tweak readme formatting a2e39586 Remove Travis CI config 3940b361 Mention web-based demo in readme f5f979b0 Mention boost compiler warnings in README 80afdef5 Merge pull request microsoft#150 from jonpetri/jonpetri/cmake-improvements 4622b958 Set valijson_BUILD_TESTS OFF by default in cmake 50010fd9 Make VALIJSON_USE_EXCEPTIONS interface definition c5dac2bc Install cmake export file c7d5f2cb Remove valijson_INSTALL_HEADERS from cmake build bfb5860c Fix fuzzer build 7b865438 Merge pull request microsoft#147 from keith-bennett-airmap/keith/shellcheck 1f25558c make shellcheck clean 3c185cb8 Merge pull request microsoft#145 from mporsch/smart-pointer-memory-management 828fc876 use implicit conversion of unique_ptr<T, DeleterA> to unique_ptr<const T, DeleterB> cf841e10 use unique_ptr for memory management in constraints and subschema 4a99dd79 Add missing include 75ada05c Use strong types in external_schema example, and update README 26f3a847 Less const-ness 3eaf1bb9 Add note about VALIJSON_USE_EXCEPTIONS to the README 4990e352 Update inspector to enable and handle exceptions af071f01 Update inspector build to work with Qt6 7b6d22f1 Update CMakeLists.txt to check for boost/json.hpp before building tests 5da89730 Merge pull request microsoft#139 from YangJiao1996/master 0f0cc2bc Always apply callback function when validating schema 9a2ebbde Merge pull request microsoft#137 from veselypeta/readme-cmake e5530feb update README add with cmake git-subtree-dir: src/Valijson/valijson git-subtree-split: 94d3bfd39ad4dca1be0f700b5eea8e4234d0e7e8
94d3bfd3 Fix format regex escape sequences 25dcdb1c Merge pull request microsoft#160 from jrave/time-format-fields dee2fa64 Support for time related format fields 5f49d77b Basic structure for format constraint a6a4fbb5 Remove redundant call to baseline 0de61e0c Tidy up readme 1ff36254 Add script to bundle library into a single header 21322b2d Move Adapter and BasicAdapter classes to internal 23724b97 Merge pull request microsoft#159 from jackorobot/fix_poco_get_integer 72afeb1f Fixed PocoJsonValue::getInteger being limited to 32-bit integers 4d603df4 Update Authors file 0e3f48c8 Remove vendored copy of urdl 9e7dbd84 Remove outdated Xcode project files 2f6760f6 Merge pull request microsoft#154 from psigen/yaml-cpp-support f4bbf4e0 Remove non-critical yaml-cpp files from PR. b685584e Add optimization for find implementation. c688aa3b Add a unit test for object member access. 76c9f40c Added simple loading utility. 66424a11 Added a column limit to the file. f03461bb Fixed issue with YAML::Node reference usage. 7f23f369 Fix unit tests to match property tree. 698936ae Added missing dep for YAML-cpp. 328db2f6 Initial pass at yaml-cpp support. 34f75118 Add note about GCC versions to readme 5ca87a61 Remove very obsolete valgrind suppressions file 27d30658 Update vendored jsoncpp to version 1.9.5 c2822576 Update CMakeLists to use add_compile_definitions f9701392 Remove unnecessary indentation from code snippets in readme 7d4ea908 Add boost::json example and delete problematic constructors d34f78b4 Improve error messaging when parsing schemas and documents dd32f66d Build tests for fuzzing 8b5f253c Tweak readme formatting a2e39586 Remove Travis CI config 3940b361 Mention web-based demo in readme f5f979b0 Mention boost compiler warnings in README 80afdef5 Merge pull request microsoft#150 from jonpetri/jonpetri/cmake-improvements 4622b958 Set valijson_BUILD_TESTS OFF by default in cmake 50010fd9 Make VALIJSON_USE_EXCEPTIONS interface definition c5dac2bc Install cmake export file c7d5f2cb Remove valijson_INSTALL_HEADERS from cmake build bfb5860c Fix fuzzer build 7b865438 Merge pull request microsoft#147 from keith-bennett-airmap/keith/shellcheck 1f25558c make shellcheck clean 3c185cb8 Merge pull request microsoft#145 from mporsch/smart-pointer-memory-management 828fc876 use implicit conversion of unique_ptr<T, DeleterA> to unique_ptr<const T, DeleterB> cf841e10 use unique_ptr for memory management in constraints and subschema 4a99dd79 Add missing include 75ada05c Use strong types in external_schema example, and update README 26f3a847 Less const-ness 3eaf1bb9 Add note about VALIJSON_USE_EXCEPTIONS to the README 4990e352 Update inspector to enable and handle exceptions af071f01 Update inspector build to work with Qt6 7b6d22f1 Update CMakeLists.txt to check for boost/json.hpp before building tests 5da89730 Merge pull request microsoft#139 from YangJiao1996/master 0f0cc2bc Always apply callback function when validating schema 9a2ebbde Merge pull request microsoft#137 from veselypeta/readme-cmake e5530feb update README add with cmake git-subtree-dir: src/Valijson/valijson git-subtree-split: 94d3bfd39ad4dca1be0f700b5eea8e4234d0e7e8
I think it's possible to implement the build type (LTSC, Beta, Alfa, Stable, early) in the manifest. It is necessary to determine how many such groups are needed.
https://support.google.com/chrome/a/answer/9027636?hl=en Then, at the settings level, implement the assignment of a version check relative to the channel.
This option is not excluded: In the directory itself, only stable releases can exist with a manifest without a channel, and other flavors must contain the channel name. I understand that I wrote my thoughts rather scattered. I think the main idea in creating a comprehensive structure is clear. |
0b4771e2 Merge branch 'domire8-fix/yaml-cpp-adapter' afc92d54 Change isString to IsString 5d7a6c5c Fix isString() method in yaml_cpp_adapter 9de00d75 Bump minimum cmake version to 3.5.1 d52d2dd0 Use string instead string_view 373576a3 Process each invalid example separately in picojson_format_test 0b7efb37 Make subschema constraint validation clearer 0530af07 Improve PicoJSON format test example cd9258c2 Add picojson example 138c3785 Tweak behaviour of format constraint validation 92b9514b Revert "fail with the first unmet constraint to avoid running into type mismatches" aee67d58 fail with the first unmet constraint to avoid running into type mismatches f716227d check the type constraint first because others might rely on it f1902801 Merge pull request microsoft#179 from DavidKorczynski/cifuzz-int 3c63c49d Add CIFuzz Github Action 4d857316 Revert "Bump nlohmann-json submodule" 8065a5ac Bump nlohmann-json submodule 5dcec3ef Merge pull request microsoft#177 from taichi-dev/master 94ca772c [Build] Make it work on Linux (#1) 780bf067 Rework adapter to build on VS 2022 with latest JSON for modern C++ f7399c1a Merge pull request microsoft#175 from cbrumgard/master 9e5b479b Fixed validation_visitor to work with adaptors that only support the forward_iterator_tag for array value iterators. 2acde8ec Merge pull request microsoft#172 from silvergasp/ci e339c2c2 Adds Github Actions configuration for CI 65ba76e4 Merge pull request microsoft#169 from AustinHaigh-Hach/fix-typos f1ff3518 fix typos in preprocessor macros 78ac8a73 Correct token replacement issue c4355eaa Simplify implementation of YamlCppObject::find() 375eaae0 Tidy up doc-comments db8daacc Add std::nothrow when using operator new e895d035 Attempt to fix oss-fuzz build d9c9d2eb Revert nlohmann-json module to 3.1.2 8d04b757 Fix whitespace in .gitmodules 2642dd4e Bump rapidjson submodule to 06d58b9 74bd2a99 Switch to using submodule for JSON-Schema-Test-Suite 2fe3c829 Switch to using submodule for googletest b63a08f3 Switch to using submodule for json11 444bc02d Switch to using submodule for jsoncpp ac122d9e Switch to using submodule for yaml-cpp fb995ceb Switch to using submodule for nlohmann-json 582fd0fc Switch to using submodule for rapidjson 008c7ca4 Update readme 2cef1a65 Switch to submodule for picojson c0ce4cde Correct typo in license d397ac60 Include <limits> header in custom_allocator.hpp 94d3bfd3 Fix format regex escape sequences 25dcdb1c Merge pull request microsoft#160 from jrave/time-format-fields dee2fa64 Support for time related format fields 5f49d77b Basic structure for format constraint a6a4fbb5 Remove redundant call to baseline 0de61e0c Tidy up readme 1ff36254 Add script to bundle library into a single header 21322b2d Move Adapter and BasicAdapter classes to internal 23724b97 Merge pull request microsoft#159 from jackorobot/fix_poco_get_integer 72afeb1f Fixed PocoJsonValue::getInteger being limited to 32-bit integers 4d603df4 Update Authors file 0e3f48c8 Remove vendored copy of urdl 9e7dbd84 Remove outdated Xcode project files 2f6760f6 Merge pull request microsoft#154 from psigen/yaml-cpp-support f4bbf4e0 Remove non-critical yaml-cpp files from PR. b685584e Add optimization for find implementation. c688aa3b Add a unit test for object member access. 76c9f40c Added simple loading utility. 66424a11 Added a column limit to the file. f03461bb Fixed issue with YAML::Node reference usage. 7f23f369 Fix unit tests to match property tree. 698936ae Added missing dep for YAML-cpp. 328db2f6 Initial pass at yaml-cpp support. 34f75118 Add note about GCC versions to readme 5ca87a61 Remove very obsolete valgrind suppressions file 27d30658 Update vendored jsoncpp to version 1.9.5 c2822576 Update CMakeLists to use add_compile_definitions f9701392 Remove unnecessary indentation from code snippets in readme 7d4ea908 Add boost::json example and delete problematic constructors d34f78b4 Improve error messaging when parsing schemas and documents dd32f66d Build tests for fuzzing 8b5f253c Tweak readme formatting a2e39586 Remove Travis CI config 3940b361 Mention web-based demo in readme f5f979b0 Mention boost compiler warnings in README 80afdef5 Merge pull request microsoft#150 from jonpetri/jonpetri/cmake-improvements 4622b958 Set valijson_BUILD_TESTS OFF by default in cmake 50010fd9 Make VALIJSON_USE_EXCEPTIONS interface definition c5dac2bc Install cmake export file c7d5f2cb Remove valijson_INSTALL_HEADERS from cmake build bfb5860c Fix fuzzer build 7b865438 Merge pull request microsoft#147 from keith-bennett-airmap/keith/shellcheck 1f25558c make shellcheck clean 3c185cb8 Merge pull request microsoft#145 from mporsch/smart-pointer-memory-management 828fc876 use implicit conversion of unique_ptr<T, DeleterA> to unique_ptr<const T, DeleterB> cf841e10 use unique_ptr for memory management in constraints and subschema 4a99dd79 Add missing include 75ada05c Use strong types in external_schema example, and update README 26f3a847 Less const-ness 3eaf1bb9 Add note about VALIJSON_USE_EXCEPTIONS to the README 4990e352 Update inspector to enable and handle exceptions af071f01 Update inspector build to work with Qt6 7b6d22f1 Update CMakeLists.txt to check for boost/json.hpp before building tests 5da89730 Merge pull request microsoft#139 from YangJiao1996/master 0f0cc2bc Always apply callback function when validating schema 9a2ebbde Merge pull request microsoft#137 from veselypeta/readme-cmake e5530feb update README add with cmake git-subtree-dir: src/Valijson/valijson git-subtree-split: 0b4771e273a065d437814baf426bcfcafec0f434
I'd like to be able to use the package manager for different channels of software. This could be beta, or unstable branches, or other kinds of constructs.
Semantic versioning (https://semver.org) has a specification we may follow for pre-release software.
Microsoft has channels.
Many open source projects have branches.
The text was updated successfully, but these errors were encountered: