Build against Brooklyn 0.9.0-SNAPSHOT

Requires brooklyncentral/advanced-networking/pull/85.
Tested docker cloud with calico in Softlayer, deployed Node catalog app, Tomcat and redis/dnmonster/identidock examples from getting started section on http://clocker.io.
Note the cast on line 617 in DockerContainerImpl needs to be properly fixed.

Hopefully resolves #191

Thanks @johnmccabe we'll merge this once a 1.1.0 release has been made

@johnmccabe suggest you cherry-pick commit 5eaf90ff267a702c9d9da6e322d393fd953e9c1e from #178 as well

https://github.com/johnmccabe/clocker/blob/0.9.0-update/docker/src/main/resources/META-INF/services/org.apache.brooklyn.core.resolve.ServiceSpecResolver
This file needs changed to point at the new DockerEntitySpecResolver class

Also worth looking through the patches project to remove already integrated changes.

@neykov I have been looking into Clocker patches recently. Most of the patches are JClouds, and we will need a new release of JClouds to get them.
There is one patch that we should be able to get rid of, and that is JcloudsLocationSecurityGroupCustomizer (despite the name it is a brooklyn class).


[Raycast Wallpaper] Preference to specify refresh intervals

Description

Preference to set different refresh intervals mirroring Apple wallpaper shuffle intervals
Updates dependencies and fixed tsconfig

Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

closes https://github.com/raycast/extensions/issues/12871

Hi @jfkisafk  Thanks for your contribution, I tested your changes and have two questions so far

The first one is more serious, now if Raycast run Auto Switch command automatically, it will close the main window, if I set the interval to a shorter one, say 1m, if I open the main window of Raycast at that time, it will hide the main window very fast!
This problem has already affected the use of Raycast and needs to be optimised, the optimisation solution is also very simple, remove await closeMainWindow(); or put it in

if (environment.launchType === LaunchType.UserInitiated) {
    await showHUD("🖥 Setting wallpaper...") ;)
}

The second question is, isn't it too fast to set the minimum refresh interval of the extension to 1m, and will it affect the performance of Raycast? I hope the Raycast developers @pernielsentikaer will evaluate this issue.

Hey @koinzhang thanks for the quick review. Here is what I think:

Nice catch, I am making the changes in the next iteration.
I had some concerns with 1m time too but found a lot of usages across different extensions (src). To be safe, I can revert back to using 5m as the least denomination.

Sounds like a good idea to start with 5 and see how it goes and if people is requesting lower 🙂

For sure, I have made the requested changes @koinzhang @pernielsentikaer


Removed Extra Space in exception statement

Removed Extra Space in exception statement on line 73 that was causing POCSuite3 to throw errors

Thank you very much, I forgot to say, I am using pocsuite2.


Invalid SSH clone URL

Gogs version: <IP_ADDRESS>8
Git version: 2.1.4
Operating system: Rasbian ARM
Database: MySQL 5.5.44
Can you reproduce the bug at http://try.gogs.io: No, can't test the SSH clone (no password ;))
Description
I'm using Gogs with the SSH clone URL. The URLdoes not work if I use upper case usernames and repository names.
Example:
Username: TestUser
Repository name: Test-Respo
This will produce the following SSH clone url:
git@myhost.ext:TestUser/Test-Repo.git
The folders on file system are created in lower case so SSH fails with the following error:

fatal: 'TestUser/Test-Repo.git' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.

I think the clone URL should be in lower case regarding to the file system.

What happens when you try to connect through ssh ssh<EMAIL_ADDRESS>?

The ssh Login prompt appears, if I Enter the Git Users password I can See the Contents of the Git Users home dir. If I translate the ssh Clone URL to lower case it works like a Charm, the Problem should Be the  lower case of the File System path

No, it's not. You're not supposed to log into the git account using the credentials. Infact, you should disable password-login for the git user. You need to use a rsa-key to connect which was added (the public-key) to gogs using the web-panel. Do not connect with the credentials and do not add the public-key manually to the authorized_keys file.

Hi,
thanks for your response but it works when the username and the repo name is in lowercase. In my opinion it is still not a problem with key or password authentication. Please have a look at the following examples:
This clone URL does not work:
This is the one I'm getting from the GOGs clone box.
git clone git@myhost.ext:TestUser/Test-Repo.git
This clone URL works fine:
I've converted the clone URL to lower case
git clone git@myhost.ext:testuser/test-repo.git
I hope the provided information makes the problem more clear.

The clone URL will work if you connect using a rsa key which you added to gogs. As I said, you're not supposed to login using the password, thats not Gogs's problem, if you want to connect using a method which is not supported by gogs and never will be.

To understand why: When you add a public key to gogs, gogs will add a special entry to your authorized_keys file which tells your system, to invoke gogs as your login-shell instead of just bash or whatever, so gogs can check your read/write permissions to the requested repository and then redirect your traffic directly to this repository. In this case, the upper-case clone-URL does not matter as gogs knows the real path to your repository. However, this will not work if gogs doesn't know who you are, neither if your system does not invoke gogs as login-shell at all. Therefore, you have to connect using a key which you added through gogs, everything else will not work and opens security risks (as you have full control of the server, a key added through gogs has not)

Thanks for explanation :) This makes sense, I'll give it a try.

It works, thank you! I did not know that gogs has his one login-shell.


Example on using RandAugment for training image classification models

RandAugment has been quite an important recipe in works like FixMatch, Noisy Student Training, EfficientNets. Yet, there's hardly any example that shows how to apply it specifically in the context of Keras models. This is the primary motivation behind this tutorial.
Additionally, it might be of interest to folks working on improving the robustness of vision models. I have included a simple check that evaluates two different models on the CIFAR-10-C dataset (severity: saturated_5) where one model is trained with RandAugment and the other one is trained with simple augmentation transforms. As expected, the former yields better performance.

Thanks, @fchollet! Your feedback has been applied. I forgot to resize the training images to (72, 72), so incorporated that as well.

I had forgotten to resize the training images to (72, 72) in the script

Does that change any of the reported results?

Does that change any of the reported results?

No, it does not. Because I had already reflected that change in my original full-scale experimentation notebook. Adding the rest of the files now.

@googlebot I fixed it.

@fchollet changes to randaugment.py are mostly related to formatting. The only other change is adding resizing to CIFAR-10-C. Note that this change does not affect any of the reported results because they come from my experimentation notebook (which had the resizing step).
Also, it looks like I am unable to resolve the CLA issue. Do you want to me close this PR and open a new one with the updated files?

@googlebot I fixed it.

Actually, RandAugment's efficacy goes way beyond just translational invariance. It has been shown to provide robustness against common corruptions (just as we see in this example) and perturbations (Noisy Student Training is one such example). Hence the general usage of the term. IMHO, restricting it to only translational invariance defeats the purpose somehow.

@sayakpaul I think issue with the CLA is because of these commits:

Maybe you can rebase (undo them) and then commit as sayakpaul that your main GitHub account uses?

