text:
关于上传组件

议题条件

[X] 我确认已查看官方使用文档：https://layui.dev ，但没有找到相关解决方案。
[X] 我确认已在 Issues 中搜索过类似的问题，但没有找到相关解决方案。
[X] 我已仔细阅读： 🍀 Layui Issue 贡献指南

议题类型
疑是 BUG
使用版本
2.9.3
问题描述
请问如何获得当前的上传实例对象呢，

我这个是多实例上传，之前的2.7版本我在done回调中我直接uploadInst.reload了下url，在调用uploadInst.upload()是没问题的，现在升级2.9.3版本，代码没变的情况下，报错了

业务代码
uploadInst.reload({url: 'xxxx'});
uploadInst.upload();

截图补充
No response
浏览器
120.0.6099.217（正式版本） （64 位）
演示地址
No response
友好承诺

[X] 我承诺将本着相互尊重、理解和友善的态度进行交流，共同维护 Layui 良好的社区氛围。

https://stackblitz.com/edit/web-platform-jx8gnq?file=2.8test.html,2.9test.html

@wangda2000好的，请提供一个最小化的拆卸，以便我们为您协助排查问题。好的拆卸应该包括但不仅限于：

产生问题的详细步骤
与问题相关的完整代码
在线演示（推荐通过stackblitz或codepen创建）

请参阅：🍀 Layui Issue 贡献指南
延伸：👉为什么要提供最小化隐藏？

重现地址 https://stackblitz.com/edit/web-platform-jx8gnq?file=2.8test.html,2.9test.html

https://github.com/layui/layui/issues/1566#issuecomment-1892400340 大佬，已经提供重现

@Sight-wcg  您好 重现地址为https://stackblitz.com/edit/web-platform-jx8gnq?file=2.8test.html,2.9test.html

你这个是不是应该用id去绑定实例，而不是用class，这样每个实例对应各自独立唯一的id就不会乱套报错了。

你这个不是应该id用去绑定实例，而不是用class，这样每个实例对应各自独立唯一的id就不会乱套报错了。

我这个是个文件上传列表组件，id是无法确定的，之前的版本每次上传后都能拿到当前上传的实例，现在的版本却不行了

repo: layui/layui


text:
Map Congo (Kinshasa) to COD instead of COG

Congo-Kinshasa is the Democratic Republic of the Congo, which has three-letter code COD, while Congo is the different Republic of the Congo, which has three-letter code COG.

Awesome. Good catch!

source: gharchive/pull-request

authors: lazd mark-otaris

repo: lazd/coronadatascraper

license_type: permissive

license_source: github-api


text:
Update package.json

need this newer version of karma

gulp-karma is deprecated #43.

repo: lazd/gulp-karma

license: mit

license_source: bigquery


text:
infinite task running

when i try to ask model, the model not responding

when i try to ask model, the model not responding

what model you're using?

when i try to ask model, the model not responding

what model you're using?

a2 (Claude-instant)

@Pozaza do you still get this error?

@Pozaza do you still get this error?

Omg, it worked

source: gharchive/issue

authors: Pozaza lazuee

license: MIT


text:
Add canonical_url to claim table

The SDK returns this property on claim, can it be provided by chainquery as well?

Absolutely. I was going to add it a few months ago, but it was still being tweaked at the time. Do we have a specific description of it written down somewhere for me to reference? @tzarebczan maybe you have something on it.

repo: lbryio/chainquery


text:
Content-type not shown correctly in file description

The Issue
For some file types, the "Content-Type" description is not shown correctly. I've noticed that for .odt (open office files) and .stl (3d printing files) the description is "application". It could be confusing for users and discourage downloads.
Some other users have also mentioned the issue in Discord.
Steps to reproduce

Open: lbry://3d-print-arrowhead-stl#936e8592f8ee5329a19a3afa203e051a220a6bce
Check the file description

Expected behaviour
The content-type should be shown in accordance with real type
Actual behaviour
The description displayed is not correct
System Configuration

LBRY Daemon version: 0.18.0
LBRY App version: 0.19.0
LBRY Installation ID:
Operating system: Win 10

Screenshots

Thanks for opening this @LavRadis, sent you a tip on Discord!

This issue was moved to lbryio/lbry#1028

Reopening issue, see possible solution: https://github.com/lbryio/lbry-app/pull/1168

authors: LavRadis btzr-io kauffj tzarebczan

repo: lbryio/lbry-app


text:
Reworked abandon to not be depenedent on txn list

@kauffj, so this PR removes the dependency of abandon_claim on transaction list. Now it fetches the data from myClaims instead. @tzarebczan and I have given this a whirl and so far the edge cases work too.

Code looks good, I have one question, I sent you a message on slack @hackrush01


text:
Calling settings_set writes invalid config in the daemon_settings.yml

daemon_settings.yml before and after passing a valid setting(happens for any setting, either valid or invalid)
Specifically lbryum_servers field is overwritten in the python's list format instead of colon separated
$ cat ~/.lbrynet/daemon_settings.yml
 blockchain_name: lbrycrd_regtest
 download_directory: /home/hackrush/Downloads
 lbryum_servers:
 - localhost:50001
 reflect_uploads: false
 share_usage_data: false
 use_upnp: false

$ lbrynet-cli settings_set --download_directory="/home/hackrush/Downloads" > /dev/null

$ cat ~/.lbrynet/daemon_settings.yml
 blockchain_name: lbrycrd_regtest
 download_directory: /home/hackrush/Downloads
 lbryum_servers:
 - [localhost, 50001]
 reflect_uploads: false
 share_usage_data: false
 use_upnp: false

I got this if you don't mind.

that file is created when you edit settings. you can create it yourself.

@hackrush01 did https://github.com/lbryio/lbry/pull/1104 possibly fi x this?

@hackrush01 should I still look into this?

@KamilPiekutowski can you see if this still happens on 0.19 RC37 using his example. You should be able to create that file from scratch with his settings and see if it still messes up the sever list.

@tzarebczan #1104 did not fix this.
@KamilPiekutowski The problem still persists, you're most welcome to look into it. It is most likely that the file lbrynet/conf.py is just dumping the data in python's dict format, whereas the data in daemon_settings.yml needs to be in yml(maybe json?)  format.

authors: KamilPiekutowski hackrush01 lyoshenka tzarebczan

repo: lbryio/lbry


text:
Front end and api

changed 'claim' to 'name' in /api/publish
added format validation to /api/post submissions
updated readme
added media queries so content will size and display dynamically to client window size
removed unused bootstrap and MDB libraries

@kauffj made updates noted in last PR here


text:
Feature/list builder

This adds the ability to change the generated dropdown.
$('.my-select').selectric({
  listBuilder: makeItemsUppercase
});

function makeItemsUppercase(items) {
  return $.each(items, function (index, ele) {
    ele.text = ele.text.toUpperCase();
  });
}

A more advanced example adds some custom sorting:

$('.sizes').selectric({
  listBuilder: function(items) {
    let sizes = {
      '32': 320,
      '33': 330,
      '34': 340,
      '35': 350,
    };
    let sorted = items.sort(function(newValue, oldValue) {
      const newText = sizes[newValue.text];
      const oldText = sizes[oldValue.text];
      if (newText < oldText) {
        return -1;
      }
      if (newText > oldText) {
        return 1;
      }
      return 0;
    });
    return sorted.map(function(item, index) {
      // need to update index here, otherwise element
      // selection goes crazy!
      item.index = index;
      return item;
    });
  }
});

Current coverage is 100% (diff: 100%)

Merging #136 into master will not change coverage

@@           master   #136   diff @@
====================================
  Files           1      1
  Lines         380    382     +2
  Methods         0      0
  Messages        0      0
  Branches        0      0
====================================
+ Hits          380    382     +2
  Misses          0      0
  Partials        0      0

Powered by Codecov. Last update 124ec62...aab7ea3

authors: codecov-io gearsdigital

repo: lcdsantos/jQuery-Selectric


text:
Is there a changelog for version 2?

Pretty much the title. I looked around (README, Documentation) but couldn't find a list of breaking changes or a migration guide from v1 to v2. Did I miss it?

https://github.com/ldapjs/node-ldapjs/releases/tag/v2.0.0

Thanks!

⚠ This issue has been locked due to age. If you have encountered a recent
problem that seems to be covered by this issue, please open a new issue.
Please include a minimal reproducible example
when opening a new issue.

authors: jsumners simon-lorenz

repo: ldapjs/node-ldapjs


text:
need to allow anonymous bind to browse an ldap repository

I am porting an old php application to nodejs, and in the old application it performs an anonymous bind to our ldap server to be able to retrieve cn , sn, email, and also be able to locate upstream managers.
Based on the documentation I have seen for ldapjs, there is no way to perform an anonymous bind.
Is this possible, and if so how is it done, If not can it be added?

According to the docs

You can bind any number of times on a single connection and change that identity. Technically, it's optional, and you can support anonymous operations from clients

