text:
Not Able to Toggle Dropdown of treeview

hy,
i have recently used ngx-dropdown-treeview for my project but i am not able to toggle or open the dropdown , however it is clickable. can you please help me on this. i have followed this git as guide , and didnt find any solutions

My example is working: https://leovo2708.github.io/ngx-treeview/
Can you tell me more detail?
Thanks.

Hy Leo,
When I clicked the ngx dropdown tree view it is not opening the treeview. It is clickable indeed but seems disabled. I have installed ngx treeview from npm and havent used the custom library as you have provided in the example since i think it should be given by the installed ngx treeview. and also one thing toggle arrow is also not visible.
And also I have used the web pack for this.

RoleAction.zip
RoleActionMap.service.zip
Javra.Payroll.UI.zip

Same issue, trying to implement this and I have a big grey button that just says "ALL" on it. I an click it and nothing happens. The css gets toggled to dropdown show but nothing gets displayed.

Bootstrap is 4 beta now, and there are a lot of changes. I will upgrade my component to be compatible with it.

Please upgrade my component to version 1.1.0 if you are using Bootstrap 4 beta. Thanks.

authors: carlhussey krishamatya leovo2708


text:
Provide example how to initialize library for case when Application XAML is absent

Is your feature request related to a problem? Please describe
My assembly is XAML component in native application, so it does not contain Application XAML with global resources dictionary, so i do not how to correctly initialize WPF-UI library so it works with my XAML Window.
Describe the solution you'd like
In cases when XAML windows works aka embedded component in non-WPF applications (addins in native app, components in WinForm app and so on) it would be useful to see how to correctly initialize the library (controls and theme).
Describe alternatives you've considered
No response
Additional context
No response

for example. It could be something like:
            if (Application.Current == default)
            {
                new System.Windows.Application();
            }

            Debug.Assert(Application.Current != default);
            if (Application.Current != default)
            {
                var dictionaries = Application.Current.Resources.MergedDictionaries;

                if (!dictionaries.Any(d => d is ThemesDictionary))
                {
                    Application.Current.Resources.MergedDictionaries.Add(new ThemesDictionary() { Theme = Wpf.Ui.Appearance.ThemeType.Light });
                }

                if (!dictionaries.Any(d => d is ControlsDictionary))
                {
                    Application.Current.Resources.MergedDictionaries.Add(new ControlsDictionary());
                }
            }

Hi! I'm also having this problem. Have you found a solution yet?
Anybody able to help?

@laurabeseler do you have or could you make a sample project by chance? Just something that has the same setup as what you're looking to use this in.

Hi, I actually managed to get it to work.
I used a ResourceDictionary to add the themes and control dictionaries:
<ResourceDictionary.MergedDictionaries> <ui:ThemesDictionary Theme="Light" />         <ui:ControlsDictionary />  </ResourceDictionary.MergedDictionaries>
And then in the main class library project that uses my UI project I had to manually load the Wpf.Ui.dll assembly.

source: gharchive/issue

authors: 23W laurabeseler syntax-tm

repo: lepoco/wpfui

license: MIT

license_type: permissive

license_source: github-api


text:
getting no client id from vk.com oauth

here is my settings and code if it is not a bug:
settings
AUTHLIB_OAUTH_CLIENTS = {
    'vkontakte': {
        'client_id': os.getenv('VKONTAKTE_CLIENT_ID'),
        'client_secret': os.getenv('VKONTAKTE_CLIENT_SECRET'),
        'access_token_url': 'https://oauth.vk.com/access_token',
        'authorize_url': 'https://oauth.vk.com/authorize',
        'userinfo_endpoint': 'https://api.vk.com/method/',
        'client_kwargs': {
            'scope': 'email',
            # 'response_type': 'token',
        },
    }
}

django view
def vkontakte_login(request: WSGIRequest) -> HttpResponseRedirect:
    redirect_uri = request.build_absolute_uri(reverse('vkontakte_auth'))
    return oauth.vkontakte.authorize_redirect(request, redirect_uri)

def vkontakte_auth(request: WSGIRequest) -> HttpResponseRedirect:
    vkontakte_token_info = oauth.vkontakte.authorize_access_token(request)
    resp = oauth.vkontakte.get('info', token=vkontakte_token_info)
    user_info = resp.json()
    user = find_or_create_user(
        email=user_info['default_email'],
        is_active=True,
        username=user_info['login'],
        first_name=user_info['first_name'],
        last_name=user_info['last_name'],
    )

    social_account = find_or_create_social_account(user.id, 'vkontakte')
    social_account.token_type = vkontakte_token_info['token_type'],
    social_account.access_token = vkontakte_token_info['access_token']
    social_account.refresh_token = vkontakte_token_info['refresh_token']
    social_account.access_token_expiration = datetime.fromtimestamp(vkontakte_token_info['expires_at'])
    social_account.save()

    djoser_token = djoser_utils.login_user(request, user)

    response = HttpResponseRedirect(stn.SOCIAL_REDIRECT)
    set_protected_cookie(response, 'token', str(djoser_token))

    return response

here is what comes in response from vk oauth service:
request_headers:
{
    'Host': 'domain.su',
    'X-Real-Ip': '178.208.75.177',
    'X-Forwarded-For': '178.208.75.177',
    'X-Forwarded-Proto': 'https',
    'X-Request-Id': '2448bdf6d949cf599d7c7d816a5a7d09',
    'Connection': 'close', 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:125.0) Gecko/20100101 Firefox/125.0',
    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8',
    'Accept-Language': 'en-US,en;q=0.5',
    'Accept-Encoding': 'gzip, deflate, br', 'Referer': 'https://id.vk.com/',
    'Cookie': 'csrftoken=kDTHlCrNOglwyOvKseZbZdsZUAfEWKgK; sessionid=vb6kemx5x23hya5rdyr2gg2xxu2qsshq; token=ee7dd8b8f2fede92cfe9f65375bc26db3c8b93b7', 'Upgrade-Insecure-Requests': '1', 'Sec-Fetch-Dest': 'document', 'Sec-Fetch-Mode': 'navigate', 'Sec-Fetch-Site': 'cross-site', 'Sec-Fetch-User': '?1'
}

params:
{
    'code': 'e9d313142c0f893541',
     'state': 'I0wbcAvsI7IOwnJyiIgazozqDAnx8q'
}

claims_options: None

state_data:
{
    'redirect_uri': 'https://domain.su/user/social/vkontakte_auth/',
    'url': 'https://oauth.vk.com/authorize?response_type=code&client_id=51927258&redirect_uri=https%3A%2F%2Fdomain.su%2Fuser%2Fsocial%2Fvkontakte_auth%2F&scope=email&state=I0wbcAvsI7IOwnJyiIgazozqDAnx8q'
}