@8bitmp3 thank you for your suggestion on rebasing. I tried a few options but was unable to resolve the issue :(

@sayakpaul Maybe this will help, although please be extra careful here:
# Switch to your branch:
git checkout my_branch
# This will list the last 10 commits for rebasing:
git rebase -i HEAD~10
# Then, mark for deletion the commits that may be causing this issue (with `d`?) and save the file and quit.
# Next, `push` or force `push` the changes:
git push origin my_branch --force

Thanks! I followed your steps carefully, entered d 74d6c57 during rebasing, and then force pushed. I got Everything up-to-date.

entered d 74d6c57 during rebasing
Did you save and exit the editor afterwards?

@8bitmp3 yes, here's the complete breakdown of what I did:
$ git clone https://github.com/sayakpaul/keras-io
$ cd keras-io
$ git rebase -i HEAD~10

At this point, an editor gets opened. Pressed `i`, then entered `d 74d6c57`, pressed `Esc` key, and then typed `:wq`. After this, I force pushed.

I'm able to merge all commits into a single one. I'll take it from here. Thanks a lot for the contribution! 👍
And @8bitmp3, thanks for the reviews!

Absolutely grateful to be surrounded by folks like you @fchollet and @8bitmp3 for your generous support.
THANK YOU!

And thank you for adding this example!

@lc0, thank you for your suggestions. Will incorporate and send a PR soon!


[Rest Server] Add default field in storage list api

Add default field in storage list api.

Coverage decreased (-0.06%) to 34.684% when pulling e072ea75d475b6b3d3abe160700d532ce6479ccb on xiongyf/storage-api-add-default into b026772f9155d8c4090f052c5f46a82b1f7a9abc on master.


How Do I Use the LWJGL STB to Compress Images in Java? The ByteBuffer After Compression Is Converted to ByteArrayInputStream?                                                                            My question is： After the stbir_resize_uint8 method is used, the output stream cannot be converted to byte[], or the converted byte[] is unavailable.

How Do I Use the LWJGL STB to Compress Images in Java? The ByteBuffer After Compression Is Converted to ByteArrayInputStream?
My question is：
After the stbir_resize_uint8 method is used, the output stream cannot be converted to byte[], or the converted byte[] is unavailable.
Please provide the code. Thank you.

Congrats on being issue #666!
I'm not sure what you're asking. One of LWJGL's STB package includes STBImage. It can load and save many formats, but it can't compress them. You could use Java's ImageIO package to read and write and edit images. You could use STBImage to load the images. Example here.
Note that both ImageIO and STBImage both can read/write BMP, GIF, JPEG, and PNG, so you could do either.

Congrats on being issue #666!
I'm not sure what you're asking. One of LWJGL's STB package includes STBImage. It can load and save many formats, but it can't compress them. You could use Java's ImageIO package to read and write and edit images. You could use STBImage to load the images. Example here.
Note that both ImageIO and STBImage both can read/write BMP, GIF, JPEG, and PNG, so you could do either.

The STB of the LWJGL can compress images.
use  STBImageResize.stbir_resize_uint8(originalImage, originalWidth, originalHeight, 0, outputStream, rw, rh, 0, channel);
My question is：
After the stbir_resize_uint8 method is used, the output stream cannot be converted to byte[], or the converted byte[] is unavailable.

The STB of the LWJGL can compress images.
It can't. It can resize images, but not compress them.
After the stbir_resize_uint8 method is used, the output stream cannot be converted to byte[], or the converted byte[] is unavailable.
Not sure I understand. What's your code? And what are you going to do with it (ie, save it using STBImage, or load it to memory)?

The STB of the LWJGL can compress images.

It can't. It can resize images, but not compress them.

After the stbir_resize_uint8 method is used, the output stream cannot be converted to byte[], or the converted byte[] is unavailable.

Not sure I understand. What's your code? And what are you going to do with it (ie, save it using STBImage, or load it to memory)?

ByteBuffer outputStream = BufferUtils.createByteBuffer(imageBuffer.capacity());

  STBImageResize.stbir_resize_uint8(originalImage, originalWidth, originalHeight, 0, outputStream, rw, rh, 0, channel);

STBImage.stbi_image_free(originalImage);

STBImageWrite.stbi_write_png("E:\\stbi_write2222222222222.png", rw, rh, channel, outputStream, 0);

int len = outputStream.limit() - outputStream.position();

byte[] bytes = new byte[len];

outputStream.get(bytes);

ByteToFile(bytes, "E:\\", "stream11111111.png");

1、The fourth line of code can output the resize image.
2、The code in lines 5 to 8 cannot output resize images.
3、I want lines 5 through 8 to output the picture correctly.  Can you provide such a code?

The STB of the LWJGL can compress images.

It can't. It can resize images, but not compress them.

After the stbir_resize_uint8 method is used, the output stream cannot be converted to byte[], or the converted byte[] is unavailable.

Not sure I understand. What's your code? And what are you going to do with it (ie, save it using STBImage, or load it to memory)?

Any results?

Are you calling toByteArray() on the output stream? Please share your code. It's impossible to know what's going on.

resize is not compress

still don't understand why you compress the picture in java game runtime...

I mean, shouldn't you have it already on disk?
If you really want it then please go https://github.com/apache/commons-compress
If you want the compressed picture still be a picture, please go https://github.com/apache/commons-imaging


Introduce ERCOT API Wrapper

Enables users to pull data from all of the endpoints of the ERCOT API. Provides three primary methods in ercot_api.py:

hit_ercot_api - prepares and executes a request to a specified endpoint
list_all_endpoints - enumerates all available endpoints with simple descriptions
describe_one_endpoint - lists the parameters of an endpoint with expected types

The latter two methods are conveniently available via CLI, but hit_ercot_api is not, because it returns a dataframe and is thus expected to be used within some outer workflow.
WIP - TODOs

[x] Design review
[x] Unit tests
[x] Develop CLI
[x] Example notebook

@djsensei Thanks for your contribution! It looks like there are some linting issues with the build. You should be able to fix these by running make lint and addressing the issues.

Thanks @WillKoehrsen, should be all set now pending CI!

Just triggered CI to run. Will do another review later today with a eye towards getting this merged. Thanks for the diligence and patience on this!

im seeing a test error when i run on github actions: https://github.com/kmax12/gridstatus/actions/runs/7703617024/job/20996079651?pr=312#step:7:2391
once that is cleaned up, im good to merge.

The test failure (at least the one on my new test suite) seems non-deterministic, haven't been able to replicate it. Maybe something to do with hitting the API at the exact time that data is refreshed, since it was supposed to return 48 rows (two days of hourly) and we only got 24?
In an ideal world we wouldn't be hitting an external API from a test suite, but since that's the whole point of this module...

seems non-deterministic, haven't been able to replicate it.

The test suite re-runs failed tests up to 5 times so if it was just a temporary issue, I think it should have passed.
A common issue is tests that pass locally when run in the developer's time zone but then fail because GitHub actions run in UTC. That seems likely to be the issue in this case since the tests also pass locally for me.
I think the issue is this line:
two_days_ago = datetime.datetime.now() - datetime.timedelta(days=2)

Locally, right now, this returns  datetime.datetime(2024, 1, 27, 20, 12, 13, 36715).
When run with a timezone of UTC:
two_days_ago = datetime.datetime.now(tz=pytz.UTC) - datetime.timedelta(days=2)

The date changes: datetime.datetime(2024, 1, 28, 1, 12, 30, 32344, tzinfo=<UTC>)

Just leaving this here in case we want to take a programmatic approach to retrieving the API documentation in a follow-on PR. I figured out how to download the documentation by inspecting the network requests:
import requests

# URL for the documentation
api_doc_url = "https://apiexplorer.ercot.com/developer/apis/pubapi-apim-api?export=true&api-version=2022-04-01-preview"

# Not sure how many of these are required, but they are the same
# headers as in a browser request
headers = {
    'authority': 'apiexplorer.ercot.com',
    'accept': 'application/vnd.oai.openapi+json',
    'accept-language': 'en-US,en;q=0.9',
    'cache-control': 'no-cache',
    'dnt': '1',
    'pragma': 'no-cache',
    'referer': 'https://apiexplorer.ercot.com/api-details',
    'sec-ch-ua': '"Not A(Brand";v="99", "Google Chrome";v="121", "Chromium";v="121"',
    'sec-ch-ua-mobile': '?0',
    'sec-ch-ua-platform': '"macOS"',
    'sec-fetch-dest': 'empty',
    'sec-fetch-mode': 'cors',
    'sec-fetch-site': 'same-origin',
    'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36',
    'x-ms-apim-client': 'dev-portal|apiexplorer.ercot.com|exportApi-unauthorized'
}

api_response = requests.get(api_doc_url, headers=headers)

api_documentation = api_response.json()
print(api_documentation)

It doesn't work without those headers.


Add Example Node App

Add an example Node.js app that uses fuels-ts.

[ ] Add example Sway contract
[ ] Add a script to publish the contract
[ ] Add a script that generates TS types/code from contract

Blocked by https://github.com/FuelLabs/sway/issues/322

[ ] Add an Express app (80% usage in State of JS 2020 Back-end Frameworks)
[ ] Add Jest tests (68% usage in State of JS 2020 Testing)

Should we close this issue?  @luizstacio updated the docs with the quickstart and we have the sway-apps repo.

Should we close this issue? @luizstacio updated the docs with the quickstart and we have the sway-apps repo.

I think this would be more on the back-end side, like an API that creates TXs the quickstart is more focused on the front-end side.

I believe this one should be closed; plenty of docs out there with example apps using the TS SDK. Feel free to reopen if that's not the case!


using your plugin from within a more complex that inputs exist within divs

The problem was that this did not appear to work when the form input elements were put within divs. The solution seems to be to replace:

if (currentLength === maxLength - 1) {
				$(this).one("keyup", function() {
					//$(this).nextAll("input,textarea,select").first().focus();
                                        //with this - but then obviously the original method does not work
					$(this).parent().next('div').find("input,textarea,select").first().focus();

If you could think of a way of both working that would be awesome

Hi @vahidhedayati! Thanks so much for opening the issue :)
I've released a new version with a fix for this, you need to call the plugin now with "form" instead of "input, select, textareas".
Please, let me know if this helped :)
Thanks again!


Add TOPNET services into HydroDS

Pabitra,
I talked with Dr. Tarboton and he wanted me  to include TOPNET functionality into the HydroDS github, however I can't do that as it is not my repository. Could you please add the TOPNET functionality into HydroDS,  Here is the link for the TOPNET functions:
https://github.com/nazmussazib/TOPNET_PreProcessing/tree/master/TOPNET_Function.
Please let me know if you need anything else.
Thanks.
Nazmus

@nazmussazib Do you just want your TOPNET code to be part of the HydroDS repo? I can do that. But there went be any web services that use your TOPNET code. Let me know if that's what you want.


[Bug]: Windows system 32 bit does not work the app

Version of the software
0.2.3
Operating system
windows 7
Browser / Native
local
What happened?
hello developer.my computer is 32 bit system and i can't run openbullet 2 native file and i need it how can i solve it. Will the program be compatible for 32 bit?
Relevant LoliCode if needed
No response

Hello, OB2 is compatible with Windows 32 bit, please follow this guide to know how to start it on 32-bit systems.
https://discourse.openbullet.dev/t/how-to-download-and-start-openbullet-2/29


'Image' claims it is defined in 'System.Drawing'

Hello,
I'm trying to run my app but apear the next error on this:
imageFactory.Load(inStream).Resize(size).Format(format).Save(outStream);
Error:
Error	CS7069	Reference to type 'Image' claims it is defined in 'System.Drawing', but it could not be found

Dear Jim,
Thanks a lot for your faster answers.
I'm sorry but I expended to many hours trying to find I cannot run my app and I was upset with myself.
I'm think that the problems is because I'm trying to run your NuGet on a Xamarin.Forms.
Thanks,
XCO


feat: character modal improvements

Pull Request

Description

fixed lc select not filtering by path on character tab
changed eidolon and superimposition selection method to reduce number of clicks

Related Issue

Closes #372
Checklist

[x] I have added commit messages that are descriptive and meaningful.
[x] I have tested the changes locally.
[x] I have reviewed the code changes.

Screenshots

Added some updated to the button styling


fix items update not triggering setValue

should compare props.items with prevProps.items, not itself.

Sorry for the late reply, this is a good PR!


Update zio to 2.0.17

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

🔍 Files still referring to the old version number
The following files still refer to the old version number (2.0.16).
You might want to review and update them manually.
website/yarn.lock

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

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

labels: library-update, early-semver-patch, semver-spec-patch, old-version-remains, commit-count:1

Superseded by #63.


WIP: Make sure transcript is limited to rolling 3500 tokens

Still testing but opening up to discuss this approach :)

we can land this AFAIK


make remote resize channel buffered

when doing any sort of attach to a container, a sigwinch is sent
followed by a resize event.  this is fine for the local client but when
doing things over the varlink, the first sigwinch is wiped out by the
immediate resize event and is therefore lost.  by making the channel
buffered, both events are processed after the varlink connection is
established.
Signed-off-by: baude<EMAIL_ADDRESS>

I like simple changes. LGTM

LGTM assuming happy tests.

/lgtm


Fixes missing test

@gregcaporaso - this is an urgent but simple merge. The gibbs function had algorithmic parameter validation (alpha1 etc.) but did not actually have the data validation (sources or sinks). This PR fixes that and adds tests of the gibbs function so that this couldn't be missed again.

Coverage increased (+0.009%) to 99.228% when pulling 898054f2a1de74417c9ba73a30236ae039769a2c on wdwvt1:input_validation into 7d56ebf503cfb90ee675dd27324b80fda94ffeb9 on biota:master.


Please add important warning in guide for Optane, Raid, Soft raid users

If you using intel optane, raid on intel controllers, please turn them in intel storage management software and set ahci mode in bios before modding bios or all data will be lost.

What's the reason for this ? Shouldn't it be no different than installing a regular BIOS update ?

Wouldn't a BIOS update from OEM do the same though ?


False positive with ref rule causes crash

I have text like [user]: message where message is possibly markdown. While I understand that I could just parse/render message through the compiler first and then append it to [user]:  I did find it interesting that the text of form [x]: y returns null. It looks like it's matching the ref rule with the REFERENCE_IMAGE_OR_LINK regex but returning an empty content.
I will continue to try to find a fix for it.

> m = require('markdown-to-jsx')
[Function: Te] { compiler: [Function: Le] }
> m.compiler('[x]: y')
null


UI Changes - Too many things are highlighted

Small suggestions to make the screen look less cluttered

The border around image is used for the required reviewers.

Oh, cool. I didn't know that.
I'm wondering, should we display the optional reviewers at all? Is it useful in some scenario?
Maybe create a configuration for displaying it.


Thor max version constraint

Upgrade to Thor ~> 1.0.0 in order to support Arch package.
Closes #739

Thoughts @tmuxinator/tmuxinator?


Zig 0.11 llvm 16

This branch isn't quite ready, but I want to see what we get out of CI. Currently, I think that only a few gen_dev (I think a lambdaset issue leading to invalid frees) and gen_wasm (not sure, but probably linking related) tests are failing. Hopefully we can patch those up and get this submitted soon.
Also, no idea the state of windows, but hopeful it isn't too bad.

It looks like for nix build we need to update the rust version. That's definitely a bit inconvenient.

Also, quite confused why after my pr we are still failing to run zig 0.11.0. It is still trying to build zig in ci with 0.9.1

Non-nix workflows on self-hosted servers have zig 0.9.1 installed, I'll install zig 0.11.0 on there and try to use our ROC_ZIG env var.

For the nix issues I'm going to upgrade to rust 1.72.0 but on main branch first, so we know that's not causing any issues here.

For the nix issues I'm going to upgrade to rust 1.72.0 but on main branch first, so we know that's not causing any issues here.

🙏  Thanks so much. Definitely will be helpful to keep that complexity out of this PR.

Awesome, so it looks like nix with rust 1.71.0 is new enough. No need to update to 1.72.0 for this branch!!!

Zig changed the way to build wasm-modules. Before 0.11 the wasm-module exported all exported symbols. Starting from 0.11, you have to do it explicitly with --export=[name] or use the flag -rdynamic to export all exported symbols: https://ziglang.org/download/0.11.0/release-notes.html#WebAssembly
Maybe this is relevant for this PR? If not, then sorry for the noise.
(I am exited about this PR. Thank you for your work ❤).

I'm making issues for the remaining failures:

free(): invalid pointer https://github.com/roc-lang/roc/issues/5859

@folkertdev and @brian-carroll, not sure if either of you will have time or energy to look at the issues on this branch, but I think that you two are probably the most knowledgable in fixing the issues we are hitting. So any support would be greatly appreciated. Landing this will be awesome.
Also, I am a bit confused why more wasm tests are failing now. Apparently updating rust or some other change broke more of the wasm tests. That or maybe I screw up at some point and reverted a wasm based change, not fully sure.

@bhansconnect I'll pull the branch and have a quick look! I don't have a lot of free time this week unfortunately but might have a bit more from next week or the week after.

I fixed the issues with the llvm wasm backend. Also https://github.com/roc-lang/roc/issues/5859 seems to be fixed now (at least those tests all succeed for me locally)

My current plan is to try and fix any dev wasm related issues but then submit these changes even if it leaves windows abi stuff slightly more broken. I want to make larger changes to how we call bitcode functions in a separate PR. That will resolve the windows abi issues. I don't want to block this on that work.

So did some more local testing, most of the wasm failures where caused by the update from rust 1.70.0 to 1.71.1.
With rust 1.70.0, I get 3 failures. With 1.71.1, I get 24.
er...kinda. It seems that no mater the rust version, all of these failures happen on my x86 linux machine, but my m1 mac follows the version related failure change that I mentioned above. It is super strange to me.

The CI failure is a segfault but it only happens outside of nix, so I'm wondering if it's some kind of dependency issue.

I have one more thing I'm going to try out tomorrow and if that does not work I'll do a clean OS install on that CI machine.

I think the 2 cli run tests that are failing in CI / test zig, rust, wasm... seem to be failing consitently. I am not sure why. I can't repro it locally on either my x86 or m1 mac machine. @Anton-4 any ideas?

I failed to reproduce as well, the failures do indeed happen every time. I'm going to compare binaries on CI vs a very similar environment and see if I can learn anything from that.

This does look like a real bug, not just mixed dependencies.
This is the valgrind output:
valgrind --leak-check=full --track-origins=yes ./examples/platform-switching/rocLovesZig
==1811229== Memcheck, a memory error detector
==1811229== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==1811229== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info
==1811229== Command: ./examples/platform-switching/rocLovesZig
==1811229==
==1811229==
==1811229== Process terminating with default action of signal 11 (SIGSEGV)
==1811229==  Bad permissions for mapped region at address 0x239060
==1811229==    at 0x239060: ??? (in /home/small-ci-user/gitrepos/roc2/roc/examples/platform-switching/rocLovesZig)
==1811229==    by 0x1CF0A7: ??? (in /home/small-ci-user/gitrepos/roc2/roc/examples/platform-switching/rocLovesZig)
==1811229==    by 0x19A455: ??? (in /home/small-ci-user/gitrepos/roc2/roc/examples/platform-switching/rocLovesZig)
==1811229==    by 0x198472: ??? (in /home/small-ci-user/gitrepos/roc2/roc/examples/platform-switching/rocLovesZig)
==1811229==    by 0x1EE98A: ??? (in /home/small-ci-user/gitrepos/roc2/roc/examples/platform-switching/rocLovesZig)
==1811229==    by 0x1DEAD0: ??? (in /home/small-ci-user/gitrepos/roc2/roc/examples/platform-switching/rocLovesZig)
==1811229==    by 0x1CB918: ??? (in /home/small-ci-user/gitrepos/roc2/roc/examples/platform-switching/rocLovesZig)
==1811229==    by 0x1995AC: ??? (in /home/small-ci-user/gitrepos/roc2/roc/examples/platform-switching/rocLovesZig)
==1811229==    by 0x48AE51F: ??? (in /usr/lib/x86_64-linux-gnu/libc.so.6)
==1811229==    by 0x23901F: ??? (in /home/small-ci-user/gitrepos/roc2/roc/examples/platform-switching/rocLovesZig)
==1811229==    by 0x1999C0: ??? (in /home/small-ci-user/gitrepos/roc2/roc/examples/platform-switching/rocLovesZig)
==1811229==    by 0x197EF9: ??? (in /home/small-ci-user/gitrepos/roc2/roc/examples/platform-switching/rocLovesZig)
==1811229==
==1811229== HEAP SUMMARY:
==1811229==     in use at exit: 0 bytes in 0 blocks
==1811229==   total heap usage: 0 allocs, 0 frees, 0 bytes allocated
==1811229==
==1811229== All heap blocks were freed -- no leaks are possible
==1811229==
==1811229== For lists of detected and suppressed errors, rerun with: -s
==1811229== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
Segmentation fault (core dumped)

An interesting failure of building with --opt-size:
RUST_BACKTRACE=1 ./target/release/roc build ./examples/platform-switching/rocLovesZig.roc --opt-size
🔨 Rebuilding platform...
thread '<unnamed>' panicked at 'There must be a symtab section in the executable', crates/linker/src/elf.rs:1044:13
stack backtrace:
   0: rust_begin_unwind
             at /rustc/eb26296b556cef10fb713a38f3d16b9886080f26/library/std/src/panicking.rs:593:5
   1: core::panicking::panic_fmt
             at /rustc/eb26296b556cef10fb713a38f3d16b9886080f26/library/core/src/panicking.rs:67:14
   2: roc_linker::elf::preprocess_elf
   3: roc_linker::preprocess_host
   4: roc_build::program::build_and_preprocess_host_lowlevel
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
thread 'main' panicked at 'Failed to (re)build platform.: Any { .. }', crates/compiler/build/src/program.rs:981:46
stack backtrace:
   0: rust_begin_unwind
             at /rustc/eb26296b556cef10fb713a38f3d16b9886080f26/library/std/src/panicking.rs:593:5
   1: core::panicking::panic_fmt
             at /rustc/eb26296b556cef10fb713a38f3d16b9886080f26/library/core/src/panicking.rs:67:14
   2: core::result::unwrap_failed
             at /rustc/eb26296b556cef10fb713a38f3d16b9886080f26/library/core/src/result.rs:1651:5
   3: roc_build::program::build_loaded_file
   4: roc_build::program::build_file
   5: roc_cli::build
   6: roc::main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

I compared strings rocLovesZig for the CI executable and one from a very similar VM. The CI one was targeting haswell target.x86.cpu.haswell, the VM one was targeting x86_64 target.x86.cpu.x86_64. I'm not sure if this target cpu is being set by zig, rust or us.
I've created an archive with the executables, asm, and strings output:
comparison.tar.gz

I'm going to take a stab at upgrading the debugir repo to llvm 16.

The linking tests for Wasm were breaking for two reasons:
Firstly, the test was just written in a really brittle way that relied on the host functions appearing in a specific order. That is more robust now, I'm sorting the names before comparing them.
So now that distraction is out of the way we can see a real bug.
WebAssembly `unreachable` instruction at file offset 0xfe.
-------------------
func[10]  _start
  address  0000f1
  args
  stack    []
-------------------
func[6]  wasm_linking_test_host.main
  address  000043
  args
  locals   0: I32(1114112), 1: I32(16), 2: I32(1114096), 3: I32(776), 4: I32(4), 5: I32(0), 6: I32(0), 7: I32(0), 8: I32(0), 9: I32(0), 10: I32(0), 11: I32(0), 12: I32(0), 13: I32(0)
  stack    []
-------------------
func[14]  app_proc
  address  000163
  args
  locals   0: I32(0)
  stack    []
-------------------
func[5]  linking_dummy_js_called_directly_from_roc
  address  000004
  args
  stack    []
-------------------

The problem is linking_dummy_js_called_directly_from_roc
As the name suggests, this is supposed to be a JS function called directly from Roc code. But the linker is deciding that it's dead code, so it replaces it with a "dummy" function. A dummy just contains a single Wasm instruction: unreachable.
But obviously this is not dead code, since it's called from Roc.

Figured out one of the linking problems. It was doing two operations in the wrong order.
The test without dead code elimination is passing.
There's still a bug with dead code elimination though. Functions called indirectly from the host are wrongly considered dead.

OK I figured out the second problem with the Wasm linking test for dead code elimination.
The relevant function is here:
https://github.com/roc-lang/roc/blob/main/crates/compiler/gen_wasm/src/backend.rs#L298
This logic says: "if main exists, but _start does not, then generate a _start function that calls main(0, NULL), and mark it as exported." (And anything that's exported is not dead code.)
With the latest Zig, the host has a wasm_linking_test_host.main instead of just main like before. The prefix is the same as the filename. This breaks the logic, especially since the main check is first.
In this specific case, the host already has a _start so I don't need to generate one. And it calls the right function wasm_linking_test_host.main. So I can just do check for _start first instead of main.
But I'm not sure what to do in the case where there is no _start and the main is prefixed with some name. Should I check for *.main? Or should I somehow pass down the filename of the host and assume that must be the prefix? I don't know what I can rely on here. And it has to work with all hosts, not just Zig hosts.

@Luukdegram you helped us last year on #3856 and we're finally coming back to it!
Do you have any insight on the changes I mentioned in my last comment, regarding name prefixes for main?

Do you have any insight on the changes I mentioned in my last comment, regarding name prefixes for main?

In the self-hosted compiler, we made the change to output the fully qualified name for symbol names. This removes ambiguity as multiple files can have the same declaration name. It is now always clear from where a symbol comes from. When it comes to Zig, for executable Wasm files, we'll always have the _start symbol and it is safe to say this will always execute the user's main. However, when libc is linked, this symbol will be named as main instead, due to the C convention.
Note that it will be exported as main and not the fully qualified name (or prefixed as you mentioned).
It's been a while and I don't fully remember the architecture of Roc. But are the Zig files compiled to an object file (e.g. build-obj) or already linked (using build-{exe|lib})? This is important as neither object files, nor executables generated by build-lib contain an entry point such as _start. The startup logic is never included for object files, and we don't require entry points for build-lib so there's no _start symbol there either.

It's weird that our linker has to generate _start but I did it because other linkers seem to do it and I needed it for some hosts.

When I read this I was a bit confused, as no linker I'm aware of does this. For example, in both wasm-ld and our in-house linker we simply check if _start symbol exists, and if so, export it. (Unless the user specified a different name for the entry symbol, or they specified -fno-entry). source. I'd expect Roc to be the owner of the startup process and generate such code, rather than the linker. Unless I misunderstood what you meant with generating _start.
Please let me know if I misunderstood anything or if there are follow-up questions. More than happy to help.

Do you have any insight on the changes I mentioned in my last comment, regarding name prefixes for main?

In the self-hosted compiler, we made the change to output the fully qualified name for symbol names. This removes ambiguity as multiple files can have the same declaration name. It is now always clear from where a symbol comes from. When it comes to Zig, for executable Wasm files, we'll always have the _start symbol and it is safe to say this will always execute the user's main. However, when libc is linked, this symbol will be named as main instead, due to the C convention. Note that it will be exported as main and not the fully qualified name (or prefixed as you mentioned).

OK great, then the commit I just made should work.

It's been a while and I don't fully remember the architecture of Roc. But are the Zig files compiled to an object file (e.g. build-obj) or already linked (using build-{exe|lib})? This is important as neither object files, nor executables generated by build-lib contain an entry point such as _start. The startup logic is never included for object files, and we don't require entry points for build-lib so there's no _start symbol there either.

For this test we're using build-obj. I believe that's what we always do for Wasm but I haven't checked other code paths.

It's weird that our linker has to generate _start but I did it because other linkers seem to do it and I needed it for some hosts.

When I read this I was a bit confused, as no linker I'm aware of does this. For example, in both wasm-ld and our in-house linker we simply check if _start symbol exists, and if so, export it. (Unless the user specified a different name for the entry symbol, or they specified -fno-entry). source. I'd expect Roc to be the owner of the startup process and generate such code, rather than the linker. Unless I misunderstood what you meant with generating _start.

Hmm OK well it was over a year ago I came to the conclusion that that was what must be happening, but it sounds like I'm wrong, and that's good to know! I can try taking out that logic and see if everything still works.

Please let me know if I misunderstood anything or if there are follow-up questions. More than happy to help.

Thanks!

@brian-carroll Just a warning, I just rebased on main and pushed a commit, so that may conflict with what you are working on, not sure. Just hoping we don't accidentally squash any work. Hopefully you can just reset to this version and build any new changes on top.

@bhansconnect thanks for letting me know, but I have no work in progress right now!
Actually I don't think I'm going to be able to find enough time to keep going and fix all the failing tests.
I fixed the linker issues, because realistically I'm the only one who had enough context for that!
But I expect the remaining failures will be more straightforward issues in Zig code. Maybe you or others will be able to make progress on those and let me know if things get stuck?

Good to know. Thanks for dealing with the linker. I'll take a look at the other issues.

The cli run tests are apparently fixed with an update to latest main but still some valgrind issues that I can't repro locally.

This is a good executable (no valgrind error) and a bad executable (with valgrind error). One was produced on an Ubuntu 22.04 VM, the other on the CI machine. I've confirmed that the executable is indeed the problem by copying it from the CI machine to the VM and testing it there. Tomorrow I plan on comparing both executables to find which dependency is causing the difference and thus also the error.
ubu_22_good_bad_list_concat_consumes_first_argument_no_nix.tar.gz

I investigated one of the gen_wasm failures gen_compare::boxed_eq_str
We have a HTML debug tool for this. I added a reminder about it to the test output.

Zooming in on the memory inspector, it looks like the body of the Str is messed up.

The failure of list_concat_consumes_first_argument does not come from a dependency but it looks like the native target passed to zig build-exe is part of the problem, on the CI machine it's targeting the haswell cpu and on the VM, a generic x86_64 CPU. I'm trying out workarounds now.

I'm just going to try this job on a different CI machine, this rabbit hole seems too deep :p

A new error has surfaced on the other CI machine:
 thread 'cli_run::expects_dev_and_test' panicked at '
___________
The roc command:

  "/home/big-ci-user/actions-runner/_work/roc/roc/target/release/roc dev --max-threads=1 /home/big-ci-user/actions-runner/_work/roc/roc/crates/cli_testing_examples/expects/expects.roc --"

had unexpected stderr:

  🔨 Rebuilding platform...
Bus error at address 0x7fe0f2062000
???:?:?: 0x5641749abdc7 in ??? (???)
Unwind error at address `:0x5641749abdc7` (error.AddressOutOfRange), trace may be incomplete

/home/big-ci-user/Downloads/zig-linux-x86_64-0.11.0/lib/std/mem.zig:726:19: 0x5641748f6785 in span__anon_4981 (host)
        return ptr[0..l :s];

roc build, roc test, and running the executable for this test all work, this error only happens when running roc dev. I'll continue investigating...

I've made issue #5904 for the Bus error.

The above issue is reproducible now by running the executable produced by dev manually. That way it also happens on the main branch.

Zooming in on the memory inspector, it looks like the body of the Str is messed up.

From my testing, the body of the string starts out fine. Like if you look at the bytes right after loading in main. It is when we call malloc that it would break. I think malloc just happened to be the function in my case. I assume it is a more general issue.
Also, all those extra 0x10, 0x00, 0x00, 0x00 are the broken values that I am seeing appearing in string printout. I'm gonna double check some refcount and printout stuff.

@brian-carroll , to clarify the corruption a bit better, I have been testing with wasm_str::str_concat_big_to_big.
The corruption happens during malloc (not sure if this is a malloc bug or more general linking issue or similar).
Call stack is concat -> reallocate -> reallocateFresh -> roc_alloc -> malloc.
Here is the code and memory right before malloc

Now right after the call to malloc:

You can now see the corrupt 0x10, 0x00, 0x00, 0x00 values at  the end of the second string.
Note: to reproduce this, you will need to close and re-open the memory inspector panel. It goes from Memory(20) to Memory(21)

It goes from Memory(20) to Memory(21)

Ok I think that means it's growing from 20 pages up to 21 pages, where each page is 64kB.
I think I initialise with 16 pages for the stack, 1 for the heap and whatever we need for constants (including constants from libc because we don't eliminate dead constants)

A very similar "Bus error" also happens on main on Ubuntu 20.04 outside nix. I'm going to bisect it.

It goes from Memory(20) to Memory(21)

Ok I think that means it's growing from 20 pages up to 21 pages, where each page is 64kB. I think I initialise with 16 pages for the stack, 1 for the heap and whatever we need for constants (including constants from libc because we don't eliminate dead constants)

@brian-carroll Is it possible that when we add an extra page we have to copy a bunch of data around and that could be causing the corruption? Either way, can you point me to the code that deals with new pages? Given the corruption seems to happen right as malloc ends up needing a new page, I assume it is somehow related.

@brian-carroll Is it possible that when we add an extra page we have to copy a bunch of data around and that could be causing the corruption? Either way, can you point me to the code that deals with new pages? Given the corruption seems to happen right as malloc ends up needing a new page, I assume it is somehow related.

What you are talking about would be a bug in the Wasm VM, or in the operating system, not in our Wasm program. The Wasm program is not dealing with physical RAM addresses or even OS virtual addresses. It's another layer of abstraction on top of that again. It issues the memory.grow instruction to the VM and its memory array just gets a bunch of extra addresses at the top. So there is nothing for it to copy around.
I agree it seems related though. It seems to point to malloc. The only code related to new pages is inside libc malloc, which we get from Zig. I'm not sure where the source code for that is.

So just fixed most of the wasm tests. 2 are still failing:

linking with dce is still broken.
gen_list::list_range_length_overflow

Looked at 2 some. Seems to be overall bugged generation?
From chrome:
Uncaught (in promise) CompileError: WebAssembly.instantiate(): Compiling function #1253:"rangeLengthHelp" failed: not enough arguments on the stack for drop (need 1, got 0) @+16398

From wasm-validate:
0037c95: error: function index out of order: 1247

Nice work on fixing the Wasm linking issue, that diff looks good! 🎉

Linking with DCE was working last time I pushed changes.
Maybe the fix for malloc broke it.

Looked at 2 some. Seems to be overall bugged generation? From chrome:
Uncaught (in promise) CompileError: WebAssembly.instantiate(): Compiling function #1253:"rangeLengthHelp" failed: not enough arguments on the stack for drop (need 1, got 0) @+16398

Yes this is bad code gen.
drop is a Wasm instruction that discards the value at the top of the stack machine. Usually some intermediate value.
Oh actually I think this points to the most complicated part of gen_wasm!
gen_wasm models the behaviour of the stack machine so that it always knows what's on top. If the operand of the next instruction already happens to be there (which happens a lot) then we can emit more efficient instructions. This shrinks code by like 30%.
But if our model of the stack machine is inaccurate, we can emit invalid code! And it looks like that's what's happening.
The model implemented by the CodeBuilder at crates/compiler/gen_wasm/src/code_builder.rs

From wasm-validate:
0037c95: error: function index out of order: 1247

I recognise this because I get it all the time. It's actually totally unrelated to the other issue with drop.
We don't generate the Wasm debug info quite correctly. Some functions are emitted in the wrong order. I think it's at the end of the host functions and start of the Roc functions. The first one gets emitted twice or something, I can't remember. It's harmless except for this misleading warning from wasm-objdump and wasm-validate.

@bhansconnect I get a totally different error, not the code gen thing.
---- gen_list::list_range_length_overflow stdout ----
Loading test host /Users/briancarroll/Documents/roc/target/debug/build/test_gen-f0faad1aafdbf503/out/wasm_test_platform.wasm
thread 'gen_list::list_range_length_overflow' panicked at 'assertion failed: `(left == right)`
  left: `[255, 0]`,
 right: `[]`', crates/compiler/test_gen/src/gen_list.rs:3864:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
note: panic did not contain expected string
      panic message: `"assertion failed: `(left == right)`\n  left: `[255, 0]`,\n right: `[]`"`,
 expected substring: `"User crash with message: \"List.range: failed to generate enough elements to fill the range before overflowing the numeric type"`

Yeah, that is the local error. In chrome I see the stack error.

As an extra note, I tried to debug this some yesterday. Initially, I thought it was a bug directly with checked addition, but when writing a unit test just for checked addition, it seemed to work. So my current guess is somehow we mess up the lambda and that leads to the wrapped checked addition not working correctly. That or somewhere else in the function I guess we pop an extra type and that messes up the conditional. Not really sure. This is just some base speculation.
I wanted to debug it in chrome but the stack issue prevented me.

As an extra note, I tried to debug this some yesterday. Initially, I thought it was a bug directly with checked addition, but when writing a unit test just for checked addition, it seemed to work. So my current guess is somehow we mess up the lambda and that leads to the wrapped checked addition not working correctly. That or somewhere else in the function I guess we pop an extra time and that messes up the conditional. Not really sure. This is just some base speculation.
I wanted to debug it in chrome but the stack issue prevented me.

I don't think those ideas are in the right direction.
Here's some background info:
A Wasm VM must statically validate a program before it even attempts to run it. This is a security feature to guard against running malformed binaries on random websites.
There is a static validation algorithm that can prove whether all the pushes and pops make sense at every point in the program. The fact that it's static is counter-intuitive. You would naturally expect it to be dynamic.
But this Chrome error means that V8 is refusing to even run the module because it did not pass validation.
I'm sure it's the code gen bug I mentioned. We are emitting the wrong number of pushes and pops due to a bug in the stack machine model.
I can tell you from hard-earned experience that this is NOT going to be a quick fix. It's not a matter of just poking around and trying stuff, because that will just break other edge cases. More likely I'm going to have to scrap the current approach and start again with a different one. This will be about my third time doing that.
This time I'd like to try to implementing it exactly as per the algorithm in the standard. I tried to figure that out before but it's designed for a VM, not a code generator, and I ended up going with something more intuitive. But obviously it doesn't work in all cases.
Since there's only one test failing I say we just disable it and create an issue to fix it.

Nightlies are good :tada:
The PR should now be ready for final review.

woooooooooo!!!! 😍  😍  😍  😍  😍
amazing work landing this!!!


i would like to see the comparation of ZOOM style between browsers. Thank you so much!

i would like to see the comparation of ZOOM style between browsers. Thank you so much!

This issue was imported from Google Moderator
Moderator votes: +3
Issue added by thaodns on 2012-12-06
To vote this issue up or down, simply include +1 or -1 in your comment.

This is duplicate of #1453, isn't it? So it should be closed...


Add Slaughterhouse X Sneedle and Migul

Song Name
Slaughterhouse X Sneedle and Migul
Artist Name
Sneedle and Migul
Source
Youtube
Youtube Link
fl1Az5ckxC0
Direct File Link
No response
Song ID
945695
Extra
Created from Auto Nong.
Created for level: 27690100

Ok

reject
the song is not synced, I suggest adding a delay


GraphQL - Nested Qualified Properties in Selection Set

What type of PR is this?
Improvement

What does this PR do / why is it needed ?
This PR adds support for passing arguments in nested fields in a GraphQL query. In pure this can be represented by qualified property.

Which issue(s) this PR fixes:

Fixes #
Other notes for reviewers:
The issue is of unique variable naming in graph fetch tree, since we only have global variables to a lambda function. Hence, we have some logic to handle this by modifying variable names by prepending them with path.
Does this PR introduce a user-facing change?

/easycla

/easycla

This PR is stale because it has been open for 30 days with no activity. Please remove stale label or add any comment to keep this open. Otherwise this will be closed in 5 days.

This PR was closed because it has been inactive for 35 days. Please re-open if this PR is still relevant.


release ready

Coverage remained the same at 99.276% when pulling bb12f123e7f94b615456eefe0cc4cad890d047f6 on marqh:mybinder into 7757d9589b35b500e769a7d48c399833dbfc503a on SciTools:master.


 Disable it by registering nil on RegisterProtocol for https.

one also may want to test the performance of http/1.1 against the http/2, so this should be tunable

Duplicate of https://github.com/rakyll/boom/pull/120.


Updated Compensation Package

In the donation letter, please update the compensation package detailed in Appendix A to accurately reflect the resources the Donor will provide. The Secretary is tasked with listing the various ways scientists residing in the properties can leverage these multiple resources. This update should ensure that when it comes time for government funding bodies to assess the resources already available, they will be confident in matching the donation.
The Donor's primary objective is to develop a fully automated ANDROID Ops framework that can launch an app with just "one click." Currently, the vision involves housing scientists in his properties, with the goal that by year 3, INSTAR Lab (a 501(c)(3) nonprofit research organization) will secure grant funding from bodies like the NSF (National Science Foundation).

I will work on updating the compensation package today by creating a list that is detailed and will show what resources scientists can utilize when residing in the donor's properties. By the end of the day this list should be available and is ready to be signed.


Dependency issues querydsl-jpa on querydsl-sql

It seems querydsl-jpa 4.1.4 does not declare dependency on querydsl-sql.
Error when querydsl-sql is missing:

COMPILATION ERROR :
some.package/SomeService.java:[40,30] cannot access javax.inject.Provider
class file for javax.inject.Provider not found

After checking querydsl-jpa / pom file, I see that the dependency on querydsl-sql is optional.
This is probably not a real issue.

Oh good catch!
Although I'm not sure we need... hmm
How are you depending on querydsl-jpa?

I was writing a simple Spring Boot command-line app.
Partial pom looks like this:

org.springframework.boot
spring-boot-starter-data-jpa

com.h2database
h2
runtime

org.projectlombok
lombok
true

org.springframework.boot
spring-boot-starter-test
test

com.querydsl
querydsl-jpa

com.querydsl
querydsl-sql
4.1.4

org.springframework.boot
spring-boot-starter-validation

I manually added querydsl-sql after getting compilation error.

Could you provide more details on the compilation issue?

I think this will will help. This is the version containing compilation error.
querydsljpa.zip

querydsl-jpa does not require querydsl-sql, but it does require  javax-inject (at least when using the QueryFactories).
QueryDSL 4.1.4 did not declare a dependency on javax-inject directly, thus relying on querydsl-sql to ship it transitively.
This was fixed in 4.2.0 by commit https://github.com/querydsl/querydsl/commit/e948321ea3a5003cb1be4b5feaaaf95c2b817f8f

querydsl-jpa does not require querydsl-sql, but it does require  javax-inject (at least when using the QueryFactories).
QueryDSL 4.1.4 did not declare a dependency on javax-inject directly, thus relying on querydsl-sql to ship it transitively.
This was fixed in 4.2.0 by commit https://github.com/querydsl/querydsl/commit/e948321ea3a5003cb1be4b5feaaaf95c2b817f8f


app sdk 1.6 preview1 Breaking Ui ( CommunityToolkit.WinUI.Controls )

Describe the bug
When i updated to App sdk 1.6 preview1 all community toolkit winui controls broke and got removed from the application
Steps to reproduce the bug

install CommunityToolkit.WinUI.Controls.SettingsControls
update to preview 1 app sdk
see all controls break and not show up

Expected behavior
Here see the expected bahavior

Screenshots

ui is fully broken experimantel 2 works and 1 to but it breaks after preview 1
NuGet package version
Windows App SDK 1.6 Preview 1: 1.6.240807006-preview1
Packaging type
Packaged (MSIX)
Windows version
Windows 11 version 22H2 (22621, 2022 Update)
IDE
Visual Studio 2022-preview
Additional context
Visual studio normal and preview both broke the ui

We're still working on testing the Toolkit against 1.6-preview1, see our tracking issue here: https://github.com/CommunityToolkit/Tooling-Windows-Submodule/issues/205
We've heard this from PowerToys as well, so it'll be good to keep this as a tracking issue on the WinUI side.
It's unclear if this is just an issue with version matching and the need for the toolkit to be built against the same version with the fix for #8810 (ADO 46368821), a regression from that, or something else.
First step is for us to finish getting a clean build of the Toolkit on 1.6-preview1 to investigate more and see if we see this same issue when the versions of the dependent SDK match.
We may have local bits now on 1.6-preview1 (and just our CI still failing); so we're investigating if we see this behavior with that local build. Latest discussion on getting a build from our CI is here: https://github.com/CommunityToolkit/Tooling-Windows-Submodule/pull/195#issuecomment-2293994881

Provided a repro for this scenario with locally built bits of the WCT built against preview1 and posted in the ADO. Can confirm we still see the same behavior, so seems like a regression somewhere and most likely independent of the other issues we've had building to this point.

Here is the full repo https://github.com/FirebrowserDevs/FireBrowserWinUi3

Use the experimantel branch amd update sdk then the issue will show

We have an initial build of WCT against preview1 here: https://dev.azure.com/dotnet/CommunityToolkit/_artifacts/feed/CommunityToolkit-PullRequests/NuGet/CommunityToolkit.WinUI.Controls.SettingsControls/overview/8.1.240819-pull-457.1127

Preview 1 wil fix the issues with app sdk Preview 1?

This is will be fixed in 1.6 GA.

Thanks @evelynwu-msft and @manodasanW for your help here! Mano provided me the change to the target and I was able to validate this fix on my machine against the preview1 bits. We'll see if we can work to validate the final bits ahead of release as well just to triple-check things look all good.

@michael-hawker i installed the pull version but the controls still break for me @evelynwu-msft

8.1.240820-pull-476.1131

the version mentions ( 8.1.240819-pull-457.1127  and latest pull breaks

@jarno9981 the fix is in the SDK itself not the Toolkit, there are no available bits that you can try directly for this to work for you without going back to the experimental2 release.
When 1.6 releases in full, this will be resolved. I was just commenting that with the fix that has been applied to the SDK that I have validated that everything looks good with the prior and latest bits from the Windows Community Toolkit.

@jarno9981 the fix is in the SDK itself not the Toolkit, there are no available bits that you can try directly for this to work for you without going back to the experimental2 release.
When 1.6 releases in full, this will be resolved. I was just commenting that with the fix that has been applied to the SDK that I have validated that everything looks good with the prior and latest bits from the Windows Community Toolkit.
so i need to install experimental 2

@jarno9981 the fix is in the SDK itself not the Toolkit, there are no available bits that you can try directly for this to work for you without going back to the experimental2 release.
When 1.6 releases in full, this will be resolved. I was just commenting that with the fix that has been applied to the SDK that I have validated that everything looks good with the prior and latest bits from the Windows Community Toolkit.

Any eta of the full release of the app sdk 1.6 so now they fix is experimental 2


update quick start instructions

Fixes #256
Signed-off-by: morrme<EMAIL_ADDRESS>

Thanks for this screen shot. These are a timesaver for reviewers.
It's nice to see what the Open Sans font looks like on different systems.

Shouldn't we keep the address to point out to after configuring Meshery. It shall be helpful for users.

@morrme Good job.
@leecalcote I agree with @Nikhil-Ladha.
Mentioning the address would be handy for  users, especially beginners.

You all are right. Presenting the user with URL is a better experience.
Consider though that that URL is specific to Docker deployments only.

Oh okay, then we can consider mentioning that. Another thing, what's the case then for other deployments then?

@leecalcote @Nikhil-Ladha @ashiscs @chandrashritii  Thank you for the input!
Should I hold off until a consensus is reached ?

Oh okay, then we can consider mentioning that. Another thing, what's the case then for other deployments then?

@Nikhil-Ladha great suggestion. The issue is that those other cases, particularly Kubernetes, is long and depends on any number of factors. We won't want to list those here, but point to the docs.

@morrme thanks for asking. I should've used more prescriptive language above. :)
In the default Docker deployment, Meshery will automatically open their browsers to http://localhost:9081. So, we don't even need to list a second step. It's a one shot motion from download, to install, to start. It's pretty sweet and we should market this aspect of the project better.
The Kubernetes deployments are varied and will take much verbiage to explain, so we won't. The Homebrew and Windows deployments have about three steps total, so they're pretty quick, but not something that we want to prominently list.
And so, while my initial ask was to reduce line 2 to a shorter phrase ("Open Meshery in your browser."), I'm going to update the request to change the section to say:
"Getting Started
with Meshery
Choose a platform and see how easy it is to start managing service meshes in a single command.
01 Choose your Platform
02 Manage
There is no step 2. Login and manage service meshes!"

Oh okay, then we can consider mentioning that. Another thing, what's the case then for other deployments then?

@Nikhil-Ladha great suggestion. The issue is that those other cases, particularly Kubernetes, is long and depends on any number of factors. We won't want to list those here, but point to the docs.

Gotcha!


Added Cisco Webex to applications.json

Pull Request
Title
Added Cisco Webex to applications.json
Type of Change

[x] New feature
[ ] Bug fix
[ ] Documentation update
[ ] Refactoring
[ ] Hotfix
[ ] Security patch
[ ] UI/UX improvement

Description
As I frequently use winutil I found myself missing Cisco Webex as an option to streamline the installation process.
Testing
I added the lines seen and ran ".\Compile.ps1 -run" afterward I installed Webex, and it worked without issue!
Impact
It adds Webex
Issue related to PR
None

Resolves #

Additional Information
not to my knowledge
Checklist

[x] My code adheres to the coding and style guidelines of the project.
[x] I have performed a self-review of my own code.
[ ] I have commented my code, particularly in hard-to-understand areas.
[ ] I have made corresponding changes to the documentation.
[x] My changes generate no errors/warnings/merge conflicts.

We are freezing application additions for now


Disable arrow key focus navigation for text fields

Description
This disables the arrow key focus navigation for text fields.  This was non-standard behavior for text fields, although it remains useful for other kinds of controls.
Related Issues
Fixes https://github.com/flutter/flutter/issues/42259
Tests

Added tests for Material and Cupertino text fields to make sure that arrow keys don't change focus.

Breaking Change

[X] No, this is not a breaking change.

Actually, this exposed an issue in the focus subsystem.  I have a fix here: https://github.com/flutter/flutter/pull/42554.  Once that lands, this PR will pass tests.

Thanks for fixing this. The change looks good.
My only concern with this approach is that it disables arrow-key navigation in text fields with no way to re-enable it. Ideally, arrow-key navigation in text fields would be off by default. But if a developer decides that they want this behavior in their app, they should be able to do so.

Yes, I share that concern about not being able to re-define them, but I'm not sure how to implement that, other than adding an explicit flag to the text field to not re-map them. We already have too many flags, and this one seems oddly specific.
The other way I could block it would be to bind the DirectionalFocusAction to do nothing, but then the developer wouldn't be able to bind other keys to that action (e.g. maybe they want shift-left-arrow to navigate left).
Being able to re-bind the arrow keys to something is probably not as useful as it seems, however, since the _Editable will eat the left/right arrow keys most of the time before the shortcut gets activated, and when it's a multiline field, it'll eat the up/down arrow keys too. Not that it wouldn't be useful sometimes, but only rarely.

@mdebbar, can I take that as an "LGTM", or do you want someone else to review it?

Another way this could be implemented is to check the current focus inside the action code when the action is invoked, and have the action do nothing if it's a text field.  Then if someone really wanted to remap the keys, they could just replace the default action with another one that doesn't do that check.
The down side of that approach is that it would only work for text fields that wrapped EditableText, but that's a pretty good bet, since writing your own text widget is very hard. And if you're up for doing that, then you can easily define your own action that does what you want for your text fields.
Would that be a better implementation, do you think?

Yeah I think I prefer that approach. It also removes the duplication of code in material and cupertino text fields.

Oh, crap, I didn't see your comment until after I submitted.  I'll correct it tomorrow.

I was happy to see that focus traversal was implemented by using the arrow keys and very sad that it was removed again. I am developing a desktop app for macOS and Windows.
I there more info why you consider focus traversal with arrow keys as non-standard behaviour?

It's actually only removed for text fields.  Other controls will continue to have arrow key focus traversal. We removed it for text fields because it is non-standard for both mobile and desktop, and so was surprising to users.
If you still want focus traversal for text fields in your app, you will be able to add it back in again once I implement the change I alluded to in https://github.com/flutter/flutter/pull/42533#issuecomment-541992195 (which I'm going to attempt today). Once that exists, you will be able to bind the arrow keys to a directional focus action that doesn't check for text fields, it just won't be the default.


net, setup: Replace configstate for the plug/hotplug flow

What this PR does / why we need it:
Refactor further the network setup flow.
Simplify the flow by moving the configstateflow logic to netpod (for plug/hotplug).
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
A follow up PR will remove configstatecompletely by moving the unplug flow logic to netpod as well.
Checklist
This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.

[x] Design: A design document was considered and is present (link) or not required
[x] PR: The PR description is expressive enough and will help future contributors
[x] Code: Write code that humans can understand and Keep it simple
[x] Refactor: You have left the code cleaner than you found it (Boy Scout Rule)
[x] Upgrade: Impact of this change on upgrade flows was considered and addressed if required
[x] Testing: New code requires new unit tests. New features and bug fixes require at least on e2e test
[x] Documentation: A user-guide update was considered and is present (link) or not required. You want a user-guide update if it's a user facing feature / API change.
[x] Community: Announcement to kubevirt-dev was considered

Release note:
NONE

/test pull-kubevirt-build
/test pull-kubevirt-build-arm64
/test pull-kubevirt-generate
/test pull-kubevirt-manifests
/test pull-kubevirt-unit-test
/test pull-kubevirt-e2e-k8s-1.27-sig-network

/test pull-kubevirt-e2e-k8s-1.27-sig-network

change: Answered review comments.

/test-required

change: Added a comment to an unit test assertion per the review request.

change: Rebase

change: Remove unused stub error members.

/approve

change: Changed an interface name per review request.
Change: Rebase

/test pull-kubevirt-e2e-k8s-1.26-sig-storage


Add countdown and tweak ball physics

Not tested with network play, countdown may not work for both players.
I have attached the countdown text element to the network spawned "Score" prefab, so it should exist for all players. I'm just not sure that the OnTriggerReset event will be sent to all network players.

Just remembered something: the countdown graphics and the spawn delay are both independently set to 3 seconds. Probably it should be set in one place and passed to the other (one way would be to create a new event type for OnTriggerReset with an argument that is the delay duration).

Turns out that OnTriggerReset and ResetBall calls were after return statements that bailed if the game was running as a network client. I shuffled stuff around and it all seems to work now.
Thanks heaps! :D


Request for subsubmenus

Request for subsubmenus

Already supported in the dropdown, just create child pages and make sure they are visible (ie, numeric prefixed):
01.home/default.md
02.top-level/default.md
    01.a-sub-folder/default.md
    02.another-sub-folder/default.md
...

Hi Andy, thanks for your reply. I was hoping for subsubpages (an extra
level down).
On Fri, 11 Jun 2021, 12:49 Andy Miller @.***> wrote:

Already supported in the dropdown, just create child pages and make sure
they are visible (ie, numeric prefixed):
01.home/default.md
02.top-level/default.md
01.a-sub-folder/default.md
02.another-sub-folder/default.md
...
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/getgrav/grav-theme-quark/issues/179#issuecomment-859494671,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AC4XGQ5IBZX7EKGMTWDQ5FTTSHS5LANCNFSM46QKCPLA
.

Just keep going adding sub pages.

You're right.
This does not work for de (sub)sections (=side menu) in the Open Publishing Space theme, nor does it in the RTFM theme.


Add PlaceHolder functionality for arguments

Just like you can set a placeholder for flags, you can now set
a placeholder for arguments, to be used in the help of the command
instead of the arg name.
This can for example be used for compound arguments; To set the
placeholder to list all parts, e.g.: <first>[:<second>]

Thanks!


Menu items missing after rotation

If rotation is being handled by the app (by setting android:configChanges="orientation|keyboardHidden|screenSize" for that activity in the manifest), the library does not draw all menu items after rotating the device.
I have 5 items in my bar, but after rotating only 3 are visible. Clicking on one of the items will cause the others to reappear.

i have same problem ,but if i dont set configChanges  it can work currently,how to resolve this problem @RoyWallace


Updated the Repo

Updated the repository for a more modern build system:

AppVeyor file
using Cake build
added NuGet
using WP8 instead of WP7
Android sample now uses app compat for cool looks

Going to pull this from my other branch... the one I just closed :)


VcsInfoTest: Fix test type to WordSpec

StringSpec is not supposed to be used with nested tests.

Huh, interesting. Could you elaborate (in the commit message) what "fix" actually means here? Did (all of) the test cases even run before?

Huh, interesting. Could you elaborate (in the commit message) what "fix" actually means here? Did (all of) the test cases even run before?

I have added a brief comment to the commit message. Test execution works, but the parent name is not configured correctly, which would not work with flattening the test names for reporting on CI (#2872).


Update Humble/Rolling Python version to 3.10.4

Matches the version on Jammy
https://github.com/ros-infrastructure/rep/pull/349

We didn't get to this for Humble or Rolling, so I'm going to close this out for now.


Feature/notification channels

Extend the task notification feature to include the concept of channels.
Description

Currently, one task can notify another through the task notification value.
In a scenario where a task receives notification from many sources, could be interesting
a feature for ignoring the notifications from determinated sources, depending on the
moment.
Without this feature, the notified task must be awaken if it was blocked, check if the
notification applies in this moment and return to wait if it is not the case.
With this feature, one task can be listening for notification in up to 7 channels.
Notifications coming from channels the task is not listening at are ignored.
For compatibility there is one reserved channel , from where the standard notifications (from
calls not using this feature) come from.
Checklist:

[x] I have tested my changes. No regression in existing tests.
[ ] My code is Linted.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thank you for proposing this and it is a good idea. As Richard mentioned here, https://github.com/aws/amazon-freertos/pull/1237, we are working on a more generic solution which will allow a task to receive notifications from multiple sources along with notification values. That, I think, will address this case as well.
Thanks again for your proposal and contribution.


Unable to build on Linux

I am unable to build and install go-peerflix on arm v7 hardfloat. I get the following error. I'm using Scaleway if it helps.
go get github.com/Sioro-Neoku/go-peerflix
# github.com/anacrolix/torrent/dht
/root/go/src/github.com/anacrolix/torrent/dht/addr.go:6: import /root/go/pkg/linux_arm/github.com/anacrolix/missinggo.a: object is [linux arm go1.2.1 X:none] expected [linux arm go1.4.2 X:precisestack]
# github.com/anacrolix/utp
/root/go/src/github.com/anacrolix/utp/utp.go:29: import /root/go/pkg/linux_arm/github.com/anacrolix/jitter.a: object is [linux arm go1.2.1 X:none] expected [linux arm go1.4.2 X:precisestack]

Seems like the error is originating from https://github.com/anacrolix/torrent .
I opened the ticket to coordinate about the fixes.

It's now fixed. If anyone's got a similar problem, just run

rm -r "$GOPATH/pkg"


Use smaller and compressed varients of buttons and form components

Description
Replace instances of EuiButton that don't have an explicit sizing attribute to EuiSmallButton*.
Replace instances of Eui<form elements> that don't have density attributes to EuiCompressed<form elements>.
Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.
[X] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

The tests will fail on EuiCompressedSuperDatePicker until OUI 1.8.2 is introduced in OSD; will leave the PR open while waiting for that.

Thanks for the change Miki! Will leave the pr open untils OUI 1.8.2 is introduced in OSD and all CI passes


Add support for arbitrary crate to Value.

This adds the option to derive the Arbitrary trait (defined in the arbitrary crate) for serde_json::Value, gated behind the arbitrary_value feature.

Any specific reason for this (not that there needs to be one)? Would there be some other form of implementation that you would be interested in?
As it's a small change I can maintain the fork for my personal use, but this feature seems to be quite common to have (e.g. indexmap and chrono have it).


test_skip_glob() has assert file_names == file_names

See
https://github.com/timothycrosley/isort/blob/develop/test_isort.py#L3342
This assertion will always be true

Thanks for reporting!
This has been fixed in develop


Argo lint outputs are inconsistent between argo cron lint and argo template lint

Checklist:

[x] I've included the version.
[x] I've included reproduction steps.
[ ] I've included the workflow YAML.
[ ] I've included the logs.

What happened:
Ran argo template lint and argo cron lint for WorkflowTemplate and CronWorkflow files, respectively, and their outputs were quite different.
WorkflowTemplate manifests validated

vs
./json-to-validate.json is valid
Cron workflow manifests validated

What you expected to happen:
I expected the outputs to be, roughly, the same (could include file validated, or not, but these should be the same).
WorkflowTemplate manifests validated

vs
CronWorkflow manifests validated

How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

Argo version:

v2.8.0

Kubernetes version :

clientVersion:
  buildDate: "2019-12-11T12:42:56Z"
  compiler: gc
  gitCommit: 6c143d35bb11d74970e7bc0b6c45b6bfdffc0bd4
  gitTreeState: clean
  gitVersion: v1.15.7
  goVersion: go1.12.12
  major: "1"
  minor: "15"
  platform: darwin/amd64
serverVersion:
  buildDate: "2020-06-01T22:20:10Z"
  compiler: gc
  gitCommit: fb7add51f767aae42655d39972210dc1c5dbd4b3
  gitTreeState: clean
  gitVersion: v1.15.12-gke.2
  goVersion: go1.12.17b4
  major: "1"
  minor: 15+
  platform: linux/amd64

Message from the maintainers:
If you are impacted by this bug please add a 👍 reaction to this issue! We often sort issues this way to know what to prioritize.

code is not considering workflow namespace
https://github.com/argoproj/argo/blob/dbb39368295cbc0ef886e78236338572c37607a1/cmd/argo/commands/cron/lint.go#L27

@sarabala1979 - this is a different issue than the one of not using the respective namespace.


Add state getter to returned object in createStore

Would there be any disadvantage to adding an ES6 getter to the object that is returned by createStore, like so:
export default function createStore(reducer, preloadedState, enhancer) {
  ...implementation

  return {
    dispatch,
    subscribe,
    getState,
    get state() {
       return currentState;
    },
    replaceReducer,
    [$$observable]: observable
  }

That way, people can just call store.state instead of store.getState(). I would like to add it if there are no objections.

Appreciate the suggestion, but I see no actual benefit to adding this.  The store API is well known, all existing code uses getState(), and having two separate ways to access the state that do the exact same thing isn't going to be useful.


Deploying into a kubernetes cluster

Hey
In terms of kubernetes, how is this deployed in the cluster?
Is it via a DaemonSet / Deployment etc?

This needs to run on every node so a DaemonSet is your best choice.

@craigwillis85 As an example, you can refer to the kubernetes/cluster/addons/fluentd-elasticsearch fluentd daemonset manifest: https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/fluentd-elasticsearch/fluentd-es-ds.yaml