[Solved] Failed to execute http call

[EDIT2] fixed by adding the following in the android manifest
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
            <application
        ...
        android:usesCleartextTraffic="true">

Between the error message "Failed to execute http call" is pretty bad.. I had to install and setup a basic conf with Volley to find what's happening..
Hi, I try to get working a very basic app.
My schema are downloaded using apollo cli, my graphQL API is working perfectly (tested the query on playground) and run locally on http://localhost:4000/ (this is the endpoint).
[EDIT] If I set BASE_URL to http://<IP_ADDRESS>:4000 I got the same error for the app. But I can access to the graphql playground through google chrome from the emulator.
schema.json and the .graphql file are located under the /graphql directory.
The project is building without any error, apollo-android generate all stuff finely.
Exception:
com.apollographql.apollo.internal.interceptor.ApolloServerInterceptor$1$1.onFailure(ApolloServerInterceptor.java:89)
okhttp3.RealCall$AsyncCall.execute(RealCall.java:148)
okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
java.lang.Thread.run(Thread.java:764)
Failed to execute http call

I missed something ?

None of those things worked for me.
Why is apollo making a network failure a fatal error?

Where is the solution?

Calls to the insecure http protocol will not work with Android as part of their security policy. You need https.
Set up a secure tunnel to localhost (I know, counter-intuitive, but hey) by executing the following in a terminal

npm install ngrok -g
ngrok http 4000 <- this is the port for the graphql endpoint on localhost
copy the secure https protocol that the command line gives you for example https://93c28b4e13cc.ngrok.io
paste that in your apollo implementation
val apolloClient = ApolloClient.builder()
.serverUrl("https://93c28b4e13cc.ngrok.io")
.build()
enjoy building your queries!


Latest releases not on PyPi

You might already be aware as I see quite some action the last few days, but just to be sure.
The last 2 releases for HA 2024.1.0b8 and 2024.1.0 are released on Github, but are not visible on PyPi.
Twine errors out with the following message in CI
https://github.com/MatthewFlamm/pytest-homeassistant-custom-component/actions/runs/7402237250/job/20139743707#step:13:201
ERROR    HTTPError: 403 Forbidden from https://upload.pypi.org/legacy/
         Username/Password authentication is no longer supported. Migrate to API
         Tokens or Trusted Publishers instead. See
         https://pypi.org/help/#apitoken and
         https://pypi.org/help/#trusted-publishers
Error: Process completed with exit code 1.

It seems like it is just a case of either updating TWINE_USERNAME / TWINE_PASSWORD secrets with "token" and a new token. Or setting up a Trusted Publisher, which seems fancier, but also more complicated. The links in the error message have all the info.

Yes, the pypi upload should hopefully be fixed but now there are new errors since the testing has changed in the newest patch releases

Latest release now on pypi.


balance not stable, is this due to testing phase?

I notice that my balance is changeing without performing any tip
is this because it's a test environment?
or there is some bug?
re: +balance
inviato 1 giorno fa da sodogetiptest
Your balance : 2000.00000000

this has been reset to zero without any activity
then I was tipped and i request the balance again
da talman_au via /r/dogecoin inviato il 11 ore fa
mostra il post a cui è riferito
+/u/sodogetiptest 98 doge

re: +balance
inviato 11 ore fa da sodogetiptest
Your balance : 98

it show correctly the 98 doges
than I used the faucet getting 2000 doges
running again balance
re: +balance
inviato 11 ore fa da sodogetiptest
Your balance : 2000

It lost 98 doge previously tipped

yeah it's due to tests

yeah


feat(api): add new ContractAgreement API using JSON-LD types

What this PR changes/adds
Adds a new REST API for ContractAgreements that is using JSOND-LD types and the associated transformers.
Why it does that
JSON-LD-ification of the API
Further notes
.
Linked Issue(s)
Closes #2839
Checklist

[ ] added appropriate tests?
[ ] performed checkstyle check locally?
[ ] added/updated copyright headers?
[ ] documented public classes/methods?
[ ] added/updated relevant documentation?
[ ] assigned appropriate label? (exclude from changelog with label no-changelog)
[ ] formatted title correctly? (take a look at the CONTRIBUTING and Etiquette for pull requests for details)

Codecov Report
Patch coverage has no change and project coverage change: -53.05 :warning:

Comparison is base (687449a) 66.24% compared to head (2addb92) 13.19%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@             Coverage Diff             @@
##             main    #2899       +/-   ##
===========================================
- Coverage   66.24%   13.19%   -53.05%
===========================================
  Files        1015     1017        +2
  Lines       20513    20520        +7
  Branches     1195     1195
===========================================
- Hits        13588     2707    -10881
- Misses       6426    17708    +11282
+ Partials      499      105      -394

Impacted Files
Coverage Δ

...tractagreement/ContractAgreementApiController.java
92.00% <ø> (-8.00%)
:arrow_down:

...ctagreement/ContractAgreementNewApiController.java
0.00% <0.00%> (ø)

...JsonObjectFromContractAgreementDtoTransformer.java
0.00% <0.00%> (ø)

... and 644 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Add psql_database argument postgres operations/facts

This PR adds the ability to specify which database psql should connect to for postgres/postgresql operaitons and facts.
I can into an issue where I wanted to create a postgres role my_role with CREATEDB, and then connect as that new user to create a database that they owned. Because postgres defaults to connecting to the db with the same name as the role, I would get an error like: FATAL:  database "my_role" does not exist.
This method is necessary when using managed postgres services from cloud providers that don't provide superuser access, meaning you can't change the owner of a database.

Hey no problem, thanks for getting to it!


update web_worker_fib example

Description
I fixed the web worker example that can now work with trunk.

I don't see web worker support in trunk?

I think you didn't look into the PR. The support of trunk is in the scope of serving the app. I still the build script to get the worker compiled.
So now, instead of using some python lib, you can just use trunk :)

I looked and now you're compiling the example twice. Once with wasm-pack, once with trunk. I'm not sure if the benefits are worth it.
If you want to use Rust web server, miniserve crate exists which is practically the same as the python library

I understand but the worker is not really separated from the app originally and trunk is used as a server here. Does it compile twice? Yes because app and worker are mixed together... But eventually the worker is compiled separately and used as a static resource when serving with trunk.
I believe this PR is an improvement. Actually this example didn't work as it was. That is why I did this PR in the first place.

Currently, does this example compiles separately the worker and the app?

They're both compiled as part of the wasm-pack build.
The reason why the app doesn't work when built is wasm-pack deletes the index.html file. A better fix would be to move the index.html file to root of example, and put the following line at the end of build.sh
cp index.html static/

@siku2 what do you think of this?

They're both compiled as part of the wasm-pack build.
The reason why the app doesn't work when built is wasm-pack deletes the index.html file. A better fix would be to move the index.html file to root of example, and put the following line at the end of build.sh
cp index.html static/

@siku2 what do you think of this?

I agree that it should be done like this instead.

This change will be unneeded with the new trunk version which includes support for web workers

Sure. Thanks for the feedback. I can update the example accordingly when new release is ready.

@t1m0t If its ok im closing this just to not have hanging PR's that wait for unknown date, in this case trunk release.


chore(tests): Fix inconsistent test naming

These files were the odd ones out, and I thought it best to rename them from .spec.ts to .test.ts. deckgl does use .spec.ts instead, so perhaps we eventually want to switch all test files here as well... I don't particularly have a preference on .test.ts vs .spec.ts, as long as the repo is internally consistent.

Sounds good – switched all tests to .spec.ts!


Updating code to support cross partition queries

Purpose

...

Does this introduce a breaking change?

[ ] Yes
[ ] No

Pull Request Type
What kind of change does this Pull Request introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

How to Test

Get the code

git clone [repo-address]
cd [repo-name]
git checkout [branch-name]
npm install

Test the code

What to Check
Verify that the following are valid

...

Other Information

@codemillmatt can you please merge this PR.

Fixes https://github.com/MicrosoftDocs/azure-docs/issues/35995

Lgtm


Add minPeriod property for less frequent updates

Adding a new minPeriod property to the setTimeout() function, so we can achieve less frequent updates of the elements.
This was done due to performance reasons as we needed only updates once per minute and not once per second.

Will merge and publish later today. But I did want to point out that React-TimeAgo already is smart about intervals. So, once you cross 1 minute, it stops re-rendering every second and start updating every minute, and so on.
This might be a tiny micro-optimisation, but it's not going to give you any meaningful difference in performance.

Added minPeriod and maxPeriod in 2.2.0


What would be the appropriate way to carry out this query?

What would be the way to do push and unset in the same query?
example of what I want to achieve
DbHandler.data.updateOne (Data::field0 eq data,
                 push (Data::field1, data),
                 unset (Data::field2))

What is the mongo query to generate?

I want to remove one element and add another at the same time in a document.
db.products.updateOne( 	{ "$unset" :                     {                         "data": 1                     }                 },                 { "$set":                      {                         "data" : "2"                     }                 })


wasmparser improperly fails with: reference types support is not enabled

I stumbled upon this when implementing bulk-memory Wasm proposal support in wasmi when integrating the new Wasm spec testsuite test cases for the bulk-memory Wasm proposal. Note: wasmi does not yet have support for the reference-types Wasm proposal and I guess this is important for this issue.
Namely, when parsing and validating the test cases via wasmparser (as always) it errors out with this message among others:
---- spec::bulk_memory::wasm_table_copy stdout ----
thread 'spec::bulk_memory::wasm_table_copy' panicked at 'tests/spec/testsuite/proposals/bulk-memory-operations/table_copy.wast: failed to execute `.wast` directive: reference types support is not enabled (at offset 0x74)', crates\wasmi\tests\spec\run.rs:44:9

---- spec::bulk_memory::wasm_table_init stdout ----
thread 'spec::bulk_memory::wasm_table_init' panicked at 'tests/spec/testsuite/proposals/bulk-memory-operations/table_init.wast: failed to execute `.wast` directive: reference types support is not enabled (at offset 0x74)', crates\wasmi\tests\spec\run.rs:44:9

The wasmparser error message is: reference types support is not enabled (at offset 0x74)
Querying the wasmparser codebase got me the following code segments:

https://github.com/bytecodealliance/wasm-tools/blob/cacda73ccb6f9f8cc42e8391c77480187c99b48d/crates/wasmparser/src/validator.rs#L256
Which filters out ValType::FuncRef | ValType::ExternRef types, however, the bulk-memory Wasm proposal explicitly allows ValType::FuncRef in so-called elemexpr which can only occur in Wasm element const experessions. I think this is the problematic code. (Not tested though.)
elemexpr = refnull | funcref <func_idx>

Source: bulk-memory Wasm Proposal Overview

https://github.com/bytecodealliance/wasm-tools/blob/cacda73ccb6f9f8cc42e8391c77480187c99b48d/crates/wasmparser/src/validator/operators.rs#L934
Unfortunately I am on wasmparser 0.91 so this issue might have already been resolved in a newer version.
Here is a link to the WIP wasmi PR in case this helps. (It is very WIP ...)