(by default ldapjs will have a DN of cn=anonymous if the client didn't bind).

So if i don't explicitly perform a bind, then the client is bound anonymously?
I have written a little test script to see if I get anything back from ldap:
console.log("Starting script.");
var assert = require('assert');
var ldap = require('ldapjs');
var client = ldap.createClient({
  url: 'ldap://ldap.example.com',
  reconnect: true
});
console.log("after createClient");

var opts = {
  filter: '(email=john.doe@example.com)',
  scope: 'sub',
};
client.search('dc=example,dc=com', opts, function(err, res) {
  assert.ifError(err);

    res.on('searchEntry', function(entry) {
	    console.log('entry: ' + JSON.stringify(entry.object));
		  });
		    res.on('searchReference', function(referral) {
			    console.log('referral: ' + referral.uris.join());
				  });
				    res.on('error', function(err) {
					    console.error('error: ' + err.message);
						  });
						    res.on('end', function(result) {
							    console.log('status: ' + result.status);
								  });
								  });

console.log("After search");
client.unbind(function(err) {
  assert.ifError(err);
});
console.log("After unbind");

When I run this script, I see the console messages saying that the script started and after each of the connect, search, and unbind steps.
However, I don't get any message about the search results so what am I doing wrong?  are my search options not sufficient for the task of searching?

add
client.on("error", (err) => {
  assert.ifError(err);
});
client.on("setupError", (err) => {
  assert.ifError(err);
});
client.on("connectError", (err) => {
  assert.ifError(err);
});
client.on("connectTimeout", (err) => {
  assert.ifError(err);
});
client.on("connectRefused", (err) => {
  assert.ifError(err);
});

to see if there are any connection errors

@UziTech  Thank you for the code.  I added it to my script and didn't get any errors displayed.
After all of my console.log statements were output, I did get some search results, but the long and short of it was that it didn't return any results.
I don't know what kind of ldap server my company is using, so I can't make my question any more specific.
Based on the output, it didn't look like there were any errors encountered during the search just no results.
my code is as follows:
    const ldap = require('ldapjs');
    const assert = require('assert');

    // LDAP Connection Settings
    const server = "ldap.example.com";
    const userEmail = "don@example.com";
    const adSuffix = "dc=example,dc=com"; // test.com

    // Create client and bind to AD
    console.log("Prepared to create the ldapjs client");
    const client = ldap.createClient({
        url: `ldap://${server}`
    });
    client.on("error", (err) => {
      assert.ifError(err);
    });
    client.on("setupError", (err) => {
      assert.ifError(err);
    });
    client.on("connectError", (err) => {
      assert.ifError(err);
    });
    client.on("connectTimeout", (err) => {
      assert.ifError(err);
    });
    client.on("connectRefused", (err) => {
      assert.ifError(err);
    });
    console.log("Client created.");

    /*
    client.bind(userPrincipalName,password,err => {
        assert.ifError(err);
    });
    */
    // Search AD for user
    const searchOptions = {
        scope: "sub",
        filter: `(email=${userEmail})`
    };

    console.log("Performing search...");
    client.search(adSuffix,searchOptions,(err,res) => {
        assert.ifError(err);

        res.on('searchEntry', entry => {
    		console.log("Search results:");
            console.log(entry.object);
        });
        res.on('searchReference', referral => {
    		console.log("Referral:");
            console.log('referral: ' + referral.uris.join());
        });
        res.on('error', err => {
    		console.log("Error during search");
            console.error('error: ' + err.message);
        });
        res.on('end', result => {
            console.log(result);
        });
    });
    console.log("After search.");
    // Wrap up
    client.unbind( err => {
        assert.ifError(err);
    });
    console.log("After unbind");

Is there anything in particular I should look for in the search result object to help determine why I got no usable results?
an excerpt from the search results:
SearchResponse {
messageID: 1,
protocolOp: 101,
controls: [],
log: { child: [Function] },
status: 0,
matchedDN: '',
errorMessage: '',
referrals: [],

I discovered by looking at the php code I am replacing that I constructed the search filter incorrectly.  Once I fixed that, I did get a lot of information in the response object.
The thing I still find interesting is that the console.log message stating that I was unbinding was printed before the search results were printed.
Is there a way to wait until I get a response to proceed or do I just need to add code into the
    res.on('searchEntry', entry => {

function to process the results once they arrive?

It may be because you are unbinding before the results come in?

authors: UziTech donraikes


text:
Create validation parameters with only IC results, excluding IS results

Hello, I used the neo4j implementation to create validation parameters, and generated over 40 parameters using the default configuration. However, without exception, they are all parameters and results of IC, without the parameter results of IS.

I adjusted the number of generated parameters to 1000, however, I noticed that only IS1, IS2, and IS3 had parameter results generated.
On the other hand, I used the generated parameters for cross validation, but I found that even if I set some of the comlex queries to false, they still perform these validations and record errors. How can I only run validation for some queries?

I tried to control it during the generation process, for example, I only generated ic8 and all IS statements, but I found that I only got the results of ic8 without any IS parameters.

It seems that if I don't obtain the parameters for update, I won't be able to obtain the results for IS. However, the database I used for testing cannot perform the update class operation and only implements the main IS query. May I ask how I should complete the verification in this situation?

To trigger the short queries, you need to enable the update operations.
A further trick is that you need to run a lot of operations. For example, the validation data set linked in the README of the repository has 150,038 operations for SF10.
If you turn off a complex query by setting e.g. ldbc.snb.interactive.LdbcQuery1_enable = false, then that query should be off and it should not occur in the workload.
The table describing how {IC, IS} queries trigger further IS queries is given in the specification: https://ldbcouncil.org/ldbc_snb_docs/ldbc-snb-specification.pdf#page=78

There are a few related issues (#207 and #370) but they don't provide much more context than what I wrote above.

Sorry, it seems that I have some expression issues.

Although I enabled the update operation, the generated IS still only contains IS1, IS2, and IS3, and is not generated for IS4-7. This is provided in theThe data in also looks the same.
Although I have already set the settings in the validate.properties configuration file, such as ldbc. snb. interactive. LdbcQuery1 enable=false
However, I can still see the appearance of IC1 during the execution process, which is what confuses me.

How many operations do you run?
On Fri, Aug 11, 2023 at 10:17 AM Ask-sola @.***> wrote:

Sorry, it seems that I have some expression issues.

Although I enabled the update operation, the generated IS still
only contains IS1, IS2, and IS3, and is not generated for IS4-7. This is
provided in theThe
https://pub-383410a98aef4cb686f0c7601eddd25f.r2.dev/interactive-v1/validation_params-sf0.1-sf10.tar.zst
data in also looks the same.
Although I have already set the settings in the validate.properties
configuration file, such as ldbc. snb. interactive. LdbcQuery1
enable=false
However, I can still see the appearance of IC1 during the execution
process, which is what confuses me.

—
Reply to this email directly, view it on GitHub
https://github.com/ldbc/ldbc_snb_interactive_impls/issues/396#issuecomment-1674370835,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAKWPMLNPU6R4353WCO336DXUXS7VANCNFSM6AAAAAA3MJZGR4
.
You are receiving this because you commented.Message ID:
@.***>

I set 'operation' when creating validation parameters_ Count=10000
''Validation_ Parameters_ Size=1000 '

Run more (100k+) operations to ensure all operations get cancelled.

This seems to have no effect. I set it to 140000 and closed update. However, the first time I tried to execute update, I encountered an error (I printed the error statement myself and changed all updates to incorrect syntax to avoid accidental execution of updates. The error did not affect subsequent runs, but only recorded an error)

I have never seen this issue: https://www.google.com/search?q="databaseexception%3A+record+fetch+failed"
I'm out of ideas. Please investigate this with a fresh database instance.

Okay, thank you for your answer

authors: Ask-sola szarnyasg


text:
use simulateMouseEvent function from mapTestUtils

also in OlMeasurementHandler.test.js

fixed with #493


text:
Improve simulator

Make it agnostic of the token/values if possible

done

repo: ldeluigi/scafi-xc


text:
A Certify after Hold doesn't overrule the Hold

Check:
https://library.ldraw.org/tracker/24102

This bug is fixed.

repo: ldraw-org/ldraworg-library


text:
vue版问题

试了下Vue版本的事件触发，不支持通过js脚本修改节点的背景颜色，这个后续版本会不会更新，还是只能购买企业版

怎么写的？是可以的 ，topology.setValue({id: 'xxx', background: '#ff4400ff'})

用的topology-vue-ts这个库里面的代码，topology.setValue({id: 'xxx', text: 'xxx'})有用，topology.setValue({id: 'xxx', background: '#ff4400ff'})没效果

topology-vue-ts 是老版本的，文档：https://www.yuque.com/alsmile/topology/zolsfu
topology.setValue('fdebbee', {fillStyle: '#ff4400'})
推荐使用新版本 topology.js ，在 examples 下有示例。

再请教一个问题哈，老版本里面怎么改变节点的坐标啊

setValue， updateProps ，看文档，文档有写


text:
1.1.4 导入之前的设计，官网能打开 vue-demo也能打开

目前 引入 core 1.1.4版本

官网能打开之前的配置好的json
vue-demo那个也能打开(core 0.2.30)
自己搭建的基于 core1.1.4 就打不开了
发现line.js报错 （worldAnchors 是 空的 undefined ）
export function line(pen, path) {
if (!path) {
path = new Path2D();
}
if (pen.calculative.worldAnchors.length > 1) {

之前的设计是哪个版本的？
老版本数据不支持直接在新版本中打开，官网有特殊处理。
若有需要，可在官网打开后再下载 json 。

可以了，怎么打印 版本号

老版本数据没有版本号
新版本数据，json 中有 version 字段

topology 不能打印程序版本号？

topology.VERSION  老版本，但数据不一定是的。
topology.data().version ，新版本

明白了，目前试了下，VERSION  没有，目前使用新版都能打印出data().version

authors: SignDawn apgk


text:
[Issue] Add "Testimonials" section

What is the issue about?
There should be a top level (like "About me" and "Articles") section called "Testimonials". It'll display testimonials and similar from colleagues (past included too), clients, etc. who can write "reviews" of my work/skills. The testimonials should be added easily by anyone wanting to provide such recommendations.
Probably an option would be to have them stored in a json file and from the code pull it and display the info nicely on the html. Hence, these testimonials could be created by simply opening a PR and adding a new json entry.
An alternative, probably easier for the user (who writes the testimonial) would be to have a custom issue template for solely for that purpose, then I'd take care of move its content the html. This'd be more work for me but less problems for the person writing the testimonial, as s/he would only fill in some form data in the github issue template.
Code of Conduct

[X] I agree to follow this project's Code of Conduct

As an alternative implementation, the "Recommendations" from LinkedIn could be pulled in here, if there's an API to do that. The main benefit is that I could re-use the linkedin feature, something everyone is familiar with and it would avoid friction for users wanting to write a recommendation for me.


text:
First test on FTL fails because of native exception

Sometimes, the first test running on Firebase Test Lab fails on the very beginning. This is the exception that crashes the test:
java.net.ConnectException: Failed to connect to localhost/127.0.0.1:8082
at com.squareup.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:143)
at com.squareup.okhttp.internal.io.RealConnection.connect(RealConnection.java:112)
at com.squareup.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:184)
at com.squareup.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:126)
at com.squareup.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:95)
at com.squareup.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:281)
at com.squareup.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:224)
at com.squareup.okhttp.Call.getResponse(Call.java:286)
at com.squareup.okhttp.Call$ApplicationInterceptorChain.proceed(Call.java:243)
at com.squareup.okhttp.Call.getResponseWithInterceptorChain(Call.java:205)
at com.squareup.okhttp.Call.execute(Call.java:80)
at pl.leancode.patrol.contracts.PatrolAppServiceClient.performRequest(PatrolAppServiceClient.kt:45)
at pl.leancode.patrol.contracts.PatrolAppServiceClient.runDartTest(PatrolAppServiceClient.kt:23)
at pl.leancode.patrol.PatrolAppServiceClient.runDartTest(PatrolAppServiceClient.kt:53)
at pl.leancode.patrol.PatrolJUnitRunner.runDartTest(PatrolJUnitRunner.java:133)
at com.exmaple.app.MainActivityTest.runDartTest(MainActivityTest.java:29)

It happens only to the first tests, no matter which one it is. About half of the test runs fails like this. Spotted in internal project (cars). Only on Android.

Experiencig same behavior after tests are uploaded and ran in Firebase Test Lab
``
java.net.ConnectException: Failed to connect to localhost/127.0.0.1:8082
at com.squareup.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:143)
at com.squareup.okhttp.internal.io.RealConnection.connect(RealConnection.java:112)
at com.squareup.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:184)
at com.squareup.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:126)
at com.squareup.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:95)
at com.squareup.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:281)
at com.squareup.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:224)
at com.squareup.okhttp.Call.getResponse(Call.java:286)
at com.squareup.okhttp.Call$ApplicationInterceptorChain.proceed(Call.java:243)
at com.squareup.okhttp.Call.getResponseWithInterceptorChain(Call.java:205)
at com.squareup.okhttp.Call.execute(Call.java:80)
at pl.leancode.patrol.contracts.PatrolAppServiceClient.performRequest(PatrolAppServiceClient.kt:45)
at pl.leancode.patrol.contracts.PatrolAppServiceClient.runDartTest(PatrolAppServiceClient.kt:23)
at pl.leancode.patrol.PatrolAppServiceClient.runDartTest(PatrolAppServiceClient.kt:53)
at pl.leancode.patrol.PatrolJUnitRunner.runDartTest(PatrolJUnitRunner.java:133)
at cz.bakalari.mobile.MainActivityTest.runDartTest(MainActivityTest.java:29)

It also happens during our Patrol internal tests - though the error looks a bit different:
java.lang.RuntimeException: pl.leancode.patrol.contracts.PatrolAppServiceClientException: Invalid response 500, Internal Server Error
	at pl.leancode.patrol.PatrolJUnitRunner.runDartTest(PatrolJUnitRunner.java:140)
	at pl.leancode.patrol.e2e_app.MainActivityTest.runDartTest(MainActivityTest.java:29)
	... 39 trimmed