after getting response i get a "client_id is undefined" error:
exception:
Traceback (most recent call last):
  File "/root/user-service/venv/lib/python3.12/site-packages/django/core/handlers/exception.py", line 55, in inner
    response = get_response(request)
               ^^^^^^^^^^^^^^^^^^^^^
  File "/root/user-service/venv/lib/python3.12/site-packages/django/core/handlers/base.py", line 197, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/user-service/backend/user/views_social.py", line 103, in vkontakte_auth
    vkontakte_token_info = oauth.vkontakte.authorize_access_token(request)
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/user-service/venv/lib/python3.12/site-packages/authlib/integrations/django_client/apps.py", line 90, in authorize_access_token
    token = self.fetch_access_token(**params, **kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/user-service/venv/lib/python3.12/site-packages/authlib/integrations/base_client/sync_app.py", line 342, in fetch_access_token
    token = client.fetch_token(token_endpoint, **params)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/user-service/venv/lib/python3.12/site-packages/authlib/oauth2/client.py", line 211, in fetch_token
    return self._fetch_token(
           ^^^^^^^^^^^^^^^^^^
  File "/root/user-service/venv/lib/python3.12/site-packages/authlib/oauth2/client.py", line 368, in _fetch_token
    return self.parse_response_token(resp)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/user-service/venv/lib/python3.12/site-packages/authlib/oauth2/client.py", line 344, in parse_response_token
    raise self.oauth_error_class(
authlib.integrations.base_client.errors.OAuthError: invalid_client: client_id is undefined

the problem is that vk.com requests more arguments to be passed in request body during fetching token. but there is no way to pass additional body parameters when you call authorize_access_token method.

vk.com needs additional parameters so the fix is in one string:
    vkontakte_token_info = oauth.vkontakte.authorize_access_token(
        request=request,
        client_id=settings.client_id,
        client_secret=settings.client_secret,
    )

repo: lepture/authlib


text:
CHANGELOG を追加する

次のリリースに向けて、CHANGELOG を追加します。
フォーマットは 次の2つのリポジトリを参考にしました。

lerna-terraform/CHANGELOG.md at main · lerna-stack/lerna-terraform
akka-entity-replication/CHANGELOG.md at master · lerna-stack/akka-entity-replication

@tksugimoto 文章を調整しました。

Revise CHANGELOG 6c880bd

source: gharchive/pull-request

repo: lerna-stack/lerna-handson


text:
Gap not working with Wrap

Is there something we can do to use Gap inside Wrap widget?
Wrap(
      direction: Axis.horizontal,
      crossAxisAlignment: WrapCrossAlignment.center,
      children: [
                Text(
                        'Message',
                        style: Get.textTheme.labelMedium!.copyWith(color: Colors.black.withOpacity(0.5)),
                        maxLines: 1,
                        overflow: TextOverflow.ellipsis,
                  ),
                  const Gap(5),
                  Icon(Icons.circle_rounded, size: 8 color: Colors.black.withOpacity(0.5)),
                  const Gap(5),
                  Text(message, style: Get.textTheme.labelMedium!.copyWith(color: Colors.black.withOpacity(0.5)))
       ]
)

encountered the same issue

authors: negahdaripour skanderhamdi

repo: letsar/gap


text:
Privacy and Parallel Installation Issues.

          Well, I've no restrictions regarding **data-backend** to use, but **tight coupling** caused by attaching all `letta installations` **setup** to a **centralized location in User Profile folder of OS** (%USERPROFILE%/.letta/) is **restricting/conflicting** for scenarios like **A/B testing** that needs to have more than one` letta installation` (same and/or different versions) with **isolated setups/configurations** in parallel. (as I mentioned, I've more than one installations in isolated envs.)

How can we achieve that?
(Edit):
After upgrading to 0.6.3 , accessing localhost:8283 instead of ADE interface, it loads a modal dialog redirecting me to a Login Page to the letta cloud, with no option to opt-out, why should I login to letta cloud for using a local server instance?!

Originally posted by @farzbood in https://github.com/letta-ai/letta/issues/2211#issuecomment-2534878175

After upgrading to 0.6.3 , accessing localhost:8283 instead of ADE interface, it loads a modal dialog redirecting me to a Login Page to the letta cloud, with no option to opt-out, why should I login to letta cloud for using a local server instance?!

Copying over some answers from our FAQ here: https://github.com/letta-ai/letta?tab=readme-ov-file#-frequently-asked-questions-faq.
tl;dr We are not actively developing the old version of the ADE (that runs on localhost), however it is still freely available if you downgrade your Letta version. The new ADE is a web application intended to connect to both Letta servers in the cloud and locally, and currently requires a login to use while in open beta.

"How do I use the ADE locally?"

To connect the ADE to your local Letta server, simply run your Letta server (make sure you can access localhost:8283) and go to https://app.letta.com. If you would like to use the old version of the ADE (that runs on localhost), downgrade to Letta version <=0.5.0.

"If I connect the ADE to my local server, does my agent data get uploaded to letta.com?"

No, the data in your Letta server database stays on your machine. The Letta ADE web application simply connects to your local Letta server (via the REST API) and provides a graphical interface on top of it to visualize your local Letta data in your browser's local state.

"Do I have to use your ADE? Can I build my own?"

The ADE is built on top of the (fully open source) Letta server and Letta Agents API. You can build your own application like the ADE on top of the REST API (view the documention here).

authors: cpacker farzbood

repo: letta-ai/letta


text:
feat: Enable basic sandboxed tool run functionality

Please describe the purpose of this pull request.
Basic functionality to support running user-specified tools in sandbox. Submitting v1 for feedback on approach!
How to test
How can we test your PR during review? What commands should we run? What outcomes should we expect?
poetry run pytest -s -vv tests/test_tools.py::test_run_basic_tool_in_sandbox
poetry run pytest -s -vv tests/test_tools.py::test_run_tool_with_params_in_sandbox

Have you tested this PR?
Have you tested the latest commit on the PR? If so please provide outputs from your tests.
Related issues or PRs
Please link any related GitHub issues or PRs.
Is your PR over 500 lines of code?
If so, please break up your PR into multiple smaller PRs so that we can review them quickly, or provide justification for its length.
Additional context
Add any other context or screenshots about the PR here.

Duplicated by #2040


text:
Fix SMTP dot stuffing

Rewrites the ClientCodec implementation to correctly handle dot stuffing. Fixes #802
We'll release 0.10.1 after this gets merged @amousset. I'll prepare the changelog

Looks good, this is way more readable :+1:

authors: amousset paolobarbolini

repo: lettre/lettre

license: mit

license_source: bigquery


text:
springboot lettuce configuration with sentinel and random read slave

We have sentinel master/slave configuration with 1 master and 2 slaves.
Following configuration gets all the slaves and uses only 1st slave always to get the data.
LettuceClientConfiguration lettuceClientConfiguration = LettucePoolingClientConfiguration.builder()
            .readFrom(ReadFrom.SLAVE_PREFERRED).build();

We have to support a TPS of 40k TPS its not possible to get that from a single slave and thus want to make use of all the redis nodes available.
Selection of random slave comes from PooledClusterConnectionProvider but thats only available for RedisClusterConfiguration and not RedisSentinelConfiguration.
Is there a way already to get the best of two worlds?

Please use ReadFrom.ANY (available since Lettuce 5.2).

repo: lettuce-io/lettuce-core


text:
io.lettuce.core.RedisCommandTimeoutException at io.lettuce.core.ExceptionFactory.createTimeoutException(ExceptionFactory.java:51)

Bug Report
We set time out to be 3 seconds in Lettuce and we observed intermittent Command timed out after 3 second(s)
Current Behavior

Stack trace
io.lettuce.core.RedisCommandTimeoutException: Command timed out after 3 second(s)
	at io.lettuce.core.ExceptionFactory.createTimeoutException(ExceptionFactory.java:51)
	at io.lettuce.core.LettuceFutures.awaitOrCancel(LettuceFutures.java:114)
	at io.lettuce.core.cluster.ClusterFutureSyncInvocationHandler.handleInvocation(ClusterFutureSyncInvocationHandler.java:123)
	at io.lettuce.core.internal.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:80)
	at com.sun.proxy.$Proxy348.get(Unknown Source)
	at sun.reflect.GeneratedMethodAccessor234.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at io.lettuce.core.support.ConnectionWrapping$DelegateCloseToConnectionInvocationHandler.handleInvocation(ConnectionWrapping.java:210)
	at io.lettuce.core.internal.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:80)
	at com.sun.proxy.$Proxy348.get(Unknown Source)
	at com.mtel.company.common.util.cache.implementation.LettuceClusterOperation.get(LettuceClusterOperation.java:56)
	at com.mtel.company.common.util.cache.RedisTemplate$Strings.get(RedisTemplate.java:146)
	at com.mtel.company.common.util.cache.RedisTemplate$Strings.getListObject(RedisTemplate.java:350)
	at com.mtel.company.appConfig.service.impl.AppConfigServiceImpl.findListByKey(AppConfigServiceImpl.java:137)
	at sun.reflect.GeneratedMethodAccessor277.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190)
	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)
	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:888)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:793)
	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:634)
	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at brave.servlet.TracingFilter.doFilter(TracingFilter.java:65)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.springframework.cloud.sleuth.instrument.web.ExceptionLoggingFilter.doFilter(ExceptionLoggingFilter.java:50)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at brave.servlet.TracingFilter.doFilter(TracingFilter.java:82)
	at org.springframework.cloud.sleuth.instrument.web.LazyTracingFilter.doFilter(TraceWebServletAutoConfiguration.java:138)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at io.opentelemetry.javaagent.instrumentation.springwebmvc.HandlerMappingResourceNameFilter.doFilter(HandlerMappingResourceNameFilter.java:56)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:108)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
	at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:747)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:367)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:860)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1598)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:748)

Input Code
 public List<AppConfigDTO> findListByKey(String region, List<String> key, Date lastRetrieveTime) {        Date lastRetrieveTime_on_database = redisTemplate.STRINGS.getObject(RedisKeyUtil.getAppConfigLastRetrieveTimeByRegion(region), Date.class);
        if (lastRetrieveTime != null && lastRetrieveTime_on_database != null && lastRetrieveTime.compareTo(lastRetrieveTime_on_database) < 0) {            return new ArrayList<>();
        }        List<AppConfigDTO> dtoList = new ArrayList<>();
        for (String singleKey : key) {
            List<AppConfigDTO> appConfigDTOList = redisTemplate.STRINGS.getListObject(RedisKeyUtil.getAppConfigByRegionAndKey(region, singleKey), AppConfigDTO.class);
            if (appConfigDTOList != null) dtoList.addAll(appConfigDTOList);
            else {
                List<AppConfig> entityList = appConfigRepo.findByRegionAndKeyAndIsDeleteFalseAndUpdatedAtAfter(region, singleKey, new Date(0));
                if (entityList != null) {
                    appConfigDTOList = new ArrayList<>();
                    for (AppConfig entity : entityList) {
                        AppConfigDTO dto = new AppConfigDTO();
                        BeanUtils.copyProperties(entity, dto);
                        dtoList.add(dto);
                        appConfigDTOList.add(dto);
                    }
                    redisTemplate.STRINGS.setEx(RedisKeyUtil.getAppConfigByRegionAndKey(region, singleKey), mapiExpirationTime, JsonUtil.toJson(appConfigDTOList));
                }
            }
        }
        return dtoList;    }

In the network traces that captured the exception, our lettuce client is using private IP ends with 10.94, the Redis Cache Server's IP ends with 34.68.
We noticed that when we start to request data from Redis, the application simply send out an ACK package, after 3 seconds timeout, it begins to send out application data.

Expected behavior/code
The application data should send out right away without waiting and no timeout would be thrown.
Environment

Lettuce version(s): 5.2.1.RELEASE
Redis version: 4.0.14

Please upgrade to a more recent Lettuce version. Version 5 is no longer maintained and it can well be that Lettuce 5 can enter a state where it didn't process responses properly.

Does

io.lettuce
lettuce-core
5.3.7.RELEASE