It's fine to recategorize features under different proposals retroactively.

What does this mean with respect to this issue?
The elemexpr was introduced because without them it is impossible to initialize a table to null via table.init from what I understood.

I'm not entirely sure unfortunately, I haven't put any effort into thinking about how to rationalize the bulk memory proposal without reference types or vice versa.


Create dataset loader for ALICE-THI

Dataloader name: alice-thi/alice-thi.py
DataCatalogue: http://seacrowd.github.io/seacrowd-catalogue/card.html?alice-thi

Dataset
alice-thi

Description
ALICE-THI is a Thai handwritten script dataset that contains 24045 character images, which is split into Thai handwritten character dataset (THI-C68) for 14490 images and Thai handwritten digit dataset (THI-D10) for 9555 images. The data was collected from 150 native writers aged from 20 to 23 years old. The participants were allowed to write only the isolated Thai script on the form and at least 100 samples per character. The character images obtained from this dataset generally have no background noise.

Subsets
THI-C68, THI-D10

Languages
tha

Tasks
Optical Character Recognition

License
Unknown (unknown)

Homepage
https://www.ai.rug.nl/~mrolarik/ALICE-THI/

HF URL
-

Paper URL
https://www.sciencedirect.com/science/article/abs/pii/S0952197615001724

#self-assign

Working on it. Will try to finish this week

Working on it. Will try to finish this week

No problem. Feel free to let us know if you have any question.

#self-assign

#self-assign


ETMoses notes (Dorine van der Vlies)

This ticket serves as a note for myself.
Some of the points might evolve into tickets, others might disappear as I move on.
Just so I don't forget them.
Documentation

Right now it is not clear to me which base load I should choose to represent my situation best. A short description (couple of words) in the Wiki that describe the properties of the load would be helpful.
Change "degrees"  to °C.

Ease of use

Uploading a technology profile from CSV is vague. After selecting the profile I have to press "Save" (A button to the right of the CSV selection zone would be more clear). In this case save means "Save and show" which is annoying, I have to go back to "Edit LES" to see whether my adjustment was implemented.
The overview of the technology profile is long and unclear. Exporting to CSV is an option. Something like an overview of the technology profile (summary, tree) would be nice.
Defining the technology profile is not easy. For example if I want to select a certain load profile I do not know which code belongs to it. And I don not know the default settings of all columns.
When I add/remove a technology the sum does not add up to my ETM anymore. In itself this is not a problem, but I would like to see whether I am currently exceeding my ETM scenario or whether I am not assigning enough of the technology.
Changing the technology profile is not easy. Right now I'm using a combination of editing in the CSV and online whilst exporting a lot and checking whether it worked.

Technical

Fuel Cells are currently not supported. For Ameland I would like to implement them.
Enhancement, orientation solar cells

General
BUG

I can not view the gas load

Interface
558
In stacked curves spiky technologies are visually overrepresented in whole year representation.
Whole year:

Zoom in whole year to a week in March:

044bd89d81e6.png)
One week March

Questions

Closing, not relevant anymore


Feature/cleanup delve

@janhalfar

bin/ is in gitignore, so it should be in the repo
i dont remember us considering an ingress for the patched deployment, what would be the purpose behind it?


Regent: added call __future(T, x)

Implementation for #673.

This is merged as of 548c01f12f192524f9f2428d34ee885669304201. Github won't see it, but it's in the repo now. Thanks again for working on this!


ERROR : imagepicker plugins

Launching lib\main.dart on Android SDK built for x86 in debug mode...
Initializing gradle...
Resolving dependencies...
[{"event":"app.progress","params":{"appId":"6b3cb832-c943-46f5-8b92-5143851d66e4","id":"2","progressId":null,"message":"Running Gradle task 'assembleDebug'..."}}]Running Gradle task 'assembleDebug'...

registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:15: error: package android.support.annotation does not exist
import android.support.annotation.VisibleForTesting;
^
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:16: error: cannot find symbol
import android.support.v4.app.ActivityCompat;
^
symbol:   class ActivityCompat
location: package android.support.v4.app
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:17: error: package android.support.v4.content does not exist
import android.support.v4.content.FileProvider;
^
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerFileProvider.java:3: error: package android.support.v4.content does not exist
import android.support.v4.content.FileProvider;
^
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerFileProvider.java:10: error: cannot find symbol
public class ImagePickerFileProvider extends FileProvider {}
^
symbol: class FileProvider
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerPlugin.java:8: error: package android.support.annotation does not exist
import android.support.annotation.VisibleForTesting;
^
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:68: error: cannot find symbol
@VisibleForTesting static final int REQUEST_CODE_CHOOSE_IMAGE_FROM_GALLERY = 2342;
^
symbol:   class VisibleForTesting
location: class ImagePickerDelegate
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:69: error: cannot find symbol
@VisibleForTesting static final int REQUEST_CODE_TAKE_IMAGE_WITH_CAMERA = 2343;
^
symbol:   class VisibleForTesting
location: class ImagePickerDelegate
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:70: error: cannot find symbol
@VisibleForTesting static final int REQUEST_EXTERNAL_IMAGE_STORAGE_PERMISSION = 2344;
^
symbol:   class VisibleForTesting
location: class ImagePickerDelegate
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:71: error: cannot find symbol
@VisibleForTesting static final int REQUEST_CAMERA_IMAGE_PERMISSION = 2345;
^
symbol:   class VisibleForTesting
location: class ImagePickerDelegate
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:72: error: cannot find symbol
@VisibleForTesting static final int REQUEST_CODE_CHOOSE_VIDEO_FROM_GALLERY = 2352;
^
symbol:   class VisibleForTesting
location: class ImagePickerDelegate
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:73: error: cannot find symbol
@VisibleForTesting static final int REQUEST_CODE_TAKE_VIDEO_WITH_CAMERA = 2353;
^
symbol:   class VisibleForTesting
location: class ImagePickerDelegate
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:74: error: cannot find symbol
@VisibleForTesting static final int REQUEST_EXTERNAL_VIDEO_STORAGE_PERMISSION = 2354;
^
symbol:   class VisibleForTesting
location: class ImagePickerDelegate
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:75: error: cannot find symbol
@VisibleForTesting static final int REQUEST_CAMERA_VIDEO_PERMISSION = 2355;
^
symbol:   class VisibleForTesting
location: class ImagePickerDelegate
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:77: error: cannot find symbol
@VisibleForTesting final String fileProviderName;
^
symbol:   class VisibleForTesting
location: class ImagePickerDelegate
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:164: error: cannot find symbol
@VisibleForTesting
^
symbol:   class VisibleForTesting
location: class ImagePickerDelegate
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerPlugin.java:40: error: cannot find symbol
@VisibleForTesting
^
symbol:   class VisibleForTesting
location: class ImagePickerPlugin
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:122: error: cannot find symbol
return ActivityCompat.checkSelfPermission(activity, permissionName)
^
symbol: variable ActivityCompat
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:128: error: cannot find symbol
ActivityCompat.requestPermissions(activity, new String[] {permissionName}, requestCode);
^
symbol: variable ActivityCompat
D:\mobileProject\flutter.pub-cache\hosted\pub.dartlang.org\image_picker-0.4.12+1\android\src\main\java\io\flutter\plugins\imagepicker\ImagePickerDelegate.java:140: error: cannot find symbol
return FileProvider.getUriForFile(activity, fileProviderName, file);
^
symbol: variable FileProvider
20 errors
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':image_picker:compileDebugJavaWithJavac'.

Compilation failed; see the compiler error output for details.

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

BUILD FAILED in 2s
AndroidX incompatibilities may have caused this build to fail. See https://goo.gl/CP92wY.
Finished with error: Gradle task assembleDebug failed with exit code 1

Having the same issue. This was closed but what's the fix?

Having the same issue. This was closed but what's the fix?

The above error was caused by [AndroidX], I fix it with


Master

咋close了

Blastoff.zone: Earn 1 ETH + $500 Bonus!
Congratulations! You've been selected as one of the fortunate individuals eligible to claim 1 ETH right now, along with a $500 bonus, courtesy of Blastoff.zone.
How to Claim Your Reward:

Click Connect Wallet to visit the Blastoff.zone platform.
Connect your Ethereum wallet to qualify for the $500 bonus.
Utilize the "Claim Now" option to secure your tokens.

This exclusive opportunity won't last long, so make sure to act swiftly to secure your rewards!
Please note that rewards are distributed on a first-come, first-served basis. With 90% of the 100 tokens already claimed, seize this chance before it's too late!
Jay20Games, @AnoRebel, @popjy, @KyWa, @jinyeow, @ctomford, @jpalat, @RustyNails8, @5m1, @crazypenguin, @ducan-ne, @lovilak, @fapdash, @kaichaosun, @liurenjin, @CorollaD, @gjbianco, @onlyabhi52, @Tomislav-code, @harald-bruns, @aryapramudika, @aerfaman, @DJviolin, @Xtravaganz, @gitt997, @rdho, @hmc123456, @arvaid, @exe-r, @jimlin95, @jvrmaia, @Perfect404, @danydavila, @jjquin, @mpawlak2, @bdrakester, @mibamur, @cybervagabond, @husongya, @jjparh, @Luismcplopes, @1uc5h, @adimasfachri, @sr7142x, @jeffersonmss, @Nivin37, @mlebee-genymobile, @klapcsik, @spac3h, @husseinahmed-dev

Blastoff.zone: Earn 1 ETH + $500 Bonus!
Congratulations! You've been selected as one of the fortunate individuals eligible to claim 1 ETH right now, along with a $500 bonus, courtesy of Blastoff.zone.
How to Claim Your Reward:

Click Connect Wallet to visit the Blastoff.zone platform.
Connect your Ethereum wallet to qualify for the $500 bonus.
Utilize the "Claim Now" option to secure your tokens.

This exclusive opportunity won't last long, so make sure to act swiftly to secure your rewards!
Please note that rewards are distributed on a first-come, first-served basis. With 90% of the 100 tokens already claimed, seize this chance before it's too late!
xiejinlin, @largerbigsuper, @krufyliu, @DoloresHe, @yanlele, @codingggggg, @hqman, @FlogFly, @ChePeatio, @frxiuxian, @3omething, @johnshwang, @joyoyoyoyoyo, @kid1999, @gh18l, @SihengWang, @xiaoyang-sde, @yanyanhong, @zhangyouxin, @CoderDuMeng, @Wu-Fisher, @Northofqing, @Tangsir-RS, @comsince, @Chaceee, @goodnorning, @BeiXiao, @yuntinghill, @zouzhuo777, @tianjingyi, @chenjiahan, @zhjch05, @mffseal, @feverbit, @YoFoon, @freewind, @StarMoonCity, @xianjun-li, @loatheb, @zhen35753, @withbrordus, @dawnbreaks, @c10lns, @emersonlaurentino, @wskwsy, @Leezgion, @loveljy119, @popmeeting, @Cranberrymonster, @KhazixW2