Caused by: pl.leancode.patrol.contracts.PatrolAppServiceClientException: Invalid response 500, Internal Server Error
	at pl.leancode.patrol.contracts.PatrolAppServiceClient.performRequest(PatrolAppServiceClient.kt:47)
	at pl.leancode.patrol.contracts.PatrolAppServiceClient.runDartTest(PatrolAppServiceClient.kt:23)
	at pl.leancode.patrol.PatrolAppServiceClient.runDartTest(PatrolAppServiceClient.kt:53)
	at pl.leancode.patrol.PatrolJUnitRunner.runDartTest(PatrolJUnitRunner.java:133)
	... 41 more

In my case (Flutter 3.19.6, patrol 3.7.1, patrol_cli 2.7.0) mentioned ConnectException reproducible only on Firebase TestLab's virtual Android device (real Android device is Ok).

I've tried to investigate this issue. I've checked it on various tests, but for reproducibility purposes here are the steps I took on packages/patrol/example:
patrol build android

output
example % patrol build android
Resolving dependencies in `/Users/piotrdenert/FlutterProjects/patrol/packages/patrol_cli`...
Downloading packages...
Got dependencies in `/Users/piotrdenert/FlutterProjects/patrol/packages/patrol_cli`.
Resolving dependencies in `/Users/piotrdenert/FlutterProjects/patrol/packages/patrol_cli`...
Downloading packages...
Got dependencies in `/Users/piotrdenert/FlutterProjects/patrol/packages/patrol_cli`.
Building package executable...
Built patrol_cli:main.
• Building apk with entrypoint test_bundle.dart...
✓ Completed building apk with entrypoint test_bundle.dart (26.9s)

Then I tested it in FTL, on a variety of devices with different API SDK versions, using this command:
gcloud firebase test android run \
	--type instrumentation \
	--app build/app/outputs/apk/dev/debug/app-dev-debug.apk \
        --test build/app/outputs/apk/androidTest/dev/debug/app-dev-debug-androidTest.apk \
	--device model="$ANDROID_DEVICE_MODEL",version="$ANDROID_DEVICE_VERSION",locale=en,orientation=portrait \
	--timeout 10m \
	--results-bucket="patrol_runs" \
	--use-orchestrator \
	--environment-variables clearPackageData=true

All available in FTL devices may be listed by:
gcloud firebase test android models list

What I've found is that it fails randomly, but only when I use one of the VIRTUAL devices (e.g. MediumPhone.arm) with API SDK version = 34. On API SDK = 33 and earlier it never throws this exception. Same for PHYSICAL devices (e.g. Pixel 8):
java.net.ConnectException: Failed to connect to localhost/127.0.0.1:8082
	at com.squareup.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:143)
	at com.squareup.okhttp.internal.io.RealConnection.connect(RealConnection.java:112)
	at com.squareup.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:184)
	at com.squareup.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:126)
	at com.squareup.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:95)
	at com.squareup.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:281)
	at com.squareup.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:224)
	at com.squareup.okhttp.Call.getResponse(Call.java:286)
	at com.squareup.okhttp.Call$ApplicationInterceptorChain.proceed(Call.java:243)
	at com.squareup.okhttp.Call.getResponseWithInterceptorChain(Call.java:205)
	at com.squareup.okhttp.Call.execute(Call.java:80)
	at pl.leancode.patrol.contracts.PatrolAppServiceClient.performRequest(PatrolAppServiceClient.kt:45)
	at pl.leancode.patrol.contracts.PatrolAppServiceClient.runDartTest(PatrolAppServiceClient.kt:23)
	at pl.leancode.patrol.PatrolAppServiceClient.runDartTest(PatrolAppServiceClient.kt:53)
	at pl.leancode.patrol.PatrolJUnitRunner.runDartTest(PatrolJUnitRunner.java:133)
	at pl.leancode.patrol.example.MainActivityTest.runDartTest(MainActivityTest.java:29)

MediumPhone.arm, API Level 34
example % gcloud firebase test android run \
--type instrumentation \
        --app build/app/outputs/apk/dev/debug/app-dev-debug.apk \
        --test build/app/outputs/apk/androidTest/dev/debug/app-dev-debug-androidTest.apk \
        --device model=MediumPhone.arm,version=34,locale=en,orientation=portrait \
        --timeout 10m \
        --results-bucket="patrol_runs" \
        --use-orchestrator \
        --environment-variables clearPackageData=true

Have questions, feedback, or issues? Get support by visiting:
  https://firebase.google.com/support/

Uploading [build/app/outputs/apk/dev/debug/app-dev-debug.apk] to Firebase Test Lab...
Uploading [build/app/outputs/apk/androidTest/dev/debug/app-dev-debug-androidTest.apk] to Firebase Test Lab...
Raw results will be stored in your GCS bucket at [xxx]

Test [matrix-amzh5y2lzgona] has been created in the Google Cloud.
Creating individual test executions...done.
Firebase Test Lab will execute your instrumentation test on 1 device(s). More devices may be added later if flaky test attempts are specified.

Test results will be streamed to [ xxx ].
16:41:27 Test is Pending
16:42:14 Starting attempt 1.
16:42:14 Test is Running
16:42:21 Setting up Android test.
16:42:21 Starting Android test.
16:43:09 Completed Android test.
16:43:09 Tearing down Android test.
16:43:09 Done. Test time = 34 (secs)
16:43:09 Starting results processing. Attempt: 1
16:43:30 Completed results processing. Time taken = 14 (secs)
16:43:30 Test is Finished

Instrumentation testing complete.

More details are available at [xxx].
┌─────────┬────────────────────────────────┬───────────────────────────────┐
│ OUTCOME │        TEST_AXIS_VALUE         │          TEST_DETAILS         │
├─────────┼────────────────────────────────┼───────────────────────────────┤
│ Failed  │ MediumPhone.arm-34-en-portrait │ 1 test cases failed, 1 passed │
└─────────┴────────────────────────────────┴───────────────────────────────┘

Patrol doctor
Patrol doctor:
Patrol CLI version: 2.8.1
Flutter command: flutter
  Flutter 3.22.0 • channel stable
Android:
• Program adb found in /Users/piotrdenert/Library/Android/sdk/platform-tools/adb
• Env var $ANDROID_HOME set to /Users/piotrdenert/Library/Android/sdk
iOS / macOS:
• Program xcodebuild found in /usr/bin/xcodebuild
• Program ideviceinstaller found in /opt/homebrew/bin/ideviceinstaller

flutter doctor
flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.22.0, on macOS 14.4.1 23E224 darwin-arm64, locale pl-PL)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 15.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2023.1)
[✓] VS Code (version 1.90.0)
[✓] Connected device (5 available)
[✓] Network resources

• No issues found!

U.P.D.: just caught it locally on Android emulator API 34 (Flutter 3.19.6, patrol 3.7.1, patrol_cli 2.8.1). It can be related to reusing of tests (for example we have LogIn test & reusung it more than one time in test set).

U.P.D.: just caught it locally on Android emulator API 34 (Flutter 3.19.6, patrol 3.7.1, patrol_cli 2.8.1). It can be related to reusing of tests (for example we have LogIn test & reusung it more than one time in test set).

U.P.D.2: so yeah, I was right. If we have separate "patrolTest" (in my case LogIn) in separate file & trying to reuse it - we receiving mentioned "Invalid response 500". But if we put what we need to reuse in method - everything is Ok.

Any solutions found? I stumbled on this problem as well. I have no idea what triggered it. My pipelines worked fine for a long time.

I also have this problem. Any solutions?

Same for me on FTL, but my test that fails is not first in the test run. But it is the first test that using $.native.
Device is:  Medium Phone, 6.4in/16cm (Arm), Virtual, API Level 34
java.net.ConnectException: Failed to connect to localhost/127.0.0.1:8082
at com.squareup.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:143)
at com.squareup.okhttp.internal.io.RealConnection.connect(RealConnection.java:112)
at com.squareup.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:184)
at com.squareup.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:126)
at com.squareup.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:95)
at com.squareup.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:281)
at com.squareup.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:224)
at com.squareup.okhttp.Call.getResponse(Call.java:286)
at com.squareup.okhttp.Call$ApplicationInterceptorChain.proceed(Call.java:243)
at com.squareup.okhttp.Call.getResponseWithInterceptorChain(Call.java:205)
at com.squareup.okhttp.Call.execute(Call.java:80)
at pl.leancode.patrol.contracts.PatrolAppServiceClient.performRequest(PatrolAppServiceClient.kt:45)
at pl.leancode.patrol.contracts.PatrolAppServiceClient.runDartTest(PatrolAppServiceClient.kt:23)
at pl.leancode.patrol.PatrolAppServiceClient.runDartTest(PatrolAppServiceClient.kt:53)
at pl.leancode.patrol.PatrolJUnitRunner.runDartTest(PatrolJUnitRunner.java:148)
at com.example.example.MainActivityTest.runDartTest(MainActivityTest.java:29)

authors: Kendru98 adrian-moisa ahlstro ivan-horchakov jBorkowska pdenert petrnymsa

repo: leancodepl/patrol


text:
chore: fix imports

This is a pre-patch for std4#379. It only replaces some imports by more precise ones. It is intended to be applied before std4#379, that will prevent breakage if and when that PR happens and it is otherwise completely harmless for aesop.

Thanks!

authors: JLimperg fgdorais

repo: leanprover-community/aesop


text:
feat: generalize tensor product constructions to semirings

The current proofs already work for semirings.

Is it worth to benchmark this?  It might simplify the typeclass search space to only look for Semiring instances...

!bench

I agree that it probably will not have a huge effect overall, but tensor stuff seems to be straining TC, so any little helps!

bors merge

authors: adomani eric-wieser riccardobrasca


text:
feat: restriction of scalars for (pre)sheaves of modules

Thanks @callesonne for your suggestions!

Can I approve it after these changes? Or should I wait for someone more experienced to also review it?

In general, you may very well approve PRs: it shall be a useful information for mathlib reviewers and maintainers (the later are the only ones that are allowed to merge PRs).

Thanks! (and also thanks Calle for reviewing!)
maintainer merge

authors: erdOne joelriou


text:
feat: SubtractionMonoid instance for LinearOrderedAddCommGroupWithTop

Also prove some lemmas for LinearOrderedAddCommGroupWithTop which are needed for the instance.

add_eq_top for LinearOrderedAddCommMonoidWithTop is equivalent to mul_eq_zero for a LinearOrderedCommMonoidWithZero, which requires NoZeroDivisors - perhaps there should be some typeclass for it, maybe NoTopAddends?

Maybe? I'm afraid it would be a bit too niche in use. What would the instances be?

Maybe? I'm afraid it would be a bit too niche in use. What would the instances be?

It's the same instances as LinearOrderedAddCommMonoidWithTop (ENNReal, ERealᵒᵈ, PUnit, PartENat, WithTop α, Additive αᵒᵈ), but instLinearOrderedAddCommMonoidWithTopAdditiveOrderDual gains a requirement of NoZeroDivisors

I guess we could have the typeclass then, although I'm still not convinced it would be amazingly useful

authors: Command-Master YaelDillies


text:
fix and lint

!bench

!bench

!bench


text:
refactor: Make MonoidHom.mem_ker be simp

From LeanAPAP

Could you do mker and LinearMap.ker etc too for consistency, and/or mention that consistency in the description?

authors: YaelDillies eric-wieser


text:
chore: golf Order.Filter.NAry