solve the problem:
io.lettuce.core.RedisCommandTimeoutException: Command timed out after 200 millisecond(s)
at io.lettuce.core.ExceptionFactory.createTimeoutException(ExceptionFactory.java:51)
at io.lettuce.core.LettuceFutures.awaitOrCancel(LettuceFutures.java:114)
at io.lettuce.core.FutureSyncInvocationHandler.handleInvocation(FutureSyncInvocationHandler.java:69)
at io.lettuce.core.internal.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:80)


text:
Start application using redis when its down , and recover connection when it is back.

Hello,
We are using Redis as cache above another DB in spring boot app.
And there is a request to be able to start application even if Redis server is down and connect to it when it is back and the application is running.
As soon as we are creating redis connections as beans , spring tries to instantiate them and fails which causes failure of application start.
Is it possible to implement requested behavior?
This is how connection is configured in our app.
    @Bean(destroyMethod = "shutdown")
    ClientResources clientResources()
    {
        return DefaultClientResources.create();
    }

 @Bean(name = "connection", destroyMethod = "close")
    StatefulRedisConnection<String, Object> connection(RedisClient redisClient)
    {
        return redisClient.connect(CompressionCodec.valueCompressor(
                new SerializedObjectCodec(), CompressionCodec.CompressionType.GZIP));
    }
    @Bean(name = "redisStringConnectionPool", destroyMethod = "close")
    GenericObjectPool<StatefulRedisConnection<String, String>> redisStringConnectionPool(RedisClient redisClient)
    {
        return ConnectionPoolSupport
                .createGenericObjectPool(() -> redisClient.connect(), new GenericObjectPoolConfig());
    }

Thanks

Care to attach the stack trace to give your question a bit more context?

I have a spring boot application , connections to redis are done via beans mentioned above.
In case a redis is down during the startup of application We want the application to start anyway and connect to redis when it will be up.
The error I have is below, it is due to missing bean based on connection to redis.
This error corresponds to bean
    @Profile({"dev"})     @Bean(name = "redisConnectionPool", destroyMethod = "close")     GenericObjectPool<StatefulRedisConnection<String, Object>> redisConnectionPoolDev(RedisClient redisClient)     {         return ConnectionPoolSupport                 .createGenericObjectPool(() -> redisClient.connect(new SerializedObjectCodec()), new GenericObjectPoolConfig());     }
2018-10-11 11:20:58.907 [main] ERROR o.s.boot.SpringApplication.[reportFailure : 842 - Application run failed org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'backEndDeviceController': Unsatisfied dependency expressed through field 'remoteControlServiceImpl'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'remoteControlServiceImpl': Unsatisfied dependency expressed through field 'asyncExecutorService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'asyncExecutorServiceImpl': Unsatisfied dependency expressed through field 'deviceStateCoreManager'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'deviceStateCoreManager': Unsatisfied dependency expressed through field 'redisManager'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'redisManager': Unsatisfied dependency expressed through field 'connection'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'connection' defined in class path resource [com/solaredge/smarthome/common/infra/redis/configuration/LettuceClientConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.lettuce.core.api.StatefulRedisConnection]: Factory method 'connectionDev' threw exception; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:587) 	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:91) 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:373) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1348) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:578) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:501) 	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:317) 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228) 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:315) 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:760) 	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:869) 	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550) 	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:140) 	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759) 	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:395) 	at org.springframework.boot.SpringApplication.run(SpringApplication.java:327) 	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1255) 	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1243) 	at com.solaredge.smarthome.backend.starter.application.SmartHomeBackEndApplication.main(SmartHomeBackEndApplication.java:26) Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'remoteControlServiceImpl': Unsatisfied dependency expressed through field 'asyncExecutorService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'asyncExecutorServiceImpl': Unsatisfied dependency expressed through field 'deviceStateCoreManager'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'deviceStateCoreManager': Unsatisfied dependency expressed through field 'redisManager'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'redisManager': Unsatisfied dependency expressed through field 'connection'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'connection' defined in class path resource [com/solaredge/smarthome/common/infra/redis/configuration/LettuceClientConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.lettuce.core.api.StatefulRedisConnection]: Factory method 'connectionDev' threw exception; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:587) 	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:91) 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:373) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1348) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:578) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:501) 	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:317) 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228) 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:315) 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) 	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:251) 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1138) 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1065) 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:584) 	... 19 common frames omitted Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'asyncExecutorServiceImpl': Unsatisfied dependency expressed through field 'deviceStateCoreManager'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'deviceStateCoreManager': Unsatisfied dependency expressed through field 'redisManager'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'redisManager': Unsatisfied dependency expressed through field 'connection'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'connection' defined in class path resource [com/solaredge/smarthome/common/infra/redis/configuration/LettuceClientConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.lettuce.core.api.StatefulRedisConnection]: Factory method 'connectionDev' threw exception; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:587) 	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:91) 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:373) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1348) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:578) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:501) 	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:317) 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228) 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:315) 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) 	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:251) 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1138) 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1065) 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:584) 	... 32 common frames omitted Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'deviceStateCoreManager': Unsatisfied dependency expressed through field 'redisManager'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'redisManager': Unsatisfied dependency expressed through field 'connection'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'connection' defined in class path resource [com/solaredge/smarthome/common/infra/redis/configuration/LettuceClientConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.lettuce.core.api.StatefulRedisConnection]: Factory method 'connectionDev' threw exception; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:587) 	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:91) 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:373) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1348) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:578) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:501) 	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:317) 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228) 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:315) 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) 	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:251) 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1138) 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1065) 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:584) 	... 45 common frames omitted Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'redisManager': Unsatisfied dependency expressed through field 'connection'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'connection' defined in class path resource [com/solaredge/smarthome/common/infra/redis/configuration/LettuceClientConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.lettuce.core.api.StatefulRedisConnection]: Factory method 'connectionDev' threw exception; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:587) 	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:91) 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:373) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1348) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:578) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:501) 	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:317) 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228) 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:315) 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) 	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:251) 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1138) 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1065) 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:584) 	... 58 common frames omitted Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'connection' defined in class path resource [com/solaredge/smarthome/common/infra/redis/configuration/LettuceClientConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.lettuce.core.api.StatefulRedisConnection]: Factory method 'connectionDev' threw exception; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379 	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:587) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1254) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1103) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:541) 	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:501) 	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:317) 	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228) 	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:315) 	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) 	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:251) 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1138) 	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1065) 	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:584) 	... 71 common frames omitted Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.lettuce.core.api.StatefulRedisConnection]: Factory method 'connectionDev' threw exception; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379 	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) 	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:579) 	... 83 common frames omitted Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379 	at io.lettuce.core.RedisConnectionException.create(RedisConnectionException.java:56) 	at io.lettuce.core.AbstractRedisClient.getConnection(AbstractRedisClient.java:233) 	at io.lettuce.core.RedisClient.connectStandalone(RedisClient.java:253) 	at io.lettuce.core.RedisClient.connect(RedisClient.java:202) 	at com.solaredge.smarthome.common.infra.redis.configuration.LettuceClientConfiguration.connectionDev(LettuceClientConfiguration.java:79) 	at com.solaredge.smarthome.common.infra.redis.configuration.LettuceClientConfiguration$$EnhancerBySpringCGLIB$$fd2022db.CGLIB$connectionDev$2(<generated>) 	at com.solaredge.smarthome.common.infra.redis.configuration.LettuceClientConfiguration$$EnhancerBySpringCGLIB$$fd2022db$$FastClassBySpringCGLIB$$22680d5d.invoke(<generated>) 	at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228) 	at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:361) 	at com.solaredge.smarthome.common.infra.redis.configuration.LettuceClientConfiguration$$EnhancerBySpringCGLIB$$fd2022db.connectionDev(<generated>) 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 	at java.lang.reflect.Method.invoke(Method.java:498) 	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) 	... 84 common frames omitted Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: localhost/127.0.0.1:6379 	at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) 	at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717) 	at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:325) 	at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:340) 	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:633) 	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:580) 	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:497) 	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:459) 	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) 	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) 	at java.lang.Thread.run(Thread.java:748) Caused by: java.net.ConnectException: Connection refused: no further information 	... 11 common frames omitted

It looks like you have declared a connection @Bean that is initialized on startup and that attempts to connect on startup. This is rather a general Spring question as it's not really tied to Lettuce.
You can add @Lazy to your bean or entirely use the connection pool as a kind of proxy between your code and Redis (implies removing the connectionDev(…) bean). One benefit of the pool is that it creates a connection only when you acquire a connection and not necessarily up front.

@mp911de I am facing the same issue. What do you by using connection pool as an proxy ? U mean to tell instantiate the bean when we try to put data on redis ?

I solved it with @RefreshScope annotation of spring and scheduled task that tries to refresh it periodically until success. In case bean can't be initialized it is mocked..

@RefreshScope annotation

@creif can you please share your code to show how to use @RefreshScope. If i am not wrong i should be using @RefreshScope while creating an bean which redisClusterClient.connect() ?

@Profile({"dev","staging"})
@Bean(name = "connection", destroyMethod = "close")
@RefreshScope
StatefulRedisConnection<String, Object> connectionDev(RedisClient redisClient)
{
    try
    {
        StatefulRedisConnection<String, Object> connection = redisClient.connect(new SerializedObjectCodec());
        connection.setTimeout(Duration.ofMillis(timeout));
        return connection;
    }
    catch (Throwable ex)
    {
        return Mockito.mock(StatefulRedisConnection.class);
    }
}