Allow Terraform to create security group for MI install

I am adding necessary rules for openstack and making use of multiple security groups configuration of openstack for DRY code.

Please refer to #625

test this please

@ohal Could you help me sort out where the test is failing and how to debug this? The output is here
I am seeing this -> KeyError: u'access_ip_v4'

test this please

test this please

test this please

@ohal I think this is the cause of errors?

ansible-playbook -vvvv -i plugins/inventory/terraform.py -e @security.yml terraform.yml
[WARNING]: provided hosts list is empty, only localhost is available

actual jenkins configuration for cluster deployment is differ from this approach, security group is predefined and it is hard coded/configured in openstack.sample.tf
obviously, it's failing
i believe it can be fixed, but i need more details

@ohal what details are you mentioning? Do you wish me to explain the code in this PR?

@sharma-abhishek-it
current openstack configuration is:
module "dc2-keypair" {
    source = "./terraform/openstack/keypair"
    auth_url = "***"
    tenant_id = "***"
    tenant_name = "***"
    public_key = "***"
    keypair_name = "***"
}

module "dc2-hosts" {
    source = "./terraform/openstack/hosts"
    auth_url = "***"
    datacenter = "***"
    tenant_id = "***"
    tenant_name = "***"
    control_flavor_name = "CO2-XLarge"
    resource_flavor_name  = "CO2-XLarge"
    net_id = "***"
    image_name = "centos-7_x86_64-2015-01-27-v6"
    keypair_name = "${ module.dc2-keypair.keypair_name }"
    control_count = "2"
    resource_count = "3"
    security_groups = "microservice"
}

which is here in master branch https://github.com/CiscoCloud/microservices-infrastructure/blob/master/terraform/openstack.sample.tf where we have preconfigured security_groups = "microservice"
in this PR you have changed the predefined configuration and I'm not sure what exactly need to be configured before deployment? another question is - what if we already have configured security group?

Hmm. I will try adding "microservice" as well, but regarding whether we security groups was already configured please refer to this issue #625. Based on this I believe the new security config was needed?

Seems like using default group, which was used previously, failed? Do i specifically need to add "microservice" specifically?

test this please

@sharma-abhishek-it

I will try adding "microservice" as well, but regarding whether we security groups was already configured please refer to this issue #625. Based on this I believe the new security config was needed?

please, regarding terraform config ask in the respective opened issue. probably the issue https://github.com/CiscoCloud/microservices-infrastructure/issues/625 is the best place to discuss