forward-ported from leanprover-community/mathlib#18097

bors merge


text:
feat: port algebra.hom.group_instances

Todo: to_additive on the CommGroup instance seems to take forever and still not work.

I'll try to improve the performance of @[to_additive]. I know what the bottleneck is, and it was on my list for a while, but now I'll try to do it much sooner.

#1060 should fix the performance issues

bors merge

authors: Ruben-VandeVelde fpvandoorn semorrison


text:
pta.org site project

We will use pta.org as a target to create a smaller version pta.org using ReactCMS
Pages from pta.org

home
About PTA
News and Events
At School
For Families
PTA Leaders

First step is to collect resources from target site. Plan page layout. Then create page accordingly in ReactCMS.

repo: leapon/reactcms


text:
Firebase Realtime Database Contribution

My initial PR is ready to be reviewed. Please let me know anything I should add or remove for clarity.

I think that is a great idea considering that there are many NoSQL options so I will add those changes in right now.


text:
fixed placement of product_management.md

The file got moved to the product-management folder and it was not showing up on the github page and it was doing 404 error, moving it back.

Also added entry and hyperlink for code review document inside the product management document

this should make Product Management section visible. thanks for moving it back


text:
feat: add native sheet component

This PR adds a Sheet component for native. It seems to me like Sheet is a wrapper for ScrollView.
Looking at the code and I can set it up to have variants but it could be more composable to just accept props for style as sometimes it has no style or contentContainerStyle for example

@edgarkhanzadian - is this the right component for Sheet?
Having done it and checking the code I found this other component - BottomSheetModal from @gorhom/bottom-sheet.
I created this based on looking at the demo and where we open a drawer with a scroll view

repo: leather-io/mono


text:
Running the source files through Visual Assistant Code Inspector

Hi !
I thought you might be interested in the results of running the application through the Code Inspector of Visual Assist:

This indicates changes that can be made to make it compliant with C++11 standard. I have not applied the updates. I just thought I would expose the report (part of it) to you so you could see.

Without the tool itself, this sort of thing is too hard to close out. I appreciate the info, but it's only actionable if it's a PR.
C++ 11 support is the more interesting question. Should TinyXML-2 require C++ 11? Should it be optional? (How ugly would that look?)
My gut reaction is that it should not by C++ 11. It would jettison people who aren't using it ('override', 'auto' become errors) without adding real value or clarity.

I can easily change the files and email them for review if you really wanted. I have GitHub desktop but struggle to get my hand around it all.
Up to you. I don't mind either way.
Andrew

From: Lee Thomason notifications@github.com
Sent: 16 March 2017 18:26
To: leethomason/tinyxml2
Cc: ajtruckle; Author
Subject: Re: [leethomason/tinyxml2] Running the source files through Visual Assistant Code Inspector (#540)
Without the tool itself, this sort of thing is too hard to close out. I appreciate the info, but it's only actionable if it's a PR.
C++ 11 support is the more interesting question. Should TinyXML-2 require C++ 11? Should it be optional? (How ugly would that look?)
My gut reaction is that it should not by C++ 11. It would jettison people who aren't using it ('override', 'auto' become errors) without adding real value or clarity.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/leethomason/tinyxml2/issues/540#issuecomment-287149337, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AHnYs0OE5kLTHw21ZoeuopkDGOhrftEFks5rmX7ZgaJpZM4MfEi7.

Without thinking through the C++11 upgrade - and currently I'm leaning against doing that - the actual changes won't help. So you don't need to send them at this time.

authors: ajtruckle leethomason

license: Zlib


text:
No way to "skip" a test stating a reason

I'm loving canopy. That being said, I'm not a fan of "magic". And by magic I refer to these magic operators: https://lefthandedgoat.github.io/canopy/testing.html
To argue my point, let's take the example of someone wanting to ignore/skip a test for some reason. There's the &&! operator, great... but how to attach that reason to the code? In NUnit, you have the Ignore(string) attribute that accepts a way to encode the reason as a parameter.
If I were NUnit's author, I would have gone even farther and not provide the parameterless Ignore() overload. I think canopy should do this as well.

What do you think the best way to represent it is?  How it should be show in the console is a good start.

How it should be show in the console is a good start.

In the console it already shows in yellow, AFAIR, which is good. But it should state the reason of why the test is skipped.

The short answer is that there isn't a reasonable way for me to add a new argument w/o hurting backwards compatibility etc, and I can explain why, and I can also give you a reasonable work around that you can use.
functions like &&! are called infix operators.  They are functions just like:
let add x y = x + y
Except that they called between the arguments arg1 func arg2, instead of func arg1 arg2.
Because of this they can only take 2 arguments.  Adding a 3rd argument is not possible.  What we can do is charge the signature to from
string &&! func
to
string * string &&! func (a tuple of two strings and a function)
If I did this in canopy as a whole it would break everyone who had skips now.  But I can help you make it work for you.
Make a new file called something like canopyExtensions.fs and add an open canopyExtensions statement to your tests, directly below your open canopy.
Add this function:
open canopy

let ( &&! ) (description, skipReason) f =
  let desc = sprintf "%s/r/n%s" description skipReason
  desc &&! f

This will let you write a test like this
"test #1", "feature not finished" &&! fun _ ->
  url "http://www.google.com/"
  //etc etc

Now any time you skip you will have to provide a reason to make the compiler happy.
Does this help?

This will help , especially if we are sharing the results with wide audience . Thank you Chris.

The short answer is that there isn't a reasonable way for me to add a new argument w/o hurting backwards compatibility

That is completely understandable. But you could always create a new operator that accepts an argument, and make the previous one obsolete?

But I can help you make it work for you.

Thanks so much for the suggested workaround.
However, after thinking a bit more about it, I would say that I wouldn't like the "new operator" solution either (the one I just suggested above), because of one reason: it's meant to make the test be skipped at "compilation time", let's say.
But, if we look again at NUnit features, they even have this feature at run-time, thanks to Assert.Ignore(). If you implemented this feature in canopy, then you wouldn't even need to deprecate the current &&! operator. That is, you would have a skip-operator at compile-time (that doesn't accept an argument) and a skip function at run-time (which forces you to send a "reason" argument). If someone needed a compile-time way to skip a test with a reason, they could just use the runtime one at the beginning of the test (making it unconditional) and be done.

You want something like this?
"a normal test" &&& fun _ ->
  ignore "don't run right now"
  url "http://www.google.com/"
  click "search"

And it will mark the test as skipped?

Yes, so that you could also call it conditionally, for example
"a special test" &&& fun _ ->
  if (Platform.IsMac()) then
    ignore "known issue: this doesn't work in Safari"
  url "http://www.google.com/"
  click "search"

Feel free to use ignore or skip, I don't mind...

You can download the latest version of canopy here: https://www.nuget.org/packages/canopy/0.9.58
just add
skip "some message"
inside the function body of your test and it will skip that test at run time.

Awesome thanks!

authors: danuma knocte lefthandedgoat

repo: lefthandedgoat/canopy


text:
Update to current version

Hi so not to be rude, instead of updating the mod to like 10 or 5 or something versions back, you should update it to the current version instead

The mod is updated for the current version

repo: legoandmars/GorillaCosmetics


text:
Update zio, zio-test, zio-test-sbt to 2.1.12

About this PR
📦 Updates

dev.zio:zio
dev.zio:zio-test
dev.zio:zio-test-sbt

from 1.0.18 to 2.1.12 ⚠
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "dev.zio" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "dev.zio" }
}]

labels: library-update, early-semver-major, semver-spec-major, commit-count:1

Superseded by #312.

Superseded by #314.

repo: lemastero/Triglav


text:
[LOGINSECURITY] This player Is Already Online

This bug always Happens in Server To Almost Everyone
For 1-2 mins it logout player and The players is online in server but cant join

Sorry I dont think I fully understand. How do I reproduce this issue?


text:
More detailed error message

It would be nice to get slightly more detailed message than "Oops, something went wrong."

Environment is Lens 5, and Kubernetes distribution is EKS, accessed from Windows 10.

Yes the error message is unhelpful especially considering how Lens 5 does not work without being Administrator.

authors: matkosoric taspeotis

repo: lensapp/lens


text:
keyboard shortcut to switch or filter namespace

What would you like to be added:
A keyboard shortcut to jump into Namespace Search Box (CMD-F would be good), just like the existing feature: CMD-F to jump into Pod Search Box
Why is this needed:
Fewer mouse click
Environment you are Lens application on:

Kubernetes distribution: [EKS, AKS, GKE, Rancher, ...]
Desktop OS: macOS

Ah. look like the Cmd + Shift + P already works.
Can close this issue.


text:
🛑 App Chot.Sale is down