And in scheduller
context.getBean(RefreshScope.class).refresh("connection");

authors: creif mp911de vinaycn


text:
[RFC] Introduction and request to contribute

Contribution Request
Hello! I'm with the @infinitecsolutions Front-End team, and we are actively using SUIR v0.8. We are now building our company UI library and we plan to have SUIR as our base.
We currently have 3 full-time developers focused on building a reusable library and to contribute to SUIR.
I took my time yesterday to understand about Stardust and the plans for SUIR v1 and v2 and I'm quite impressed with the plan. It's totally according to our future plans and I truly believe we can help somehow.
In order not to go too long, I want to understand the process of proposing new behaviors inside Semantic-UI and how will Stardust handle them. For example, we have an internal requirement that our multiple selection dropdowns should not display labels, but checkbox instead (we already have an implementation of it in  SUIR v0.8).
Last but not least, I'm really happy to see this amazing movement here towards a consistency in UI components on the web. Thank you all, specially @levithomason for this amazing work. 👏🏻

Hi @hugomn, thanks for posting.  We'd love to have your teams input and help.
I will be updating the CONTRIBUTING.md to walk folks through the process of contributing to v2 and Stardust.  In the meantime, you can post any ideas here in the Stardust fork.
Please post a new feature request.  We'd love to collaboratively work through the API and solution with your team.  We have many thoughts on the Dropdown moving forward as well.

Thanks, @levithomason. I'll for sure do that. I'm currently implementing our Multiple Selection dropdown with checkboxes in a fork of SUIR. Do you think it's a good approach to create the new feature request and to make it a candidate for a PR in SUIR v0.8? How should we proceed?

Posting a proposal here would be great. The Dropdown in v1 is unlikely to receive large updates.

Perfect, will do that. Thanks!

authors: hugomn levithomason

repo: levithomason/stardust


text:
download failed - network error (output too big?)

Hello,
I was just about to say that there's an issue downloading larger objects, but I think its a browser issue, I tried using Firefox and the download worked fine, seems to be a problem with Chrome.
I'm having so much fun playing around with this, thank you.

I've been trying to download project of 2,4Gb and it stops at last to 824Mb if not before. Tried it on 3 different browsers so far with no difference. some limit on size?

Yeah most browsers set a safety limit for the Blob / Filesaver APIs.  There's not a quick fix for this.  We'd have to rewrite the code to use https://github.com/jimmywarting/StreamSaver.js or wait until https://wicg.github.io/file-system-access/ is supported by browsers.

authors: NNNenov levskaya welcroft

repo: levskaya/polyhedronisme


text:
error when there are not any commits

Description
When creating a new repo with git init and before committing anything, I got this error:
error: (ERROR) packer/start/gitsigns.nvim/lua/gitsigns/git.lua(133): fatal: no such ref: HEAD

Neovim version
NVIM v0.5.0 Build type: Release LuaJIT 2.1.0-beta3
Operating system and version
macOS 10.13.6
Steps to reproduce

create a new Git repo with git init
do not commit anything
editing some files
see the error

Expected behavior
Should not have the error
Actual behavior
error: (ERROR) packer/start/gitsigns.nvim/lua/gitsigns/git.lua(133): fatal: no such ref: HEAD
Gitsigns debug messages
No response
Minimal config
vim.cmd [[set runtimepath=$VIMRUNTIME]]
vim.cmd [[set packpath=/tmp/nvim/site]]
local package_root = '/tmp/nvim/site/pack'
local install_path = package_root .. '/packer/start/packer.nvim'

if vim.fn.isdirectory(install_path) == 0 then
  print("Installing Gitsigns and dependencies.")
  vim.fn.system { 'git', 'clone', '--depth=1', 'https://github.com/wbthomason/packer.nvim', install_path }
end

-- Load plugins
require('packer').startup {
  {
    'wbthomason/packer.nvim',
    {
      'lewis6991/gitsigns.nvim',
      requires = { 'nvim-lua/plenary.nvim' },
    },
    -- ADD PLUGINS THAT ARE _NECESSARY_ FOR REPRODUCING THE ISSUE
  },
  config = {
    package_root = package_root,
    compile_path = install_path .. '/plugin/packer_compiled.lua',
    display = { non_interactive = true },
  },
}

_G.load_config = function()
  require('gitsigns').setup{
    debug_mode = true, -- You must add this to enable debug messages
    -- GITSIGNS CONFIG THAT ARE _NECESSARY_ FOR REPRODUCING THE ISSUE
  }

  -- ADD INIT.LUA SETTINGS THAT ARE _NECESSARY_ FOR REPRODUCING THE ISSUE

  -- ALSO INCLUDE GITSIGNS DEBUG MESSAGES
  vim.cmd('Gitsigns debug_messages')
end

require('packer').sync()

vim.cmd [[autocmd User PackerComplete ++once echo "Ready!" | lua load_config()]]

Unable to reproduce. Line numbers in the reported error message also seems to indicate the plugin is not up to date so will close.
Please comment if issue persists.


text:
preview inline does not follow 'wrap' option

Description
When preview_hunk_inline() is called on a hunk, long lines in the old text are not wrapped, while the lines after the change are wrapped.
Here is a screenshot to illustrate (the difference is an additional space character at the end)

Neovim version
NVIM v0.8.1 Build type: Release LuaJIT 2.1.0-beta3 Compiled by runner@fv-az178-366  Features: +acl +iconv +tui See ":help feature-compile"
Operating system and version
Linux Mint Cinammon 21
Expected behavior
both the lines before the change, and the lines after the change should be wrapped.
Actual behavior
the line above is not wrapped, while the line below is wrapped.
Minimal config
vim.o.packpath = '/tmp/nvim/site'

local plugins = {
  gitsigns = 'https://github.com/lewis6991/gitsigns.nvim',
  -- ADD OTHER PLUGINS _NECESSARY_ TO REPRODUCE THE ISSUE
}

for name, url in pairs(plugins) do
  local install_path = '/tmp/nvim/site/pack/test/start/'..name
  if vim.fn.isdirectory(install_path) == 0 then
    vim.fn.system { 'git', 'clone', '--depth=1', url, install_path }
  end
end

require('gitsigns').setup{
  debug_mode = true, -- You must add this to enable debug messages

  -- GITSIGNS CONFIG
  on_attach = function(bufnr)
    local gs = package.loaded.gitsigns

    local function map(mode, l, r, opts)
      opts = opts or {}
      opts.buffer = bufnr
      vim.keymap.set(mode, l, r, opts)
    end

    map('n', '<leader>hp', gs.preview_hunk_inline)
  end

}

Steps to reproduce

nvim --clean -u minimal.lua
set wrap
type a long line and commit the change
add a character to the long line
preview_hunk_inline with <leader>hp

Gitsigns debug messages
signs.init: Using vimfn signs
dprintf: Deriving GitSignsAdd from DiffAdd
dprintf: Deriving GitSignsChange from DiffChange
dprintf: Deriving GitSignsDelete from DiffDelete
dprintf: Deriving GitSignsChangedelete from GitSignsChange
dprintf: Deriving GitSignsTopdelete from GitSignsDelete
dprintf: Deriving GitSignsUntracked from GitSignsAdd
dprintf: Deriving GitSignsAddNr from GitSignsAdd
dprintf: Deriving GitSignsChangeNr from GitSignsChange
dprintf: Deriving GitSignsDeleteNr from GitSignsDelete
dprintf: Deriving GitSignsChangedeleteNr from GitSignsChangeNr
dprintf: Deriving GitSignsTopdeleteNr from GitSignsDeleteNr
dprintf: Deriving GitSignsUntrackedNr from GitSignsAddNr
dprintf: Deriving GitSignsAddLn from DiffAdd
dprintf: Deriving GitSignsChangeLn from DiffChange
dprintf: Deriving GitSignsChangedeleteLn from GitSignsChangeLn
dprintf: Deriving GitSignsUntrackedLn from GitSignsAddLn
dprintf: Deriving GitSignsStagedAdd from GitSignsAdd
dprintf: Deriving GitSignsStagedChange from GitSignsChange
dprintf: Deriving GitSignsStagedDelete from GitSignsDelete
dprintf: Deriving GitSignsStagedChangedelete from GitSignsChangedelete
dprintf: Deriving GitSignsStagedTopdelete from GitSignsTopdelete
dprintf: Deriving GitSignsStagedAddNr from GitSignsAddNr
dprintf: Deriving GitSignsStagedChangeNr from GitSignsChangeNr
dprintf: Deriving GitSignsStagedDeleteNr from GitSignsDeleteNr
dprintf: Deriving GitSignsStagedChangedeleteNr from GitSignsChangedeleteNr
dprintf: Deriving GitSignsStagedTopdeleteNr from GitSignsTopdeleteNr
dprintf: Deriving GitSignsStagedAddLn from GitSignsAddLn
dprintf: Deriving GitSignsStagedChangeLn from GitSignsChangeLn
dprintf: Could not derive GitSignsStagedDeleteLn
dprintf: Deriving GitSignsStagedChangedeleteLn from GitSignsChangedeleteLn
dprintf: Could not derive GitSignsStagedTopdeleteLn
dprintf: Deriving GitSignsAddPreview from DiffAdd
dprintf: Deriving GitSignsDeletePreview from DiffDelete
dprintf: Deriving GitSignsCurrentLineBlame from NonText
dprintf: Deriving GitSignsAddInline from TermCursor
dprintf: Deriving GitSignsDeleteInline from TermCursor
dprintf: Deriving GitSignsChangeInline from TermCursor
dprintf: Deriving GitSignsAddLnInline from GitSignsAddInline
dprintf: Deriving GitSignsChangeLnInline from GitSignsChangeInline
dprintf: Deriving GitSignsDeleteLnInline from GitSignsDeleteInline
dprintf: Deriving GitSignsDeleteVirtLn from DiffDelete
dprintf: Deriving GitSignsDeleteVirtLnInLine from GitSignsDeleteLnInline
dprintf: Deriving GitSignsVirtLnum from GitSignsDeleteVirtLn
attach(1): Attaching (trigger=setup)
run_job: git --version
run_job: git --no-pager --literal-pathspecs -c gc.auto=0 config user.name
run_job: git --no-pager --literal-pathspecs -c gc.auto=0 rev-parse --show-toplevel --absolute-git-dir --abbrev-ref HEAD
run_job: git --no-pager --literal-pathspecs -c gc.auto=0 --git-dir /home/bertrand-sim/Research/Manuscript/.git -c core.quotepath=off ls-files --stage --others --exclude-standard --eol /home/bertrand-sim/Research/Manuscript/manuscript.tex
watch_gitdir(1): Watching git dir
run_job: git --no-pager --literal-pathspecs -c gc.auto=0 --git-dir /home/bertrand-sim/Research/Manuscript/.git show :0:manuscript.tex
update(1): updates: 1, jobs: 5
update(1): updates: 2, jobs: 5
update(1): updates: 3, jobs: 5
cli.run: Running action 'debug_messages' with arguments {}
cli.run: Running action 'debug_messages' with arguments {}