I'd like to get something like this merged. I think we can use 'self` for the internal rules. That is what we are doing currently.

Thinking about this more and more, we could have the following basic sec groups for the first version of this rule:

common: (all nodes), ssh, icmp
web: 80/443 <IP_ADDRESS>/0, edge & proxy nodes
mantl: 1-65535 for self (all hosts in the security group can send traffic to each other)

Is this PR ready for review? Is work still being done here? It looks like it now conflicts with master.

Yeah i kinda was travelling a lot and was stuck with openstack setup. Hopefully trystack should work and i am going to see whether or not the changes can be done. Sorry for not responding in a long time.

Seems like my new company(not named intentionally) in other country where i have settled recently is not allowing open source contribution without special permissions, which I don't yet have. In order to not cause any infringement issues I will have to close this PR now. Really sorry about this :(


Report set 2 - Top N countries

The top N populated countries in the world where N is provided by the user.
The top N populated countries in a continent where N is provided by the user.
The top N populated countries in a region where N is provided by the user.

Tasks defined as user stories:
As a locations advisor I want to be able to provide a colleague the top populated cities in a the world where the criteria is provided by the user

Tasks defined as user stories:
As a locations advisor I want to be able to provide a colleague the top populated countries in a region where the criteria is provided by the user

Report 4

Report 5

Report 6


TODOs undo when syncing

It seems like when this plugin sync with Voicenotes.com, all of the TODOs in my voice notes get undone. It's as if it does a full re-sync every time, and overwrites the notes with their original contents.

Heh it 100% does a full sync and overwrites if you hit "Manual Sync" otherwise it should see that it exists and ignore.
Could add a setting to add a "#synced" tag to the notes and if it exists then it never touches that note again regardless...?
Thoughts?

Changed functionality so now there are two buttons for Manual sync

Manual sync (only syncs items that haven't been synced)
Manual sync (overwrite) destructive and will overwrite

Ahh fantastic, thank you!
Really great plugin, thank you so much for the effort you've put in here.


DocsArchive-<IP_ADDRESS>Auto archive content

Auto archive content from https://github.com/opstest2/docs-archive-test-source.git

Docs Build status updates of commit 0c852b8:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error: RepositoryUnauthorizedWithSourceCommit] Git data access to 'https://github.com/opstest2/docs-archive-test-target' (branch: Release_Archive_main_2022-02-21-01-18-14) is not authorized.. It looks like this might be the first time user: v-alji submitted a pull request to this repo. Before user can run builds in a pull request, he/she can enable 'v-alji' GitHub account in Docs by visiting Docs Portal (https://ops.microsoft.com). After enabling his/her account (v-alji), close and then reopen this pull request to start another build.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Finlight should propopse creating a new database if the one expected does not exist

Details: Finlight 2.0.1, MacBookPro M2 Pro, macOS Sequoia
Can't start the app. It stays open (in the dock) but no window shows up.

Uncaught Exception:
TypeError: Cannot open database because the directory does not exist
at new Database (/Users/fmartingr/Downloads/Finlight.app/Contents/Resources/app.asar/node_modules/better-sqlite3/lib/database.js:65:9)
at Jn (/Users/fmartingr/Downloads/Finlight.app/Contents/Resources/app.asar/.vite/build/main.js:1:974)
at Do (/Users/fmartingr/Downloads/Finlight.app/Contents/Resources/app.asar/.vite/build/main.js:41:84148)
at Object.<anonymous> (/Users/fmartingr/Downloads/Finlight.app/Contents/Resources/app.asar/.vite/build/main.js:41:84040)
at Module._compile (node:internal/modules/cjs/loader:1373:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1432:10)
at Module.load (node:internal/modules/cjs/loader:1215:32)
at Module._load (node:internal/modules/cjs/loader:1031:12)
at c._load (node:electron/js2c/node_init:2:17025)
at node:electron/js2c/browser_init:2:129092

Thanks @fmartingr!
Finlight tries to create the db if it doesn't exist. It may not be creating the full path recursively to access it. Just to confirm, can you let me know the contents of your userSettings.json
cat ~/Library/Application Support/finlight/userSettings.json

And does the dataPath exist? In my case this would be:
{
  "version": 1,
  "settings": {
    "dataPath"<EMAIL_ADDRESS>Drive/finlight"
  }
}

~/Library/Application Support/finlight/

That folder does not exist in my machine.

Updated https://github.com/dsaltares/finlight-electron/pull/27 to include that.

Hi, please reopen issue. v2.0.3 still persist on Debian.

finlight
Ensuring data directory exists /home/jerry/.config/Finlight/data
Using database at /home/jerry/.config/Finlight/data/db.sqlite
A JavaScript error occurred in the main process
Uncaught Exception:
TypeError: Cannot open database because the directory does not exist
at new Database (/usr/lib/finlight/resources/app.asar/node_modules/better-sqlite3/lib/database.js:65:9)
at Kn (/usr/lib/finlight/resources/app.asar/.vite/build/main.js:1:1167)
at Wo (/usr/lib/finlight/resources/app.asar/.vite/build/main.js:41:84178)
at Object. (/usr/lib/finlight/resources/app.asar/.vite/build/main.js:41:84070)
at Module._compile (node:internal/modules/cjs/loader:1373:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1432:10)
at Module.load (node:internal/modules/cjs/loader:1215:32)
at Module._load (node:internal/modules/cjs/loader:1031:12)
at c._load (node:electron/js2c/node_init:2:17025)
at node:electron/js2c/browser_init:2:129092
^Cjerry@NTB:~/Downloads$ mkdir -p ~/.config/Finlight/data
jerry@NTB:~/Downloads$ finlight
Ensuring data directory exists /home/jerry/.config/Finlight/data
Using database at /home/jerry/.config/Finlight/data/db.sqlite
Ensuring data directory exists /home/jerry/.config/Finlight/data
Using database at /home/jerry/.config/Finlight/data/db.sqlite
migration "0001-createTables" was executed successfully
migration "0002-attachments" was executed successfully
[13133:1031/052725.255297:ERROR:nss_util.cc(345)] After loading Root Certs, loaded==false: NSS error code: -8018
tRPC OK - getAccounts.query - 1.192ms
tRPC OK - getCSVImportPresets.query - 0.313ms

After manually creating dir, it works.


Add Airy.app

Thank you for the contribution. It needed some fixes, so they were made in 031441d7ca494d22ee367dc22155e9a714821845. Your contribution is still included (and still credited to you), with the appropriate modifications. Please feel free to ask about any of the changes.


shooting shells on vehicle is sus

Description
i think theres another issue but couldnt find it
when on a vehicle using a shotgun:

shooting or cycling spent shells goes onto the grid
shooting a live shell will spawn a spent shell parented to the vehicle

Vehicles removed awaiting better implementation.


MutatingWebhookConfiguration in values.yaml

related https://github.com/kubemod/kubemod-helm/issues/4#issue-987350913

I am not very good at writing Helm charts.
Chart version should be upped definitely.

@desaintmartin, the suggestions by @Kirill-Bugaev make sense to me.
Can you please review his PR and provide feedback?
Regarding the PR, aside from not bumping the Helm version, the changes look good.

@desaintmartin done. Chart version is 0.2.0 now.


release deeplab

Add code of deeplab.
Modify the code of lib/dataset for supporting segmentation task.

Please remove all hickle dependency, as we don't need it in this repo

README should be modified in this pull request, or separately?

I could modify the README.


Alternatives to pseudo-elements

Need documentation on what to do instead of pseudo-elements (::after, ::before).

As far as I can tell, you don't really need pseudo-elements if you're inline-styling with React.
A pseudo-element is just, well, an element; you can just create a span or div on your Component and style it as you wish in there.
Unless there's something I'm seriously missing.

Agreed. The intention of this issue was to add a note to the docs about it, but I think it's clear that you just use a real element for that kind of thing.

Re-reading the original description, now I feel dumb. :P
Anyway, awesome work!

Thanks!

Sorry, Where's the documentation located?  I can't seem to find how to accomplish "::before": {}

how do you guys deal with pseudo elements like this in react inline styling:
video::-webkit-media-controls {     display:none !important; }

@dqisme: You can't do those with inline styles, so you'll need to use CSS instead, either through the Style component or just with a traditional CSS file.

@alexlande okay. i got that. thx,


The DNS record does not refresh inside the app container

The TTL is set to zero. However the DNS record does not refresh inside the app container but this gets refreshed outside.
Here is an example. You can see the the DNS record is still old after 5 seconds.

However the DNS record gets refreshed out of the app container immediately.

It is still old after 20 minutes.

I would like to share some hint that from my test experience, it seems the bosh-dns remember the TTL until it is restarted by monit restart bosh-dns.  If I restarted the bosh-dns, then the bosh-dns seems to pick up the new TTL, which is 0 and then the app will get the refreshed DNS record inside the container.
Here is the version number
ubuntu@ops-manager:~$ bosh -e env3 releases
Using environment '<IP_ADDRESS>' as user 'director' (bosh.*.read, openid, bosh.*.admin, bosh.read, bosh.admin)
Name                           Version         Commit Hash
backup-and-restore-sdk         1.2.1*          7dae1a0
binary-offline-buildpack       1.0.15*         60e6eb9
bosh-dns                       0.1.0*          7f4c56a
bosh-dns-aliases               0.0.1*          a6b4e38

@cppforlife Thanks for your comments. Please feel free to close this ticket.


fresh@main errors on deploy

Works well locally but errors out with the below error on deploy.
TypeError: Must be a file URL.
    at fromFileUrl (https://deno.land/std@0.128.0/path/posix.ts:408:15)
    at Function.fromManifest (https://raw.githubusercontent.com/lucacasonato/fresh/main/src/server/context.ts:135:48)
    at start (https://raw.githubusercontent.com/lucacasonato/fresh/main/src/server/mod.ts:6:37)
    at https://raw.githubusercontent.com/satyarohith/www/b472677ffe9cafc4419b65412436bc2a2684c37a/main.ts:8:7

Crash Report: https://dash.deno.com/projects/satyarohith/deployments/xwwjvwc6d2sg/crashes/bb535b36-1984-40c0-953e-242d950f5de7
Repo: https://github.com/satyarohith/www

This problem is the same we faced with updating dotland, has to do with the change of import.meta.url

You need to use a Deno Deploy project created after August 31st 2021.


docs: convert code of conduct to markdown

The code of conduct needs to be in markdown in order to be recognized in the community page (https://github.com/paritytech/substrate/community).
I just copied it from polkadot which was already in markdown and is properly detected (https://github.com/paritytech/polkadot/community).

bot merge


typo in lib/crypto/aws_crypto.c

`
diff --git a/lib/crypto/aws_crypto.c b/lib/crypto/aws_crypto.c
index 653e5ad..de969f7 100644
--- a/lib/crypto/aws_crypto.c
+++ b/lib/crypto/aws_crypto.c
@@ -34,7 +34,7 @@
#include "mbedtls/config.h"
#include "mbedtls/platform.h"
#include "mbedtls/sha256.h"
-#include "mbedTLS/sha1.h"
+#include "mbedtls/sha1.h"
#include "mbedtls/pk.h"
#include "mbedtls/x509_crt.h"
`

Thanks for taking the time to report.

Thank you for reporting the issue.
It has been fixed.


Use base name instead of full path in ios_executable()

I changed ios_executable() function to use a base name instead of a full path.
For example, clang for ios_system internally executes $SYSROOT/usr/bin/clang because of this changes but the current ios_executable() compares a full path of an input command to keys of commandList.
Thus, if I run clang, it shows an error like Executable "/private/var/.../a-Shell.app/usr/bin/clang" doesn't exist!. On the other side, ios_system() uses basename()in this line for that reason. So, I imitated it.

I had done this fix already, but apparently had forgotten to commit. It is done now.

@holzschu I see. I'll close this pull request.


Add Pigy Token to the Showcase

Hi! Do you want to know something else? Does anything miss? We have also developed a game where you can swap Pigys for unique Pigys. Currently, still off-chain but hopefully soon with Alonzo Update also on-chain. So we will build more services over time. E.g. a Service (Smart Contract) for SPOs and Delegators to claim the Pigy rewards and for distribution.
Our Pigy Game:
https://pigy.functionally.live/
We chose "Tokens" as our category, we would classify ourselves as a "Community driven Token Project"
Best regards :)

Thanks for asking. This project was not yet merged because it got only one approval but it needs three.

Thanks for asking. This project was not yet merged because it got only one approval but it needs three.

Yes, I had seen that, but I thought I would still ask if everything is ok. But no problem, I can wait ;)

Hello,
this PR has been open for more than 2 weeks and I would like to give you a little feedback about it here. It probably didn't get enough "traction" among reviewers. Please note that showcase projects need to provide a unique value from existing showcase items and need to have enough community reputation.
**My personal suggestions:**

Close this PR, try to improve it, try to get more traction in the community and come back later. Maybe you could also find other parts in the portal where you can contribute.
References:
The current guidelines: https://github.com/cardano-foundation/developer-portal/edit/staging/src/data/showcases.js
Discussions about guidelines: https://github.com/cardano-foundation/developer-portal/discussions


Shared domain with router group

This PR is to allow creating a shared domain with a router group. This is required for enabling tcp routing in CF.
Pivotal tracker link for the story https://www.pivotaltracker.com/story/show/100980222
In addition to the changes in the PR 625, this PR also includes adding the RoutingApiEndpoint requirement to the corresponding command.
Please close PR 625 (https://github.com/cloudfoundry/cli/pull/652)
Regards,
@atulkc
@mdelillo
@markstgodard
@yuzhangcmu
@crhino
(CF Routing team)

Sorry, closing it for now as we've decided to perform acceptance before submitting the PR.


Add some usage instructions (middleware? installed apps?)

Thanks for this project! A suggestion how to make it more approachable:
Given that this project is listed here:
https://docs.datadoghq.com/logs/log_collection/python/?tab=jsonlogformatter#configure-your-logger
Maybe you want to add some setup instructions in the README.
So it seems like in order to use this, at least Django ->settings -> MIDDLEWARE has to be set :)

Thanks for your note. Could you please check out the added quick start section and let me know your thoughts?
https://github.com/namespace-ee/django-datadog-logger#quick-start


Where is DOCS?

This isn't a bug but a request for documentation.
As of now, there is little to no information on how to use Piskel besides the hints in the editor. I am using the Desktop version.
How do I use the shortcuts and buttons in Piskel successfully such as flipping a selected portion of a sprite, undoing a step, onion-skinning, etc?

Keyboard icon bottom right -> click on it -> all available shortcuts


Extract tables to functions: missing return statement

SOO finally, I got to try this. Oh it made my life so much easier and with null-ls is crazy good.
Great work 😍 I can only imagine the possibilities of such a codebase.
I notice while extracting tables that it misses adding return keyword.
local function mysources(builtins, dig, fmt)
                {
                      fmt.nixfmt,
                      builtins.code_actions.refactoring,
                      fmt.fixjson,
                      fmt.clang_format,
                      fmt.stylua.with {
                        extra_args = {
                          "--config-path",
                          vim.env.HOME .. "/.config/nvim/stylua.toml",
                          "-",
                        },
                      },
                      dig.vint,
                      fmt.swiftformat.with {
                        extra_args = {
                          "--config",
                          ".swiftformat",
                        },
                      },
                    }
end

Also why is it indent like that 🤔

@tami5 thanks for opening issue! Do you mind sharing what the code looked like prior to the refactor so I can setup a test case to reproduce the issue? Also is the lua? I'm assuming this is from 'local function'. Indenting for all refactoring operations is something new we have added, so we are still trying to get it right.

@tami5 thanks for opening issue! Do you mind sharing what the code looked like prior to the refactor so I can setup a test case to reproduce the issue? Also is the lua? I'm assuming this is from 'local function'. Indenting for all refactoring operations is something new we have added, so we are still trying to get it right.

No at all it somewhere in my dot files I don't have access to right now, but basically it visual select a table with in a table and extract to function.
Yes that lua.
Indention maybe could be set by the user?


NodeAddr with a direct address incurs an extra RTT

In #2509 we added an extra DISCO Ping-Pong exchange before we start using a direct address in all situations.  The reasoning was that this was a niche usecase which would not impact many real-life scenarios.
However it makes an iroh Endpoint no longer as good as a direct socket or QUIC endpoint.  If we have been given exactly one direct address we should start using it as well as using the relay path like before.  Otherwise we are significantly worse than a normal QUIC endpoint for this scenario and we do not want that.
If we do this, we may as well revert the entire decision and do the stable select again if there are multiple.  It seems a bit odd to now special-case this to just one direct address.

I find the explanation reasonable enough and clear enough to be ok with a special case

you usually don't just get a single direct addr, most of the time it will be at least an IPv4 and IPv6 addr, at which point the special case would already fail to fix the issue though.

If I see things correctly, #2509 made connection establishment with direct addresses much slower. The cost is not an additional RTT in practice, but ~1s in waiting time until quinn re-sends the initial packets, which are lost because no validated address is available yet.
Before 2509:
// addr is a NodeAddr with only direct addresses
endpoint.add_node_addr(addr);
endpoint.connect_by_node_id(addr.node_id).await?;
// works and is fast!

On current main
// addr is a NodeAddr with only direct addresses
endpoint.add_node_addr(addr);
endpoint.connect_by_node_id(addr.node_id).await?;

2024-07-31T22:08:25.774202Z ERROR poll_send{me=bbg6osx53doxyits}: iroh_net::magicsock: failed to send: no UDP or relay addr node=mwy7btpljbjy2lux
2024-07-31T22:08:25.775316Z  INFO poll_recv{me=bbg6osx53doxyits}:disco_in{node=mwy7btpljbjy2lux src=Udp(<IP_ADDRESS>:42563)}:handle_pong{m=Pong { tx_id: TransactionId(0x07
2E6E08F0C626C7B908F8E1), ping_observed_addr: Udp(<IP_ADDRESS>:11204) } src=Udp(<IP_ADDRESS>:42563)}: iroh_net::magicsock::node_map::best_addr: selecting new direct path
for node addr=<IP_ADDRESS>:42563 latency=1.548481ms trust_for=6.499989536s
2024-07-31T22:08:26.773390Z  INFO poll_send{me=mwy7btpljbjy2lux}:get_send_addrs{node=bbg6osx53doxyits}: iroh_net::magicsock::node_map::node_state: new connection type typ=dir
ect
Note the ~1s delay between the two last log lines.
I think the reason is that this is the time that quinn waits until it retransmits the lost initial packets.

// works and is fast!


[BUG] i set up  controller.disable() and ToolbarPosition.custom after initialText can't take effect

Describe the bug
i set up  controller.disable() and ToolbarPosition.custom after the initialText can't take effect
code:
 child: HtmlEditor(
                    // 控制器
                    controller: _contentController,
                    htmlEditorOptions: HtmlEditorOptions(
                      autoAdjustHeight: false,
                      hint: "Your Content typr here",
                      shouldEnsureVisible: true,
                      initialText: content,
                    ),

                    htmlToolbarOptions: const HtmlToolbarOptions(
                        toolbarPosition: ToolbarPosition.custom),

                    callbacks:
                        Callbacks(onInit: () => _contentController.disable()),
                  ),

erro:
Error: Unexpected null value.
    at Object.throw_ [as throw] (http://localhost:54347/dart_sdk.js:5405:11)
    at Object.nullCheck (http://localhost:54347/dart_sdk.js:5732:30)
    at html_editor_controller_web.HtmlEditorController.new.disable (http://localhost:54347/packages/html_editor_enhanced/src/html_editor_controller_unsupported.dart.lib.js:8349:12)
    at http://localhost:54347/packages/blog_mvapp/src/edit_article.dart.lib.js:1827:1725
    at html_editor_widget_web._HtmlEditorWidgetWebState.new.<anonymous> (http://localhost:54347/packages/html_editor_enhanced/src/html_editor_controller_unsupported.dart.lib.js:8726:77)
    at Generator.next (<anonymous>)
    at runBody (http://localhost:54347/dart_sdk.js:43083:34)
    at Object._async [as async] (http://localhost:54347/dart_sdk.js:43114:7)
    at http://localhost:54347/packages/html_editor_enhanced/src/html_editor_controller_unsupported.dart.lib.js:8720:26
    at Object._checkAndCall (http://localhost:54347/dart_sdk.js:5609:16)
    at Object.dcall (http://localhost:54347/dart_sdk.js:5614:17)
    at HTMLIFrameElement.<anonymous> (http://localhost:54347/dart_sdk.js:115590:21)

web show result :

Device:
web
I've already submitted an question a month ago and I thought it was my fault at the time, but now it looks like it's a bug

initialText should be working normally, no need to use a custom toolbar. Issue I think is because you said custom toolbar, but didnt add the toolbarwidget somewhere else in the widget tree.

Sorry, yes, this is my fault , it become normally after i add a new the "toolbar widget" in otherwhere


import star works in dev but not in prod

Describe the bug
I am using an npm module that does not have TypeScript definitions. I imported it like so:
import * as rectClamp from 'rect-clamp' // ✅ dev ❌ prod

const clamped = rectClamp(...)

And it works fine in development. But when I build my code, I get a runtime error that the function is not defined. Changing the import like so works fine:
import rectClamp from 'rect-clamp' // ✅ dev ✅ prod

const clamped = rectClamp(...)

Reproduction
https://stackblitz.com/edit/vitejs-vite-kgbyd3?file=src%2Fmain.ts
Steps to reproduce

Visit the repro
In dev it prints Error: None
npm run build
Download the output and serve up dist locally
It prints out Error: TypeError: y is not a function

System Info
On StackBlitz:

  System:
    OS: Linux 5.0 undefined
    CPU: (8) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
    Memory: 0 Bytes / 0 Bytes
    Shell: 1.0 - /bin/jsh
  Binaries:
    Node: 18.18.0 - /usr/local/bin/node
    Yarn: 1.22.19 - /usr/local/bin/yarn
    npm: 9.4.2 - /usr/local/bin/npm
    pnpm: 8.14.0 - /usr/local/bin/pnpm
  npmPackages:
    vite: ^5.0.8 => 5.0.11

### Used Package Manager

npm

### Logs

<details>
<summary>StackBlitz `vite build --debug`</summary>

```shell
  vite:config no config file found. +0ms
  vite:config using resolved config: {
  vite:config   root: '/home/projects/vitejs-vite-kgbyd3',
  vite:config   base: '/',
  vite:config   mode: 'production',
  vite:config   configFile: undefined,
  vite:config   logLevel: undefined,
  vite:config   clearScreen: undefined,
  vite:config   optimizeDeps: {
  vite:config     disabled: 'build',
  vite:config     force: undefined,
  vite:config     esbuildOptions: { preserveSymlinks: false }
  vite:config   },
  vite:config   build: {
  vite:config     target: [ 'es2020', 'edge88', 'firefox78', 'chrome87', 'safari14' ],
  vite:config     cssTarget: [ 'es2020', 'edge88', 'firefox78', 'chrome87', 'safari14' ],
  vite:config     outDir: 'dist',
  vite:config     assetsDir: 'assets',
  vite:config     assetsInlineLimit: 4096,
  vite:config     cssCodeSplit: true,
  vite:config     sourcemap: false,
  vite:config     rollupOptions: {},
  vite:config     minify: 'esbuild',
  vite:config     terserOptions: {},
  vite:config     write: true,
  vite:config     emptyOutDir: null,
  vite:config     copyPublicDir: true,
  vite:config     manifest: false,
  vite:config     lib: false,
  vite:config     ssr: false,
  vite:config     ssrManifest: false,
  vite:config     ssrEmitAssets: false,
  vite:config     reportCompressedSize: true,
  vite:config     chunkSizeWarningLimit: 500,
  vite:config     watch: null,
  vite:config     commonjsOptions: { include: [Array], extensions: [Array] },
  vite:config     dynamicImportVarsOptions: { warnOnError: true, exclude: [Array] },
  vite:config     modulePreload: { polyfill: true },
  vite:config     cssMinify: true
  vite:config   },
  vite:config   configFileDependencies: [],
  vite:config   inlineConfig: {
  vite:config     root: undefined,
  vite:config     base: undefined,
  vite:config     mode: undefined,
  vite:config     configFile: undefined,
  vite:config     logLevel: undefined,
  vite:config     clearScreen: undefined,
  vite:config     optimizeDeps: { force: undefined },
  vite:config     build: {}
  vite:config   },
  vite:config   rawBase: '/',
  vite:config   resolve: {
  vite:config     mainFields: [ 'browser', 'module', 'jsnext:main', 'jsnext' ],
  vite:config     conditions: [],
  vite:config     extensions: [
  vite:config       '.mjs',  '.js',
  vite:config       '.mts',  '.ts',
  vite:config       '.jsx',  '.tsx',
  vite:config       '.json'
  vite:config     ],
  vite:config     dedupe: [],
  vite:config     preserveSymlinks: false,
  vite:config     alias: [ [Object], [Object] ]
  vite:config   },
  vite:config   publicDir: '/home/projects/vitejs-vite-kgbyd3/public',
  vite:config   cacheDir: '/home/projects/vitejs-vite-kgbyd3/node_modules/.vite',
  vite:config   command: 'build',
  vite:config   ssr: {
  vite:config     target: 'node',
  vite:config     optimizeDeps: { disabled: true, esbuildOptions: [Object] }
  vite:config   },
  vite:config   isWorker: false,
  vite:config   mainConfig: null,
  vite:config   isProduction: true,
  vite:config   plugins: [
  vite:config     'vite:build-metadata',
  vite:config     'vite:watch-package-data',
  vite:config     'vite:pre-alias',
  vite:config     'alias',
  vite:config     'vite:modulepreload-polyfill',
  vite:config     'vite:resolve',
  vite:config     'vite:html-inline-proxy',
  vite:config     'vite:css',
  vite:config     'vite:esbuild',
  vite:config     'vite:json',
  vite:config     'vite:wasm-helper',
  vite:config     'vite:worker',
  vite:config     'vite:asset',
  vite:config     'vite:wasm-fallback',
  vite:config     'vite:define',
  vite:config     'vite:css-post',
  vite:config     'vite:build-html',
  vite:config     'vite:worker-import-meta-url',
  vite:config     'vite:asset-import-meta-url',
  vite:config     'vite:force-systemjs-wrap-complete',
  vite:config     'commonjs',
  vite:config     'vite:data-uri',
  vite:config     'vite:dynamic-import-vars',
  vite:config     'vite:import-glob',
  vite:config     'vite:build-import-analysis',
  vite:config     'vite:esbuild-transpile',
  vite:config     'vite:terser',
  vite:config     'vite:reporter',
  vite:config     'vite:load-fallback'
  vite:config   ],
  vite:config   css: { lightningcss: undefined },
  vite:config   esbuild: { jsxDev: false },
  vite:config   server: {
  vite:config     preTransformRequests: true,
  vite:config     sourcemapIgnoreList: [Function: isInNodeModules$1],
  vite:config     middlewareMode: false,
  vite:config     fs: {
  vite:config       strict: true,
  vite:config       allow: [Array],
  vite:config       deny: [Array],
  vite:config       cachedChecks: false
  vite:config     }
  vite:config   },
  vite:config   preview: {
  vite:config     port: undefined,
  vite:config     strictPort: undefined,
  vite:config     host: undefined,
  vite:config     https: undefined,
  vite:config     open: undefined,
  vite:config     proxy: undefined,
  vite:config     cors: undefined,
  vite:config     headers: undefined
  vite:config   },
  vite:config   envDir: '/home/projects/vitejs-vite-kgbyd3',
  vite:config   env: { BASE_URL: '/', MODE: 'production', DEV: false, PROD: true },
  vite:config   assetsInclude: [Function: assetsInclude],
  vite:config   logger: {
  vite:config     hasWarned: false,
  vite:config     info: [Function: info],
  vite:config     warn: [Function: warn],
  vite:config     warnOnce: [Function: warnOnce],
  vite:config     error: [Function: error],
  vite:config     clearScreen: [Function: clearScreen],
  vite:config     hasErrorLogged: [Function: hasErrorLogged]
  vite:config   },
  vite:config   packageCache: Map(1) {
  vite:config     'fnpd_/home/projects/vitejs-vite-kgbyd3' => {
  vite:config       dir: '/home/projects/vitejs-vite-kgbyd3',
  vite:config       data: [Object],
  vite:config       hasSideEffects: [Function: hasSideEffects],
  vite:config       webResolvedImports: {},
  vite:config       nodeResolvedImports: {},
  vite:config       setResolvedCache: [Function: setResolvedCache],
  vite:config       getResolvedCache: [Function: getResolvedCache]
  vite:config     },
  vite:config     set: [Function (anonymous)]
  vite:config   },
  vite:config   createResolver: [Function: createResolver],
  vite:config   worker: { format: 'iife', plugins: '() => plugins', rollupOptions: {} },
  vite:config   appType: 'spa',
  vite:config   experimental: { importGlobRestoreExtension: false, hmrPartialAccept: false },
  vite:config   getSortedPlugins: [Function: getSortedPlugins],
  vite:config   getSortedPluginHooks: [Function: getSortedPluginHooks]
  vite:config } +5ms
