Automate Facetec server restart in the case when the new server license was uploaded

add custom endpoint (e.g. /license-status) to be used from the watchdog
in this endpoint check the latest server license and compare it with the config value. return match result as boolean
in the watchdog add additional cronjob (daily as midnight ?). call that endpoint, if license was updated - restart server

@vldkh will be checked by myself

https://github.com/GoodDollar/FaceTecSDK-custom-server/commit/e549f1f03a95644fff20c9805ecf3fc3b0eb89b9
https://github.com/GoodDollar/FaceTecSDK-custom-server/commit/496d539b0c4086c61cbf47317fa599d8160a16d5

need to test with the local Docker then deploy on prod

tested, ready to deploy


No such file or directory error when adding folders to shared_dir config

Deployer version:  6.8.0
Deployment OS: Ubuntu 20.04.2 LTS x86_64

Hello! I keep getting errors whenever I add a new shared_dir folder on a new deploy. I have some folders that are not tracked by git so I am not sure if that is what is causing the issue. I don't recall it being a problem in the past. I just had some image folders on the live site that are dynamically populated with image uploads by writers so I wanted those linked between each release.
I get the following error:
In Client.php line 103:
The command "ln -nfs --relative /var/www/staging.api.com/shared/public_html/assets/img
/blogs/single/ /var/www/staging.api.com/releases/3/public_html/assets/img/blogs/single/" failed.
Exit Code: 1 (General error)
Host Name: deployer
================
ln: target '/var/www/staging.api.com/releases/3/public_html/assets/img/blogs/single/' is not a directory: No such file or directory
Here is what I have set in my shared_dir config
set('shared_dirs', [
  'public_html/assets/img/blogs/single/',
  'public_html/assets/img/blogs/360/',
  'public_html/assets/img/blogs/applications/',
  'public_html/assets/img/articles/',
  'public_html/assets/img/social-shares/',
  'public_html/assets/downloads/',
]);

Looks like dir public_html/assets/img/blogs/single/ doesn’t exist in your repository.

Looks like dir public_html/assets/img/blogs/single/ doesn’t exist in your repository.

Thank you for the quick reply. That is correct it does not. Is there no way to share folders that do not exist in the repository? I was trying to keep the repo size down for certain directories that contain large image files such as PDFs that currently do not need to be tracked.

You can create custom task to create missing dir in release.

You can create custom task to create missing dir in release.

Thanks. I did that and when I run the deploy again, it does get rid of the error. However, while the folders are there, the files from the previous release/current folder's path are not pulled into that shared directory.


doc strings on more obscure commands

There was another report about missing doc commands, so I did a more thorough search for obscure commands that we have forgotten to allow docstrings for.