This is a limitation of virtual lines. If you wish for this to be implemented, then request it in core.


text:
Cull old games with status "ready"

Describe the solution you'd like
Admins can create a bunch of games in the "ready" status using the !event command. Those games can just stay in that state until the admin runs the !begin command to start those games.
They may never do this.
When do those games get deleted? Do we notify the admin when we delete them? We shouldn't notify the players like we do when we delete expired "pending" games because the users may not even be aware those games exist at all.

Games like this are not supported in v7. We'll address issues like this when we re-introduce event support.

repo: lexicalunit/spellbot


text:
Disable the help command

Description
Disables the !help command. Too many other bots use it. We'll still respond to !spellbot help though.
Checklist

[x] Add tests for these changes
[ ] Test coverage is not decreased
[ ] Entire test suite passes

Codecov Report

Merging #242 into master will decrease coverage by 0.40%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master     #242      +/-   ##
==========================================
- Coverage   97.55%   97.14%   -0.41%
==========================================
  Files          37       37
  Lines        2042     2035       -7
  Branches      284      285       +1
==========================================
- Hits         1992     1977      -15
- Misses         25       30       +5
- Partials       25       28       +3

Impacted Files
Coverage Δ

src/spellbot/__init__.py
95.01% <0.00%> (-0.69%)
:arrow_down:

src/spellbot/data.py
100.00% <0.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d841634...c872550. Read the comment docs.

authors: codecov-io lexicalunit


text:
New API and etc

New EVE API, log/info from ADAM, rootfs download, get/set EVE config, binary tests with possibility of configuring by test script. Fix issues #22, #42, #46 and #47.

Folks, I would love to review this, but it is too complex and big. There are 41 changed files, 21 commits, most of which are unrelated to one another. "use force-v1-api" is not related to "bin-test configuration" is not related to "added hooks support for tests".
Is there any reason this isn't 20 or so distinct PRs? Make them small and easy to review, we can get them merged in, and we run much less risk of breaking something. Granted, this is not in production use yet, but big PRs like this make it harder to get there, rather than easier.

authors: deitch sadov

repo: lf-edge/eden


text:
[12.0 stable] Allow device access when loading OCI spec from file

Since the update to runc v1.1.0 and containerd v1.6.1 in 158cecdb9a021a403461f466b1eb0a72ffc009cf we need to explicitly allow device access in the OCI config. This is done when generating a new OCI spec.
However, when loading an OCI config from a file, we need to make sure that the device access is added, because older OCI configs may lack this configuration.
(cherry picked from commit 17d9a41e309db043db854a8caa658005f11fbea5)

Can we do these backport PRs/commits so that the commit and PR messages reference to the commit in master? See for instance the commits in #3943)
(FWIW I do that automatically by using git cherry-pick)

authors: eriknordmark europaul

repo: lf-edge/eve


text:
Remove beta status

Remove beta status

@PrinceAlliander Could you review this PR? Thanks.


text:
Support for Android >= 10

Is your feature request related to a problem? Please describe.
The app is not really working on Android > 10 since the app can't access most folders that were available on previous Android versions.
Describe the solution you'd like
It's not the solution I'd like, rather the only one that seems to be possible. According to the table on this page the only way to access files on current and future Android versions is by using the system file chooser to get access to either a single file or a specific directory.
So the app would have to be rewritten to use the system file chooser instead of the embedded one. Since the file chooser might not have all features in previous Android versions, the embedded file chooser should still be provided in case of Android < 10.
Describe alternatives you've considered
I was unable to find any real alternatives.

Have a issue?

"Open With" does not work for me, android 10.

Hi @soredake could you describe this a bit more, preferably in a new issue?
I can't really tell if the app is not showing up in the list or crashing when opening and I also need to know what kind of file you are trying to open.

@lfuelling after opening nothing happens. https://streamable.com/ml7sqt

Thanks for the screencap.
I'll look into it later today, in the meantime you can try closing the app completely and restarting it before selecting a file as a workaround.

closing the app completely and restarting it before selecting a file

Thanks, this progresses me further. https://streamable.com/oubcnu

Ah yes, the app can't write into the downloads folder in current Android versions.
Try using /storage/emulated/0/Documents I am able to use this folder on the emulator after confirming storage permissions.

Waiting for Google before continuing with this

Google has apparently released the delayed API 🎉

authors: lfuelling soredake sunpan3213

repo: lfuelling/lrkFM


text:
🛑 Acceso Clientes is down