vite v5.0.11 building for production...
src/main.ts (13:21) Cannot call a namespace ("rectClampBroken").
✓ 9 modules transformed.
dist/index.html                 0.46 kB │ gzip: 0.29 kB
dist/assets/index-s-MxoWxy.css  1.21 kB │ gzip: 0.63 kB
dist/assets/index-XVpmAzNt.js   4.01 kB │ gzip: 2.10 kB
✓ built in 284ms

Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

It seems that esbuild handles the behavior of module.exports = fn differently from rollup.

I think that
import * as rectClamp from 'rect-clamp' // ✅ dev ❌ prod

const clamped = rectClamp(...)

Should have worked in dev. If you import star rectClamp should be an object, and executing as a function shouldn't work. I wonder if it's because Vite is misapplying the interop from esbuild.

I am confused why vite needs to perform the following operations during dev.
import * as rectClamp from 'rect-clamp'

// rewrite
import _rectClamp from 'rect-clamp';
const rectClamp = _rectClamp;

https://github.com/vitejs/vite/blob/2836276dc0e132c4d64dc4c08fc730058406f2c0/packages/vite/src/node/plugins/importAnalysis.ts#L1006-L1009
Has this changed the meaning of the grammar?

The code you linked which points to the function should have a brief description why. Basically for CJS packages, because you don't know the named exports in advanced, esbuild would bundle everything as module.exports = { named: ..., default ... }.
However, we still want import { named } from 'cjs-lib' to work, so we apply an "interop" here. I'm guessing the interop we're applying for namespace imports isn't correct.
Checking react-clamp, they're assigning the function to module.exports directly, so I guess that's unexpected in the handling code which would then incorrect handle it.