register_simp_attr (reported in https://github.com/leanprover-community/mathlib4/pull/331#issuecomment-1196146104)
register_(builtin_)option
elab_stx_quot? This one might be internal-use-only
declare_config_elab
declare_syntax_cat
init_quot: this is a one-off but it definitely needs an explanation (and it has one in a plain comment)

Here are the other builtin commands that lack a doc comment but probably don't need one:

namespace, section: Probably best to keep it that way and use a module doc instead, although I can imagine people wanting to associate the comment with a named section
end: this one is a stretch
mutual: this one is like section, although I can imagine wanting a doc comment to talk about the whole group of definitions
universe, variable, open, export, set_option, attribute, deriving: Unless these are shown in doc-gen it would be unclear what to do with a doc comment on them
#check, #check_failure, #eval, #reduce, #synth, #print, #resolve_name, #widget: temporary (#) commands would probably only get documentation in tutorials, in which case you are looking at the code anyway

@digama0 This is great. Do you have time to write these doc strings?

I might not have been clear: I mean that these commands should accept doc strings, not that they should have doc strings explaining what they do. (That is of course also useful, but it is a separate issue.)

The commit above addresses some of the commands above. Note that we currently can only associate doc strings to kernel declarations, and files/modules.
Commands in the first list that were skipped:

elab_stx_quot only declares a definition with an inaccessible name
declare_syntax_cat only updates the parser environment extension. It does not create any new declaration in the environment.
init_quot creates 4 declarations in the kernel. I think we should probably have a command for attaching doc strings to declarations created by the kernel.

For the second list, none of them generate declarations, but I am not sure about #widget.

For declare_syntax_cat, it's too bad we can't have a doc string there since it would make sense to have hover on things like attr and command show it. If we were to implement that anyway would you prefer making a dummy definition for it, or having a docstring field in the parser environment extension? We'd probably want to associate a span to it as well for go-to-def.

If/when we either get rid of ParserDescr or restrict it to bootstrapping, it would make sense for declare_syntax_cat foo to declare foo : Parser, at which point we could attach the docstring.

The commits above address the remaining issues above. Support

Doc strings at attribute parsers
User-defined simp attribute support
add_decl_doc command.
Doc strings at declare_syntax_cat and hovering info for them.

So, I am closing this issue.


Remove

Problem
No rm interface for nested files/dirs
Solution
Add rm method to Tree & FFS

Accidental duplicate


Calling client.get_torrent_list results in a panick

Calling
client.get_torrent_list(GetTorrentListArg::default()).await.unwrap();

Results in a panick
log.txt

Try request the API manually and check if the result is what you would expect (list of torrents in json).

It does work with other libraries, so I don't think the issue is on my end. Tested with https://github.com/Koro33/qbit-api-rs

Please provide more info, include qbittorrent version, qbit-rs version, and the test code you used.

Sorry, took a while.
qbit-rs = "0.3.8"
qBittorrent v4.2.5
test code:
use qbit_rs::model::{Credential, GetTorrentListArg};
use qbit_rs::Qbit;

pub async fn test() {
    let client = Qbit::new("http://<IP_ADDRESS>:8080", Credential::new("xxx", "xxx"));

    client.login(true).await.unwrap();

    println!("Logged in!");

    let torrent_list = client.get_torrent_list(GetTorrentListArg::default()).await.unwrap();
}

Ok I know what's going on. In old version, torrents/info (maybe other "read" endpoints) only accepts GET with url param, while in new versions we can do a post request with JSON body. I'll fix this soon.

I have fixed the bug and tested with qbittorrent v4.2.5 without problem anymore. Please upgrade qbit-rs version to 0.4.0 and try again.


Some input files use or override a deprecated API

I'm getting this warning while trying to run the app.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

This issue only occured when I tried running the app after installing this package.

You can add this to your build.gradle
allprojects {
    gradle.projectsEvaluated {
        tasks.withType(JavaCompile) {
            options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
        }
    }
}


Add optional alias to every interface. #756.

Add optional alias for every network interface.
Impacts: dns_server and hosts_file roles.

@oxedions - the erros detected in the code are not related to this PR change. So please review with that in mind.

Dear @strus38
This look ok to me, many thanks for this PR 😊
Merging.


[Feature Request] Mount Dialog body, even if visible is false

Existing Component
Yes
Component Name
Dialog
Description
In the case of complex form input, I think that some input items may be input using a dialog. In that case, when updating existing data instead of new registration, it is necessary to bind existing input values.
However, the binding of input values becomes complicated because the body of the dialog does not exist as a DOM.

Please provide a demo why this feature is necessary.

碰到了相关问题，当Dialog组件内容很复杂时，懒加载会导致触发dialog延时，我的业务场景下，一个dialog内包含了很多组件，内容等，第一次触发dialog打开大概需要一秒延时才能打开，希望能提供相关api可以提前挂载dialog主体内容，或者有什么相关优化建议么？


[Question] Authorization immediately blocks the user

I have a personal account with which I want to make 5 requests every 5 minutes, but instagram blocks me on the first authorization request. How can I do this using my personal account?
I don't understand instagram security logic. When I open instagram through another phone or browser I have no problem and I can navigate the interface but with this package I am blocked from the first request
any ideas how to solve this problem. I need a list of followers and followers in a private account, so I use my account and follow the account I want to follow

I have a personal account with which I want to make 5 requests every 5 minutes, but instagram blocks me on the first authorization request. How can I do this using my personal account?
I don't understand instagram security logic. When I open instagram through another phone or browser I have no problem and I can navigate the interface but with this package I am blocked from the first request
any ideas how to solve this problem. I need a list of followers and followers in a private account, so I use my account and follow the account I want to follow

Hi, dont forget to create a correct Client(), you should add correct device info,
And send your code here , the code that you use for Login
What action have you done after login ?

i am using docker wrapper. Should I make some settings? can you show an example of working settings?

random_agent = ['google', 'redfin', 'Pixel 5', 'qcom', '1080x2340', '440', '12', '31', '<IP_ADDRESS>.110', '384108453']
s_local = en_US
s_country = US
this_timezone = 30600
setting2 = {
'last_login': None,
'device_settings': {'app_version': random_agent[8], 'android_version': int(random_agent[7]), 'android_release': random_agent[6], 'dpi': f'{random_agent[5]}dpi', 'resolution': random_agent[4], 'manufacturer': random_agent[0], 'device': random_agent[1], 'model': random_agent[2], 'cpu': random_agent[3], 'version_code': random_agent[9]}, 'user_agent': f'Instagram {random_agent[8]} Android ({random_agent[7]}/{random_agent[6]}; {random_agent[5]}dpi; {random_agent[4]}; {random_agent[0]}; {random_agent[2]}; {random_agent[1]}; {random_agent[3]}; {s_local}; {random_agent[9]})', 'country': s_country, 'locale': s_local}
cl = Client(settings = setting2)
cl.set_locale(s_local)
cl.set_country(s_country)
cl.set_timezone_offset(this_timezone)
cl.set_proxy(http_proxy)
cl.login('dddddddd', 'ddddddddd')

I have a personal account with which I want to make 5 requests every 5 minutes, but instagram blocks me on the first authorization request. How can I do this using my personal account?
I don't understand instagram security logic. When I open instagram through another phone or browser I have no problem and I can navigate the interface but with this package I am blocked from the first request
any ideas how to solve this problem. I need a list of followers and followers in a private account, so I use my account and follow the account I want to follow

Does instagram block just the account you used for the request or it blocks all the account you try to create next? Like does it 'blacklist' you?


still has issue

left: micky Build_Clover.command_v4.8.9
right: Dids package
thanks for cleanup
but
here is boot sector part. there is problem
also you removed HFS+ driver from previous commit.
was it problem?

HFS+ already existed in clover package. i think you don't need to add HFS+ description
here is
https://sourceforge.net/p/cloverefiboot/code/HEAD/tree/CloverPackage/package/po/en.po#l641

Yes, you're right. It was removed due to an oversight.
Any idea if NTFS.efi is required these days, or if it's deprecated and/or unnecessary?

i think NTFS.efi seems to not important.
https://www.insanelymac.com/forum/topic/306320-guide-dual-boot-with-windows-10-and-clover-legacy-or-uefi/?do=findComment&comment=2165880
it's very rare case. nowdays the most of people uses ESP(EFI) or MBR(HFS+,APFS(?))

all is fine. thank you


Synchronize assignment to s.provider in galley (#29709)

Add a test for the race. This would sometimes panic when running without
the race detector, and fail with the race detector enabled.

[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[x] User Experience
[ ] Developer Infrastructure
Pull Request Attributes
Please check any characteristics that apply to this pull request.
[ ] Does not have any changes that may affect Istio users.

Hi @chlunde. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

I had this draft PR which I believe fixes the mentioned issue. I think I did't send it because I could not produce/understand the dead lock possibility mentioned in the existing comment in the code nearby, and I'm not sure if you want tests (and how they should look like) for race conditions like this.

@howardjohn any feedback?


Pybrain is not able to add module using addModule() in feed forward network.

every module I am creating is fine but I am not able to add them whenever i print the network it showing a null array in modules and connections.
Thus not able to apply activate function

This is the code
from pybrain.structure import FeedForwardNetwork, SigmoidLayer, LinearLayer, FullConnection
n=FeedForwardNetwork()
inlayer=LinearLayer(2, name= "In")
hiddenlayer=SigmoidLayer(3,name= "hidden")
outlayer=LinearLayer(1,name= "Out")
n.addInputModule(inlayer)
print n.inmodules
n.addModule(hiddenlayer)
n.addOutputModule(outlayer)
print n.outmodules
intohidden=FullConnection(inlayer,hiddenlayer)
#print intohidden
hiddentoout=FullConnection(hiddenlayer,outlayer)
#print hiddentoout
n.addConnection(intohidden)
#print n.connections
n.addConnection(hiddentoout)
n.sortModules
#print n.connections
print n
#n.activate([1,0])
This is the output
[<LinearLayer 'In'>]
[<LinearLayer 'Out'>]
FeedForwardNetwork-3
Modules:
[]
Connections:
[]

rather the output should be something like
FeedForwardNetwork-6
Modules:
[<LinearLayer 'LinearLayer-3'>, <SigmoidLayer 'SigmoidLayer-7'>, <LinearLayer 'LinearLayer-8'>]
Connections:
[<FullConnection 'FullConnection-4': 'LinearLayer-3' -> 'SigmoidLayer-7'>, <FullConnection 'FullConnection-5': 'SigmoidLayer-7' -> 'LinearLayer-8'>]


run_trans.lua always uses the default images

I have no idea why, but instead of the content and style images I provide with the parameters -style_name and -content_name, the run_trans.lua script always uses the default ones (portrait1 and picasso).
Here's my test command line input:
qlua run_trans.lua -style_name seated_nude -content_name IMG_6588 -max_size 500 -ini_method random -mode memory -backend cudnn

I checked that both images lie correctly in the respective directories, i.e.:
/data/style/seated_nude.jpg
/data/content/IMG_6588.jpg

However, when I run the command above, it just performs the transformation using portrait1.jpg and picasso.jpg (btw it does this indefinitely, i.e. once it's finished with resolution 3 it starts over at resolution 1, what's up with that?). I tried deleting those images, but then the script stops with an error complaining that they images are gone.
I have no idea what I'm doing wrong. Help would be greatly appreciated. Thanks!

Hi, @MoritzLost
The run_trains script does not take command line input. You can hard code your test images in this file. See line 66.
Alternatively,  you can use
qlua cnnmrf.lua -content_name IMG_6588 -style_name seated_nude -backend cudnn -mode speed -num_iter 100,100,100


bobsinserters dependency on 5dim_transport

Why is this dependency there?  It does not seem to do anything, and I have other mods that do not work with bobsinserters and its not something I need in my current playthrough, so Im wondering why its required.

i think its for fast long handed inserter


[Feature Request] Custom number of levels

Could you add modifier for number of opacity levels?

Thanks for the request.
There are no plans currently to implement this, but let's keep the request open for future ideas.

While not increase them, one could (effectively) decrease the number of levels by using the same opacity level for some of them, right?


Make scripts platform independent

I removed the validate script from the pre-commit since it writes to /dev/null which is unix specific. It's still run by travis but is also going to be an issue if we want to add Windows there for #61. The simplest solution is probably to use something like run-script-os to have different versions.

Plus turn the .travis folder into deployment tests.

One thing I just discovered is that while I can run .travis/validate-package.sh, the uninstall of the global npm package doesn't work because the tar is already gone (and apparently the source is needed for uninstalling on Windows?). Moving the rm line to after the uninstall fixes that.

Closing this since Travis is gone now, and GitHub CI works fine.


etcd server离线重新上线后,keepalive析构会卡在boost库

etcd server离线重新上线后,keepalive析构会卡在boost库，详细代码如下所示
#include <etcd/Client.hpp>
#include <spdlog/spdlog.h>
#include <etcd/KeepAlive.hpp>
#include <etcd/Response.hpp>
#include <etcd/Watcher.hpp>
#include <boost/throw_exception.hpp>
void printResponse(etcd::Response respon)
{
std::cout << respon.is_ok() << std::endl;
}
//int64_t lease_id = -1;
std::string endpoints = "http://<IP_ADDRESS>:2379";
std::function<void(etcd::Response)> callback = printResponse;
const std::string prefix = "/test/key";
etcd::KeepAlive* p_keepalive = nullptr;
// boost库这个异常接口需要自己实现
namespace boost
{
void throw_exception(std::exception const& e) // user defined
{
return;
}
void throw_exception(std::exception const& e, boost::source_location const& loc)
{
	return;
}

}
void wait_for_connection(etcd::Client &client)
{
while (!client.head().get().is_ok())
{
spdlog::error("etcd连接失败尝试重连");
std::this_thread::sleep_for(std::chrono::seconds(1));
}
}
std::function<void(std::exception_ptr)> handler = [](std::exception_ptr eptr) {
try {
if (eptr) {
std::rethrow_exception(eptr);
}
}
catch (const std::runtime_error& e) {
std::cerr << "Connection failure "" << e.what() << ""\n";
}
catch (const std::out_of_range& e) {
std::cerr << "Lease expiry "" << e.what() << ""\n";
}
};
void keepalive(etcd::Client& etcd,
std::shared_ptretcd::KeepAlive& keepalive)
{
try {
	if (p_keepalive != nullptr)
	{
		//sss->Check();
		spdlog::info("停止keepalive");
		delete p_keepalive;
		p_keepalive = nullptr;
		spdlog::info("停止keepalive-成功");
	}

	etcd::Response resp = etcd.leasegrant(5).get();
	auto lease_id = resp.value().lease();
	etcd.set("/aaa", "bbb", lease_id);
	p_keepalive = new etcd::KeepAlive(etcd,handler,3, lease_id);
	spdlog::info("创建keepalive成功");

}
catch (std::exception const& ex)
{
	spdlog::error("error :{}", ex.what());
}

}
// a loop for initialized a watcher with auto-restart capability
void initialize_watcher(
std::shared_ptretcd::KeepAlive &keepalive_,
etcd::Client &client,
const std::string& endpoints,
const std::string& prefix,
std::function<void(etcd::Response)> &callback,
std::shared_ptretcd::Watcher& watcher) {
//auto etcd_client = std::shared_ptr<etcd::Client>(new etcd::Client(endpoints));
wait_for_connection(client);
keepalive(client, keepalive_);
// Check if the failed one has been cancelled first
if (watcher && watcher->Cancelled()) {
	std::cout << "watcher's reconnect loop been cancelled" << std::endl;
	return;
}
watcher.reset(new etcd::Watcher(client, prefix, callback, true));

// Note that lambda requires `mutable`qualifier.
watcher->Wait([&](bool cancelled) mutable {
		if (cancelled) {
			std::cout << "watcher's reconnect loop stopped as been cancelled" << std::endl;
			return;
		}
		spdlog::info("etcd 断开了 要重连了");
		initialize_watcher(keepalive_,client,endpoints, prefix, callback, watcher);
});

spdlog::info("***************************");

}
int main()
{
std::shared_ptretcd::KeepAlive keepalive;
auto etcd_client=  std::shared_ptretcd::Client(new etcd::Client(endpoints));
//etcd::Client client(endpoints);
// the watcher initialized in this way will auto re-connect to etcd
std::shared_ptretcd::Watcher watcher;
initialize_watcher(keepalive, *(etcd_client), endpoints, prefix, callback, watcher);
std::string str;
while (std::cin >> str)
{
}
return 0;

}

堆栈详情

无法复现：
[2023-02-15 09:34:38.514] [info] 创建keepalive成功
[2023-02-15 09:34:38.514] [info] ***************************
[2023-02-15 09:34:46.057] [info] etcd 断开了 要重连了
[2023-02-15 09:34:46.059] [error] etcd连接失败尝试重连
Connection failure "Failed to refresh lease: error code: 10, message: Failed to create a lease keep-alive connection"
[2023-02-15 09:34:47.060] [error] etcd连接失败尝试重连
[2023-02-15 09:34:48.061] [error] etcd连接失败尝试重连
[2023-02-15 09:34:49.062] [error] etcd连接失败尝试重连
[2023-02-15 09:34:50.064] [error] etcd连接失败尝试重连
[2023-02-15 09:34:51.065] [error] etcd连接失败尝试重连
[2023-02-15 09:34:52.066] [error] etcd连接失败尝试重连
[2023-02-15 09:34:53.067] [error] etcd连接失败尝试重连
[2023-02-15 09:34:54.068] [error] etcd连接失败尝试重连
[2023-02-15 09:34:55.070] [error] etcd连接失败尝试重连
[2023-02-15 09:34:56.071] [error] etcd连接失败尝试重连
[2023-02-15 09:34:57.072] [error] etcd连接失败尝试重连
[2023-02-15 09:34:58.073] [error] etcd连接失败尝试重连
[2023-02-15 09:34:59.074] [error] etcd连接失败尝试重连
[2023-02-15 09:35:00.075] [error] etcd连接失败尝试重连
[2023-02-15 09:35:01.077] [error] etcd连接失败尝试重连
[2023-02-15 09:35:02.078] [error] etcd连接失败尝试重连
[2023-02-15 09:35:03.079] [error] etcd连接失败尝试重连
[2023-02-15 09:35:04.081] [info] 停止keepalive
[2023-02-15 09:35:04.082] [info] 停止keepalive-成功
[2023-02-15 09:35:04.085] [info] 创建keepalive成功
[2023-02-15 09:35:04.086] [info] ***************************
[2023-02-15 09:35:09.849] [info] etcd 断开了 要重连了
[2023-02-15 09:35:09.850] [error] etcd连接失败尝试重连
Connection failure "Failed to refresh lease: error code: 10, message: Failed to create a lease keep-alive connection"
[2023-02-15 09:35:10.851] [error] etcd连接失败尝试重连
[2023-02-15 09:35:11.852] [error] etcd连接失败尝试重连
[2023-02-15 09:35:12.853] [error] etcd连接失败尝试重连
[2023-02-15 09:35:13.854] [error] etcd连接失败尝试重连
[2023-02-15 09:35:14.855] [error] etcd连接失败尝试重连
[2023-02-15 09:35:15.856] [error] etcd连接失败尝试重连
[2023-02-15 09:35:16.857] [error] etcd连接失败尝试重连
[2023-02-15 09:35:17.858] [error] etcd连接失败尝试重连
[2023-02-15 09:35:18.859] [error] etcd连接失败尝试重连
[2023-02-15 09:35:19.861] [error] etcd连接失败尝试重连
[2023-02-15 09:35:20.862] [error] etcd连接失败尝试重连
[2023-02-15 09:35:21.863] [error] etcd连接失败尝试重连
[2023-02-15 09:35:22.864] [error] etcd连接失败尝试重连
[2023-02-15 09:35:23.867] [info] 停止keepalive
[2023-02-15 09:35:23.867] [info] 停止keepalive-成功
[2023-02-15 09:35:23.870] [info] 创建keepalive成功
[2023-02-15 09:35:23.870] [info] ***************************

已解决是boost库的问题导致,boost::asio::io_context context; 再windows下回卡在 win_iocp_io_context::shutdown()，具体解决办法如下叙连接所述
https://blog.csdn.net/tangyingzhao/article/details/116269462

Closing as resolved.


⭐ Export and Manual

Allow user to pick if he wants to export the page OR/AND get the manual

Maybe this does not make sense from business point of view


Add some details to the advanced hooks

Proposed changes
Add a few details to the process of executing hooks

@arkodg Could you PTAL?

@arkodg Could you PTAL?


[Community/tw] Add Taiwan R User Group

Info: https://www.facebook.com/pg/Tw.R.User
Meetup: https://www.meetup.com/Taiwan-R/

I'll take this.


Updating vulnerable dependencies according to assessment report : 66c33c6c6f634e099f99b97b

Summary Report

Scenario
Upgrades
Critical
High
Medium
Low

Full Upgrade
2
0
0
2
0

Full Upgrade
2
0
0
2
0


Update README.md

Added my to bug reports as well

Thanks a lot @kasparboelkjeldsen for taking the time to test and report your findings !!  👍


add rawBytes content support (with master)

Original Description:
Hi this is an awesome project!
In our flutter App we need to use bytes data in Qr like this: QR content for offline signature is not String.
So I did some modification and upgraded qr.dart to ^1.3.0 to support rawBytes content.

@RomeroYang - do you have some testing scenarios that we can use to validate these changes?

Closing this because it conflicts with null-safety. Thanks for the efforts!
We'd be happy to take another look if you bring this up to date with master. Just re-open the PR when you're ready.


docs(readme): fix the wrong hyperlink of bench.sh

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

thanks for your pr. pls sign CLA~

thanks for your pr. pls sign CLA~

done


[RE-0002] Added initial ROOT-migrate proposal.

TODO: What about the discussion thread in the forum? There is no root-evolution category from what I see.

That's a good question. Lets defer it to @Axel-Naumann.

Can we use https://root-forum.cern.ch/c/my-root-app-and-ideas ?

That section seems much more abstract than what we have as a goal here. I'd personally prefer that we have a new dedicated section about these proposals.


Consider adding typescript declarations?

This makes this library easier to use in typescript libraries.

Going to close this one as we're working towards having this library be written in TS with #60

As #60 is currently stalled I'm reopening this to track TS declarations separately from TS-rewrite

+1 for this


Lokalise: Translations update

This pull request was initiated by Lokalise (user qevan guo) at 2019-03-24 07:35:19

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Add HAXM

Tool name
HAXM
Tool license
https://github.com/intel/haxm/blob/master/LICENSE
Add or update?

[X] Add
[ ] Update

Desired version
7.7.0
Approximate size
No response
Brief description of tool
Currently, Android developers only can run tests on macOS, adding HAXM on Windows will fix this problem.
URL for tool's homepage
https://github.com/intel/haxm
Provide a basic test case to validate the tool's functionality.
No response
Virtual environments affected

[ ] Ubuntu 16.04
[ ] Ubuntu 18.04
[ ] Ubuntu 20.04
[ ] macOS 10.15
[ ] macOS 11
[ ] Windows Server 2016
[X] Windows Server 2019
[X] Windows Server 2022

Can this tool be installed during the build?
No response
Tool installation time in runtime
No response
Are you willing to submit a PR?
No response

Hey, @JavierSegoviaCordoba
Currently, we can't add HAXM due to unable to use nested virtualization on Azure agents.

@al-cheb how about Hyper-V / Windows Hypervisor Platform (WHPX) for Windows Server runners? Reading this https://docs.microsoft.com/en-us/xamarin/android/get-started/installation/android-emulator/hardware-acceleration?pivots=windows#accelerating-android-emulators-on-windows we should be enabling it to run android emulator. My use case is to switch from macos runners running android emulator to windows one.

Hyper-V / Windows Hypervisor Platform (WHPX

https://github.com/actions/virtual-environments/issues/183#issuecomment-610723516


[KOGITO-4231] Create codegen API and core + SPI for generators

https://issues.redhat.com/browse/KOGITO-4231
Details:

Created kogito-codegen-modules as root module for codegen modules
Created kogito-codegen-api with only interfaces and utility classes (like TemplatedGenerator) all grouped in api package
Created kogito-codegen-core with all wiring classes like ApplicationGenerator etc all grouped in core package
Split CollectedResource and created CollectedResourceProducer with factory methods to avoid a drools-core dependency in api module
Updated CollectedResourceProducer factory methods to use the same logic to create CollectedResource
Updated updateConfig method in Generator to just return the generator and avoid an hard relation on ApplicationConfigGenerator class in API module
Created GeneratorFactory to unify generator creations
Updated ApplicationGeneratorDiscovery to use SPI to load GeneratorFactory
Added priority to Generator to impose a generator ordering. This is not ideal but it is the simplest way to have ordering, we will probably revisit this in the future because it is still not clear to me if the order is really relevant
Renamed FileGenerator as RuleFileGenerator because it is Drools specific (DroolsError)

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please

jenkins retest this please


Difference table not affected by payroll taxes

The difference table does not include changes from the payroll tax, even when the payroll tax in the table builder is selected.
http://www.ospc.org/taxbrain/14341/

Please disregard. I implemented a reform that only changed payroll in 2018, but the tables are for 2017. I out-foxed myself.


Explain “Chrome doesn’t support cookie for local files”

This appears at the bottom of the README:

Chrome doesn't support cookies for local files unless you start it with the --enable-file-cookies flag.

Can you elaborate on what it means? I was under the impression this jQuery extension just used regular cookies.

The key part to that line is "local files".  Chrome's security won't allow saving cookies when you open a file directly from your desktop, for example.  To get around that you can open Chrome with the enable file cookies flag to suppress that security feature.
This will work on a site that is hosted somewhere or ran through a local web server.


Reader::createFromStream not reading php://input

Bug Report

Information
Description

Version
9.1.4

PHP version
7.2.9

OS Platform
Ubuntu 18.04.1 LTS

Summary
Trying to use Reader::createFromStream with fopen('php://input', 'r') as the stream resource results in no data being loaded by the reader.
Standalone code, or other way to reproduce the problem
$csv = Reader::createFromStream(fopen('php://input', 'r'));
echo $csv->getContent();

(This unfortunately needs to be run within the context of an HTTP POST request so that php://input actually has some data - I wasn't sure if there was a way to simulate that for the purpose of this bug report)
Expected result
The echo should return the contents of the php://input stream as shown in this working example:
$csv = Reader::createFromString(file_get_contents('php://input'));
echo $csv->getContent();

Actual result
Nothing returned from the echo.

This is expected behavior as explain in PHP documentation for PHP I/O stream wrappers
see http://php.net/manual/en/wrappers.php.php#wrappers.php.input
TL;DR a php://input may be seekable but every time you rewind the stream you loose php://input content so you are required to re-open the stream which the library will never do.
So you can either use you solution with file_get_contents or use stream_copy_to_stream as shown below:
in test.php
<?php

use League\Csv\Reader;

require 'autoload.php';

echo "==== using file_get_contents ====", PHP_EOL;
$data = file_get_contents('php://input');
$csv = Reader::createFromString($data);
var_dump(iterator_to_array($csv));

echo "==== fgetcsv before rewind ====", PHP_EOL;
$rsrc = fopen('php://input', 'r');
var_dump(stream_get_meta_data($rsrc));
while (false !== ($record = fgetcsv($rsrc))) {
	var_dump($record);
}
$res = rewind($rsrc);
var_dump($res);
echo "==== fgetcsv after rewind ====", PHP_EOL;
while (false !== ($record = fgetcsv($rsrc))) {
	var_dump($record);
}
fclose($rsrc);

echo "==== copy stream ====", PHP_EOL;
$tmp = tmpfile();
stream_copy_to_stream(fopen('php://input', 'r'), $tmp);
$data = Reader::createFromStream($tmp);
var_dump(iterator_to_array($csv));
fclose($tmp);

Then you can simply call this script using cURL with the following command line:
$ curl -d "foo,bar,baz" -X POST http://localhost/csv/test.php

Understood - thanks for the quick reply and the great explanation :)


ebpf probe changes for s390x enablement

Description
This PR enables the BPF probe on the s390x architecture and also implements the socketcall syscall to catch network calls. Also this PR includes generic changes to fit to the collector custom probe.
Corresponding falcosecurity-libs PR https://github.com/stackrox/falcosecurity-libs/pull/44

Run integration tests for Ubuntu and RHEL VMs in #1073 and they passed correctly. I'm now re-running with all other distros, but for the moment looks like the changes work on x86.

Regarding struct packing, did we consider using a compiler directive instead of switching from uid_t to unsigned int ?

I've tested these changes on x86 here: https://github.com/stackrox/collector/pull/1170 and it's all green.
@kcrane - what's the progress on the GID issue on s390x? can I assist with that at all?


Remove rubygems integration dead code

What was the end-user problem that led to this PR?
The problem was that I found some dead code.
What is your fix for the problem, implemented in this PR?
My fix is to remove it because it's dead.

@bundlerbot r=hsbt


BGRA8 Support Was Dropped

Describe the bug
This wrapper used to support BGRA8 images, but now it doesn't. Before, this library would silently coerce BGRA8 to BGR8.
To Reproduce
Steps to reproduce the behavior:

git clone
git checkout 913383f76c81dacc43307dc5cea1f12f5d67835a
rosrun ros_darknet ros darknet_ros.launch
Send a RGBA8 image.

#!/usr/bin/env python

import os.path

import rospy
import rospkg
import cv2 as cv
from cv_bridge import CvBridge
from sensor_msgs.msg import Image
from std_msgs.msg import Header

if __name__ == '__main__':
    rospy.init_node('test_bgra8')

    # Prepare Camera Message
    ROS_PACK = rospkg.RosPack()
    BRIDGE = CvBridge()
    TEST_IMAGE = cv.imread(os.path.join(
        ROS_PACK.get_path('virtual_camera_test'),
        'images',
        'some-bgra8-image.whatever'
    ))

    if TEST_IMAGE is None:
        print('Could not load image file.')
        quit()

    TEST_MESSAGE = BRIDGE.cv2_to_imgmsg(
        TEST_IMAGE,
        encoding='bgra8'
    )

    # Prepare Subscriber
    CAMERA_PUBLISHER = rospy.Publisher(
        '/camera/rgb/image_raw',
        Image,
        queue_size=1
    )

    print('Starting Virtual Camera Test')
    CAMERA_PUBLISHER.publish(TEST_MESSAGE)

See error:
darknet/src/image_opencv.cpp:14: cv::Mat image_to_mat(image): Assertion `im.c == 3 || im.c == 1' failed.

Expected behavior
I expected a window to open up highlighting YOLO
System specs (please complete the following information):

OS: Ubuntu 18.0
ROS version: melodic
Library versions when non-standard
GPU / CUDA version when relevant

Additional context
This is almost certainly caused by this commit: https://github.com/leggedrobotics/darknet_ros/commit/ae23d0f2fa2fd08b56d61e7aa65c851aa340ae3d
The merging commit:
https://github.com/leggedrobotics/darknet_ros/commit/913383f76c81dacc43307dc5cea1f12f5d67835a
Before, BGRA8 images were silently coerced to BGR8. Now they aren't.

I have been trying to replicate, but I did not get the error. Turns out, this computer does not have CUDA...
However, I had to modify your test code a bit to get a BGRA8 encoding. Seems like cv.imread only reads BGR, no A. @Halfwake, Can you verify that this snippet works on your computer? Then I can test it on my CUDA-enabled computer.
#!/usr/bin/env python

import os.path

import rospy
import rospkg
import cv2 as cv
from cv_bridge import CvBridge
from sensor_msgs.msg import Image
from std_msgs.msg import Header

if __name__ == '__main__':
    rospy.init_node('test_bgra8')

    # Prepare Camera Message
    ROS_PACK = rospkg.RosPack()
    BRIDGE = CvBridge()
    TEST_IMAGE = cv.imread(
        'cam_test.bmp'
    )
    TEST_IMAGE = cv.cvtColor(TEST_IMAGE, cv.COLOR_BGR2BGRA)

    if TEST_IMAGE is None:
        print('Could not load image file.')
        quit()

    TEST_MESSAGE = BRIDGE.cv2_to_imgmsg(
        TEST_IMAGE,
        encoding='bgra8'
    )

    # Prepare Subscriber
    CAMERA_PUBLISHER = rospy.Publisher(
        '/camera/rgb/image_raw',
        Image,
        queue_size=1
    )

    print('Starting Virtual Camera Test')
    rate = rospy.Rate(1)
    while not rospy.is_shutdown():
        CAMERA_PUBLISHER.publish(TEST_MESSAGE)
        rate.sleep()

I wasn't able to get the script running with the BMP (I guess it couldn't convert the BMP to BGRA?), but I was able to reproduce with another image.
#!/usr/bin/env python

import os.path

import rospy
import rospkg
import cv2 as cv
from cv_bridge import CvBridge
from sensor_msgs.msg import Image
from std_msgs.msg import Header

if __name__ == '__main__':
    rospy.init_node('virtual_camera_test')

    print(__import__('os').getcwd())
    # Prepare Camera Message
    ROS_PACK = rospkg.RosPack()
    BRIDGE = CvBridge()
    TEST_IMAGE = cv.imread(os.path.join(
        ROS_PACK.get_path('virtual_camera_test'),
        'images',
        'dog.jpg'
    ))
    TEST_IMAGE = cv.cvtColor(TEST_IMAGE, cv.COLOR_BGR2BGRA)
    if TEST_IMAGE is None:
        print('Could not load image file.')
        quit()

    TEST_MESSAGE = BRIDGE.cv2_to_imgmsg(
        TEST_IMAGE,
        encoding='bgra8'
    )

    # Prepare Subscriber
    CAMERA_PUBLISHER = rospy.Publisher(
        '/camera/rgb/image_raw',
        Image,
        queue_size=1
    )

    # Main Loop
    RATE = rospy.Rate(0.25)
    print('Starting Virtual Camera Test')
    while not rospy.is_shutdown():
        print('Sending Picture')
        CAMERA_PUBLISHER.publish(TEST_MESSAGE)
        RATE.sleep()

Image:

I figured out that it did not have anything to do with CUDA, rather I compiled with -DCMAKE_BUILD_TYPE=Release, which silences the assert statements. Actually, it worked in release mode, with #336 it works in Debug too.


Split all modules

Right now modules are included as a part of the core. Split them all into separate repos to make maintenance easier.

All modules should be split now... Let me know if I missed a step.


Revert "Revert "second k8s client for searviceaccount requests (#419)…

…" (#436)"
This reverts commit 5e8f499c54b1e5ed9df055de58d5ba67df8b47ef.
see original description for more info https://github.com/redhat-appstudio/service-provider-integration-operator/pull/419
What does this PR do?
Screenshot/screencast of this PR

What issues does this PR fix or reference?

https://issues.redhat.com/browse/SVPI-291
How to test this PR?

quay.io/redhat-appstudio/pull-request-builds:spi-operator-447
quay.io/redhat-appstudio/pull-request-builds:spi-oauth-447

tested, works fine. I'll merge on Monday morning


ACK have not retransmission but detect ack loss

Hello, everyone. I have a problem for Ack retransmission. I used http_client to request server, server is not http_server,  I used quiche.
This problem occurs on weak network:
Packet loss rate :  20%,  and out-of-order, RTT:  200ms
Error log:
[ERROR] [QUIC:E0E472A59C470774] conn: Abort connection: generating ACK frame failed: 22
catch the packets in client:

catch the packet in server:

My test command:
./http_client -p /test/get/case/1k     -H test.com -s 8443 -o version=ff00001d  -t -l sendctl=debug
Analysis

In the handshake phase, the client send 3 ACK frame to server, but the server just received 2 ACK frame;
lsquic_send_ctl_init:
ctl->sc_retx_frames = IQUIC_FRAME_RETX_MASK;

ietf_full_conn_ci_tick:

Debug log:

14:37:45.247 [DEBUG] [QUIC:4CE440F5A445D6CB] sendctl: send_ctl_detect_losses
14:37:45.247 [DEBUG] [QUIC:4CE440F5A445D6CB] sendctl: loss by sent time detected: packet 4
14:37:45.247 [DEBUG] [QUIC:4CE440F5A445D6CB] sendctl: lost ACK in packet 4
14:37:45.247 [DEBUG] [QUIC:4CE440F5A445D6CB] sendctl: lost unretransmittable packet 4
14:37:45.247 [DEBUG] [QUIC:4CE440F5A445D6CB] sendctl: pns = 1, lossed_detected = 0
14:37:45.247 [DEBUG] [QUIC:4CE440F5A445D6CB] sendctl: No retransmittable packets: clear alarm

Here is my understanding of the question:
lsquic forbidden the ACK frame to retransmit, but it will be check ack if its loss, then lead to the generation of ACK packets is failed.
Question:
ACK Frame won't be retransmitted in hanshake and application phase,  but why detect its loss? I cant understand.  Looking forward to your reply.

@litespeedtech @dtikhonov

Same issue when testing over Nginx's QUIC (https://hg.nginx.org/nginx-quic).
Run with following commands:

./http_client -n 1 -w 2 -R 2 -r 4 -H ... -s ...
that reuses a UDP connection occasionally  causing following prints:
conn: Abort connection: generating ACK frame failed: 22

When it occurs, in generate_ack_frame_for_pns(), conn->ifc_rechist[pns].rh_n_used will be set to 0 after calling of lsquic_rechist_received(), while pns == 1.
The difference from normal case is immediately generating ACK after processing the 1st App PNS. Beg for fixing...

Same issue


GH2733: Remove redundant process output checks

Fixes #2733.

This is a change in behavior, could you add an integration test to ensure it still works as expected.
https://github.com/cake-build/cake/blob/develop/tests/integration/Cake.Common/Tools/NuGet/NuGetAliases.cake
Should do something like

have NuGet.config without key
Set key unencrypted
Read back xml
Assert value compare.

@devlead I added an integration test but note that I couldn't check the actual value since it's encrypted, so I just check that it exists.
Also, while testing I saw that the api key was indeed in the standard output(!), so I put back the code to redirect the standard output; the net difference then is that the output text is not checked for any particular text.

@devlead I had another look at how output redaction currently works. My newfound understanding is that it does actually work, I just missed the subtlety that it's done by ProcessArgumentBuilder FilterUnsafe in conjunction with  ProcessWrapper GetStandardOutput. i.e. you still need to redirect standard output and the ProcessWrapper will then redact sensitive arguments in the process output as read and logged at diagnostic verbosity.

@gitfool your changes have been merged, thanks for your contribution 👍


clarifies phone numbers

Why
Need more detail on phone number format.
What
Adds more detail on phone number format.
Technical writer support
This will need reviewing by tech writers.
How to review
n/a
Changelog
n/a
Confirm

[x] I have checked if any docs change here also requires updates to other repositories (ADRs / RFCs, README.md, Team Manual, elsewhere in these docs)
[x] Where there is any overlap I have updated or opened a PR for corresponding changes

Nudge on this @philf999 - if all looks ok, will get it to TW review


Are there CDN hosted links for the OwlCarousel 2 files?

I have to work with a free forum format, without much freedom about file storage, so having this awesome plugin linked from a CDN server would be awesome.
If not, I'll probably have to serve them from some other server or try to paste the source in the forum pages.

Nevermind, I made it work.


AES-GCM 128 Encryption & Decryption without tag

I use Bouncy Castle to implement DLMS (Protocol for energy metering) and use AES-GCM for the comunication security,
and this is the example of AES-GCM From the documentaion (The example is on red block) :

so, when i try to encrypt the example with this code :

public static byte[] Encrypt(byte[] Plaintext, byte[] iv, byte[] EK) //success
{
var cipher = new GcmBlockCipher(new AesEngine());
var parameters = new AeadParameters(new KeyParameter(EK), 128, iv);
cipher.Init(true, parameters);
var cipherText = new byte[cipher.GetOutputSize(Plaintext.Length)];
var len = cipher.ProcessBytes(Plaintext, 0, Plaintext.Length, cipherText, 0);
cipher.DoFinal(cipherText, len);
return cipherText;
}

the cipher is  :
41-13-12-FF-93-5A-47-56-68-27-C4-67-BC-03-87-BA-79-BD-B9-DF-0E-13-49-AE-2A
not like the cipher in the example above (blue box) :
41-13-12-FF-93-5A-47-56-68-27-C4-67- BC
in the output of my code, there are additions byte (TAG)

So, please help me to encrypt or decrypt without the tag?
thanks for help before and sorry with my english. :)

Our implementation wasn't really designed to omit the tag completely. For encryption of course you can just throw away the tag, but for decryption there will be problems.
GCMBlockCipher should work like you want if the macSize (AeadParameters.MacSize) were set to 0, but GCMBlockCipher.Init would throw an exception. I suggest you copy the GCMBlockCipher class and modify the Init method to allow this value to be 0, then use new AeadParameters(..., 0, IV).
If that works for you, we could consider how to make it possible to do this with a subclass instead of needing to copy GCMBlockCipher.

hai @peterdettman , thanks for your suggest. its work.

Another way to deal with this would be to use Counter (CTR) mode instead of GCM in this case.  The two are equal if you ignore all of the authentication code.  The only code you would need to play with would be the IV setup.


WIP: RM - Adoption Survey

#997

@Diama1
I don't see this comment addressed:

I meant we have 4 from quarterly survey and 12 of Adoption and that makes up 16 questions


Update domtypes to 0.14.2

Updates com.raquo:domtypes from 0.10.1 to 0.14.2.
GitHub Release Notes - Changelog - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.raquo", artifactId = "domtypes" } ]

labels: library-update, semver-minor

Superseded by #505.


Ideas for data to grab

There are a few data elements you can grab from the persistance channels.
export LD_LIBRARY_PATH=/mnt/app/root/lib-target:/eso/lib:/mnt/app/usr/lib:/mnt/app/armle/lib:/mnt/app/armle/lib/dll:/mnt/app/armle/usr/lib
export IPL_CONFIG_DIR=/etc/eso/production

on -f mmx /net/mmx/mnt/app/eso/bin/apps/pc i:<address>:<key>

I know of the following:

Address
Key
Data element

1304
211
Drive Level

1304
212
Night mode

1304
213
Distance

1304
214
Gear

1304
215
Fuel level low

1304
216
Speed

1304
217
Sat # in view

1304
218
Sat # in use

1304
219
GPS latitude (E7)

1304
220
GPS longitude (E7)

1304
221
GPS accuracy (E3)

1304
222
GPS altitude (E2)

1304
223
GPS speed (E3)

1304
224
GPS bearing (E6)

1304
225
Parking brake

1304
226
GPS timestamp

These are used in the Android Auto Sensors green menu screen.
It should be possible to grab the Exlap data as well, but I never figured out how... would be lovely to be able to send the transmission temperature to the AID, since this data element isn't available anywhere else.
You can grab them with pc

cannot test it now but latest version should produce something as this:

root@mmx:/mnt/app/root> on -f mmx /net/mmx/mnt/app/eso/bin/apps/pc i:1304:211   [PersistenceClient::getIntResult] error: result == DOES_NOT_EXIST
-1
root@mmx:/mnt/app/root>

maybe following data can be also loaded from some persistence channels? (maneuvr, destination dist

In the car right now, going through the green menu to see what other live data is displayed there.
Dead reckoning has Speed and Heading
Map position has height
Road attributes has current street, distance to next move, exit name, Heading

Can you specify which script it is using? Also please specify full path where you find this so i can try to replicate at my car.

Yes, I'm in the office now so I can check the .esd files to see where they get their data. I'll get you a list of persistence addresses for these data elements in about an hour.

The following elements are found in the green engineering menus (esd files), which all represent persistence coding addresses we can call with the pc command:
(format I used here is: :  per  )
speed: int per 0x01c500e6 108
heading: int per 0x01c500e6 109
angular velocity (deg/sec): int per 0x01c500e6 101
road attributes: 0x01c500e6 111
this contains the following data elements (name, type, size):

current street String 15
distance next destination int 15
distance next maneuver int 15
next street String 15
sign post String 15
destination direction int 15
distance final destination int 15
segment ID String 15

map position: 0x01c500e6 110
this contains the following data elements (name, type, size):

longitude String 15
latitude String 15
heading int 15
z-level int 15
height String 15
parking int 15
ramp detection int 15
tunnel int 15
mapMatcherStatus int 15

About the AndroidSensors, address 1304 210 holds the update frequency.. If it's 0, the data isn't refreshed. So I think we need to set:
on -f mmx /net/mmx/mnt/app/eso/bin/apps/pc i:1304:210 1
And then the ones you tested above that lead to a -1 could possibly work?
Hopefully, then the Android sensor data will provide some information.
I need to check the other addresses in this 1304 range to see what else is there, while I'm playing music in Android and/or navigating in Maps/Waze.
During a persistence scan in 2020, I found the following addresses to be valid within this partition:

And then there are some other data elements related to media, although I haven't checked them yet:
PSD Artist: String per 1 0x00012021
PSD Title: String per 1 0x00012020
And these could be useful for a proof of concept:
WLAN name: Blob per 28836065 40
WLAN password: Blob per 28836065 39
TMC message: Blob per 29688038 210
GPS coordinates: Blob per 29688038 504
I got data from these.
To get the data it's always like this:
on -f mmx /net/mmx/mnt/app/eso/bin/apps/pc b:28836065:40
where b = blob, s = string, i=integer
I'll search some more elements.

Did some more research, unfortunately i don't have access to the MIB2 at work, because that would make life easier.
There's a developer script, rdActivateSDIS.sh:
#!/bin/sh
. "/scripts/commonConfigExchange.sh"

setup_mmx()
{
	${MOUNT} -uw "/mnt/system"
	${MV} "${MMX_CFG_DIR}/rdiserver.json" "${MMX_CFG_DIR}/rdiserver_exlap.json"
	${MV} "${MMX_CFG_DIR}/rdiserver_full.json" "${MMX_CFG_DIR}/rdiserver.json"
	${MOUNT} -ur "/mnt/system"
	${SYNC}
	slay rdiserver
}

if [ -e "${MMX_CFG_DIR}/rdiserver_full.json" ] ; then
	setup_mmx
	${ECHO} "Done."
else
	${ECHO} "Target is already configured for sdis communication."
fi

no idea what this does, but the contents of rdi_server_exlap.json is as follows:
{
 "baselibname" : "exlap_plugin",
  "path" : "/eso/bin/apps/",
  "ignore_plugin_errors" : true,
  "supervision" : {
	"queue_error_level" : 200,
	"queue_warning_level" : 150,
	"queue_stay_time_ms" :1000,
	"update_cycle_ms" : 4000
  },
  "datastorage" : {
    # location where to store the files
    "location" : "/tmp/",
    # maximum filesize for one file in kilobyte
    "max_file_size_in_kb" : 2000
  },
  "connectivity" : {
        "add_dlink" : false,
        "add_local" : true,
        "bind_retry_count" : 100,
        "bind_retry_sleep_time" : 100,
        "listener" : [
                {
                        "name" : "uap0",
                        "type" : "wlan"
                },
                {
                        "name" : "ncm0",
                        "type" : "usb"
                },
                {
                        "name" : "mlan0",
                        "type" : "wlan"
                }
        ]
  }
}

Looks like it can write exlap data to /tmp, next to having it avialable on the local network.

on -f mmx /net/mmx/mnt/app/eso/bin/apps/pc b:28836065:40
this is working well for me but address 1304 there is nothing :-)

Awesome!!!
Let's scan some more partitions and addresses to see what's there. There is a Car partition

problem is if you need to write something somewhere before those data are visible...

maybe we can also take next turn from GAL logs there should be
following line inside log which contains

Sounds like a good idea!!

now the question is where is the log file :-) and can we point it to /tmp folder to not kill internal memory?
parsing log in python should be quite easy task

maybe this? and where is the resulting file stored?

If I remember it correctly, the file is written to a specific debug console, when you're connected to a specific port on the device.
Check this script out, it can get info from persistence address (not my script)
#!/bin/sh

revision="persistance v0.1.3 (2023-05-16 by MIBonk)"
# use --help for more info

export PATH=:/proc/boot:/sbin:/bin:/usr/bin:/usr/sbin:/net/mmx/bin:/net/mmx/usr/bin:/net/mmx/usr/sbin:/net/mmx/sbin:/net/mmx/mnt/app/armle/bin:/net/mmx/mnt/app/armle/sbin:/net/mmx/mnt/app/armle/usr/bin:/net/mmx/mnt/app/armle/usr/sbin
export LD_LIBRARY_PATH=/net/mmx/mnt/app/root/lib-target:/net/mmx/mnt/eso/lib:/net/mmx/eso/lib:/net/mmx/mnt/app/usr/lib:/net/mmx/mnt/app/armle/lib:/net/mmx/mnt/app/armle/lib/dll:/net/mmx/mnt/app/armle/usr/lib
export IPL_CONFIG_DIR=/etc/eso/production

thisname="$(basename $0)"
thisdir="$(dirname $0)"

if [ -z $LOG ]; then
	. $thisdir/../config/GLOBALS 1> /dev/null
fi

if [ -f $TMP/reboot.mib ]; then
	echo "Reboot running..."
	return 2> /dev/null
fi

if [ ! -z $2 ]; then
VALUE=$1
else
VALUE=""
fi

	case $VALUE in

	-r) {

trap '' 2

PART=$2
START=$3
END=$4

if [ -z $END ]; then
	END=$(echo $START + 1 | $BC)
else
	if [[ $END -le $START ]]; then
		END=$(echo $START+1 | $BC)
	else
		END=$(echo $END+1 | $BC)
	fi
fi

echo -ne "part-dec,part-hex,a$DDr-dec,a$DDr-hex,data,object\n"
while [ $START -lt $END ]; do
	VALUEHEX=0x$(echo "obase=16; $START" | $BC)
	PARTHEX=0x$(echo "obase=16; $PART" | $BC)
	echo -ne "$PART,$PARTHEX,$START,$VALUEHEX,"
	OBJECT=",blob"
	SUBJECT="$($PERSR $PART $START -t blob 2> /dev/null)"
	if  [ -z "$SUBJECT" ]; then
		OBJECT=",int"
		SUBJECT="$($PERSR $PART $START -t int 2> /dev/null)"
		if  [ -z "$SUBJECT" ]; then
			OBJECT=",string"
			SUBJECT="$($PERSR $PART $START -t string 2> /dev/null)"
			if  [ -z "$SUBJECT" ]; then
				SUBJECT=""
				OBJECT=",error"
			fi
		fi
	fi
	echo -ne $SUBJECT
	echo -ne $OBJECT
	echo -ne "\n"
START=$(echo $START +1 | $BC)
done
echo -ne "\n"

trap 2

return 2> /dev/null

	};;

	# help or unknown parameter ------------------------------
	*) {
		echo ""
		echo $revision
		echo ""
		echo "Usage: "$thisname" [OPTION] <partition> <startadress> [endadress|"
		echo ""
		echo "Options:"
		echo "        -r 				read data"
		echo "        --help			show this help"
		echo ""
		echo "Note: Backup will only work in RCC bash!"
		echo ""
		echo "This program is free software; you can redistribute it and/or"
		echo "modify it under the terms of the GNU General Public License"
		echo "as published by the Free Software Foundation; either version 2"
		echo "of the License, or (at your option) any later version."
		echo ""
		echo "This program is distributed in the hope that it will be useful,"
		echo "but WITHOUT ANY WARRANTY; without even the implied warranty of"
		echo "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
		echo "See the GNU General Public License for more details."
		echo ""
		echo "You should have received a copy of the GNU General Public License"
		echo "along with this program; if not, write to the Free Software Foundation,"
		echo "Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA."
		echo ""

	};;

	esac

exit 0

Small addition to this, while I'm chatting with a friend about this...
When retrofitting the MIB3 to a car that previously had a MIB2, the same cluster will all of a sudden display media info for Carplay and Android Auto, as well as CP/AA navigation instructions... So the cluster/AID is ready to receive the right data and display them in the right way... but on what channel... that's a mystery to me.

That would be BAP or CAN

if we can just find some example how to send one of those messages i think we can try to guess what AA message should look like :-)

Forget about earlier script, I found one of my old ones
#!/bin/sh

export LD_LIBRARY_PATH=/mnt/app/root/lib-target:/eso/lib:/mnt/app/usr/lib:/mnt/app/armle/lib:/mnt/app/armle/lib/dll:/mnt/app/armle/usr/lib
export IPL_CONFIG_DIR=/etc/eso/production

#info
DESCRIPTION="This script will get info from a lot of persistence addresses and puts it out to sda0"
#optional inputs:
# $1: partition
# $2: start address
# $3: max address to be scanned

#Firmware/unit info:
VERSION="$(cat /net/rcc/dev/shmem/version.txt | grep "Current train" | sed 's/Current train = //g' | sed -e 's|["'\'']||g' | sed 's/\r//')"
FAZIT=$(cat /tmp/fazit-id);

echo "---------------------------"
echo "$DESCRIPTION"
echo "FAZIT of this unit: $FAZIT"
echo "Firmware version: $VERSION"
echo "---------------------------"
sleep .5

#Is there any SD-card inserted?
if [ -d /net/mmx/fs/sda0 ]; then
    echo SDA0 found
    VOLUME=/net/mmx/fs/sda0
elif [ -d /net/mmx/fs/sdb0 ] ; then
    echo SDB0 found
    VOLUME=/net/mmx/fs/sdb0
else
    echo No SD-cards found.
    exit 1
fi

#sleep .5

echo Mounting SD-card at $VOLUME.
mount -uw $VOLUME

sleep .5
echo Creating Dump folder on $VOLUME
DUMPFOLDER=$VOLUME/DUMP/$VERSION/$FAZIT/Persistence/
mkdir -p $DUMPFOLDER

IDFILE=$DUMPFOLDER/id.txt
PARTITIONFILE=$DUMPFOLDER/partition.txt
NOW=$(date)

if [ "$3" != "" ]; then
    MAXSCAN=$3;
else
    MAXSCAN=100000000;
    fi

echo "Scanning partition $PARTITION"

if [ "$2" != "" ]; then
    ADDRESS=$2;
    echo "Starting at $ADDRESS"
else
  if test -f "$IDFILE"; then
      echo "$IDFILE found"
      #read last known address from id-file
      read ADDRESS < $IDFILE
      echo "Continuing at $ADDRESS"
  else
      echo "It looks like this is the first time scanning, starting at 0"
      ADDRESS=0
  fi
fi

if [ "$1" != "" ]; then
  PARTITION=$1;
  echo $PARTITION > $PARTITIONFILE
else
  if read PARTITION < $PARTITIONFILE ; then   #this if for session continuation
    echo "Reading last used partition from SD"
  else
    exit 1
  fi
fi
#sleep .5

#starting loop

while [ $ADDRESS -le $MAXSCAN ]
do
  #echo "-----------------"
  echo "Scanning $PARTITION:$ADDRESS"

  #first check if ths address even exists or causes a time-out.
    PERSISTENCEDATA="$(on -f mmx on -f mmx /net/mmx/mnt/app/eso/bin/dumb_persistence_reader $PARTITION $ADDRESS 2>&1)"
    if [[ "$PERSISTENCEDATA" == *"PERS_STATUS_TIMEOUT"* ]] ; then
      if echo $PARTITION";"$ADDRESS";TIMEOUT" >> $DUMPFOLDER/persistence.txt ; then
        echo "Timeout, skipping address"
      else
        echo "Scan cancelled"
        exit 1
      fi
    elif [[ "$PERSISTENCEDATA" == *" PERS_STATUS_TYPE_MISMATCH"* ]] ; then
      echo "Type mismatch, trying integer"
      PERSISTENCEDATAI="$(on -f mmx on -f mmx /net/mmx/mnt/app/eso/bin/dumb_persistence_reader $PARTITION $ADDRESS -t int 2>&1)"
        if [[ "$PERSISTENCEDATAI" == *"PERS_STATUS_TYPE_MISMATCH"* ]] ; then
          echo "Type mismatch, trying string"
          PERSISTENCEDATAS="$(on -f mmx on -f mmx /net/mmx/mnt/app/eso/bin/dumb_persistence_reader $PARTITION $ADDRESS -t string 2>&1)"
          if echo $PARTITION";"$ADDRESS";string;"$PERSISTENCEDATAS >> $DUMPFOLDER/persistence.txt ; then
            echo "DATA FOUND:"
            echo $PERSISTENCEDATAS
          else
            echo "!Scan cancelled"
            exit 1
          fi
        elif [[ "$PERSISTENCEDATAI" != *"ERROR"* ]] ; then
          if echo $PARTITION";"$ADDRESS";integer;"$PERSISTENCEDATAI >> $DUMPFOLDER/persistence.txt ; then
            echo "DATA FOUND:"
            echo $PERSISTENCEDATAI
          else
            echo "!Scan cancelled"
            exit 1
          fi
        fi
    elif [[ "$PERSISTENCEDATA" == *"PERS_STATUS_DOES_NOT_EXIST"* ]] ; then
          :
          #do nothing
    else
      if echo $PARTITION";"$ADDRESS";blob;"$PERSISTENCEDATA >> $DUMPFOLDER/persistence.txt ; then
        echo "DATA FOUND:"
        echo $PERSISTENCEDATA
      else
        echo ""
        echo "!Scan cancelled"
        exit 1
      fi

    fi

  #only write the ID to the text once every 100 times, to speed up.
  if (( $ADDRESS % 100 == 0 ))
  then
    if echo $ADDRESS > $IDFILE; then
    echo "writing to id.txt to save scan session"
    echo "Scanned $PARTITION until $ADDRESS at $NOW" > $DUMPFOLDER/scanlog.txt
    else
        echo ""
        echo "!Scan cancelled"
      exit 1
    fi
  fi

  #increase the address with 1
    ADDRESS=$(( $ADDRESS + 1 ))

done

# Make readonly again
mount -ur $VOLUME
echo "Persistence scan done"

exit 0

I did some scanning of the persistence addresses while I was on the road, navigating in Android Auto and playing music.
I am not worried I need to set a value before data shows up, because the persistence addresses respond with a reply either way. So it will at least find any "yet to be activated" addresses this way.
So far I have the following results from some partitions:

partition
address
type
data

1304 (Smartphone integration)
50
string
gal=1, carplay=1, mirrorlink=2, m_carlife=2

1304 (Smartphone integration)
51
string
gal=1, carplay=1, mirrorlink=1

1304 (Smartphone integration)
53
string
updateAvailable=0, major=1

1304 (Smartphone integration)
54
string
gal=1, carplay=1, mirrorlink=0

1304 (Smartphone integration)
55
string
usb=1, exlap=1

1304 (Smartphone integration)
56
string
carlifeAndroid=0, carlifeiOS=0, usb=3

1304 (Smartphone integration)
57
string
carlifeiOS=0, carlifeAndroid=0

1304 (Smartphone integration)
210
integer
1

1304 (Smartphone integration)
211
integer
0

1304 (Smartphone integration)
212
integer
1

1304 (Smartphone integration)
213
integer
387

1304 (Smartphone integration)
214
string
n/a

1304 (Smartphone integration)
215
integer
0

1304 (Smartphone integration)
216
integer
33333

1304 (Smartphone integration)
217
integer
11

1304 (Smartphone integration)
218
integer
6

1304 (Smartphone integration)
219
integer
522431337

1304 (Smartphone integration)
220
integer
62743428

1304 (Smartphone integration)
221
integer
20000

1304 (Smartphone integration)
222
integer
0

1304 (Smartphone integration)
223
integer
32378

1304 (Smartphone integration)
224
integer
290000000

1304 (Smartphone integration)
225
integer
0

1304 (Smartphone integration)
226
string
555824000000

1501 (ONLINE)
0
integer
21

1501 (ONLINE)
1
integer
0

1501 (ONLINE)
2
integer
20

1501 (ONLINE)
3
integer
1

1501 (ONLINE)
4
string
Live

1501 (ONLINE)
5
string
VSSZZZ5FZLR107852

1501 (ONLINE)
6
TIMEOUT

1501 (ONLINE)
7
TIMEOUT

1501 (ONLINE)
8
TIMEOUT

1501 (ONLINE)
9
TIMEOUT

1501 (ONLINE)
10
string
;

1501 (ONLINE)
11
string
;

1501 (ONLINE)
12
string
;

1501 (ONLINE)
13
integer
1

1501 (ONLINE)
14
string
;

1501 (ONLINE)
15
string
ER-mib2high-mbbservices.audi-connect.de

1501 (ONLINE)
16
string
T0MIB2

1501 (ONLINE)
17
string
;

1501 (ONLINE)
18
string
ONLINE_STATE_BLOCKED

1501 (ONLINE)
19
string
MHI2_ER_SEG11_P4709

1501 (ONLINE)
20
integer
14

1501 (ONLINE)
21
integer
0

1501 (ONLINE)
22
integer
13

1501 (ONLINE)
23
integer
0

1501 (ONLINE)
24
string
live_EU

1501 (ONLINE)
25
string
;

1501 (ONLINE)
26
string
MUAccess

1501 (ONLINE)
27
string
;

1501 (ONLINE)
28
integer
0

1501 (ONLINE)
29
integer
0

1501 (ONLINE)
30
string
;

1501 (ONLINE)
31
string
;

1501 (ONLINE)
32
string
not registered yet

1501 (ONLINE)
33
string
DEV_FOUND, GPS_ALLOWED, GPS_ACTIVE

1501 (ONLINE)
34
string
not available

1501 (ONLINE)
35
string
not available

1501 (ONLINE)
36
string
not available

1501 (ONLINE)
37
integer
1

1501 (ONLINE)
38
string
Using VIN from car (persistence fallback)

1501 (ONLINE)
39
string
;

1501 (ONLINE)
40
TIMEOUT

1501 (ONLINE)
41
TIMEOUT

1501 (ONLINE)
42
TIMEOUT

1501 (ONLINE)
43
TIMEOUT

1501 (ONLINE)
44
TIMEOUT

1501 (ONLINE)
45
TIMEOUT

2001 (Unknown partition)
4
blob
00000006000000020001000000080000001144343a33413a32433a42373a31393a3746000000080000000f424c4d5f4143544956455f4d4f4445000000080000000a4243525f4d415354455200000000

2001 (Unknown partition)
101
string
14.44.35p233

2001 (Unknown partition)
1000
blob
000000080000000974656c6570686f6e65000000080000000b7631302e3735342e31363200000008000000024e6f0000000800000003302f350000000800000009626c7565746f6f7468000000080000000b7631302e3735342e31363200000008000000024e6f0000000800000003302f350000000800000011636f6e6e656374696f6e6d616e61676572000000080000000b7631302e3735342e31363200000008000000024e6f0000000800000003302f3500000008000000096d6573736167696e67000000080000000b7631302e3735342e31363200000008000000024e6f0000000800000003302f3500000008000000086465762d75706e70000000080000000b7631302e3735342e31363200000008000000024e6f0000000800000003302f3500000008000000076274737461636b000000080000000b7631302e3735342e31363200000008000000024e6f0000000800000003302f3500000008000000036e6164000000080000000b7631302e3735342e31363200000008000000024e6f0000000800000003302f3500000000

5018 (MIRRORLINK)
200
blob
37424d580000000000ad000f000b010000000000000000010001

5021 (Car)
1001
blob
0b16212c1f8b080000000000000063606058c7c0c8c0c0e00bc45240ac02c4d640ec05c416406c03c40140ec0dc4c168d80f2a1e0dc45658e491d521f33d80d8188f7a646ccbc028b09f8181f9268c0600a149a004b2000000

5021 (Car)
1002
blob
0b16212c1f8b0800000000000000636060f8c380008140ec05a583a118c4b607623f20f606625fa81a98bc1b100740d94148e2e8d80f8def04c49120b6c3dceecf0edac6a60e17e2273becb955ea70eaa1a7c351b99d0ebf1dee385cf87ac8e1e1ddfb0e7be576397c9e74dc6181c637a0ba098edce24f1cb56cf31d6a99731c5aa47d1d9602e5776cac77d8ddaae0702d2dcde194b794c383c5d71daebe6e71d8c2c0e87063f12d87436ce71d25ffff772c5dbcd2e168d23fa0ddb20070ae50cd00010000

5025 (EXLAP)
1000
blob
37424d58000000000014000500010100000002

Finding some bigger data elements in the Smartphone integration partitions, in a format unknown to me. I'll paste it all here, maybe you have an idea.

PARTITION
ADDRESS
TYPE
DATA
PARTITION NAME

27263191
1
integer
4294967295
NS_HMI_CAR

27263191
2
integer
4294967295
NS_HMI_CAR

27263191
3
integer
4294967295
NS_HMI_CAR

5000
200
blob
37424d580000000047ee065400130201020600030600000000000000018c21795528000000000101000000820101000001040000000001ffffffff
"EARLY"

5000
300
blob
00010700
"EARLY"

5007
1001
blob
37424d5800000000248a07ff00050000000000000000010000000000000000ffffffffffffffff
"MEDIA"

5007
1004
blob
37424d5800000000000d0004000100000002
"MEDIA"

5008
100
blob
37424d58000000000f9013d100090000000000000000000000ffffffffffffffffffffffff000000020000001133433a30313a45463a31413a33313a39390000001144343a33413a32433a42373a31393a3746
"PHONE"

5011
200
blob
37424d580000000003820025000a000000080000000100000003000000010000000200000002000000000000000800000001
"ENTERTAINMENT_MANAGER"

5022
200
blob
37424d580000000000810010000f00000000000000
"ONLINE"

5026
100
blob
37424d5800000000004d00050003000000010000000000000000000000
"SOUND"

5028
200
blob
0b16212c1f8b080000000000000063606078c7c0c6c0c0206060906866669c66669c649498629e940414e304620e2066e033723230377473f1303630308e0c4396524836b13430493537494b4eb6304d4a313333b43037314a3237b730354e364d4d852a66600462aec0307343c3a02043231364335853730b4a2a199000ed441801b0336c48f2000000
"SMARTPHONEINTEGRATION"

5050
0
blob
37424d58000000000065000a0001000000000000000000000001000200000000020000000003
DSI-unversioned

5051
0
blob
0b16212c1f8b080000000000000085ce491280200c44d12083a080b3f73fa247900fa52ecde2d155240111b944c9574a0c87830d2638b851d9d486521d69046d0b75842089184919665860f5859d743255dfd22ad48de6d9a8c18005073d7808b4b517da27e47f0486f7b311d20d1a427b03f4000000
DSI-unversioned

5052
0
blob
0b16212c1f8b080000000000000075930972c2300c45ed244e0c6403c25a1a96b6d0ed34bdff61caf3160303333c644bb6f5252144f627a4183e52e4fcfc80df8c0d90801c146cc9136e0d46600c26b84b50819abd06ab055396333067d9612dc0052cc10aacc1066cc10bd88157d0833d386026d7efd11b27ee7d071fe00c3ec117f836513d394be515a52003ca08144ee0833450b25961d5580d68594e393b037311a4e15d82158e35d880adba5545f69953968ac28b312d494c2a3e221df2542ecfccca90da05b37fa5cc3b7bddd515ac67828d68914b1b59b8b70bdb6ddb7cae4f753899ba53dadeb9c85c03b59cf6ae6cb277a54b7a57be14a3e40eef52def5bcec993b63272a9a23936be52a3e12898aab3016fa2e77a35afb02e53a7e6f228a211abfd621ba93717ae57d6474af8e03ab41db6d2146be10e6a072676a2bf462c600ecc1812b8f5827acb761ba79e66c2ad00a3b4bb5ac5836fec126f45b84ae75de611abb93a1dc1debb1a1f98f85bf6113eb1da6e7516febc6d02b4bfe01556952f556040000
DSI-unversioned

5055
0
blob
0b16212c1f8b080000000000000045cec50e42311005d03edcf5e112dc2d480284ffff2e382bba38bd77a68b8610ad4314fe270ab938e5c6d1e48433aeb8e16efbf02c3a8909246d52521a19358b1cf266051463bd84322aa8a2863a1ab14f353d6fa16dd841173df431b01d62a48e3151a798616eb69096d20a6b6cccb6d8a97be9808bfac44b7da77f7cbe834a1f1b2b010000
DSI-unversioned

5056
0
blob
37424d580000000003a1003100010000000000000000000000010000000000010106040000000103000000020300000003030000000404000000050000000006
DSI-unversioned

even after ungzipping i cannot tell what it could be :-/

I'll put my MIB2 on desk in the afternoon and do some more readings.
I think it's best if I throw all the persistence findings in a wiki on the toolbox repo, to prevent this place from becoming a junkjard 😄

Any MIB2High unit can become a MIB2.5 Discover Pro.
I've converted between various brands of MIB2 to MIB2.5.
The cheapest would be to get a cheap 6 inch screen and a MIB2 and install the latest VW G11 (MIB2, non MIB2.5) software on it. MIB2.5 has, besides the bigger screen and lack of some physical buttons, the same features as the MIB2, so it'll do for desk purposes.

It's on the MMX console, so written to stdout,

yes, although I'm not sure if anything is communicated when nothing is connected to mmx or rcc console.

dsi.debuginfo.B2.67.MIB_DSI_2016_KW28-16.28.0.xml.zip
This could be useful

DSI will contain all required data now just find a way how to tap into them :-D
hacking that .jar file can be good way

Driving state: String 0x01be00df 501
Think blue score: int 0x01be00df 502
Vehicle Acceleration: int 0x01be00df 503
And some experimental ones in the same area I didn't validate:
Vehicle speed: int 0x01be00df 504
Car in reverse (boolean): int 0x01be00df 505
Car driving (boolean): int 0x01be00df 506
Engine: String 0x01be00df 507
2nd Engine: String 0x01be00df 508
Gear type: String 0x01be00df 509
those are not availabe for me (using following for example)
on -f mmx /net/mmx/mnt/app/eso/bin/apps/pc s:29229279:501


[supply] Allow track rollout value to be 1.0

Checklist

[x] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[x] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary.

Motivation and Context

The default rollout value when updating a track via supply is 0.1 instead of 1.0. This was done because the value 1.0 was being rejected by the Google API. However, it is being rejected because the track's status property was not properly set to "completed".

This is the correct fix for this issue.
Description

Sets the track status to "completed" if rollout value is 1.0.
Restores the default rollout value to 1.0 since it will not work as expected.

In order to test these changes, we need to promote a build from a non-production track to the "rollout" track with a rollout value of 1.0. So either we get someone to try this change who needs to roll out an app soon, or the next time I roll out my app to production (likely within next 1-2 weeks) I can test this change myself.

I signed it!

My change does not work because we are using V2 of the Android Publisher API, and we need to update to V3 in order to use the needed "status" property. I will take care of this unless this update has already been planned.

@phatmann Thanks for getting back to us the the results of this! We do actually need to upgrade from v2 to v3 since v2 is getting end of lifed in December of 2019 🙃 I can work on getting to that change this week probably so that we can make this work 💪

@joshdholtz Is there an update or PR on Google Play Developer API v3? Any chance we could help on this?

Heyy 👋 I'm hoping to have this V3 migration out next week 🙃

Any update on this Google Play developer API ?

Now that we are on v3 of API, can this PR be rebased and merged? Or is it no longer needed? @joshdholtz


Do not sort entries alphabetically

Is your feature request related to a problem? Please describe.
With the properties panel rewrite we decide to make sorting of entries alphabetically the default. Since then we've unbuilt in the BPMN properties panel the sorting for most parts.
We did it because sorting alphabetically for anything where ordering (in XML) has an execution semantic is dangerous (https://github.com/camunda/camunda-modeler/issues/2932#issuecomment-1804223456). If at all, then users should have the chance to sort things manually.
Unfortunately the fact that sorting is the default continues to bite us, cf. https://github.com/camunda/camunda-modeler/issues/3978. I therefore propose to disable sorting per default, and instead understand that the properties panel operates in a domain where deterministic, user chosen sorting is the standard.
Describe the solution you'd like

Disable alphabetically sorting (make shouldSort=false per default)

Describe alternatives you've considered

Get rid of sorting by some label all together

Additional context
Raised last (again) in the context of C7: https://github.com/camunda/camunda-modeler/issues/3978.

This is not going to happen. Moving back to backlog.


Accidently deleting entries that are not visible.

If you have a list that is long enough that it can be scrolled or navigated using arrows, clicking outside of the interface deletes items that would be there would the list be longer.
This is a little difficult to explain so I'll use a picture. Basically, if you have a long list, clicking the circled spaces sometimes deletes entries that you can't see. That includes clicking on the input field.

Fixed in 1.4.1.  Thanks for the report!

Fixed in 1.4.1.  Thanks for the report!


Can't find Scala 2.13 packages

sbt.librarymanagement.ResolveException: unresolved dependency: net.cakesolutions#scala-kafka-client-akka_2.13;<IP_ADDRESS>: not found

Thanks for the hard work for Scala client guys! It'll be greater if you can release the 2.12 and 2.13 version as well!

I see that https://github.com/cakesolutions/scala-kafka-client/pull/156 has been merged but no new version has been released. Any change you will be able to draft a new release? Thanks!

Hi jan, Ill try and push out a new one this week, thanks.

@simonsouter Any update on this? Thanks!

Hi, is there any further news on the 2.13 release?

@simonsouter bump :wink:

hi @simonsouter I hope you are well and safe - out of curiosity, are you planning on rolling out a release soon?

If anyone is desperate, you can try this in your build.sbt
resolvers += "Sonatype OSS Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots"

libraryDependencies ++= Seq(
  "net.glorat" %% "scala-kafka-client" % "2.4.0-SNAPSHOT",
  "net.glorat" %% "scala-kafka-client-testkit" % "2.4.0-SNAPSHOT" % "test",
)

If enough people say they want it and have tested it, I'd be willing to do a proper publish to sonatype releases.
Don't use this in production


Feat:rfcreduxp

add the command to generate react functional component with connected redux & proptypes

conflicts so closing


App will not recognize Group ID

I have followed the depolyment guide to the letter, but when I try to add the App to teams and run it, I am given this error:

Office365Groups.ListGroupMembers failed: { "error": { "code": "Request_BadRequest", "message": "Invalid object identifier 'Enter Incentives app admins group Id here'.", "innerError": { "date": "2020-08-21T17:53:38", "request-id": "e132a3da-1da1-4931-87f8-e4f9949c7677" } } }

I have replaced the group ID in the OnStart() as can be seen here:

But when I run the app, via the web or inside of Teams I am given this:

Any assistance is appreciated.

Hi Tom, Please make sure to re publish the Power Apps app after you make the groupid entry. This solved my issue.

I had the same issue, and i realized i was using the same team ID in which i published the app. You need to create a separate Team for Admins and to use that ID.


executed twice watch when using createApp

Vue version
3.2.38
Link to minimal reproduction
https://sfc.vuejs.org/#eNp9UdtOwzAM/RUrL+2kNhHwgkY3DSEe+Ie8lNSjgeaiJO2Epv07TjvGTUKV2trH59g+PrJ77/k0IluzJqqgfYKIafRbabXxLiQ4QsB9BYc2qb4CFbBNSKQKejjBPjgDBfELaZWzMYGO9yrpCWGTeeW+HSKu7qSVdlYopQUoV7DZXir51A4jVjMwzcgx/wPo/Zw4RwADJmi9J+XLFOUi1ZdFp6eiguIxBBegBhppd8Ov+c3tGp5sRFokHRxY12HkxWqeKOUnixKXRDunRoM28UX9ccAcLcpf9TQAN24kgPJf6Qv52XXvnIrQdg+9HrrPsrzAKX/otZK2EYvb5DMFCY0fqCdFAE1/BTs1aPW2keybnSmMKNn2ISPwlBrRX1F9Iy5kVrHlZrVpPX+NztJVZ/dIZwaiZOtPPyUjj3IsWZ+Sj2shRuvfXrhyRuwIE4G21Abrzpmzl6LTMX3Pc4ymfg7uQA5TR8nmM57FBSUnDHUgLzBg+LfZr9ofDX9hf5qebT2x0wf2lfKP
Steps to reproduce

Open the<EMAIL_ADDRESS>After clicking it, two nodes will appear

What is expected?

open the<EMAIL_ADDRESS>After clicking it, one node will appear

What is actually happening?
Two nodes will appear!!!
System Info
No response
Any additional comments?
No response

#6609

@LinusBorg Both Vant's Toast component and Arco-Design's Message component are implemented using Vue.render. Here is the core code. demo
Duplicate of #6609

I'll keep this issue open and keep #6609 closed because this issue here as a minimal reproduction out of the gate and focusses on the actual issue.

related to https://github.com/vuejs/core/blob/78c199d6dbe8931520b75d8bfe0d49366a06922a/packages/runtime-core/src/renderer.ts#L2333-L2334

@yyx990803 I can still reproduce the issue on a deployed app (Vue 3.2.39 in production mode) but it's very difficult to create a reproduction as it seems to be random. I guess there is a timing or race condition at play...
Here is a screenshot of requests failing becase watchers are being executed while unmounting components after changing route:

I will continue to investigate and try to narrow the issue down.


able to show index of leave type and add leave types

The PR is about

able to show index of leave type and add leave types

my understanding of the project practise

pros

__dirname is safer then ./
nice folder structure, inside lib folder,

middleware, model, route(controllers), view

use promise
put logic in req.app => Clean to read and follow for programmer,

Q1. is it load too many logics? (i.e. load unnecessary codes)
Q2. reload all logics for every request

suggestions

shall create router/index.js instead app.js to reload each path

I am very sorry, wrong sent


Dev

Pull Request Test Coverage Report for Build 724

185 of 204 (90.69%)  changed or added relevant lines in 8 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.8%) to 64.715%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

<EMAIL_ADDRESS>9
10
90.0%

<EMAIL_ADDRESS>35
37
94.59%

<EMAIL_ADDRESS>21
25
84.0%

<EMAIL_ADDRESS>0
6
0.0%

<EMAIL_ADDRESS>115
121
95.04%

Files with Coverage Reduction
New Missed Lines
%

<EMAIL_ADDRESS>1
58.0%

Totals

Change from base Build 719:
0.8%

Covered Lines:
9638

Relevant Lines:
14314

💛  - Coveralls