In feb1b66, Acceso Clientes (https://intranet.samsa.com.ar/apex/f?p=1000) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Acceso Clientes is back up in e1ab22f.

repo: lgimenezdev/samsanet


text:
Instantly run if time triggers are overdue.

The docs state:

Tasks that are started after the scheduled time has passed (because of the StartWhenAvailable property being set to True) are queued in the Task Scheduler service's queue of tasks and they are started after a delay. The default delay is 10 minutes.

That means, if the computer is started after sunrise and the mode was dark when it has been shut down, it takes 10 minutes before the mode is turned to light. That's unexpected for the purpose of this app.
This behavior doesn't change if the priority of the task is updated from below normal (default) to normal. It turns out that the MissedTasksStartupDelay value in registry key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\Configuration defines the delay. Updating this value is no option because

all tasks are affected
updates in HKLM require elevation

The easiest way to get around this is adding a logon trigger and a resume-from-hibernation event trigger. The StartWhenAvailable setting isn't needed any longer.

I didn't think that this would be how one detects the hibernation wakeup.

Neither did I. Fortunately I found in the internet how to define such a trigger in the UI. So I followed these instructions and manually created a dummy task, exported it into an XML file, copied the query definition, replaced the < and > entities ... and it worked 😄

Actually I have two more ideas, but I think I'll refrain from starting more PRs as you plan to turn into a different direction using waitable timers.
The first would have been getting rid of the big buffer for the executable path since the compiler complains about it. Something about like that:
HRESULT put_own_exe_path(IExecAction* pExecAction)
{
    WCHAR *file_name = NULL;
    DWORD cap = 256, len = 0;
    do {
        free(file_name);
        cap *= 2; // unchecked because the maximum path length of 32,767 characters is not even close to ULONG_MAX
        file_name = (WCHAR *)malloc(cap * sizeof(WCHAR));
        if (!file_name) {
            return E_OUTOFMEMORY;
        }

        len = GetModuleFileNameW(NULL, file_name, cap);
        if (len == 0) {
            return HRESULT_FROM_WIN32(GetLastError());
        }
    } while (len >= cap - 1);

    BSTR exe_path = SysAllocStringLen(file_name, len);
    free(file_name);
    if (!exe_path) {
        return E_OUTOFMEMORY;
    }

    HRESULT hr = pExecAction->lpVtbl->put_Path(pExecAction, exe_path);
    SysFreeString(exe_path);
    return hr;
}

The second idea is a little weird and probably nothing that should be found in public code 😅 I'm talking about BSTR literals. They have been successfully tested as arguments in the put_... methods. The debugger didn't report any violation.
That's an example of how it could look like:
https://godbolt.org/z/aehMc4r4G

FYI I wasn't able to finish it this weekend. But I made a simple icon with Inkscape and wrote the basics of the notification area icon / context menu code. What's missing is the integration of SetWaitableTimerEx or SetTimer, as well as a settings dialog for the geo-coordinates and manual times. It's in the https://github.com/lhecker/windows-dark-mode-switcher/tree/wip branch again.

I just pushed everything. It's a huge change. You can put it into %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup and it should just work. It has a settings UI and everything.
That said I haven't really tested it yet, because it's super late now and I'll catch some sleep. 😅

Oh wow, that's a complete reworking 🤩 👍
Unfortunately mounting plasterboard is still my main task after work these days. So, I'm afraid dark mode is the only thing I'm able to observe for a while 🤣 However I'm going to compile the code and just let it run. For sure I'll give you feedback within the next few days.

I've run your latest release. Only today I had the chance to test what happens when the timer expires while the computer is in hibernate mode. Everything works perfectly.
What a beautiful, lightweight tool it is! Great job 👍

authors: german-one lhecker

repo: lhecker/windows-dark-mode-switcher


text:
Run demos in docker

This PR allows to run the provided demos in a docker environment based on ubuntu 20.04 and cuda 11.1.1. As the code is directly mounted in the container, modifications can be made without having to rebuild the image.

Great job!  Thanks a lot!


text:
状态栏问题

XPopup版本
如2.8.14
手机系统和型号
华为Mate20 Android 10
描述你的问题
在第一个弹窗  弹起第二个弹窗 都设置的为hasStatusBar(false)
当第二个弹窗dismiss 后
第一个弹窗的状态栏会显示出来

第一个弹窗是FullScreenPopupView  第二个CenterPopupView

@jiaoyongzhi 更新到2.8.15即可

authors: jiaoyongzhi li-xiaojun

repo: li-xiaojun/XPopup


text:
希望可以出个让loadingPopup显示到某个View或者某个XPopup中间的功能

这样的话可以省略很多的代码xml

这个的话可能做不到，弹窗不只是一个Loading效果；还有很多交互的功能；如果只是局部位置的Loading效果显示，可以使用我的StateLayout 库，专门解决这个问题的


text:
feat: hidden nodes can now be reflected from query parameters

hidden nodes can now be reflected from query parameters!
https://github.com/user-attachments/assets/c287e2a5-be9c-47f0-906a-6b0ed39a540a
As a side effect, the hidden information can now be maintained even if the showMode is changed 👍🏻
However, the URL looks a little bad, as following:
https://liam-erd-sample-a6smzxm8k-route-06-core.vercel.app/?hidden=account_aliases%2Caccount_conversations%2Caccount_deletion_requests%2Caccount_domain_blocks%2Caccount_migrations%2Caccount_moderation_notes%2Caccount_notes%2Caccount_pins%2Caccount_relationship_severance_events%2Caccount_stats%2Caccount_statuses_cleanup_policies%2Caccount_warning_presets%2Caccount_warnings%2Caccounts%2Caccounts_tags%2Cadmin_action_logs%2Cannouncement_mutes%2Cannouncement_reactions%2Cannouncements%2Cannual_report_statuses_per_account_counts%2Cappeals%2Cbackups%2Cblocks%2Cbookmarks%2Cbulk_import_rows%2Cbulk_imports%2Ccanonical_email_blocks%2Cconversation_mutes%2Cconversations%2Ccustom_emoji_categories%2Ccustom_emojis%2Ccustom_filter_keywords%2Ccustom_filter_statuses%2Ccustom_filters%2Cdomain_allows%2Cdomain_blocks%2Cemail_domain_blocks%2Cfavourites%2Cfeatured_tags%2Cfollow_recommendation_mutes%2Cfollow_recommendation_suppressions%2Cfollow_requests%2Cfollows%2Cgenerated_annual_reports%2Cidentities%2Cimports%2Cinvites%2Cip_blocks%2Clist_accounts%2Clists%2Clogin_activities%2Cmarkers%2Cmedia_attachments%2Cmentions%2Cmutes%2Cnotification_permissions%2Cnotification_policies%2Cnotification_requests%2Cnotifications%2Coauth_access_grants%2Coauth_access_tokens%2Coauth_applications%2Cpghero_space_stats%2Cpoll_votes%2Cpolls%2Cpreview_card_providers%2Cpreview_card_trends%2Cpreview_cards%2Cpreview_cards_statuses%2Crelationship_severance_events%2Crelays%2Creport_notes%2Creports%2Crules%2Cscheduled_statuses%2Csession_activations%2Csettings%2Csevered_relationships%2Csite_uploads%2Csoftware_updates%2Cstatus_edits%2Cstatus_pins%2Cstatus_stats%2Cstatus_trends%2Cstatuses%2Cstatuses_tags%2Ctag_follows%2Ctag_trends%2Ctags%2Cterms_of_services%2Ctombstones%2Cunavailable_domains%2Cuser_invite_requests%2Cweb_push_subscriptions%2Cweb_settings%2Cwebauthn_credentials%2Cwebhooks
It may be possible to compress using CompressionStream. This will be considered for support in the next PR.
ref:

CompressionStream - Web APIs | MDN
in japanese post: 続・URLシェアを支える技術 CompressionStream

It may be possible to compress using CompressionStream. This will be considered for support in the next PR.

👍👍

repo: liam-hq/liam


text:
Add inlined function decoding support for DWARF

This change adds the necessary logic for decoding inlined functions when using the DWARF format. Like the rest of the code in the module, it's heavily based on the corresponding addr2line functionality.
Closes: #192

Will finish this up soon.

Will finish this up soon.

Should be ready now.

authors: d-e-s-o danielocfb

repo: libbpf/blazesym


text:
Look for package opencv.pc if opencv4.pc is not found

Conda env creates opencv4.pc (used by pkg-config) while apt install libopencv-dev creates opencv.pc.
See https://github.com/libffcv/ffcv/issues/182 for more details.

This looks good! Do you mind fixing the merge conflict so that I can add it to v1.0.0 ?

This looks good! Do you mind fixing the merge conflict so that I can add it to v1.0.0 ?
@GuillaumeLeclerc

Thanks. Just updated.

@dskhudia Sorry for the delay on this, but should line 96 in setup.py here be inside the except?

authors: GuillaumeLeclerc andrewilyas dskhudia

repo: libffcv/ffcv


text:
Intersector.intersectRayBounds can return an intersection outside the bounding box

How to reproduce:
Ray ray = new Ray(new Vector3(5731.2046f, -6039.354f, 11157.498f), new Vector3(-0.62397736f, -0.053491283f, -0.77960944f));
BoundingBox box = new BoundingBox(new Vector3(-3840.0f, -7680.0f, 848.0f), new Vector3(-1920.0f, -5760.0f, 1929.0f));
Vector3 entry = new Vector3();
if (Intersector.intersectRayBounds(ray, box, entry))
    System.out.println(entry); // [-1919.9995, -6695.2637, 1597.9346] (error: -1919.9995 > -1920.0)

Suggested patch (Intersector.intersectRayBounds):
if (hit && intersection != null) {
    intersection.set(ray.direction).scl(lowest).add(ray.origin);
    if (intersection.x < box.min.x)
        intersection.x = box.min.x;
    else if (intersection.x > box.max.x)
        intersection.x = box.max.x;
    if (intersection.y < box.min.y)
        intersection.y = box.min.y;
    else if (intersection.y > box.max.y)
        intersection.y = box.max.y;
    if (intersection.z < box.min.z)
        intersection.z = box.min.z;
    else if (intersection.z > box.max.z)
        intersection.z = box.max.z;
}

Additionally, if the ray origin is inside the box, the code doesn't set the intersection point:
if (v0.x > 0 && v0.y > 0 && v0.z > 0 && v1.x < 0 && v1.y < 0 && v1.z < 0) {
    return true;
}

I think the intersection point should be set to the ray origin in this case, even if it can break existing code... Suggested patch:
if (v0.x > 0 && v0.y > 0 && v0.z > 0 && v1.x < 0 && v1.y < 0 && v1.z < 0) {
    if (intersection != null)
        intersection.set(ray.origin);
    return true;
}

Thanks!

Thanks! Looks like a good addition, would you mind to send a pull request for it?
If there's an intersection and the intersection point is requested then that point should be within the bounds of the bounding box. Clamping the value to avoid small floating point errors sounds like a good way to guarantee that.
If the origin is inside the box then indeed the intersection point should be set as well. Setting it to the origin looks like the most obvious and simple solution for that. In that case the intersection point would be defined as "the point on the ray closest to the origin which is within the specified bounds".
Someone might expect the intersection point to be both on the ray and on the bounding box (each of the six planes) though. Floating point errors are to be expected, but having an intersection point inside the bounding box might not be that obvious. So adding a line to the javadocs might be a good idea.

Pull request sent.
I have added a comment about what is returned by this method, in particular in the case of a ray origin inside the box.
Regarding this part of your comment:

Someone might expect the intersection point to be both on the ray and on the bounding box (each of the six planes) though.

I think this is not the only issue with my fix: the way I'm clamping the intersection point can make it slightly diverge from the ray. I don't think this is problem (at least it is not an issue for me), but I say it explicitly in the javadoc to dissipate any ambiguity or wrong expectation.
Anyway, many thanks for this awesome project and your kind response!

I just realized there is another issue with this method (even with my patch). The following code is wrong:
v0.set(ray.origin).sub(box.min);
v1.set(ray.origin).sub(box.max);
if (v0.x > 0 && v0.y > 0 && v0.z > 0 && v1.x < 0 && v1.y < 0 && v1.z < 0) {
	return true;
}

This is obvious if you set the origin of box to (say) the minimum of the box, but it is also true if it is on any of the six planes of the box: the code tests if the origin is exclusively inside the box (excluding the bounds). The simplest fix is:
if (box.contains(ray.origin)) {
	if (intersection != null) intersection.set(ray.origin);
	return true;
}

I'm preparing a new pull request, but I want first to fix another issue I found with the intersectRayTriangle method (see next issue).

authors: fwolff xoppa

repo: libgdx/libgdx


text:
Odd Minimize / Maximize behaviour at switching JVMs

Issue details / Reproduction steps/code
I develope a steam-like library app which uses LibGdx in 2d mode for the GUI. And later I want to use LibGdx for the developement of the games for the library. The games shall be seperate projects (with seperate file distribution and seperate JVM).
My problem is the "reaction" of LibGdx at executing the launch of another JVM. To test the launch mechanic of the library app I created a very basic and simple java-swing-app. This app is an empty window just to make the launch success visible.
I implemented this launch mechanic with this line of code:
Process gameProcess = Runtime.getRuntime().exec(String.format("java -jar %s", Game.GameDataPath));
Where "Game.GameDataPath" contains the absolute path to the "FatJar" of the game.
The launch itself works as intended. The test window show up. But the behaviour of the library app is odd. It is automaticly minimized to the task bar, but without firing the "pause()" or "hide()" event.  I have no code implemented for this minimization. And without this events I cannot prepare the app, too.
To resume the library app after closing the game JVM I tried each of this lines of code:
gameProcess.onExit().thenRun(() -> { getScreen().show(); });
gameProcess.onExit().thenRun(() -> { getScreen().resume(); });
gameProcess.onExit().thenRun(() -> { Gdx.graphics.setFullscreenMode(Gdx.graphics.getDisplayMode()); });
I even tried this three approaches with a delegation of the execution to the render-thread of the library app to prevent thread context issues. But nothing happend. The Library app stays minimized. The only way to bring the library-app window back is to click with the mice manually on the task in the task bar.
Is this intended? Is there another way to "revoke" LibGdx in such case? Does it belong to some kind of "focus" issue?
Version of libGDX and/or relevant dependencies
gdxVersion = '1.13.0'
Java 17
Please select the affected platforms

[ ] Android
[ ] iOS
[ ] HTML/GWT
[x] Windows
[x] Linux
[ ] macOS

After further investigation it seems to depend indeed on the focus behaviour of desktop platforms.
Implementing a window event adapter at the Lwjgl3Application level shows, that focusLost() is fired at running the launch code and focusGained() is fired at clicking at the minimized task in the task bar.
The question is, has libGdx a requestFocus() implementation like other UI libs?
Upto now I have not found it.

The only way I found to give a game instance control over the window is a little awkward reference forwarding:
public class LibraryGameApplication extends Lwjgl3WindowAdapter {
    // main Launcher Klasse
    public static void main (String[] arg) {
        Lwjgl3ApplicationConfiguration gameAppConfig = new Lwjgl3ApplicationConfiguration();
        gameAppConfig.setTitle("Library Application");
        gameAppConfig.setForegroundFPS(60);
        gameAppConfig.useVsync(true);

        // passing window handle to game instance for window control
        GameLibrary game = new GameLibrary();
        gameAppConfig.setWindowListener(new Lwjgl3WindowAdapter() {
            @Override
            public void created(Lwjgl3Window lw) {
                game.setWindow(lw);
            }
        });

        new Lwjgl3Application(game, gameAppConfig);
    }
}

And then the game instance has access to restore and re-focus the minimized window:
public class GameLibrary extends Game{
    private volatile Lwjgl3Window Window = null;

    public GameLibrary() {

    }

    public void setWindow(Lwjgl3Window window) {
        Window = window;
    }

    private void launchGame() {
            try {
                Runtime.getRuntime().exec(String.format("java -jar %s", "GameDataPath"));
                gameProcess.onExit().thenRun(() -> {
                    if (Window != null) {
                        Window.restoreWindow();
                        Window.focusWindow();
                    }
                });
            } catch(IllegalArgumentException ex) {

            }
        }
}

But it works :)