In 3f4a614, App Chot.Sale (https://app.chot.sale) was down:

HTTP code: 0
Response time: 0 ms

Resolved: App Chot.Sale is back up in 18b1aea.


text:
GetEndpointsWithOnOffAsync - nullReferenceException

Hi,
The config of endpoints is never instanciate. (Null Reference Exception on a toList() operation). So, I modify the return of your function : (no filter on e.config.Hidden).
//return onOffEndpoints.Where(e => !e.Config.Hidden) ;
return onOffEndpoints;
(Sorry for my english...)

For all the found endpoints (in onOffEndpoints), it's doing a REST call to /endpoint/UUID?config=true. Perhaps one of your endpoints doesn't return a value. I changed my code. I'm doing now
return onOffEndpoints.Where(e=> e.Config == null || !e.Config.Hidden);

Thanks,
the REST  "/endpoint/UUID?config=true" called only if hideHidden == true. So if hideHidden = false, e.config is always null.

You're right, that was a bug. It's now fixed, i'm closing this issue.

authors: leonmeijer nicolascastel


text:
Implement fill-viewport and/or fill-screen behavior

As @adroitwhiz comments we already have support for rendering smoothly to any canvas dimensions, so we only need to implement however stage ends up filling either or both the viewport (i.e. browser window) and screen (ala YouTube). Some thoughts:

This could be a button that appears on the template generated (for CodeSandbox) which toggles filling the viewport.

This is useful while editing as we can retain the fill-viewport state between reloads.
Technically this is what Scratch does as well. However, it's not what kids expect a fullscreen button to do, particularly in the context of CodeSandbox, where we can't expand past the iframe containing the project.
This might be appropriate behavior in PullJosh/leopard-website#38, but it probably isn't here.
If we have a button like this, we need to make sure the state is retained across reloads (otherwise there's no point at all). I haven't looked into if it's feasible to access localStorage, per-tab storage of some kind, etc in a CodeSandbox/iframe context yet.

This could be a button which toggles entering proper full-screen mode.

This is almost useless while editing because AFAIK CodeSandbox reloads its iframe to view changes, which would kick you out of fullscreen, and require a user interaction to re-initiate fullscreen.
However, most users won't be affected by the reloading issue because they'll be in fullscreen on the same monitor as includes the editor, so aren't going to have access to the editor.
Entering a big fancy proper full screen is probably what users want out of a fullscreen button. It's the nicest way to present a project you're working on to an in-person colleague, for example.

This could be two buttons, one for filling viewport, one for filling screen.

But this would be kind of ridiculous complexity, particularly in a barebones UI — no one wants to second guess themselves if they're clicking the correct "make the stage bigger!!1" button.

Particularly if we have an "enter fullscreen" button and not a "fill viewport" button, here are some options for getting the fill-viewport behavior as well as proper screen filling (via button):

This could be magic, i.e. detecting a popped-out window and applying fill-viewport only then.

It's dubious if it's actually possible to detect this though, at least in iframe terms.
Alternatively, we could snap to 480x360 if the viewport is larger but still fairly close to 480x360, and otherwise expand to viewport dimensions. (taking care for internal document padding obviously)

We could configure filling viewport as part of the generated project code.

Maybe the default (in generated code) is to always fill, but users can disable it if they want.
I don't know that it makes sense to have this kind of "meta" configuration built into the actual code that a user is editing, but we already do it for project framerate (and I believe stage dimensions), so it might be fairly natural.

We could altogether disable rendering at a constant 480x360.

AKA the fill-viewport state is always enabled.
This is the zero user-complexity approach that's also the most likely to upset users, since no one likes things being changed under their feet. So I'm not actually considering it, just pointing out that there's a cost to bringing in new complexity on a "meta" level of the project (not just how it behaves but how it's presented), too.

We could not implement viewport filling at all.

AKA only have a fullscreen button.
This is boring but, strictly speaking, does avoid issues with making any complexity visible to the user. You either click full screen and fill your whole monitor, or don't and get a 480x360 stage. It's very easy to explain.
I think the cons (never being able to fine-tune the stage size just by adjusting your browser window / CodeSandbox iframe dimensions!) pretty heavily outweigh the avoided complexity here, though.

My inclinations are for options 2 (fullscreen button) and either 2 (configure in code, maybe default to always filling viewport) or 1 (fill viewport if significantly above 480x360).
I figure I'd share this before actually touching any of the code since there are a variety of options to choose from and there definitely might be other options I haven't even considered here. Please let me know what you think!
/cc everyone from #190: @sfederici, @PullJosh, @adroitwhiz

My inclinations are for options 2 (fullscreen button)

I support this alternative

Feels to me like it would make sense to have provide the following options:

By default the stage size is 480x360, but users have the option to change that. We should keep this option. But rather than strictly being visual pixels, I would think of it more as 480x360 "steps" in Scratch parlance. The project code operates on a grid of that size, but the project can be rendered smoothly at any size. (This is what we already have.)
Options for the actual sizing of the stage on the screen.

One option should be a 1-to-1 match between steps and pixels. This is what we currently have. A 480x360 stage renders on a 480x360px canvas.
Another option could be to set the stage width and height to a number. For example, users might keep the "steps" grid size as 480x360 but change the canvas to be twice as big, 960x720px.
Finally, it probably makes sense to have some option that automatically changes the canvas size to match the space it has. Ideally I would want it to behave exactly as if you took a 480x360 canvas and set the CSS to canvas { width: 100%; } except to render smoothly. Under the hood, that means we probably need to measure the width of the parent container and then set the width/height of the canvas accordingly.

Lastly, if you have a Project instance, it should be possible to call project.fullscreen() to invoke the fullscreen API. I don't have strong opinions about whether or not the generated output should include a button that does this.

For the sake of clarity, here's a rough proposed API:
// Change "steps" size of stage (what the Leopard code sees)
// We already have this option
const stage = new Stage({ width: 1920, height: 1080, costumeNumber: 1 });

// Change visual size of canvas – how large the project actually appears as pixels on your screen
const project = new Project(stage, sprites, {
  frameRate: 30,

  // A) Default canvas (dimensions match stage steps)
  canvas: "default",

  // B) Double size canvas
  canvas: { width: 960, height: 720 },

  // C) Viewport-filling canvas
  canvas: "full"
});

// Regardless of canvas size, you can always call the following to invoke legit fullscreen (including using a button or menu item in-game!)
project.fullscreen();

Oh, and I would not put a button in the generated HTML to toggle into fill-viewport mode. That seems like something you would configure in code (for example, if you were building a webpage with your project embedded in it).

I broadly agree @PullJosh, and appreciate the example API a lot! I'm a big fan of how that plays with embedding Leopard as part of a broader in-page context.
I'm mostly thinking about students who may not necessarily care about adding a fullscreen mode to their project, nor to set up specialized presentation for the viewport in their generated template page. My understanding is that these students aren't touching the HTML or CSS of the project at all; they care about making a game or program in Leopard, not making it look pretty online. Most of the time they view their project through a small CodeSandbox iframe or through a popout window (which may or may not itself be in fullscreen, manually zoomed in-and-blurry, etc).
A fullscreen button (note: not a fill-viewport button) feels appropriate for these students as they'd like a very specific, easy, and reliable way to just make the project fill up the whole screen, dang it! For the sake of presenting to a colleague, teacher, friend, etc. They have no interest in learning CSS on the fly, and they might not want to bother to add a button which runs project.fullscreen() in their actual project code. (Keep in mind that due to browser restrictions, it's never possible to use project.fullscreen() without a user interaction, e.g. having the game start out in fullscreen mode. So folk who want fullscreen would actually have to add a button to their game that sets it appropriately!)
I've come around though, and don't think we need any "magic" for the controlling the viewport — I totally agree with your suggestions there! It should be configured in code and have nice, easy to use settings, just like you've suggested. It's fundamentally the same decision-making as the frame rate for the project - collecting those settings together is intuitive and good.

@towerofnix Love it. I'm sold on the fullscreen button.

My understanding is that these students aren't touching the HTML or CSS of the project at all; they care about making a game or program in Leopard, not making it look pretty online.

I agree. This is the most important thing for my students too

authors: PullJosh sfederici towerofnix

repo: leopard-js/leopard


text:
Improve sourcery template

[x] I have read the CONTRIBUTING.

🔗 Closing issues
This closes #41 , closes #40
📖 Summary
🛠 About Implementation
✅ About Testing
ℹ Other information

Codecov Report

Merging #43 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master     #43   +/-   ##
======================================
  Coverage    97.1%   97.1%
======================================
  Files          19      19
  Lines         242     242
======================================
  Hits          235     235
  Misses          7       7

Impacted Files
Coverage Δ

.../MockSwift/Predicates/AnyPredicate+Equatable.swift
100% <ø> (ø)
:arrow_up:

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 ef67a04...8b61c5d. Read the comment docs.

authors: codecov-io leoture

repo: leoture/MockSwift


text:
Inconsistency with raising CSRFError

The Flask-WTF docs state:

When CSRF validation fails, it will raise a CSRFError.

However, this appears to only be true, if this optional code has been used:
from flask_wtf.csrf import CSRFProtect
csrf = CSRFProtect(app)

When that code is not used, forms are created by subclassing FlaskForm, and CSRF validation fails, then validate_on_submit returns False instead of raising CSRFError.
It seems that ideally you would always raise CSRFError for consistency, but if you don't want to do that, then it would be helpful to update the docs.

It doesn't make sense to raise an unhandled exception during validation. I suppose the docs could be clearer that the extension raises the error, not forms. PRs welcome.

You can check out form.errors after validate_on_submit() returns false.
It's more elegant.

authors: PatentBots davidism jawatech

repo: lepture/flask-wtf


text:
Demande de création de profil Membre pour Pierrick Houdeville

Nom et Prénom :
Houdeville Pierrick
**Profession : **
Consultant
Qui êtes-vous?

bacot depuis 2013, marié et père de 3 garçons

Quels sont vos intérêts sur Bois-le-Roi et en Seine-et-Marne?

je suis propriétaire d'une maison rue des Foucherolles

Participez vous à la vie locale de Bois-le-Roi?

aucun rôle associatif jusqu'à présent et l'initiative les-bacots.org

Quelle est votre profession actuelle?

Consultant en organisation pour les directions financières sur des sujets de pilotage de la performance (conso, reporting, contrôle de gestion), depuis une quinzaine d'années

Dans vie locale, j'ai mis ca également pour bien clarifier notre rôle aussi sur cette première action :

J’ai aidé l’association “Bien à Bois-le-Roi” à collecter des fonds en organisant la collecte de crowdfunding sur HelloAsso (https://www.helloasso.com/associations/bien-a-bois-le-roi/collectes/collecte-1-bien-a-bois-le-roi) et soutenu en tant que donateur.


text:
Рефакторинг slow()

slow перенести в класс Bitrix / ServerResponseHandler - это даст возможность запускать одновременно несколько экземпляров класса Bitrix, решить проблему несовместимости с асинхронными вызовами и правильно наладит инкапсуляцию.

сделано в версии 1.0.0

сделано в версии 1.0.0


text:
README: fix example

Really?
Also uses a shorter name for the variable.

Thanks, but merged previous pr that also changed example.

authors: TimothyGu lukeapage

repo: less/less-plugin-npm-import


text:
Hacker News Darkmode

What filter does this issue target?
https://letsblock.it/filters/hackernews-darkmode
What changes should be made?
Alternative hackernews darkmode I wrote.  I've been using it for months now and I haven't seen any further issues with it.
Did you write a uBlock filter solving this?
news.ycombinator.com##body:style(background: black)
news.ycombinator.com##td:style(color: #fafafa !important)
news.ycombinator.com##table:style(background-color: #120F0D)
news.ycombinator.com##div.toptext:style(color: #fafafa)
news.ycombinator.com##span.c00:style(color: #fafafa !important)
news.ycombinator.com##span.c5a:style(color: #d0d0d0 !important)
news.ycombinator.com##span.c73:style(color: #b0b0b0 !important)
news.ycombinator.com##span.c82:style(color: #9a9a9a !important)
news.ycombinator.com##span.c9c:style(color: #737373 !important)
news.ycombinator.com##span.cae:style(color: #5a5a5a !important)
news.ycombinator.com##span.cbe:style(color: #4a4a4a !important)
news.ycombinator.com##span.cce:style(color: #3a3a3a !important)
news.ycombinator.com##span.cdd:style(color: #2f2f2f !important)
news.ycombinator.com##a:style(color: #ffa000 !important)
news.ycombinator.com##span#karma:style(color: #faa000 !important)
news.ycombinator.com##span.pagetop:style(color: #fafafa !important)
news.ycombinator.com##textarea:style(color: #fafafa !important; background: inherit; )
news.ycombinator.com###hnmain:style(background: #120F0D !important)
Additional notes
No response

Hello @bmansfie and thanks for your suggestion.
I do not wish to maintain several variants, and the current rules are good enough in my book. I will close this issue, as I will not implement this, but don't hesitate to suggest other improvements.

authors: bmansfie xvello

repo: letsblockit/letsblockit


text:
PubSubConnection recurring disconnections after Redis cluster is downscaled

Bug Report
Current Behavior
Given a setup where we have a StatefulRedisClusterPubSubConnection on a particular Redis node in a Redis cluster. When we remove that Redis node from the cluster, after the connection has been reconnected to another Redis node (by ConnectionWatchdog), lettuce keeps killing this connection periodically. This occurs indefinitely from then on.
The periodicity of this connection drop matches whatever duration I set for periodic refresh of ClusterTopologyRefresh (25 seconds in my code snippet below).
Logs of the application - Notice the subscribe connection getting dropped every 25 seconds (which matches ClusterTopologyRefresh periodic refresh duration) ->
Jul 01, 2023 7:23:26 PM org.personal.redis.LettuceClusterReconnectIssueTestV2 thread_sleep
INFO: Sleeping for 500 seconds
Jul 01, 2023 7:23:54 PM org.personal.redis.LettuceClusterReconnectIssueTestV2 lambda$main$1
INFO: Event : ReconnectAttemptEvent [local:any -> /127.0.0.1:30011]
2023-07-01 19:23:54.871 INFO  - Reconnecting, last destination was /127.0.0.1:30011
2023-07-01 19:23:54.882 INFO  - Reconnected to 127.0.0.1:30013

2023-07-01 19:24:16.892 WARN  - Unable to connect to [127.0.0.1:30011]: Connection refused: /127.0.0.1:30011
Jul 01, 2023 7:24:16 PM org.personal.redis.LettuceClusterReconnectIssueTestV2 lambda$main$1
INFO: Event : ClusterTopologyChangedEvent [before=3, after=2]
2023-07-01 19:24:16.961 INFO  - Reconnecting, last destination was /127.0.0.1:30013
2023-07-01 19:24:16.967 INFO  - Reconnected to 127.0.0.1:30012
Jul 01, 2023 7:24:16 PM org.personal.redis.LettuceClusterReconnectIssueTestV2 lambda$main$1
INFO: Event : ReconnectAttemptEvent [local:any -> /127.0.0.1:30013]

2023-07-01 19:24:41.960 INFO  - Reconnecting, last destination was /127.0.0.1:30012
2023-07-01 19:24:41.969 INFO  - Reconnected to 127.0.0.1:30013
Jul 01, 2023 7:24:41 PM org.personal.redis.LettuceClusterReconnectIssueTestV2 lambda$main$1
INFO: Event : ReconnectAttemptEvent [local:any -> /127.0.0.1:30012]

2023-07-01 19:25:06.960 INFO  - Reconnecting, last destination was /127.0.0.1:30013
2023-07-01 19:25:06.965 INFO  - Reconnected to 127.0.0.1:30012
Jul 01, 2023 7:25:06 PM org.personal.redis.LettuceClusterReconnectIssueTestV2 lambda$main$1
INFO: Event : ReconnectAttemptEvent [local:any -> /127.0.0.1:30013]

To Reproduce the issue
Setup
Redis version - 7.0.7
Lettuce version - 6.2.4.RELEASE
Have a local Redis cluster with 3 master nodes (assuming node IPs 30011, 30012, 30013)
Simple application code to reproduce the issue.
While the application is running, identify the redis node on which the subscribe connection is made (assuming it is 30011), get it's cluster ID (assume it's 'dcb98b27b9d7b576b8552d23a7ad87ae77f7f0c9') and run the below commands on the local Redis cluster (while the application is running)->
redis-cli -p 30011 shutdown nosave
redis-cli -p 30012 -c cluster forget dcb98b27b9d7b576b8552d23a7ad87ae77f7f0c9
redis-cli -p 30013 -c cluster forget dcb98b27b9d7b576b8552d23a7ad87ae77f7f0c9