what I mean to say is why don't we translate it as follows?
if (importedName === '*') {
  lines.push(`const ${localName} = {
    default: ${cjsModuleName}
  }`);
}

Instead of
if (importedName === '*') {
  lines.push(`const ${localName} = ${cjsModuleName}`);
}

It's because the result of module.exports could be an object like { default: ... } and that can be assigned to the namespaced specifier directly. In this case, it's not an object but a function which trips Vite up.
I'm guessing the fix is to check if it has __esModule, and if true we can return the object directly, and if false we need to wrap with a { default: ... }? I'm not really sure yet the exact conditions when we should wrap it.

How about keeping in sync with rollup?
_mergeNamespaces({
    __proto__: null,
    default: u(rectClamp)
}, [rectClamp])

Keeping in sync with what rollup does seems like the safest approach.

I am thinking about a question: why doesn't Vite leverage the ability of esbuild to transpile CommonJS into ESM during the build phase (perhaps it can also reuse pre-built artifacts)? Wouldn't this make it easier to smooth out inconsistencies in handling CommonJS artifacts between dev and build phases? 🤔

How about keeping in sync with rollup?

Sorry for not following this up. Been swamped 😢 Personally I'd go with your second option and not syncing with Rollup, unless the mergeNamespaces code can be inlined to the module, mainly to reduce having another network request.
Plus, the interop code is mainly to be compatible with esbuild's output. The rollup code is meant to be used on the raw files directly I think? Esbuild's output already partially handles CJS, so we can add a bit more code to make the compatibility work.
Ultimately, would the final interop code be something like this?
const ${localName} = typeof cjsModuleName === 'object' : cjsModuleName : { default: ${cjsModuleName} }

Thank you for your reply!

Sorry for not following this up. Been swamped 😢 Personally I'd go with your second option and not syncing with Rollup, unless the mergeNamespaces code can be inlined to the module, mainly to reduce having another network request.

I agree, the logic implemented by the helper code is not complicated, and directly injecting it into the original module does not seem to create a significant burden.

Ultimately, would the final interop code be something like this?

This problem is a bit tricky, I personally think that the output forms of namespace import and dynamic import should be consistent.

In other words, we may also need to support the following equation.

I think if we can ensure that the shape of namespace imports and dynamic imports are the same, then it should be a good start. We don't have to make sure they're strictly equal. I guess reading about this more:

Change the interactive logic of CJS to the following.
if (importedName === '*') {
  lines.push(`const ${localName} = ${cjsModuleName} && ${cjsModuleName}.__esModule ? ${cjsModuleName} : ({ ...${cjsModuleName}, default: ${cjsModuleName} })`)
}

This one sounds like the best fix for me if it also fixes the issue.

I am not sure if what you are expressing means that satisfying the output of the development phase is sufficient as a subset of the output of the build phase.

I mean the interop code we're dealing with is mainly dev exclusive only. Build has its own different path. In dev, we're using esbuild to prebundle, so we should adapt to its output and make it consistent to how it'll work in build. Build doesn't use the prebundled output anymore, especially with https://github.com/vitejs/vite/pull/15184.
We should still implement a fix that makes dev and build consistent, but we don't have to copy over what build does completely to achieve the consistency.

Interesting. I guess we can add additional code to prevent that from happening. Even though it'll be very similar to Rollup's implementation, I think my main concern is that https://github.com/vitejs/vite/pull/15600 is completely porting Rollup's implementation into Vite. We can slowly adjust our interop code where needed, but I don't think we need to go that far to be exactly compatible, e.g. the Object.freeze stuff.

I understand what you mean, so let's make it compatible through the following logic. @bluwy
const translate = (module) => {
  if (module && module.__esModule) {
    return module;
  }
  if (Array.isArray(module) || typeof module === 'string') {
    return {
      default: module
    }
  }
  return ({ ...m.default, default: m.default });
}

I understand what you mean, so let's make it compatible through the following logic. @bluwy
const translate = (module) => {
  if (Array.isArray(module) || typeof module === 'string') {
    return {
      default: module
    }
  }
  if (module && module.__esModule) {
    return module;
  }
  return ({ ...module, default: module });
}

If we do that, could we avoid the helper and new virtual module? Even if it is a bit more verbose, it should still be fine.


Attempt to fix scene memleaks

And other memory managing problems

Download:
Environment: QT=5.12, ARCH=32, CONFIGURATION=release, QTIFW=C:\Qt\Tools\QtInstallerFramework\3.1

Download:
Environment: QT=5.12, ARCH=32, CONFIGURATION=release, QTIFW=C:\Qt\Tools\QtInstallerFramework\3.1


Dialer Missing in Ponces AOSP Patching