text:
Prevent potential crashes in IOSApplication due to audio being unavailable

I am seeing several EXC_BAD_ACCESS KERN_INVALID_ADDRESS crash logs happening when OALSimpleAudio.sharedInstance().setUseHardwareIfAvailable(false); is called.
The issue seems to be that the shared instance of OALSimpleAudio is sometimes not available and returns null. There is already a null-check in https://github.com/libgdx/libgdx/blob/14d89225ae26afc1cc7f52e986e566bf19425275/backends/gdx-backend-robovm/src/com/badlogic/gdx/backends/iosrobovm/IOSAudio.java#L34 for the very same reason.
This PR adds the same checks to didBecomeActive and willEnterForeground for the OALAudioSession and OALSimpleAudio instances.
I also made a very small change to robovm IOSNet to accompany the latest changes to moe IOSNet.

Cheers @CoderBaron

authors: CoderBaron Tom-Ski


text:
feat: add browser <-> nodejs test

wip

[x] added test
[x] fix libp2p-websockets https://github.com/libp2p/js-libp2p-websockets/pull/36
[x] fix secio

I was just very confused by seeing CI green but locally seeing tests failing. It seems aegir doesn't exist(1) when tests fail in the browser
https://travis-ci.org/libp2p/js-libp2p-secio/jobs/174449763#L1399

doesn't exist(1) when tests fail in the browser

Yes that is what I had to do, to make Sauce Labs not make all CI red

The underlying reason for the failure to communicate between node.js and the browser is found in https://github.com/libp2p/js-libp2p-crypto/pull/29

Ready for review and passing with https://github.com/libp2p/js-libp2p-crypto/pull/29

authors: diasdavid dignifiedquire


text:
DHTs and NATs

Hey @diasdavid,
With some of the advances we've made on Nomad, @ReidWilliams and I now have a couple specific questions regarding libp2p for our next steps / where we might contribute.
Relevant Background & State
We are almost wrapped up porting Nomad over to a js-only package (the pure-js branch is here). Our intent / end goal is for Nomad to run in the browser, connect to peers, receive messages and the like without reliance on anything outside of what IPFS / libp2p / nomad provides.
Our browser bundle builds, and as we're now looking to expose more folks to this ecosystem, one of the on-ramps is to use it as a rapid prototyping tool (been doing this already within IDEO). So to meet the goal mentioned above we're taking a couple of steps to shim the js-only module.
And this is where we have questions...
Question: DHT
Because the DHT is not yet implemented in js-land, we are adding dht-shim. Basically this is a simple server, store, and utils (only for use at this early stage) that take care of connecting peers.
I know the DHT has been on the roadmap and in the conversation for a while (also saw the recent question on it here). So with the above in mind, we're curious as to:

How far off it might be (I saw work started on the DHT here)?
Is this possibly an area where contribution is needed?

Question: Peers behind NATs
When it comes to peers behind NATs, it would be great to avoid reliance on a central signaling server (Note: the optionality of setting up your own signaling server is far better than not being able to participate). We were about to add the webrtc-star transport, but before we did this, we wanted to check in with you to see:

Are there any initiatives that we've missed in the community to help with connecting peers behind NATs?
Are there any libraries that you're aware of that might help with this? (E.g.: perhaps there's an interesting project you know of and you're awaiting someone to implement the transport)
Is the above-mentioned goal feasible?

Goal
Our goal is to keep moving things forward, and to continue learning by having people build :) Once we have a better understanding of the above areas, we'll get the next steps out for review!
Thanks in advance!

Hi @gavinmcdermott @ReidWilliams  o/ Good to hear back from you :)
We should definitely jump into some kind of fast communication medium (like an hangout), to catch up, there are lot of details that need to be covered, but the bulk of it is:

Is the DHT work going to happen this Quarter? Yes, later this Quarter, see the ROADMAP at https://waffle.io/ipfs/roadmaps. Right now we are doing all of the other pieces to make that work nicely, see: https://github.com/ipfs/pm/issues/310#issuecomment-273728526
Help is always welcome, it would be beneficial if you can tackle the issues we have at hand for each sprint, otherwise, the context switching cost will be very expensive by going back and forward on things we have deferred later in the quarter.
NAT. Yes, there is a ton of work available for NAT Traversal, WebRTC is kind of a canon to solve this problem, but not every peer will have WebRTC neither we can trust WebRTC 100% of the times. Relay is one of the solutions, but to get a much deeper understanding I would recommend reading through:

https://tools.ietf.org/html/rfc5128
http://www.brynosaurus.com/pub/net/p2pnat/
https://samy.pl/chownat/
http://samy.pl/pwnat/
https://en.wikipedia.org/wiki/Universal_Plug_and_Play
https://www.npmjs.com/package/pmp
There are more modules -- https://www.npmjs.com/search?q=nat+traversal --, I haven't looked at them all. Getting a throughout review of them would be awesome.

Awesome @diasdavid ! I'll ping you on IRC to follow up on these in that case—look forward to catching up!

hey @gavinmcdermott yes the DHT is coming later this quarter, unless @diasdavid literally ties me up somewhere ;)

Thanks @dignifiedquire - I'm keen on this!

Hi @gavinmcdermott, long time no see! I hope everything is ok.
I've been revamping, polishing and cleaning a lot of stuff in libp2p land to help people get started. One of the steps is curating the issues so that they become the most objective possible. I'm breaking this one into two:

NAT https://github.com/libp2p/js-libp2p/issues/104
DHT https://github.com/libp2p/js-libp2p/issues/51

Please track it there and also take a peak on https://github.com/libp2p/js-libp2p/issues/95

@gavinmcdermott see my update here: https://github.com/libp2p/js-libp2p/issues/51#issuecomment-317094474 :)