Simple application code to reproduce the issue - (notice that periodic refresh of ClusterTopologyRefresh is kept at 25 seconds) ->
import io.lettuce.core.cluster.ClusterClientOptions;
import io.lettuce.core.cluster.ClusterTopologyRefreshOptions;
import io.lettuce.core.cluster.RedisClusterClient;
import io.lettuce.core.cluster.pubsub.StatefulRedisClusterPubSubConnection;
import java.time.Duration;
import java.util.logging.Logger;
import reactor.core.Disposable;

public class LettuceClusterReconnectIssueTestV2 {

	static Logger LOG = Logger.getLogger(LettuceClusterReconnectIssueTestV2.class.getName());

	public static void main(String[] args) {

		RedisClusterClient redisClient = RedisClusterClient.create("redis://localhost:30012");
		redisClient.setOptions(getClientOptions(getTopologyRefreshOptions()));

		StatefulRedisClusterPubSubConnection<String, String> subscribeConnection = redisClient.connectPubSub();

		Disposable eventBusSubscription = redisClient.getResources().eventBus().get().subscribe(event -> {
			LOG.info(String.format("Event : %s", event));
		});

		subscribeConnection.sync().subscribe("testSubscribeChannel");
		thread_sleep(500_000);

		// cleanup
		subscribeConnection.close();
		eventBusSubscription.dispose();
		redisClient.shutdown();
	}