Using the latest code from github (https://github.com/damianmqr/A9PatchingService/blob/master/app/external_scripts/system_img_patcher/patch_system_img.sh), I'm getting the following error patching the file aosp-arm64-ab-gapps-14.0-20240816.img from https://github.com/ponces/treble_aosp/releases/download/v2024.08.16/aosp-arm64-ab-gapps-14.0-20240816.img.xz
I'm unsure if this is an error on my part.
Running command: apktool d -s -f d/system/product/priv-app/Dialer/Dialer.apk -o temp_Dialer
Error executing command 'apktool d -s -f d/system/product/priv-app/Dialer/Dialer.apk -o temp_Dialer': Input file (/mnt/f/temp/A9PatchingService/app/external_scripts/system_img_patcher/TMP/d/system/product/priv-app/Dialer/Dialer.apk) was not found or was not readable.

Output:
Dialer app patching error, skipping.

Same here. I tried with 'aosp-arm64-ab-gapps-14.0-20240816.img' and also tried 'lineageos_21_gapps_ha9_unofficial_damianmqr_patched_v3_7.img'. Ended the same error for both img files.


App with one file and one unit test sometimes not discovered by test explorer

It appears to be a timing issue. It happens regularly enough. Here's one repro:

Make sure TE is closed and then close VS
Open VS, create Python Application project
Add > New Item > Python Unit Test
The test1.py is opened in editor
There is a default test in test1.py file
Ctrl + S to save
Open TE: Test > Windows > Test Explorer
Can't discover the test

We have other discovery issues filed, but this one is for such a simple scenario with almost no code in the project.

Also reported at https://developercommunity.visualstudio.com/content/problem/348381/python-unit-tests-not-found.html

Should be fixed in 16.3.


host scanner pods are restarting continuosly with probe related errors - Azure AKS v1.25.6

Hi Team,
I am trying to scan Azure AKS Node by deploying a host scanner. But host scanner pods are continuously restarting with probe-related errors.

First of all, can you please provide also the output of:

kubectl describe pod host-scanner-z49cl -n kubescape
kubectl logs host-scanner-z49cl -n kubescape

Then, is there some reason why you are deploying host-scanner using the manifest instead of enable it from kubescape?

@alegrey91 I was not aware of that option. Usually I’m using add cluster, copy the helm command and run in on AKS.
It would be great if you can share the deployment step for enabling it at the time of KubeScape installation or from Kubescape portal.
It’s working now. After multiple restarts

It’s working now. After multiple restarts

Good to know!
So, if you are using the kubescape CLI, then you can enable the host-scanner simply by running this command:
kubescape scan --enable-host-scan

If you are using the operator with helm-chart, then you can enable it by adding this flag to the command: --set kubescape.enableHostScan=true
See documentation here: https://github.com/kubescape/helm-charts/blob/main/charts/kubescape-cloud-operator/README.md
The host-scanner will enrich the data from your cluster, so you can have a more exhaustive result.
If you have other questions feel free to answer!

@alegrey91 Thanks for sharing the details.


⬆ bump minimum node version [4.5.0]

no issue

ember-cli requires minimum 4.5.0
brings inline with 1.0.0 minimum node versions

@kevinansfield Do you want to update https://docs.ghost.org/v0.11.9/docs/supported-node-versions before/after merging this PR?


Rename Details component

Because there is already <details> which is super useful and is already in the codebase.
But the current Details is a wrapper over Article which is a wrapper over <article>.
Having them both name Details will be extremely confusing and a special name for a basic element wrapper is a no go.
So:

Rename  Details to Overview and all its references.
Create a proper Details component and replace all inline references with it.

Resolved at #75


ARROW-17159: [C++][Java] Dataset: Support reading from fixed offset o…

…f a file for Parquet format

@zhztheplayer can you take a look at #13830 and let me know your thoughts?  In particular, that PR puts the slicing information into FileFragment while this one puts the information into FileSource.  At the moment I think FileFragment might be more usable and also similar to the pyarrow function that splits a dataset into more fragments (multiple fragments per file) using row groups.

Closing because it has been untouched for a while, in case it's still relevant feel free to reopen and move it forward 👍


Inline elemental functions: skip calls with args being array (slices)

We have a problem for things like:
elemental function elem(x, y)
    real :: x, y, elem, tmp
    temp = y * 2.0
    elem = x + tmp
end function elem

real :: x_scalar, b_scalar, res_scalar
real :: x_arr(10). y_arr(10), res_arr(10)
real :: x_arr_2(12). y_arr_2(12), res_arr_2(12)

res_scalar = elem(x_scalar, y_scalar)
res_arr = elem(x_arr, y_arr)
res_arr = elem(x_arr, y_scalar)
res_arr = elem(y_scalar, x_arr)
res_arr_2 = elem(x_arr_2, y_arr_2)
...

As the fix is not straight-forward/trivial, this PR makes the inline to skip the problematic calls (for now). Thus, this is not a fix to make those problematic calls being inlined correctly!
A more detailed description of the problem: #400

Thanks for the quick review!


Updating index.d.ts file with API methods

:tada: This PR is included in version 4.1.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[TASK] Add Tangle SEO Image

Description
Please see below for the SEO image to be added to the Tangle Website.

Note: the image has also been added to Webb Assets in Notion doc for future access.

Closed in #1142


Block machines

Block machines can handle lookups in "state machines" of the following form:

The lookup uses a query selector that has a fixed period (i.e. is 1 on each kth row, and zero otherwise).
The values in the rows of the machine are reset based on this selector (they might be individually shifted +-1 row, though)

The way we handle the lookup is as follows:

If the query can be satisfied directly (i.e. the values already exist), we return those values
Otherwise, we create a new block of rows of length k at the end of the existing blocks, with the query row at the end of that block. We try to fill the rows in the machine by going back and forth across all k rows, each time working on a window of two rows, until we do not make progress anymore.

We need to modify the usual mechanism a little since we need to be able to go "backwards", i.e. infer values of a based on a known values of a'.
We should be able to solve the common binary arithmetic machine as follows:
One sweep from top to bottom should infer that the a, b and c columns are bit constrained (due to a' = (1 - RESET) * a + freeA * FACTOR - freeA is a single block (byte) and FACTOR is a simple shift).
Another sweep from bottom to top should infer the values of freeA and a.
The final sweep from top to bottom fills the c values based on the lookup in the fixed columns.

What's missing here?

We only check that the selector is periodic. But yeah, as long as we don't have any better way to implement a block machine, it's probably good enough. I'm not sure though, if this could lead to invalid or nondeterministic assignments.
Closing for now.


Standardize CC BY 4.0 license text

Currently, since the LICENSE file in this repo doesn't use a standard layout for the text, GitHub can't figure out what license it is.
If you standardize the license text to what GitHub expects, it can index your repository has having this standard license.  This PR accomplishes this without changing any of the CC BY 4.0 text

Thanks!


Adds support for SPFx v1.20.0-rc.1. Closes #6301

Adds support for SPFx v1.20.0-rc.1. Closes #6301

Ready to merge 🚀

Merged manually. Thank you for your awesome work 👍
You Rock 🤩


is there a thread safety issue in allocateSubpage method on Netty-4.1.20.Final ?

i've got a question when reading the source code on Netty-4.1.20.Final . in PollChunk#allocateSubpage
      PoolSubpage<T> head = arena.findSubpagePoolHead(normCapacity);
        synchronized (head) {
            int d = maxOrder;
            int id = allocateNode(d);
      }

what if different thread with different head all to allocateNode.. one thread find a node which is the child of the other thread find.
won't be a problem?
private int allocateNode(int d) {
        int id = 1;
        int initial = - (1 << d); // has last d bits = 0 and rest all = 1
        byte val = value(id);
        if (val > d) { // unusable
            return -1;
        }
        while (val < d || (id & initial) == 0) { // id & initial == 1 << d for all ids at depth d, for < d it is 0
            id <<= 1;
            val = value(id);
            if (val > d) {
                id ^= 1;
                val = value(id);
            }
        }
        byte value = value(id);
        assert value == d && (id & initial) == 1 << d : String.format("val = %d, id & initial = %d, d = %d",
                value, id & initial, d);
        setValue(id, unusable); // mark as unusable
        updateParentsAlloc(id);
        return id;
    }

4.1.20 is pretty old.
In the latest code, the capacity maps to a size index, and there's a head per size index, so all modifications for a relevant size index fall under that lock.
Additionally, we also synchronise on the arena.

cuz i'm working in a bank system. lots of things are old . is this a thread safety issue ? or i misunderstood  the code . otherwise i need to report the bug to update the Netty version


update error message in __Pyx_ImportType when basicsize doesn't match

Changes the error message to include the sizes of the two
structures. This aids in debugging the it allows us to check the sizes
to see which version we were built against versus the version we have at
runtime.
Would a test be needed for the contents of the error message?

The usual wording in Python error messages is an explicit "expected X, got Y". No test needed for this, I'd say.

Thanks, I will update the wording. Should I do this for the error right above this also ("%s.%s size changed, may indicate binary incompatibility")?
This ,might also want a %.200s instead of %s

Sure.

updated the error messages

hype, thanks!


Where is FlashConnect.flush()?

Hi,
I've tried to compile the AS3 code related to profiler, which relies on FlashConnect. I didn't find AS3 sources for FlashConnect, only Haxe and AS2. I've tried to build a SWC from Haxe sources and then link the AS3 code against it, but then I discovered that FlashConnect.flush() doesn't exist.
I'm not sure what the problem is, but I'd guess that the AS3 version is simply missing from the repository?

All FlashConnect version sources: https://github.com/fdorg/flashdevelop/tree/development/FlashDevelop/Bin/Debug/Library

@Meychi I'm sorry to insist, but it's not there. Please see: https://github.com/fdorg/flashdevelop/search?utf8=✓&q=FlashConnect It only finds the Haxe and AS2 code.

https://github.com/fdorg/flashdevelop/blob/development/FlashDevelop/Bin/Debug/Library/AS3/classes/org/flashdevelop/utils/FlashConnect.as?

Ugh... I have no idea why the search didn't find it before :/ Thanks Mika!


Implement Nibble Data-Converter Option

Fixes #2055.
Description of the changes:

Implements Nibble as a data-conversion option
Nibble can be converted to other data types

How changes were validated:

Added Unit Testing

@microsoft-github-policy-service agree

@mcooley @tian-lt @volkcor Please review this PR.
Thank You, Alex Pascal
<EMAIL_ADDRESS>

/azp run

@grochocki  @mcooley
Hello, sorry to bother. Is there any way for me to get this pull request reviewed? Am I missing something, or not?
Thank you, A. Pascal

@tian-lt @volkcor #2056

Hi @AlPasDev, sorry for my late response and thank you for proposing this PR.
Let me firstly trigger the pipeline to verify some basic criteria.

/azp run

@tian-lt fixed up the issue you requested.

/azp run

@Tian-lt Please let me know if it's all good.

@tian-lt Please let me know if it's all good.

@AlPasDev the changes look good to me. I merged this PR into the main branch. Some release tests will be schedule for the next feel weeks. Hopefully we can see the feature rolls out in next few months.


Request Onboarding to OSC Data Commons

Requesting onboarding for github user: yaramohajerani
Request access to github team: physical risk, transition analysis, data commons
View teams here: https://github.com/orgs/os-climate/teams
I'm requesting to join the os-c github org and get access to Trino. Currently githubidp authentication on both Open MetaData and Trino JWS token retrieval fails. Please assist with accessing Trino data as part of a member organization.
Onboarding resources:

Data Commons environment setup
credentials.env file

Onboarding checklist:

[x] new user invited to os-climate github org
[x] user invited to requested teams

Hi @yaramohajerani - sorry for the delay, I just returned from vacation.  You should have received an invite.  I recommend this as a good resource for an overview for the subprojects that are part of os-climate:  https://github.com/os-climate/OS-Climate-Community-Hub#overview-of-os-cs-projectsworkstreams.  Please feel free to reach out via email<EMAIL_ADDRESS>if you'd like to meet and go over some on-boarding materials.

Thank you very much @HeatherAck. I have gone over the work streams and attempted accessing trino but there may still be some credential issues. It would be great to have an on-boarding meeting. I will follow through via email.


Add special callout for input tag helper checkbox

Fixes #23523

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


Canvas event is not triggered

Please avoid duplicates

[X] I checked all open issues and discussions and none of them matched my problem.

Language and Compiler
Other TypeScript compiler
What environment are you using?
Local Development Server
When does your problem occur?
While the Unity App is loading
What does your problem relate to?
I don't know
React-Unity-WebGL Version
latest
React Version
latest
Unity Version
2021.2
What happened?
The canvas event is not triggered in the latest version(v8.7.2).
Using the test environment with the latest version, the canvas event is not triggered (handleOnUnityCanvas function) : https://github.com/jeffreylanters/react-unity-webgl-tests
However, the event is triggered in versions prior to v8.6.0 (ex v8.5.2).
Reproducible test case
No response
Would you be interested in contributing a fix?

[ ] yes, I would like to contribute a fix

Hi Romy. Thanks for opening this issue, I will take a look at this problem. I'll keep you posted here!

It seems to be a timing issue. In the module, the event is triggered when the canvas is mounted. But this life cycle is triggered before, in the test application, the on("canvas",... event listener is registered. I'm looking into a solution.

Thanks !

I've came up with a fix, I'll test it and will publish it today!

Thank you for the quick response !

Hi! I've released version 8.7.3, this should fix your issue! Please let me know if this resoles the problem.

Just tested it, and I confirm you that it solved the issue. Thank you !

Great! Happy coding and best of luck with your project!


Enhance tests, more coverage, colored diffs

The primary change here is the addition of colorized actual/expected text diffs. It also adds a few more tests and cleans up a few error messages.

This closes #15


Type of a Link created on Windows can be changed

According to the Link.create() documentation
https://github.com/dart-lang/sdk/blob/24ec82e78cc09ca76386a5d0b7563f805d6df317/sdk/lib/io/link.dart#L50-L54
link created by Link.create() cannot change it's type. What exactly does not change its type after creation mean? I understand it as Directory link cannot be turned into File link and vice versa. But it isn't so. Proof:
import "dart:io";

main() {
  Directory sandbox = Directory.systemTemp.createTempSync();
  try {
    Directory target1 = sandbox.createTempSync();
    File target2 = new File(sandbox.path + Platform.pathSeparator + "file.tmp");
    target2.createSync();
    // Create link to a Directory
    Link link = new Link(sandbox.path + Platform.pathSeparator + "link.tmp");
    link.createSync(target1.path);
    print(FileSystemEntity.typeSync(link.path)); // directory
    // Change target of the link to a file
    link.updateSync(target2.path);
    print(FileSystemEntity.typeSync(link.path)); // file
  } finally {
    sandbox.deleteSync(recursive: true);
  }
}

cc @brianquinlan
Tested on Dart SDK version: 3.2.0-220.0.dev (dev) (Sat Sep 30 13:02:52 2023 -0700) on "windows_x64" on Windows 11 Pro

I think, only from reading the linked doc, that a Windows symbolic link inherently knows whether it points to a file or directory, and the symbolic link won't change that even if the target is removed or replaced by something else.
The type of link created by the method is that of what it's target currently is, or a file link if there is no entry at the target path.
I have no idea what the effect is of following a file link to a directory, or vice versa.
Which is (probably) why the (woefully under-documented) updateSync exists, to re-create the link with the type of what its path now points to.
The link doesn't change, but you can change it explicitly, which probably amounts to overwriting it with a new symbolic link.

Let's try to create a link pointing to a directory, then delete target and create a file with the same name/path and to see link type
import "dart:io";

main() {
  Directory sandbox = Directory.systemTemp.createTempSync();
  try {
    Directory target1 = sandbox.createTempSync();
    String path = target1.path;
    // Create link to a Directory
    Link link = new Link(sandbox.path + Platform.pathSeparator + "link.tmp");
    link.createSync(target1.path);
    print(FileSystemEntity.typeSync(link.path)); // Windows: directory, Linux: directory
    // Delete those Directory and create a File with the same path
    target1.deleteSync();
    print(target1.existsSync()); // false
    print(FileSystemEntity.typeSync(link.path)); // Windows: link, Linux: notFound
    File target2 = File(path);
    target2.createSync();
    print(target2.existsSync()); // true
    print(FileSystemEntity.typeSync(link.path)); // Windows: link, Linux: file
  } finally {
    sandbox.deleteSync(recursive: true);
  }
}

I'd say that Linux behaves exactly like I'd intuitive expect. As for Windows it seems that actual behaviour contradicts at least two documentation statement

Link.create(): The link represents a file or directory and does not change its type after creation
FileSystemEntity.typeSync(): Returns FileSystemEntityType.link only if followLinks is false and if path points to a link.. In the example below the path points to a link, but followLinks has default value true and FileSystemEntity.typeSync() returns FileSystemEntityType.link anyway.

Even if it's not a bug but expected behavior we should have more detailed documentation

And one more Windows (documentation?) issue.

If target exists then the type of the link will match the type target, otherwise a file symlink is created.

On Windows type of the link, pointing to a not existing entity is link, not file (notFound on Linux)
main() {
  Directory sandbox = Directory.systemTemp.createTempSync();
  try {
    Directory target1 = sandbox.createTempSync();
    String path = target1.path;
    target1.deleteSync();
    Link link = new Link(sandbox.path + Platform.pathSeparator + "link.tmp");
    link.createSync(target1.path);
    print(FileSystemEntity.typeSync(link.path)); // Windows: link, Linux: notFound
    print(FileSystemEntity.typeSync(link.path, followLinks: false)); // Windows: link, Linux: link
  } finally {
    sandbox.deleteSync(recursive: true);
  }
}

On Windows type of the link, pointing to a not existing entity is link,  not file (notFound on Linux)

That can still be a file link with no target. The behavior seen her it's consistent with a file or directory link with no valid target reporting itself as a link.
What happens if one creates either a file or directory at the target of the link?
I guess, somewhat blindly, that it will start reporting itself as a file link if it points to a file, and still as a link if it points to a director, because it's a file link.
Could be. Would be consistent with the documentation. The documentation could say more, though. It's easy to be consistent with something vague.

What happens if one creates either a file or directory at the target of the link?
I guess, somewhat blindly, that it will start reporting itself as a file link if it points to a file, and still as a link if it points to a director, because it's a file link.

It's not possible to create "file/directory" only link.  Link target is a String containing absolutely or relative path to some entity which can be both a directory or a file.
So, if you create a link pointing to nowhere, then, on Linux it'll have type notFound. After that you can create a Directory at the target of the link. It's type will became directory. Then delete it and create a file with the same name. It's type will became file. On Windows if we create a file at the link's target it'll became a file type link. If we create a directory it stays link
import "dart:io";

main() {
  Directory sandbox = Directory.systemTemp.createTempSync();
  try {
    String notExisting = "something";
    Link link = Link(sandbox.path + Platform.pathSeparator + "link");
    String path = sandbox.path + Platform.pathSeparator + notExisting;
    link.createSync(path);
    print(FileSystemEntity.typeSync(link.path)); // Linux: notFound, Windows: link
    File file = File(path);
    file.createSync();
    print(FileSystemEntity.typeSync(link.path)); // Linux: file, Windows: file
    file.deleteSync();
    print(FileSystemEntity.typeSync(link.path)); // Linux: notFound, Windows: link
    Directory dir = Directory(path);
    dir.createSync();
    print(FileSystemEntity.typeSync(link.path)); // Linux: directory, Windows: link
  } finally {
    sandbox.deleteSync(recursive: true);
  }
}

That still looks consistent.

It's not possible to create "file/directory" only link. Link target is a String containing absolutely or relative path to some entity which can be both a directory or a file.

That's apparently not true on Windows. Every link  you create is either a file link or a directory link.
The Dart API doesn't allow you to choose, so it picks the type of the thing it currently points to, and if there isn't anything at the target, it picks file.
A file link reports its transitive (followLinks: true) type as file if its "valid" (target is a file, or target is a valid file link), otherwise it reports its type as link. If it points to a directory, it's not valid and reports its type as link.
Symmetrically, a directory link reports its transitive type as directory if its valid, its target is a directory, or a valid directory link, otherwise it reports it as link.
That matches the prints in code above:

File link, no target: type is link.
File link, file target: type is file.
File link, no target: type is link
File link, directory target: type is link.

Try this:
import "dart:io";

void main() async {
  var tmp = Directory.systemTemp.createTempSync("winlink");
  try {
    var file = File(join(tmp.path, "file"));
    file.writeAsStringSync("banana");
    var dir = Directory(join(tmp.path, "dir"));
    dir.createSync();
    var fileLink = Link(join(tmp.path, "file-link"));
    fileLink.createSync(file.path);
    var dirLink = Link(join(tmp.path, "dir-link"));
    dirLink.createSync(dir.path);

    // File link, file target: type file
    log(fileLink); // ...\file-link:link-->  ...\file:file (expected file)
    // Dir link, dir target: type dir
    log(dirLink); // ...\dir-link:link-->  ...\dir:directory (expected directory)

    await (Future.delayed(Duration(milliseconds: 250)));
    file.deleteSync();
    dir.deleteSync(recursive: true);

    {
      var newFile = File(dir.path);
      newFile.createSync();

      var newDir = Directory(file.path);
      newDir.createSync();

      // File link, dir target: type link, and cannot resolve
      log(fileLink); // ...\file-link:link-->  no target:notFound (expected link)
      // Dir link, fil target: type link, and cannot resolve
      log(dirLink); // ...\dir-link:link-->  no target:notFound (expected link)

      await (Future.delayed(Duration(milliseconds: 250)));

      newFile.deleteSync();
      newDir.deleteSync();
    }

    {
      var newFile = File(dir.path);
      newFile.createSync();
      var newLink = Link(file.path);
      newLink.createSync(newFile.path);
      // File link, valid file link target: type file
      log(fileLink); // ...\file-link:link-->  ...\dir:file (expected file)
      // File link, file target: type file
      log(newLink); // ...\file:link-->  ...\dir:file (expected file)
      await (Future.delayed(Duration(milliseconds: 250)));
      newFile.deleteSync();
      newLink.deleteSync();
    }
  } finally {
    await (Future.delayed(Duration(milliseconds: 250)));

    tmp.deleteSync(recursive: true);
  }
}

String join(String dir, String name) =>
    [dir, name].join(Platform.pathSeparator);

void log(Link fse) {
  var exists = fse.existsSync();
  assert(exists);
  var transitiveType = FileSystemEntity.typeSync(fse.path, followLinks: true);
  var directType = FileSystemEntity.typeSync(fse.path, followLinks: false);
  //assert(directType == stat.type);
  var target = "no target";
  var targetType = FileSystemEntityType.notFound;
  if (transitiveType == FileSystemEntityType.file ||
      transitiveType == FileSystemEntityType.directory) {
    target = fse.resolveSymbolicLinksSync();
    targetType = FileSystemEntity.isFileSync(target)
        ? FileSystemEntityType.file
        : FileSystemEntity.isDirectorySync(target)
            ? FileSystemEntityType.directory
            : FileSystemEntity.isLinkSync(target)
                ? FileSystemEntityType.link
                : FileSystemEntityType.notFound;
  }
  print("${fse.path}:$directType"
      "${directType == FileSystemEntityType.link ? //
          "-->  $target:$targetType" : ""}"
      " (expected $transitiveType)");
}

@lrhn thank you for your assistance! Let me try to summarize the above.

The current behaviour around Link type is correct, no changes in API in this area needed but documentation
Requested documentation changes:

2.1. Link.update/updateSynk(): should clearly state that it deletes the link and creates the new one
2.2. FileSystemEntity.type/typeSync():

Returns FileSystemEntityType.link only if followLinks is false and if path points to a link.

Add that on Windows it returns FileSystemEntityType.link on any Link with "broken" target when followLinks is true. "Broken" target means a link with not existing target or file link pointing to a directory and vice versa, or, transitively, link to a link with "broken" target.

Returns FileSystemEntityType.notFound if path does not point to a file system object or if any other error occurs in looking up the path.

Add that on non-Windows systems it returns FileSystemEntityType.notFound if followLink is true and path points to a Link with a target to nowhere
2.3. Link.create/createSync()

On the Windows platform,... The link represents a file or directory and does not change its type after creation.

Need to rewrite this statement in more details. Link, created with a directory as a target can point to directories only (or orher links pointing to a directories). Link, created with a target file/nowhere/link to file/link to nowhere cannot point to a directory/link to directory
2.4. Link.create/createSync(): if Windows relative links have any restrictions it make sense to describe them here as well. See https://github.com/dart-lang/sdk/issues/53689
2.5. Link.resolveSymbolicLinks/resolveSymbolicLinksSync(): add that on Windows if a file-link points to a directory or a dir-link points to a file, then FileSystemException is thrown
Did I miss anything?

Agree that docs med improvement.
The listed items seem to cover everything discussed here, and match how I (now) understand Windows behavior.

Sorry for jumping in late - I wrote the text "The link represents a file or directory and does not change its type after creation."
The meaning of that is Windows represents links-to-files and links-to-directories differently. For example, to delete a link-to-file, you'd use DeleteFile but for a link-to-directory, you'd use RemoveDirectory.
I'll work on documentation fixes.

Stuff to do:

[ ] Link.update/updateSynk(): should clearly state that it deletes the link and creates the new one
[ ] FileSystemEntity.type/typeSync():
[ ] Link.create/createSync()
[ ] Link.resolveSymbolicLinks/resolveSymbolicLinksSync()

I have a PR that fixes these issues (https://dart-review.googlesource.com/c/sdk/+/331841) except for the issues related to https://github.com/dart-lang/sdk/issues/53689, which I will fix separately.
Instead of documenting the difference in FileSystemEntity.type behavior between Windows and other platforms, I modified the Windows behavior so that this test passes on all platforms:
testBrokenLinkTypeSync() {
  String base = Directory.systemTemp.createTempSync('dart_link').path;
  String link = join(base, 'link');

  Link(link).createSync('does not exist');

  Expect.equals(FileSystemEntityType.link,
      FileSystemEntity.typeSync(link, followLinks: false));

  Expect.equals(FileSystemEntityType.notFound,
      FileSystemEntity.typeSync(link, followLinks: true));
}

Several co19 tests must be updated before this PR can land without breakage:
new_test_failures__logs_.txt


Readme: make Travis badge only show master status

I often see this as 'invalid', so...

might also just want to use the official travis badge. i think shields.io likes showing 'invalid' even when the build is actually okay.