authors: diasdavid dignifiedquire gavinmcdermott


text:
[config, crypto, network, types] Remove dead code

Remove code that's public but w/o use or tests.

verifying_key from SigningKey
As it's a provided trait member, I'm not too worried about this one growing out of hand.
PointNotOnCurveError
Maybe.

@bors-libra r+

:pushpin: Commit 8d7d0af has been approved by bothra90

:hourglass: Testing commit 8d7d0afe444bd823f34aad8eac3e0952d68fa2b9 with merge 29038fe859583f0b95c09187177d72c2356657fe...

:sunny: Test successful - checks-circle_commit_workflow
Approved by: bothra90
Pushing 29038fe859583f0b95c09187177d72c2356657fe to master...

authors: bors-libra bothra90 huitseeker

repo: libra/libra


text:
[types] Mainnet ChainId 0 -> 1 to handle accidental initialization.

Motivation
Users might accidentally initialize the ChainId field to 0, hence reserving ChainId 0 for accidental initialization and starting mainnet at 1.

:umbrella: The latest upstream changes (presumably d57f43bde43b7a1ab9ad4026c97c0b5cafa48f70) made this pull request unmergeable. Please resolve the merge conflicts.

#5189 takes care of this.

authors: aching bors-libra


text:
[cluster-test] Use validator config template to generate node config.

Motivation
Test Plan
./scripts/cti --pr 5501 --run bench
./scripts/cti --pr 5501 --run bench --enable-lsr false
./scripts/cti --pr 5501 --run bench --fullnodes-per-validator 0

/land


text:
[Move txn builder generator] Javadoc

Motivation

Try to generate doc comments compatible with javadoc
Add unit test to prevent regressions (or at least help fixing future issues)

Test Plan
cargo test -p transaction-builder-generator -- --ignored

@bors-libra land


text:
[state-sync] Adding timeout logic to peer scoring

Motivation
When we choose a peer to receive a chunk for synchronization, we use a scoring system that rewards good actors and punishes bad actors. Peer scoring currently only checks for the peer sending invalid chunk (https://github.com/libra/libra/pull/837), and this diff adds timeout logic. If a peer fails to respond and is causing a delay in the node making progress, we reduce the peer's score. However, the timed-out peer is not penalized as heavily as sending an invalid chunk error.
Test Plan
Integration + unit test in state_synchronizer crate

resubmitting with different logic here https://github.com/libra/libra/pull/932


text:
How to combine and use all three model as you have implemented at https://librairy.github.io/bio-ner/

Really appreciate your work.
I am able to download and use the individual models from Hugging face.
How I can Combine the "biobert_chemical_ner", "biobert_genetic_ner" and "biobert_diseases_ner" as one single model.

Thanks for your comment. That's a good question.
Each model is independent because it has been specialized in different tasks, and a single model should emerge as an aggregation of the specialized models. It could perhaps be approximated by following the RandomForest approach, and combining the models by merging the results after analyzing the same text

Thank you very much for your suggestion. I have implemented the same.
what is the maximum text length the model can parse?
I passed below text but the model unable to parse whole text.
"Autophagy maintains tumour growth through circulating arginine. Autophagy captures intracellular components and delivers them to lysosomes, where they are degraded and recycled to sustain metabolism and to enable survival during starvation1-5. Acute, whole-body deletion of the essential autophagy gene Atg7 in adult mice causes a systemic metabolic defect that manifests as starvation intolerance and gradual loss of white adipose tissue, liver glycogen and muscle mass1. Cancer cells also benefit from autophagy. Deletion of essential autophagy genes impairs the metabolism, proliferation, survival and malignancy of spontaneous tumours in models of autochthonous cancer6,7. Acute, systemic deletion of Atg7 or acute, systemic expression of a dominant-negative ATG4b in mice induces greater regression of KRAS-driven cancers than does tumour-specific autophagy deletion, which suggests that host autophagy promotes tumour growth1,8. Here we show that host-specific deletion of Atg7 impairs the growth of multiple allografted tumours, although not all tumour lines were sensitive to host autophagy status. Loss of autophagy in the host was associated with a reduction in circulating arginine, and the sensitive tumour cell lines were arginine auxotrophs owing to the lack of expression of the enzyme argininosuccinate synthase 1. Serum proteomic analysis identified the arginine-degrading enzyme arginase I (ARG1) in the circulation of Atg7-deficient hosts, and in vivo arginine metabolic tracing demonstrated that serum arginine was degraded to ornithine. ARG1 is predominantly expressed in the liver and can be released from hepatocytes into the circulation. Liver-specific deletion of Atg7 produced circulating ARG1, and reduced both serum arginine and tumour growth. Deletion of Atg5 in the host similarly regulated [corrected] circulating arginine and suppressed tumorigenesis, which demonstrates that this phenotype is specific to autophagy function rather than to deletion of Atg7. Dietary supplementation of Atg7-deficient hosts with arginine partially restored levels of circulating arginine and tumour growth. Thus, defective autophagy in the host leads to the release of ARG1 from the liver and the degradation of circulating arginine, which is essential for tumour growth; this identifies a metabolic vulnerability of cancer. "

authors: cbadenes imsunnykr

repo: librairy/bio-ner


text:
SDL 1.2 fluidsynth refactor

It's the similar refactoring I made at the mainstream branch with the SDL2.

Thanks, applying this.
Although there are further things to fix here, will look shortly.

Vitaly: I updated fluidsynth support in SDL-1.2 branch with further fixes.
If you have a chance, please test it (see the branch's history for the commits.)
Off-topic: Mp3 mad support is also updated there to fix a crash.

Vitaly: I updated fluidsynth support in SDL-1.2 branch with further fixes.
If you have a chance, please test it (see the branch's history for the commits.)

I'll try some after the sleep.

Off-topic: Mp3 mad support is also updated there to fix a crash.

:fox_face: :+1:

authors: Wohlstand sezero

license: Zlib


text:
Got compiling error from ubuntu

/root/ekuiper-1.11.3/TDengine/contrib/libuv/src/unix/linux.c:1721:3: error: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Werror=unused-result]
1721 |   fgets(buf, sizeof(buf), fp);  /* Skip first line. /
|   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/ekuiper-1.11.3/TDengine/contrib/libuv/src/unix/linux.c:1732:5: error: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Werror=unused-result]
1732 |     fgets(buf, sizeof(buf), fp);  / Skip rest of line. */
|     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/root/ekuiper-1.11.3/TDengine/contrib/libuv/src/unix/linux.c:1812:5: error: ignoring return value of ‘fscanf’ declared with attribute ‘warn_unused_result’ [-Werror=unused-result]
1812 |     fscanf(fp, "%llu", &(*cpus)[cpu].freq);
|     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Version: 1.46.0
Platform:  inux edgego 5.15.0-86-generic #96-Ubuntu SMP Wed Sep 20 08:23:49 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

But compiling version 1.44.2 is fine, not get  error

Already fixed, not yet released: #4056
Don't compile third-party code with -Werror (or if you do, don't complain it doesn't build.)

authors: bnoordhuis edgego

repo: libuv/libuv


text:
doc: improve example docs/code/progress/main.c

From the example:
percentage = downloaded*100.0/size;
async.data = (void*) &percentage;
uv_async_send(&async);

Multiple problems:

uv_async_send() is not a memory barrier
percentage goes out of scope when the thread exits, which can happen before the async callback runs
An optimizing compiler may opt to do the calculation in place, meaning other threads may see a partial result

There's a sleep(1) right after so (2) is not super likely but it's still a bad example.

You want is an example of async use?  Or a different one from this one

authors: bnoordhuis juanarbol


text:
Issue & milestone for 2.0?

afaik there will need to be a 2.0 release at some point (soon?) could we use a github milestone to track what needs to be done and then link it to an issue like this one?
cc @saghul / @cjihrig and refs: https://github.com/nodejs/node/pull/3594#issuecomment-199179828

I think @saghul could answer this better, but I'm under the impression that the next release will be 1.9. There is currently a v2 label and a v1.next milestone. I'm unaware of how up to date and accurate they each are.

As Colin pointed out, there is no "official" plan for 2.0 as of yet. I (with my individual hat) had many things in mind for 2.0, but now I think that was a bit too ambitious and we'll have to make changes more gradually.
That said, the current state of affairs is as follows:

v2 label: PRs which we cannot merge onto v1.x because they break the ABI. Since we haven't made master diverge they should still apply cleanly.
v1.next milestone: Rough list of things pending for the next release in the v1.x series.

After v1.9 comes v1.10, I'd say. But it's probably also a good time to get back to those PRs and land them in master (after 1.9 goes out).
While we do follow semver, we have worked hard to keep ABI stability, so I'd rather not bump the major with every trivial change that would break it, so we group them.
My 2 cents!
PS: Hopefully we can have 1.9.0 soon, I'll try to work on the issue tracker the upcoming days, I've had a lot going on recently :-(

Just curious: are there any plans to coincide libuv 2.0 with Node.js 6.0?

What were the initial features you wanted to put into libuv 2.0?

@jbergstroem nope.

@txdv kinda everything I wrote a LEP about :cry:

There is only one accepted lep - create sockets early - and it is already implemented.
Or am I missing something?

Yes, that was an easy one. I mean the pending ones.

You mean these: https://github.com/libuv/leps/pulls

I think this can be closed. Check the milestone and label for updates.

authors: Fishrock123 cjihrig jbergstroem saghul txdv