	public static void thread_sleep(int sleepTimeInMillis) {
		try {
			LOG.info(String.format("Sleeping for %s seconds", sleepTimeInMillis/1000));
			Thread.sleep(sleepTimeInMillis);
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
	}

	private static ClusterClientOptions getClientOptions(
			final ClusterTopologyRefreshOptions topologyRefreshOptions) {
		return ClusterClientOptions.builder()
				.topologyRefreshOptions(topologyRefreshOptions)
				.validateClusterNodeMembership(false)
				.build();
	}

	private static ClusterTopologyRefreshOptions getTopologyRefreshOptions() {
		final ClusterTopologyRefreshOptions.Builder topologyRefreshOptionsBuilder =
				ClusterTopologyRefreshOptions.builder()
						.enableAllAdaptiveRefreshTriggers()
						.enablePeriodicRefresh(Duration.ofSeconds(25));
		return topologyRefreshOptionsBuilder.build();
	}
}

Expected behavior/code
The subscribe connection should not get killed (and recreated) periodically after we have downscaled the Redis cluster.
Environment

Redis version - 7.0.7
Lettuce version - 6.2.4.RELEASE

Have a local Redis cluster with 3 master nodes (assuming node IPs 30011, 30012, 30013)

I debugged further and found the source of the issue -
In StatefulRedisClusterPubSubConnectionImpl.activated() method - async.clusterMyId() fails in all subsequent reconnections except the first time we create the connection with the error 'Command CLUSTER not allowed while subscribed. Allowed commands are: [PSUBSCRIBE, QUIT, PUNSUBSCRIBE, SUBSCRIBE, UNSUBSCRIBE, PING]' (due to https://github.com/lettuce-io/lettuce-core/blob/main/src/main/java/io/lettuce/core/pubsub/PubSubEndpoint.java#L131).
This succeeds when the connection is first created as there were no subscriptions at that point. What this implies is that the nodeId of the StatefulRedisClusterPubSubConnection never gets changed whenever reconnection occurs for this connection.
This doesn't cause any problems except that when that particular nodeId is not part of the cluster anymore - due to https://github.com/lettuce-io/lettuce-core/blob/main/src/main/java/io/lettuce/core/cluster/StatefulRedisClusterPubSubConnectionImpl.java#L189. If the nodeId is not part of the cluster, then, ClusterTopologyRefresh (which triggers StatefulRedisClusterPubSubConnectionImpl.setPartitions) will disconnect this connection everytime it gets triggered.
This looks like a genuine bug to me but I am unsure as to how nobody else has encountered it till now as redis downscaling should be a normal scenario for anyone.
@mp911de Could you please tell me if this is indeed a genuine bug, so I can work towards other workarounds to fix this for now for my application.

The rejection of Command CLUSTER is indeed a bug because the command is issued after resubscribing. I think that we can skip this call on activation if the nodeId is already set. Additionally, resubscribe already obtains the node id and we can reuse the identifier from there.
You can disable stale connection closing via ClusterClientOptions.CloseStaleConnections, however, at some point, the topology should be recent and you should not see disconnects anymore.

Thanks for the quick reply.
Without disabling the stale connections, the disconnects continue indefinitely (it continued for at least 4 days in my own application). IMO this is because nodeId of the StatefulRedisClusterPubSubConnection will never change even though the topology is refreshed.
For now, do we have any other option to handle this besides disabling closeStaleConnections as it is not recommended by lettuce docs ?  We were considering disabling the auto-reconnect and handle re-creation of connection from our side.

repo: lettuce-io/lettuce-core


text:
Running out of ephemeral ports

Hi all, we are running out of ephemeral ports on a project with Redis cluster and pipelined operations.
Acording with issue #815 we have upgraded to Spring Data Redis 2.1.3 and Lettuce 5.1.3, but the problem persists.
How we can avoid this?

Please enable connection pooling in Spring Data Redis to prevent connection creation at high rates.


text:
this blocks users with Python < 3.7

https://github.com/lewisbails/cem/blob/66f5e796f1fdce39c1ebc7247c7943efa9f855e1/cem/cem.py#L1

duplicated

repo: lewisbails/cem


text:
Please provide support for Symfony 7

Good day,
While testing the new Symfony 7, I noticed the lack of support for that version in both 2.x and 3.x dev branches.
I would like to request support for this new version please, at least for the v3 of this bundle.
Thanks,

I also can contribute with a PR, but I might need some guidance in case there are some peculiarities I should be aware of.

I can see there's an open PR for this (https://github.com/lexik/LexikJWTAuthenticationBundle/pull/1165), so closing this issue/request now.

repo: lexik/LexikJWTAuthenticationBundle


text:
Fixed bug im handling config items for agent settings

Fixed bug im handling config items for agent settings
Added additional unit test for config items.
Fixed debug log entry for reboot config counter
Updated docs for agent settings

Signed-off-by: Kalyan Nidumolu kalyan@zadeda.com

Thanks. Can we also have the test verify that the various settings an be set to non-default values? And not only for agent settings but also for the others.
If not that has to be tested in a real device.

I have one test case each for Int, String, TriState and  Bool, where we take a Global setting and assign some value..

I have one test case each for Int, String, TriState and Bool, where we take a Global setting and assign some value..

I'm not concerned about the parser being able to handle unit tests. I'm concerned about the actual set of config variables we specify in global.json are not specified correctly (as was the case for the missing agent settings.) How can we verify that all of those still exist and are of the correct type?

type

I added test case to verify none of the keys are missed.
We currently don't have a test for the exact type for each key and their accepted values.. This would be duplicating all the data and was not sure.. But can be added ..
Let me go ahead and add it.. That means.. Any new config item needs to be added here as well.

authors: eriknordmark kalyan-nidumolu

repo: lf-edge/eve


text:
Generate real requirements.txt instead of versions.txt

creates a requirements.txt instead of a versions txt
this uses pkg_resources.get_distribution to find the correct name and version
if a package cannot be found (for example if it's not installed), an exception is raised, this can be suppressed using save(..., strict_requirements=False)

Codecov Report

Merging #425 (d8abe62) into main (232ff3d) will decrease coverage by 0.21%.
The diff coverage is 84.78%.

:exclamation: Current head d8abe62 differs from pull request most recent head c821fd7. Consider uploading reports for the commit c821fd7 to get more accurate results

@@            Coverage Diff             @@
##             main     #425      +/-   ##
==========================================
- Coverage   88.18%   87.97%   -0.22%
==========================================
  Files          15       15
  Lines        3065     3084      +19
==========================================
+ Hits         2703     2713      +10
- Misses        362      371       +9

Impacted Files
Coverage Δ

padl/dumptools/var2mod.py
92.76% <ø> (ø)

padl/dumptools/symfinder.py
84.51% <75.00%> (ø)

padl/dumptools/packagefinder.py
84.21% <83.33%> (-10.92%)
:arrow_down:

padl/transforms.py
91.20% <84.61%> (-0.13%)
:arrow_down:

padl/dumptools/inspector.py
93.46% <100.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 232ff3d...c821fd7. Read the comment docs.

authors: codecov-commenter wuhu


text:
Readme

Readme change

Readme


text:
:sparkles: feat: Scripts HTML

Protótipo HTML aceito.

Autorizado Merge


text:
Long list of files crashes the app

When entering to some torrents with a lot of files (Content o list of files) the app is not responding and crashes.
Reported by Aviad via email.

Content file limited to 20 top.

repo: lgallard/qBittorrent-Controller


text:
linux上提示权限问题PermissionErro

PermissionError: [Errno 13] Permission denied: '/proc/filesystems'

看了一下涉及报错的语句，应该和虚拟环境中psutil中_pslinux.py的第1268行
with open_text("%s/filesystems" % procfs_path) as f:
这句有关？
然而我在我的Arch linux发行版上没有这个问题，就很玄学🤔

看了一下涉及报错的语句，应该和虚拟环境 psutil 包中 _pslinux.py 的第 1268 行
with open_text("%s/filesystems" % procfs_path) as f:
这句有关？
然而我在我的Arch linux发行版上没有这个问题，就很玄学🤔

这里吗

🤔你这 Bot 运行在什么系统上的，这是没权限读文件啊

手机虚拟机 debian上

那弹权限问题也不奇怪了

是不是termux中装了debian这种

是不是termux中装了debian这种

aidlux，自带的debian

不推荐在这类 Android 虚拟机使用，如有必要请使用完全隔离的虚拟机或使用 root 权限运行。

authors: PackageInstaller XieXiLin2 huangzhitian


text:
bower.json dependency for angular change

This technically is a bug belongs to bower but I would like to ask the Arthur to change the dependency for angular from "angularjs" to "angular", otherwise bower will download and load two identical angular js library (they just named differently) into the bower_components and since I use gulp to automate adding the library into index.html angular are being loaded twice.

I will give it a look later in the day, thanks for your feedback!

+1 for the change of the angularjs dependency, plz

Sorry for the delay guys, I just bumped the library version

authors: Baloobear lght pencilcheck

repo: lght/angular-scroll-pane


text:
Assemble of DNA and RNA amplicons from PacBio run

I am trying to combine data from two PacBio runs: DNA (10kb) + cDNA (10kb), these regions overlap each other partially and I would like to phase them based on short-tandem repeats and exonic SNP/fingerprint to genomic exon+intron SNP fingerprints to identify intronic SNP and a number of tandem repeats that are separated by >150kb from each other. cDNA was used to bring STR's + exonic SNP closer to each other.
Do you think miniasm could assemble DNA (intronic and exonic) + RNA/cDNA reads (exonic) into a graph where we could:
phase the number of STR's + exonic SNP (cDNA) with intronic and exonic fingerprints (DNA) based on 99-100% similarity?
If yes, which of the packages I should use, if not do you have any idea what software I should consider using e.g. UCLUST or VSEARCH for OTU binning?

Miniasm is not intended for amplicons.


text:
RTOS_SwitchRead

Implemented the Read Switches task with the new task structure. Closes #108

@Cam0Cow Do you recall why this hasn't been merged in just yet? Is it because we can't test it without the board?

@Cam0Cow Do you recall why this hasn't been merged in just yet? Is it because we can't test it without the board?

Yes, it didn't make sense to merge it into master untested.

This Branch does not have the BSP CAN layer at present and as such is failing build checks. We need to merge in the CAN BSP layer into master, merge master into this branch, and test before we can merge this.

@Cam0Cow @chaseblock This is failing compilation when  make stm32f413 TEST=SwitchRead is run but not when make stm32f413 is run. Could either of you run the same thing and see if you catch any errors strictly in terms of compilation?

@Cam0Cow @ClarkPoon This is failing compilation when  make stm32f413 TEST=SwitchRead is run but not when make stm32f413 is run. Could either of you run the same thing and see if you catch any errors strictly in terms of compilation?

BSP_CAN is not implemented on this branch, so it can't find the BSP_CAN functions declared in BSP_CAN.h when it tries to link.
https://github.com/lhr-solar/Controls/blob/RTOS_SwitchRead/BSP/STM32F413/Src/BSP_CAN.C

@Cam0Cow @ClarkPoon This is failing compilation when  make stm32f413 TEST=SwitchRead is run but not when make stm32f413 is run. Could either of you run the same thing and see if you catch any errors strictly in terms of compilation?

BSP_CAN is not implemented on this branch, so it can't find the BSP_CAN functions declared in BSP_CAN.h when it tries to link.
https://github.com/lhr-solar/Controls/blob/RTOS_SwitchRead/BSP/STM32F413/Src/BSP_CAN.C

Ah, these are the things you miss when you forget to sleep. I'll add dummy functions to the C file since this thread doesn't depend on CAN.

authors: Cam0Cow ClarkPoon babusid

repo: lhr-solar/Controls


text:
希望可以增加设置NavigationBar的Light or Dark

如题

@DuShuYuan 最新版本，已经添加了isLightNavitationBar()方法

authors: DuShuYuan li-xiaojun

repo: li-xiaojun/XPopup


text:
Contributing [getting started]

Hi, I enjoyed reading the codebase, and I'd like to contribute. I've looked into the issues, but I am not sure where to get started. I'd appreciate if you can point me to something.

Hey, what sort of thing are you interested in working helping with? Features? Bugs? Documentation? Examples?

Right now I am occupied with final exams, so I like to work on something with low priority. I prefer working on features, examples, documentation, and bugs and in that order.

authors: alireza-a liabru

repo: liabru/matter-js


text:
Heading CSS

Hello,
Can you share your theme and css mods featured in the readme, please:

It looks awesome, and I find it a plus that it indicates the header level–very helpful. Thank you!

The snippet for that is:
.HyperMD-header.cm-line {
  position: relative;
}

.HyperMD-header.cm-line::before {
  color: var(--text-muted);
  font-size: 0.7rem;
  left: -2.8em;
  letter-spacing: 0.2px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.HyperMD-header.HyperMD-header-1.cm-line::before {
  content: "H1";
}
.HyperMD-header.HyperMD-header-2.cm-line::before {
  content: "H2";
}
.HyperMD-header.HyperMD-header-3.cm-line::before {
  content: "H3";
}
.HyperMD-header.HyperMD-header-4.cm-line::before {
  content: "H4";
}
.HyperMD-header.HyperMD-header-5.cm-line::before {
  content: "H5";
}
.HyperMD-header.HyperMD-header-6.cm-line::before {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%236272a4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-list'%3E%3Cline x1='8' y1='6' x2='21' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='12' x2='21' y2='12'%3E%3C/line%3E%3Cline x1='8' y1='18' x2='21' y2='18'%3E%3C/line%3E%3Cline x1='3' y1='6' x2='3.01' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='12' x2='3.01' y2='12'%3E%3C/line%3E%3Cline x1='3' y1='18' x2='3.01' y2='18'%3E%3C/line%3E%3C/svg%3E");
  background-size: 12px 12px;
  width: 12px;
  height: 12px;
}

But since a lot of people have asked me about that snippet, I turned it into a plugin: https://github.com/liamcain/obsidian-heading-markers.

above and beyond, @liamcain—coffee headed your way :) thank you

repo: liamcain/obsidian-creases


text:
make sure keybindings are configurable

Is your feature request related to a problem? Please describe.
Every user will have their own keybinding wants and needs.
Describe the solution you'd like
Minimum: ability to configure key bindings in a config file, using AutoHotKey's syntax would be familiar to some of this.
Would be nice to configure these through a GUI, PyCharm and the other JetBrains editors have done this really nicely and if we could mimic their methods, that would be fantastic.
Describe alternatives you've considered
I'd use AutoHotKey to work around stuff, but that becomes trickier if the keybindings Aminal has chosen don't line up with those of other Windows apps that I'm working around.
Additional context
See the following tickets that rely on keybindings which would need to be configurable:
https://github.com/liamg/aminal/issues/196
https://github.com/liamg/aminal/issues/217
https://github.com/liamg/aminal/issues/195

@cjw296 You know that there are already some keybindings that can be adjusted in the configuration file right? As a first port of call we should make sure that all aminal specific keybindings are supported there.
It seems like there are two issues here: (1) make sure all keybindings are configurable in the config file, (2) create a GUI for keyboard configuration. Should we split this up into 2 issues?

Nope, was not aware of any config file. Where's that documented? (If it's not, please at an issue to get it documented :-) ).
Agreed on making sure that all aminal key bindings can be configured would be good and, indeed, sufficient for this ticket.
A GUI for keyboard configuration can definitely be split into a second issue, and that one's definitely more of a nice to have than a blocker.

The config file is documented in the readme. See the "keys" section here: https://github.com/liamg/aminal#config-file

@cjw296 for #217 (rectangular mouse select), would it be sufficient to configure a subset of modifier keys? Or any key (+ modifiers)?

Ideally we should be supporting any multi-key combinations including any modifiers.

@cjw296 Ideal software would require indefinite amount of effort to build (time and money). I'm asking whether it's worth it or not.

What's the problem you're trying to ask about? What keys are hard to bind to and why?

@cjw296 The current code allows to easily read the combination of modifier keys pressed at the moment when you press the left mouse button. To allow other key combinations I'll have to either

find out a way to read current keyboard state with all buttons included.
keep track of buttons pressed and not yet released.
But, you'd usually want to use ctrl, alt or shift buttons or a combination of these for 'rectangular select'.
So why waste time and money allowing you to do what you'll probably never want to do, e.g. pressing Ctril+A for entering rectangular select mode?

The point is, too, that, the bigger the program the harder it is to maintain. Not only this task will consume some effort, but some subsequent tasks may require more effort merely because they are updates to a bigger, more complicated software.

That's the KISS principle

We're going to need all key bindings to be configurable, not sure when the left mouse button is pressed. @mjs - thoughts?

Left mouse button is taken into account for rectangular select only

Closed due to complete rewrite as part of bringing the project back to life, please create a new issue if still relevant. Thank you!

authors: cjw296 liamg mjs rrrooommmaaa

repo: liamg/darktile


text:
feat(choices): choices with both skill checks and ifs working

⚠ NOTE: use notes like this to emphasize something about the PR. This could include other PRs this PR is built on top of; new or removed environment variables; reasons for why the PR is on hold; or anything else you would like to draw attention to.

Checklist

[ ] Linked an issue for this PR (or no issue is relevant)
[ ] Have you followed the guidelines in the CONTRIBUTING.md file?
[ ] Have you checked if there are breaking changes in this PR, and if so mentioned them below?

** Feel free to delete sections that aren't relevant to your changes **
Problem
What problem are you trying to solve?:
Solution
How did you solve the problem?
Before & After Screenshots
(Include if relevant)
BEFORE:
[insert screenshot here]
AFTER:
[insert screenshot here]
Other changes (e.g. bug fixes, UI tweaks, small refactors)
Any additional explanations needed about changes:
Breaking Changes
Do any of the changes cause breaking changes for users? For example: Changes in the config, in scripting syntax...:

closes #63

repo: liana-p/narrat-engine


text:
Eliminate unnecessary rebuilds in build script

Our various test and benchmark artifacts are created repeatedly on every build. While not a noticeable slowdown at this point, it's unnecessary work and, over time, the cause of wear for SSDs, for example.
The problem seems to be that the generated files' mtimes are after those of Cargo's output file that they are compared against to determine staleness. This behavior is counter-intuitive: it is the build script that emits those outputs to stdout while also generating those files. Hence, the build script's outputs can only be available completely after said script has run (that is, after the files have been generated as well). Alas, this behavior seems to be fully intentional from the Cargo side [0].
With this change we work around this problem, by adjusting generated files' time stamps to those of said output file after generation. It's not perfect (the output file is more or less an implementation detail and could potentially change at some point; also, because we rely on the existence of this output file we need two builds before the mtimes are correct), but should be good enough. We also add a CI job that makes checks that we don't re-generate files for the default generate-test-files feature.
[0] https://github.com/rust-lang/cargo/blob/4a60ff78a5f03e7c9ed2399754efb62c80a8ecc8/src/cargo/core/compiler/fingerprint/mod.rs?L249#L249-L256
Fixes: #91

LGTM. Just curious why shelling out to touch instead of doing this from Rust code (seems like a pretty straightforward operation, there must be some crate for this, right?)

Indeed, ideally we would use Rust code. However, I didn't want to add a build dependency, because internal consumers are dependency-averse at this point (and we just managed to get down to only a single dependency: libc). Hopefully said consumers will sort things out and that won't be a blocker down the road. We could use the respective libc calls ourselves, though when I looked at doing that a while back the plumbing seemed rather...intricate. I don't think the shelling out part is an issue, to be honest, but my worry is that some touch binaries won't support all the options used and will just error out...

authors: d-e-s-o danielocfb

repo: libbpf/blazesym


text:
Provide custom Debug impl for symbolize::Process

We may end up including symbolize::Process objects in traces. Right now their Debug representation is very verbose, making said traces unnecessarily hard to read.
This change provides a custom Debug impl that shortens the output reasonably.
Refs: #223

Straight forward change; merging.


text:
Libgdx not working on my computer

Please ensure you have given all the following requested information in your report.
Issue details
Libgdx not working
Reproduction steps/code
i cant run a build(desktop) in my computer the files are the template files generated by libgdx generator
Stacktrace
harshet@harshet-desktop:~/Desktop/a/LibGDX/Drop$ ./gradlew desktop:run
Starting a Gradle Daemon, 5 incompatible and 1 stopped Daemons could not be reused, use --status for details

Task :desktop:run
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.lwjgl.LWJGLUtil$3 (file:/home/harshet/.gradle/caches/modules-2/files-2.1/org.lwjgl.lwjgl/lwjgl/2.9.3/3df168ac74e4a8c96562cdff24ad352e255bf89c/lwjgl-2.9.3.jar) to method java.lang.ClassLoader.findLibrary(java.lang.String)
WARNING: Please consider reporting this to the maintainers of org.lwjgl.LWJGLUtil$3
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Inconsistency detected by ld.so: dl-lookup.c: 111: check_match: Assertion `version->filename == NULL || ! _dl_name_match_p (version->filename, map)' failed!

BUILD SUCCESSFUL in 2m 21s
5 actionable tasks: 5 executed
harshet@harshet-desktop:~/Desktop/a/LibGDX/Drop$
Please select the affected platforms

[ ] Android
[ ] iOS
[ ] HTML/GWT
[ ] Windows
[ #] Linux
[ ] MacOS

This is most certainly caused by LWJGL 2. Just switch to the LWJGL 3 backend as described here. Also see #6426.

You can also switch your JDK to AdoptOpenJDK; 8 is best-supported by libGDX, but 11 also works (Java 16 does not work currently because Gradle hasn't updated to support it yet). Just get the JDK (not the smaller JRE) for your architecture, which is almost certainly x64. AdoptOpenJDK, for whatever reason, works with LWJGL2 and LWJGL3 on all platforms you can install AdoptOpenJDK, while the default JDKs for most Linux distros only work with LWJGL3 out-of-the-box. If you use IntelliJ IDEA or Android Studio, you can also download an AdoptOpenJDK JDK from the IDE (File -> Project Structure -> SDKs -> Plus at the top -> Choose what JDK you want; though I don't remember the last steps that well, I think they are straightforward).

thank you for your help tommyettinger crykn btw is there is any discord community for libgdx

Yep, it's very active. https://discord.gg/nVT3Xgh

authors: crykn harshetmaruff tommyettinger

repo: libgdx/libgdx


text:
Add & use tl::function_ref in all APIs

tl::function_ref is an implementation of the future std::function_ref.
When std::function_ref is released, hal::function_ref will point to it
instead of tl::function_ref.
Migrate from std::function to hal::function_ref because the former
is owning, potentially allocating, and results in copies, where as
the later is non-owning, never allocates and is the size of just two
pointers.

.take


text:
提交PR建议

需要提交新feature可以在develop分支的基础上进行开发，然后提交到develop分支；
需要提交bugfix可以在master分支的基础上进行开发，经过完整测试之后和入master，保证master分支的稳定性。

确实更合理，之后可以按照这个流程操作。

在Merge到master branch之后，删除develop branch，创建一个新的develop分支，防止出现冲突。 @libi

authors: dxyinme libi

repo: libi/dcron


text:
Don't make this a framework

A library is not the same as a framework, but napc_app_setup and napc_app_loop are framework-like.
Replace napc_app_setup (and napc_app_loop) with.. libnapc_init(); instead?

Linux:
int main(void) {
    libnapc_init();
    // do stuff
}

Arduino:
void setup(void) {
    libnapc_init();
    // do stuff
}

void loop(void) {
    // do stuff
}

Periodic updates could be achieved by periodically calling libnapc_tick(); or something (to collect random bytes, or check network sockets etc.)

This is being done right now. The project will be split into libnapc and napc. napc will contain the very hardware dependent functionalities like ethernet, file system etc.

repo: libnapc/libnapc


text:
test: Initial attempt at multidim CI test

WIP until CI passes

Future todos:

[ ] Figure out why firefox webrtc isn't working
[ ] Figure out why webkit tests fail to create a libp2p node

@ckousik I'm seeing a failure with firefox -> webrtc -> rust (Chrome works fine).  https://github.com/libp2p/js-libp2p/actions/runs/4369651820/jobs/7643671824#step:5:5535 " localCert.getFingerprints is not a function". Have you seen that before? https://github.com/libp2p/js-libp2p-webrtc/blob/4c8806c6d2a1a8eff48f0e2248203d48bd84c065/src/transport.ts#L215

I don't know why windows is failing. It seems like it's failing in other PRs as well, so probably not related to these changes

@ckousik I'm seeing a failure with firefox -> webrtc -> rust (Chrome works fine). https://github.com/libp2p/js-libp2p/actions/runs/4369651820/jobs/7643671824#step:5:5535 " localCert.getFingerprints is not a function". Have you seen that before? https://github.com/libp2p/js-libp2p-webrtc/blob/4c8806c6d2a1a8eff48f0e2248203d48bd84c065/src/transport.ts#L215

That's odd, since getFingerprints is required in w3c https://w3c.github.io/webrtc-pc/#rtccertificate-interface . Looking into it now.

This ready for review. This could be faster, our build of head takes 10m. I haven't spent any time investigating this, but we could probably speed this up.

@achingbrain Can we review and get this in this week (meant to follow up on this in triage today)?

Per sync discussion:
@achingbrain is hesistant to merge this while it takes >10min. If I bring it down to <10min, we'll merge.

Alright, I spent a good bit of time optimizing this and the tests run in 15 min. I think this is as good as we can get it without reworking the test runner itself. (unfortunately docker run startup time is the limiting factor, with each test taking about 2s to run).
This could improve a bit if we make the rust images smaller, but I wouldn't expect too much.
@achingbrain can I get another approval?

This could improve a bit if we make the rust images smaller, but I wouldn't expect too much.

Tracking this here: https://github.com/libp2p/rust-libp2p/issues/3881

All tests pass! @achingbrain any objections to merging?

@MarcoPolo Do I understand correctly that with this PR js-libp2p will use the same structure of just pointing to a commit-hash in the test-plans repo?
Much in favor of adopting that!

Do I understand correctly that with this PR js-libp2p will use the same structure of just pointing to a commit-hash in the test-plans repo?

Yes

@achingbrain this is blocking more interop tests in test plans and webrtc interop tests. Since this is only test code, I'll assume your previous approval is still valid unless you say otherwise within the next ~24h.

I've split up the test @achingbrain, but what's annoying now is that one or the other test will always be skipped but it will still spin up and shutdown a libp2p node because of beforeEach and afterEach. Any suggestions? We might be able to replace it(... with it.skip(... dynamically and thus skip the test at the higher level, but that seems a bit hacky.

I agree @MarcoPolo it seems to get a bit messy going that route. What do you think about splitting the tests into two separate directories i.e. one for dialler tests and one for listener tests (albeit they are both just one test each at the moment) and we can use just use an npm script like
"test": if [ \"$is_dialer\" = \"true\" ]; then aegir test -t node -f \".dist/test/dialer/*.{node,spec}.js\"; else aegir test -t node -f \".dist/test/listener/*.{node,spec}.js\"; fi

I know we have been going back and forth on this for a while so if you and @achingbrain agree then I could make these changes so that we can land this.

I've split up the test @achingbrain, but what's annoying now is that one or the other test will always be skipped but it will still spin up and shutdown a libp2p node because of beforeEach and afterEach. Any suggestions? We might be able to replace it(... with it.skip(... dynamically and thus skip the test at the higher level, but that seems a bit hacky.

I agree @MarcoPolo it seems to get a bit messy going that route. What do you think about splitting the tests into two separate directories i.e. one for dialler tests and one for listener tests (albeit they are both just one test each at the moment) and we can use just use an npm script like
"test": if [ \"$is_dialer\" = \"true\" ]; then aegir test -t node -f \".dist/test/dialer/*.{node,spec}.js\"; else aegir test -t node -f \".dist/test/listener/*.{node,spec}.js\"; fi

I'm strongly against separate files for this test. I also don't like using bash scripting as the way to check which test to run. Why are we introducing bash into this when we're already working with TypeScript?

I'm strongly against separate files for this test.

why is that? As it is now they are two separate tests in one file, I think that having them in separate files improves the modularity and reporting (as you wouldn't see the logs of the test being skipped)

I also don't like using bash scripting as the way to check which test to run. Why are we introducing bash into this when we're already working with TypeScript?

I can appreciate that but I think they serve two different purposes in this case. I would say it's more common to see bash scripting accessing environment variables than Typescript. I would also say it's more intuitive than the dynamic way of skipping tests
Regardless, I wouldn't let either of those concerns block this from being landed and I see that tests pass now  🚀. We can always optimize in a follow up PR 😄

why is that? As it is now they are two separate tests in one file, I think that having them in separate files improves the modularity and reporting (as you wouldn't see the logs of the test being skipped)

Having more files here doesn't improve modularity, it adds indirection. You may as well run the test command and grep for only the tests you want to run.
Is it common to see Bash scripting used in npm test? I've done it a couple of times, but only as a last resort.

You may as well run the test command and grep for only the tests you want to run.

Sorry this wasn't clear. I was using this an example of what you wouldn't want to do.

Poking in here: were the discussions mostly resolved i.e. is this guy almost there to getting merged?

I meant something like:
it('should be a listener', function () {
  if (is_dialer) {
    return this.skip()
  }

  // listener test code here
})

The dynamic skip:
(isDialer ? it.skip : it)('should listen for ping', async () => {

is reminiscent of what we did for the js-ipfs interface tests.  It worked, though typing it all was a little hairy.
I think one file for the ping test is ok, definitely don't want to be debugging bash scripts to figure out why tests aren't running.
I think we should get this in and we can finesse it in follow PRs.

authors: MarcoPolo achingbrain ckousik maschad p-shahi thomaseizinger


text:
[Storage] Get consistency proof from storage

Motivation
We have implemented most of the logic, now just add an API to accumulator to get this proof from storage.
Have you read the Contributing Guidelines on pull requests?
Y.
Test Plan
CI.
Related PRs
None.

@bors-libra r+

:pushpin: Commit 555bd07 has been approved by zamsden

:hourglass: Testing commit 555bd07489d36c4187a1fdf0d831c3653f3414c3 with merge 13f55538b3f388f88fa2f74a77726759c367b9ca...

:sunny: Test successful - checks-circle_commit_workflow
Approved by: zamsden
Pushing 13f55538b3f388f88fa2f74a77726759c367b9ca to master...

authors: bors-libra wqfish zamsden

repo: libra/libra