/etc/default/go-agent template is not replaced on run

For some reason we still have something like
GO_SERVER_URL=https://go-server:8154/go/

in /etc/default/go-agent when the agent is started.
And so the supplied GO_SERVER_URL is not used but instead stays as go-server.
The log shows confirms:
*** Running /etc/rc.local...
*** Booting runit daemon...
*** Runit started as PID 8
Starting Go Agent to connect to server go-server ...
[Wed Jan 11 10:59:31 UTC 2017] using default settings from /etc/default/go-agent
logFile Environment Variable= null
Logging to go-agent-bootstrapper.log
0 [TouchLoopThread-2] INFO com.thoughtworks.go.agent.launcher.Lockfile  - Using lock file: /var/lib/go-agent/.agent-bootstrapper.running
Jan 11 10:59:31 gocd-agent-11-s7ma4 syslog-ng[15]: syslog-ng starting up; version='3.5.3'
493 [main] ERROR com.thoughtworks.go.agent.launcher.ServerBinaryDownloader  - Couldn't update admin/agent-launcher.jar. Sleeping for 1m. Error:
java.net.UnknownHostException: go-server: Name or service not known
	at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
	at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:922)
	at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1316)
	at java.net.InetAddress.getAllByName0(InetAddress.java:1269)
	at java.net.InetAddress.getAllByName(InetAddress.java:1185)
	at java.net.InetAddress.getAllByName(InetAddress.java:1119)
	at org.apache.http.impl.conn.SystemDefaultDnsResolver.resolve(SystemDefaultDnsResolver.java:45)
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:111)
	at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)
	at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)
	at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
	at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)
	at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107)
	at com.thoughtworks.go.agent.launcher.ServerBinaryDownloader.fetchUpdateCheckHeaders(ServerBinaryDownloader.java:100)
	at com.thoughtworks.go.agent.launcher.ServerBinaryDownloader.downloadIfNecessary(ServerBinaryDownloader.java:75)
	at com.thoughtworks.go.agent.launcher.AgentLauncherImpl.launch(AgentLauncherImpl.java:78)
	at com.thoughtworks.go.agent.bootstrapper.AgentBootstrapper.go(AgentBootstrapper.java:77)
	at com.thoughtworks.go.agent.bootstrapper.AgentBootstrapper.main(AgentBootstrapper.java:58)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at com.simontuffs.onejar.Boot.run(Boot.java:306)
	at com.simontuffs.onejar.Boot.main(Boot.java:159)

Somehow this line https://github.com/gocd/gocd-docker/blob/master/phusion/agent/go-agent-start.sh#L10 fails or is not run...

@ayoyoness: I had recently changed the part of the description which talks about how to start the agent and didn't check whether it was working. :(
Either of this should work:
docker run -ti --link container-id-of-go-server:go-server gocd/gocd-agent

OR:
docker run -ti -e GO_SERVER=hostname-of-go-server gocd/gocd-agent

Note that in the second form, it is expected that the server is at port 8154. I will be submitting a PR soon, to make the environment variable GO_SERVER_URL work.
Thanks!

Submitted a PR for this (#67). Changed description on DockerHub to show something which works for now.

We've tried building a docker image from your changes but it still fails while launching the gocd-agent with the following error:
muppal@eumuppal  ~  docker run -it -e GO_SERVER_URL=https://<IP_ADDRESS>:32771/go mansab/gocd-agent:arvindsv
*** Running /etc/rc.local...
*** Booting runit daemon...
*** Runit started as PID 8
Starting Go Agent to connect to server go-server ...
sed: -e expression #1, char 40: unknown option to `s'
[Fri Jan 13 14:54:30 UTC 2017] using default settings from /etc/default/go-agent
logFile Environment Variable= null
Logging to go-agent-bootstrapper.log
0 [TouchLoopThread-2] INFO com.thoughtworks.go.agent.launcher.Lockfile  - Using lock file: /var/lib/go-agent/.agent-bootstrapper.running
Jan 13 14:54:30 956ef6a45373 syslog-ng[14]: syslog-ng starting up; version='3.5.3'
439 [main] ERROR com.thoughtworks.go.agent.launcher.ServerCall  - Couldn't access Go Server with base url: https://<IP_ADDRESS>:8154/go/admin/agent-launcher.jar: org.apache.http.conn.HttpHostConnectException: Connect to <IP_ADDRESS>:8154 [/<IP_ADDRESS>] failed: Connection refused (Connection refused)
java.lang.Exception: Couldn't access Go Server with base url: https://<IP_ADDRESS>:8154/go/admin/agent-launcher.jar: org.apache.http.conn.HttpHostConnectException: Connect to <IP_ADDRESS>:8154 [/<IP_ADDRESS>] failed: Connection refused (Connection refused)
	at com.thoughtworks.go.agent.launcher.ServerCall.invoke(ServerCall.java:78)
	at com.thoughtworks.go.agent.launcher.ServerBinaryDownloader.headers(ServerBinaryDownloader.java:130)
	at com.thoughtworks.go.agent.launcher.ServerBinaryDownloader.downloadIfNecessary(ServerBinaryDownloader.java:106)
	at com.thoughtworks.go.agent.launcher.AgentLauncherImpl.launch(AgentLauncherImpl.java:78)
	at com.thoughtworks.go.agent.bootstrapper.AgentBootstrapper.go(AgentBootstrapper.java:72)
	at com.thoughtworks.go.agent.bootstrapper.AgentBootstrapper.main(AgentBootstrapper.java:54)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at com.simontuffs.onejar.Boot.run(Boot.java:306)
	at com.simontuffs.onejar.Boot.main(Boot.java:159)
Caused by: org.apache.http.conn.HttpHostConnectException: Connect to <IP_ADDRESS>:8154 [/<IP_ADDRESS>] failed: Connection refused (Connection refused)
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:158)
	at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)
	at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)
	at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
	at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)
	at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107)
	at com.thoughtworks.go.agent.launcher.ServerCall.invoke(ServerCall.java:55)
	... 11 more

We suspect the issue is with the sed replace line which works for mac but not inside the container (which is Ubuntu).
So, we tried to debug it a bit and came up with the following sed replace statement (which works):
sed -i -e "s@GO_SERVER_URL=.*@GO_SERVER_URL=${GO_SERVER_URL}@" /etc/default/go-agent

/etc/default/go-agent is getting imported on run replacing the provided environment var GO_SERVER_URL with the one in it, so it results in GO_SERVER_URL  = https://<IP_ADDRESS>:8154/go

@agalpin: Are you saying it's working fine now? Or not?

I had to manually remove the first line of /etc/default/go-agent which is GO_SERVER_URL=https://<IP_ADDRESS>:8154/go to make it work


Wagtail Search as a separated package

Is it possible to have wagtail search as a separated/reusable package?
I mean, wagtail search has quite good implementation and seems to be reusable for a lot of other projects (with some adjustments indeed).
2-3 years ago I needed elasticsearch in one of projects I was working on and Wagtail's implementation was the best match. It was quite easy to get only needed modules from wagtail search and reuse them in that project. So, in my opinion it's possible to maintain wagtailsearch as a separated package/project so it might be reused for other projects.
What do you think?

I totally agree with you. And same goes for other Wagtail components, like the admin interface, StreamFields or RichTextFields. Ideally, we should be able to use all that without having to use a CMS and create the corresponding tables.
I think I can speak for the team by saying we definitely want to make Wagtail more modular and not necessarily focused on a tree structure of pages. But I don't think we will split Wagtail into multiple PyPI packages, at least in the next  2-3 years. It's way easier to create releases of a single monolithic package. It seems less elegant, we won't have to issue a dozen releases every two months, with a compatibility grid to explain what is compatible with what, and warnings for potential incompatibilities, etc.
To make it short, one day we will be able to use only wagtail search, but we will have to install the whole PyPI package of Wagtail for that. I don't think that's a problem, we install Django completely yet we rarely use more than 70 % of its components.
In my opinion, Wagtail should be a high level framework for making sites, just a level higher than Django. And for some points like the admin interface, Wagtail proposes a replacement for a Django component that's dying. By the way, I think Django admin will have to be removed from Django at some point. And Wagtail's admin could become the official replacement ;)

Sorry for late response.
I understand your rationale and you're doing great job on improving Wagtail. And it makes sense to install wagtail if I'm going to replace django's admin with it and use the search package.
However, if I need only search and I don't use admin (I have projects like this), it doesn't seem right to install a CMS (great indeed) only to get good integration with elasticsearch.
As a suggestion, you might isolate independent packages in separated repositories and link them into main repo using git submodules. In this way you don't have to deploy each package in PyPi, on the other hand, I can still install only that package using pip.

But I don't think we will split Wagtail into multiple PyPI packages, at least in the next 2-3 years.

As "next 2-3 years" has passed, raising the topic again 😉 .
I looking to rework search in the Django-Oscar and wondering if Wagtail search extraction would get into the further development plans.

This would be pretty cool. I’m going to convert this to Discussions as this seems to be the kind of big idea that’d require lots of work and thought just to validate the concept


FileNotFoundError

no matter what i do i just end up with this exception whenever i run one example you provided, no idea whats wrong

OOPS  my mistake forgot to to pull before running the code


Known Wrong Answers - Numeric Question Units Highlighting

When answering numeric questions, if a known wrong answer is chosen then both the value and units box get highlighted red. This is often despite the fact that the units are correct. If a random wrong answer is entered, the units seem to be correctly verified - so we should do similar for known wrong answers.
I think the issue is somewhere in validateWithUnits in isaac/quiz/IsaacNumericValidator.java . . .

There are in fact two bugs here, though both caused by the same underlying issue:

When a student answer exactly matches a known answer in exactStringMatch(...), the correctness of the units is set by whether or not the units match those in the known answer (see these lines) despite the fact that the known answer may be a known wrong answer.

E.g. if the correct answer is 1J and a known wrong answer is 1kW, and the student enters 1kW; the feedback they receive does not say the unit is incorrect even though it is.
Likewise, if the right answer is 1J and the only other known (incorrect) answer is 2kW, and the student enters 2J; the feedback they receive says both the value and unit are incorrect when the unit is in fact fine.

When a student answer matches both the value and units of a known answer in validateWithUnits(...), the correctness of the units is set by whether or not the choice it matched with is correct (see these lines). This can only happen if the sig fig rounding code comes into play (since the exact string match bug above would have been encountered first).

E.g. if the correct answer is 1.7N to 2sf and a known incorrect answer is 1.8N, and the student enters 1.77N; the feedback the receive will be the sig fig warning - but the units correctness part of this is set by validateWithUnits(...) which rounds 1.77 to 1.8, matches the known wrong answer and so says the units are incorrect when they are in fact fine.

In both cases the correctness of the units may well be unrelated to the correctness of the whole choice.
The simplest and most failsafe way to fix this would be to check whether the units match those of any known correct answer. This would require no content changes and couldn't be affected by poor data entry by the content team. However you could get into the fun scenario where the value is correct and the units are correct but overall they are not correct (e.g. consider 2300W to 2sf with 2.3kW as a known right answer; 2.3W would have a correct value and the correct units but be incorrect overall!). We could warn users to check the prefixes of their units at this point, if that is indeed the only way to get into that scenario (it's probably not; think feet vs metres or radians vs degrees both accepted).
Another alternative is for every choice to have the correctness of the value and units indicated separately (and the overall correcteness inferred from AND-ing the two). This requires lots of work, but cannot easily be fooled since humans are supposed to be smarter than machines!


fix: file name is not unique enough when running tests in parallel

Motivation/Description of the PR

The fileName is not unique when running tests in parallel and it leads to the issue that attachment couldn't attach to allure report.

Applicable helpers:

[ ] Playwright

Type of change

[ ] :bug: Bug fix

Checklist:

[ ] Tests have been added
[ ] Documentation has been added (Run npm run docs)
[ ] Lint checking (Run npm run lint)
[ ] Local tests are passed (Run npm test)

a good fix, as a result of our discussion :raised_hands:


Android analyze command should run pub

The android command will build the android project partially and thus will need to run pub
Pre-launch Checklist

[ ] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[ ] I read the Tree Hygiene wiki page, which explains my responsibilities.
[ ] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[ ] I signed the CLA.
[ ] I listed at least one issue that this PR fixes in the description above.
[ ] I updated/added relevant documentation (doc comments with ///).
[ ] I added new tests to check the change I am making, or this PR is test-exempt.
[ ] I followed the breaking change policy and added Data Driven Fixes where supported.
[ ] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

You can ignore the test failures, they are broken upstream.


191

crash-2022-09-08_17.50.38-server.txt

Did you have a solution to the error?

GA, not really
Enviado desde Correohttps://go.microsoft.com/fwlink/?LinkId=550986 para Windows
De: @.>
Enviado: jueves, 8 de septiembre de 2022 04:31 p. m.
Para: @.>
CC: @.>; @.>
Asunto: Re: [JustDoom/MineCrash] 191 (Issue #4)
Did you have a solution to the error?
—
Reply to this email directly, view it on GitHubhttps://github.com/JustDoom/MineCrash/issues/4#issuecomment-1241254395, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AJCCQ533SPMOLAFY5D2FDKTV5JLKJANCNFSM6AAAAAAQH7ZUP4.
You are receiving this because you authored the thread.Message ID: @.***>

Closed in favor of https://github.com/Eimer-Archive/MineCrashSolutions/issues (And not having a solution)


Photon allows violation of SMPTE ST 2067-3:2016 part 6.9.3

Specifically: "A given TrackId value shall be used by only one Sequence in each Segment and, if used in one Segment, it shall be used by exactly one Sequence in all other Segments."
For example, in the attached CPL file, there are 2 segments, but TrackId urn:uuid:1f5b6544-3572-4290-9ad9-b518214de94c is only used once.
CPL_IMF9774102_ALOHA_D_2D_UHD_16X9_LB_185_2398_48K_ENG_DS_ME_DS_ENG_51_OPT_M_OPT_M_ENG_9e3701c3-199e-4776-b5d8-7447c64de87a.txt

Thanks for pointing this out. We will update Photon to add validation of sequence TrackId across segments.

I do see following errors with the above CPL:
15 Jun 2017 23:56:08,926 [INFO ] [Composition]: CompositionPlaylist Document has 5 errors and 0 warnings
15 Jun 2017 23:56:08,931 [ERROR] [Composition]: ERROR-Unsupported/Missing ApplicationIdentification  in CPL [Photon version: 0.0.0]
15 Jun 2017 23:56:08,931 [ERROR] [Composition]: ERROR-Segment represented by the ID urn:uuid:160098c5-e19a-46a8-8408-b73270bd76f9 in the Composition represented by ID 9e3701c3-199e-4776-b5d8-7447c64de87a contains virtual track represented by ID 105ae950-93e8-4206-80b0-5adc2c15e570, which does not appear in all the segments of the Composition, this is invalid [Photon version: 0.0.0]
15 Jun 2017 23:56:08,931 [ERROR] [Composition]: ERROR-Segment represented by the ID urn:uuid:160098c5-e19a-46a8-8408-b73270bd76f9 in the Composition represented by ID 9e3701c3-199e-4776-b5d8-7447c64de87a contains virtual track represented by ID 340a3572-7f94-4eb4-90ab-d2e225fa4840, which does not appear in all the segments of the Composition, this is invalid [Photon version: 0.0.0]
15 Jun 2017 23:56:08,931 [ERROR] [Composition]: ERROR-Segment represented by the ID urn:uuid:160098c5-e19a-46a8-8408-b73270bd76f9 in the Composition represented by ID 9e3701c3-199e-4776-b5d8-7447c64de87a contains virtual track represented by ID 3ff8a451-5544-4018-99ab-2aca1ac27d5a, which does not appear in all the segments of the Composition, this is invalid [Photon version: 0.0.0]
15 Jun 2017 23:56:08,931 [ERROR] [Composition]: ERROR-EssenceDescriptorList is either absent or empty. [Photon version: 0.0.0]
We do have validation SMPTE ST 2067-3:2016 part 6.9.3. If you do not have all the track IDs exactly once in each segment then one of the following errors will be seen:

"Segment represented by the ID ... in the Composition represented by ID ... contains virtual track represented by ID ... which does not appear in all the segments of the Composition.
"Number of distinct virtual trackIDs in a segment = ..., different from first segment ...


frogbot scan-pull-request fails

Describe the bug
the frogbot scan-pull-request command fails.
I can see the following error in my runner's log(The URL is, of course, modified):
GET https://mygitlaburl.com/my/project/path/merge_requests/XXXXX/notes: 404 {message: 404 Not found}
The thing is that the XXXXX which represents the merge number does not exisit.
Can anyone assist?
Thanks
Current behavior
The frogbot scan-pull-request generates a URL that does not exist
Reproduction steps
No response
Expected behavior
No response
JFrog Frogbot version
2.11.6
Package manager info
nuget
Git provider
GitLab
JFrog Frogbot configuration yaml file
No response
Operating system type and version
linux (K8s self hosted runner)
JFrog Xray version
No response

Hello @RotemNayaxUser,
We appreciate your usage of Frogbot and bringing this matter to our attention.
Could you kindly supply us with debug level logs? These logs will greatly aid us in pinpointing the underlying issue. Additionally, sharing the YAML workflow file would assist us in identifying the source of the "XXXXX" variable.
Best Regards,
Eyal Delarea.

Hi,
Theses are the debug log before it fails:
11:54:58 [Info] Scanning 125 nuget dependencies ... 11:54:58 [Debug] Sending HTTP POST request to: https://my_repo_url.jfrog.io/xray/api/v1/scan/graph?watch=Sec-watch&scan_type=dependency 11:54:58 [Info] Waiting for scan to complete on JFrog Xray... 11:54:58 [Debug] Sending HTTP GET request to: https://my_repo_url.jfrog.io/xray/api/v1/scan/graph/3b57df66-c789-49e1-43a8-7202a2c83300 11:54:58 [Debug] Get Dependencies Scan results... (Attempt 1) 11:55:03 [Debug] Sending HTTP GET request to: https://my_repo_url.jfrog.io/xray/api/v1/scan/graph/3b57df66-c789-49e1-43a8-7202a2c83300 11:55:04 [Info] Frogbot is configured to show all vulnerabilities 11:55:04 [Debug] Looking for an existing Frogbot pull request comment. Deleting it if it exists... 11:55:04 [Error] GET https://my_repo_url/api/v4/projects/develop/services/devops-sandbox/merge_requests/41057/notes: 404 {message: 404 Not found}
The YAML:
`.frogbot-dotnet-scan:
image: ${DOTNET_SDK_NODE_IMAGE}
rules:
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
variables:
FROGBOT_CMD: "scan-pull-request"
JF_GIT_BASE_BRANCH: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME
variables:
JF_URL: ${JF_URL}
JFROG_CLI_LOG_LEVEL: DEBUG
JF_USER: ${JF_USER}
JF_PASSWORD: ${JF_PASSWORD}

JF_GIT_TOKEN: ${JF_GIT_TOKEN}

# Predefined GitLab variables. There's no need to set them.
JF_GIT_PROVIDER: gitlab
JF_GIT_OWNER: $CI_PROJECT_NAMESPACE
JF_GIT_REPO: $CI_PROJECT_NAME
JF_GIT_PULL_REQUEST_ID: $CI_MERGE_REQUEST_IID

# [Optional, default: https://gitlab.com]
# API endpoint to GitLab
JF_GIT_API_ENDPOINT: https://my_git_repo

# [Optional]
# If the machine that runs Frogbot has no access to the internet, set the name of a remote repository
# in Artifactory, which proxies https://releases.jfrog.io
# The 'frogbot' executable and other tools it needs will be downloaded through this repository.
# JF_RELEASES_REPO: ""

##########################################################################
##   If your project uses a 'frogbot-config.yml' file, you can define   ##
##   the following variables inside the file, instead of here.          ##
##########################################################################

# [Mandatory if the two conditions below are met]
# 1. The project uses npm, yarn 2, NuGet or .NET to download its dependencies
# 2. The `installCommand` variable isn't set in your frogbot-config.yml file.
#
# The command that installs the project dependencies (e.g "npm i", "nuget restore" or "dotnet restore")
JF_INSTALL_DEPS_CMD: "dotnet restore ${CSPROJ_PATH}"

# [Optional, default: "."]
# Relative path to the root of the project in the Git repository
# JF_WORKING_DIR: path/to/project/dir

# [Optional]
# Xray Watches. Learn more about them here: https://www.jfrog.com/confluence/display/JFROG/Configuring+Xray+Watches
JF_WATCHES: Sec-watch

# [Optional]
# JFrog project. Learn more about it here: https://www.jfrog.com/confluence/display/JFROG/Projects
# JF_PROJECT: DevopsSandbox.sln

# [Optional, default: "FALSE"]
# Displays all existing vulnerabilities, including the ones that were added by the pull request.
JF_INCLUDE_ALL_VULNERABILITIES: "TRUE"

# [Optional, default: "TRUE"]
# Fails the Frogbot task if any security issue is found.
JF_FAIL: "FALSE"

# [Optional]
# Relative path to a Pip requirements.txt file. If not set, the python project's dependencies are determined and scanned using the project setup.py file.
# JF_REQUIREMENTS_FILE: ""

# [Optional, Default: "TRUE"]
# Use Gradle wrapper.
# JF_USE_WRAPPER: "FALSE"

# [Optional]
# Frogbot will download the project dependencies if they're not cached locally. To download the
# dependencies from a virtual repository in Artifactory, set the name of the repository. There's no
# need to set this value, if it is set in the frogbot-config.yml file.
# JF_DEPS_REPO: ""

For Linux / MacOS runner:
- curl "https://releases.jfrog.io/artifactory/frogbot/v2/[RELEASE]/getFrogbot.sh" --output ./getFrogbot.sh
- ls .
- chmod 777 ./getFrogbot.sh
- ./getFrogbot.sh 2.11.1
- curl -fLg "https://releases.jfrog.io/artifactory/frogbot/v2/[RELEASE]/getFrogbot.sh" | sh

- ./frogbot ${FROGBOT_CMD}

# For Windows runner:
# iwr https://releases.jfrog.io/artifactory/frogbot/v2/[RELEASE]/frogbot-windows-amd64/frogbot.exe -OutFile .\frogbot.exe
# .\frogbot.exe ${FROGBOT_CMD}

# For Windows runner using Artifactory remote repository:
# iwr $JF_URL/artifactory/$JF_RELEASES_REPO/artifactory/frogbot/v2/[RELEASE]/frogbot-windows-amd64/frogbot.exe -OutFile .\frogbot.exe
# .\frogbot.exe ${FROGBOT_CMD}

allow_failure: true
tags:
- kubernetes
`

Hey @RotemNayaxUser, Frogbot v2.11.7 has been released with a fix. Please let me know if it works for you. Thank you once again for sharing this issue.

Hi Omerzi
Thanks, The new version is working properly.  v2.11.7


Sublime-gulp should respect "folder_exclude_patterns" and "file_exclude_patterns"

Right now when I execute the gulp command it asks me which of 2 gulpfile.js should I use, despite one of them being excluded from the project (at the project level, at .sublime-project) which makes no sense.
More info about "folder_exclude_patterns" and "file_exclude_patterns" see https://www.sublimetext.com/docs/3/projects.html

The problem with using folder_exclude_patterns and file_exclude_patterns is that if a user in the same situation won't be able to use that gulpfile even if it wants to. That's why (early on) I've added the ignored_gulpfile_folders setting.
That said, we could add a boolean setting to append folder_exclude_patterns and file_exclude_patterns to ignored_gulpfile_folders defaulting to false (to keep current behaviour and don't break existing workflows)
What do you think?

folder_exclude_patterns and file_exclude_patterns are established by the Sublime Text user; so basically you are asking what happens if the user establishes a configuration and later on the user himself regrets it? That makes little sense to me; anyway, one can always change those options to make the gulpfile appear again.
But arguably this is a problem with Sublime itself, it shouldn't even give plugins access to files outside the project.
Of course ignored_gulpfile_folders is better than nothing and I'm glad it exists.

ignored_gulpfile_folders its a global option and not a per-project option? ... facepalm

Nope; I can't make "ignored_gulpfile_folders" to work, apparently doing "ignored_gulpfile_folders": ["app"] it's not enough to make it stop looking for gulpfiles inside folders called app.
Another reason to not implement your own options when possible.


cf login --space <space-name> filters org options based on provided space

What's the user value of this feature request?
There is a path through cf login that has delayed failures: When a user has access to multiple orgs and only specifies a space, the CLI asks the user to pick an org from those they have access to, and then fails out if the provided space is not in the selected org.
This feature improvement would maintain all current functionality but remove that failure path by filtering the list of orgs shown.
Who is the functionality for?
Any users attempting to use cf login with the --space flag who have access to multiple orgs.
How often will this functionality be used by the user?
Not sure, hopefully this is an edge case that doesn't get hit very often.
Who else is affected by the change?
This shouldn't be a breaking change, as the orgs that would no longer be shown are not valid options.
Is your feature request related to a problem? Please describe.
I came across this while exploring the cf login behavior for the purposes of porting it over to v7, and found the behavior surprising. I think primarily I felt this way because delayed failures never feel like a great user experience, and it feels a bit like a guessing game to pick out the right org.
Describe the solution you'd like
In the case where a user has access to multiple orgs, the list of orgs are filtered down to only those that contain a space with the provided name. In the case where there's only one such org, that org should just be used as the org to be targeted.
Describe alternatives you've considered
It seems like other solutions would be more invasive or would be a further departure from current behavior. (e.g. if the org and space flags were required to both be present, it would remove the nice defaulting behavior present for users with access to only one org.) However if there are other ways to get away from the delayed failure case that feel reasonable to those implementing the feature improvement feel free to deviate from the solution I've mentioned above.
Additional context
Slack thread discussion: https://cloudfoundry.slack.com/archives/G08E2BNNS/p1585765556157200

Thanks for pointing this out @sweinstein22
I don't plan to update v6 CLI given the fact that a user is still able to login (albeit this particular UX is sub-optimal).
I'd be fine with the update being made as part of the port.
Curious if you made the change you described as "the solution you'd like" as part of your port to v7 or if that port is still pending?

Hi @heyjcollins , sorry for the delayed response - the notification must have gotten lost in the shuffle. That makes sense! We didn't end up including it in the port to v7, there were a lot of other complicated things at play without trying to introduce another aspect. Not sure if VAT will get around to it, but I can add it to the list of things to poke at on our Freedom Friday afternoons and we can let you know if we end up picking it up.

Sounds good Sarah. Thanks for circling back!
On Mon, Apr 20, 2020 at 9:48 AM Sarah Weinstein<EMAIL_ADDRESS>wrote:

Hi @heyjcollins https://github.com/heyjcollins , sorry for the delayed
response - the notification must have gotten lost in the shuffle. That
makes sense! We didn't end up including it in the port to v7, there were a
lot of other complicated things at play without trying to introduce another
aspect. Not sure if VAT will get around to it, but I can add it to the list
of things to poke at on our Freedom Friday afternoons and we can let you
know if we end up picking it up.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/cloudfoundry/cli/issues/1923#issuecomment-616677038,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AI27VMFFXEVFQTMMNOHJMBDRNR4E5ANCNFSM4LZR665A
.

--
Josh Collins
PM - MAPBU

Hi @heyjcollins , I ended up picking up the story yesterday, commit can be found here: https://github.com/cloudfoundry/cli/commit/8663dc249cb6a831ad18b62fdc5cf06e57277fae


Handle backslashes in user password

Port fixes from https://github.com/TheNewNormal/kube-solo-osx/pull/38

awesome, thanks, will cut new releases in the next few days


Optimise lookup for babelfish_function_ext catalog

Description
Extended catalog sys.babelfish_function_ext currently uses as its key the schema name plus the function signature. This dates back to the time when Babelfish did not yet block duplicate functions with different signatures, but that is blocked now.
When doing a lookup for this catalog, the function signature must first be constructed in get_pltsql_function_signature_internal(). This uses a GUC to ensure that non-system names are double-quoted (required for the lookup), which appears to be a relatively expensive operation.
Since Babelfish no longer supports function overloading, we can perform a lookup directly using the schema name + function name. This requires a secondary index on the catalog as (funcname + nspname + funcsignature). With this, we now will first perform lookup with partial key (funcname + nspname) and return the tuple if there is a unique match which will save us from constructing function signature. In case of multiple matches, we will then perform the lookup using complete key (funcname + nspname + funcsignature).
This optimization improves the performance which was previously impacted by WITH RECOMPILE which was added as part of https://github.com/babelfish-for-postgresql/babelfish_extensions/pull/2563 . It introduced a lookup into babelfish_function_ext catalog using get_bbf_function_tuple_from_proctuple which performs the signature-based lookup for every stored procedure call.
Performance data
Below table shows the time taken (in ms) for 10000 executions of the same procedure with 10000 existing procedures in the database:

Scenario
First run duration
Second run duration
Third run duration
Average

Without changes
3929
3929
3927
3928.33

With current changes
3668
3658
3668
3664.67

% improvement: 6.71%
Task: BABEL-4976
Signed-off-by: Rishabh Tanwar<EMAIL_ADDRESS>Engine PR: https://github.com/babelfish-for-postgresql/postgresql_modified_for_babelfish/pull/393
Test Scenarios Covered

Use case based -

Boundary conditions -

Arbitrary inputs -

Negative test cases -

Minor version upgrade tests -

Major version upgrade tests -

Performance tests -

Tooling impact -

Client tests -

Check List

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is under the terms of the Apache 2.0 and PostgreSQL licenses, and grant any person obtaining a copy of the contribution permission to relicense all or a portion of my contribution to the PostgreSQL License solely to contribute all or a portion of my contribution to the PostgreSQL open source project.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

35 of 45 (77.78%)  changed or added relevant lines in 3 files are covered.
6 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.01%) to 73.071%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

contrib/babelfishpg_tsql/src/pltsql_ruleutils.c
2
3
66.67%

contrib/babelfishpg_tsql/src/hooks.c
19
21
90.48%

contrib/babelfishpg_tsql/src/catalog.c
14
21
66.67%

Files with Coverage Reduction
New Missed Lines
%

contrib/babelfishpg_tsql/src/catalog.c
6
84.49%

Totals

Change from base Build<PHONE_NUMBER>:
-0.01%

Covered Lines:
42351

Relevant Lines:
57959

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

35 of 45 (77.78%)  changed or added relevant lines in 3 files are covered.
6 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.01%) to 73.196%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

contrib/babelfishpg_tsql/src/pltsql_ruleutils.c
2
3
66.67%

contrib/babelfishpg_tsql/src/hooks.c
19
21
90.48%

contrib/babelfishpg_tsql/src/catalog.c
14
21
66.67%

Files with Coverage Reduction
New Missed Lines
%

contrib/babelfishpg_tsql/src/catalog.c
6
85.51%

Totals

Change from base Build<PHONE_NUMBER>:
-0.01%

Covered Lines:
42825

Relevant Lines:
58507

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

35 of 45 (77.78%)  changed or added relevant lines in 3 files are covered.
6 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.02%) to 73.193%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

contrib/babelfishpg_tsql/src/pltsql_ruleutils.c
2
3
66.67%

contrib/babelfishpg_tsql/src/hooks.c
19
21
90.48%

contrib/babelfishpg_tsql/src/catalog.c
14
21
66.67%

Files with Coverage Reduction
New Missed Lines
%

contrib/babelfishpg_tsql/src/catalog.c
6
85.51%

Totals

Change from base Build<PHONE_NUMBER>:
-0.02%

Covered Lines:
42823

Relevant Lines:
58507

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

35 of 45 (77.78%)  changed or added relevant lines in 3 files are covered.
9 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.02%) to 73.188%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

contrib/babelfishpg_tsql/src/pltsql_ruleutils.c
2
3
66.67%

contrib/babelfishpg_tsql/src/hooks.c
19
21
90.48%

contrib/babelfishpg_tsql/src/catalog.c
14
21
66.67%

Files with Coverage Reduction
New Missed Lines
%

contrib/babelfishpg_tds/src/backend/tds/tdscomm.c
3
73.33%

contrib/babelfishpg_tsql/src/catalog.c
6
85.51%

Totals

Change from base Build<PHONE_NUMBER>:
-0.02%

Covered Lines:
42820

Relevant Lines:
58507

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

35 of 45 (77.78%)  changed or added relevant lines in 3 files are covered.
9 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.02%) to 73.188%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

contrib/babelfishpg_tsql/src/pltsql_ruleutils.c
2
3
66.67%

contrib/babelfishpg_tsql/src/hooks.c
19
21
90.48%

contrib/babelfishpg_tsql/src/catalog.c
14
21
66.67%

Files with Coverage Reduction
New Missed Lines
%

contrib/babelfishpg_tds/src/backend/tds/tdscomm.c
3
73.33%

contrib/babelfishpg_tsql/src/catalog.c
6
85.51%

Totals

Change from base Build<PHONE_NUMBER>:
-0.02%

Covered Lines:
42820

Relevant Lines:
58507

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

35 of 45 (77.78%)  changed or added relevant lines in 3 files are covered.
6 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.02%) to 73.182%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

contrib/babelfishpg_tsql/src/pltsql_ruleutils.c
2
3
66.67%

contrib/babelfishpg_tsql/src/hooks.c
19
21
90.48%

contrib/babelfishpg_tsql/src/catalog.c
14
21
66.67%

Files with Coverage Reduction
New Missed Lines
%

contrib/babelfishpg_tsql/src/catalog.c
6
85.51%

Totals

Change from base Build<PHONE_NUMBER>:
-0.02%

Covered Lines:
42835

Relevant Lines:
58532

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

35 of 45 (77.78%)  changed or added relevant lines in 3 files are covered.
6 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.02%) to 73.182%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

contrib/babelfishpg_tsql/src/pltsql_ruleutils.c
2
3
66.67%

contrib/babelfishpg_tsql/src/hooks.c
19
21
90.48%

contrib/babelfishpg_tsql/src/catalog.c
14
21
66.67%

Files with Coverage Reduction
New Missed Lines
%

contrib/babelfishpg_tsql/src/catalog.c
6
85.51%

Totals

Change from base Build<PHONE_NUMBER>:
-0.02%

Covered Lines:
42835

Relevant Lines:
58532

💛  - Coveralls


arm support?

I would like to run this on C1 (armv7) or arm64 (armv8).
The repository had prior support for arm, it seems support was removed?
I would like to help out to fix it and would appreciate if you can point me in the right direction.

Agreed, it's ridiculous to be loading a full Debian installation for something as resource-strapped as the $3/mo VPS
Tips for anyone starting work on this (I poked it a bit earlier today):

The rescue boot mode boots you into an emergency SSH-enabled Ubuntu image, from which you can completely format vda if you so choose (the bootloader supports loading OS from a partitionless filesystem on this, too)
Check around in the main repos for existing integration work, remember Alpine stock uses OpenRC
Beware this issue


Master

Tested with simple inputs and seems to work well and handle everything properly. Even if no_condensate_mask coordinates are exactly the same, it still works.


Update scan.py with new azure-servicebus method names

Patched scan.py with new azure-servicebus method names. Fixes issue with ZAP API scan not running successfully.

Introduces new issues further down, retracting

Thanks for the contribution. I have a fix in the schema-v2 branch.
If you are interested in improving ZAP in that branch that would be very helpful


App keep showing scanning after wallet sync

when the app is minimised for some minutes and resume, it starts scanning and get stucked on the screen.

Fixed in https://github.com/raedahgroup/dcrlibwallet/pull/26/files


Docker 1.12 no longer uses socket activation

Docker 1.12 on CentOS no longer uses socket activation. It fails if the option is added

Can one of the admins verify this patch?


Fix step 8 which requires the service be restarted

For any changes to take effect we need to restart the SSDE service as we cannot log out the service account.

@Matticusau : Thanks for your contribution to the SQL documentation! The author, @BYHAM, has been notified to review your proposed change.

@MightyPen can you please review.

@Matticusau Thank you for this correction, it will avoid confusion for our customers!
@craigg-msft Craig, I recommend we approve and Merge this public PR 240.
#sign-off

Thank you @Matticusau  and @MightyPen


Basic typescript example need

Is there any basic typescript example available? I really having troubles to get in to run.

import React from 'react'
import { Dimensions, StyleSheet, Image } from 'react-native'
import { View } from './View'
import { Text } from './Text'
import Carousel, { Pagination } from 'react-native-snap-carousel';
import { TouchableOpacity } from 'react-native-gesture-handler';
const { width, height } = Dimensions.get("screen")
interface ItemProps {
ID: number
IMAGE_URL: string
}
interface Props {
items: Array
}
interface State {
active: number
}
export class Slider extends React.PureComponent<Props, State> {
state: State = {
active: 0
}
static defaultProps = {
items: [
{ ID: 1, IMAGE_URL: "https://migros-dali-storage-prod.global.ssl.fastly.net/sanalmarket/banner/main_page_slider/10329/12363-751_web_slider_et_tavuk-ca5708.jpg" },
{ ID: 2, IMAGE_URL: "https://migros-dali-storage-prod.global.ssl.fastly.net/sanalmarket/banner/main_page_slider/10338/12372-751_web_slider_annelergunu_elektronik-e0298b.jpg" },
{ ID: 3, IMAGE_URL: "https://migros-dali-storage-prod.global.ssl.fastly.net/sanalmarket/banner/main_page_slider/10117/12151-749_web_slider_ramazan_1-3ddb0e.jpg" },
{ ID: 4, IMAGE_URL: "https://migros-dali-storage-prod.global.ssl.fastly.net/sanalmarket/banner/main_page_slider/10317/12351-751_web_slider_aldimbitti-caaa7e.jpg" }
]
}
ref = React.createRef();
renderItem = ({ item, index }: { item: ItemProps, index: number }) => {
return (

<Image source={{ uri: item.IMAGE_URL }}
style={{ height: 100, width: width, resizeMode: 'contain' }} />
        </TouchableOpacity>
    );
}
pagination = () => {
    const { items } = this.props;
    return (
        <Pagination
            dotsLength={items.length}
            activeDotIndex={this.state.active}
            containerStyle={{}}
            dotStyle={{
                width: 10,
                height: 10,
                borderRadius: 5,
                marginHorizontal: 8,
                backgroundColor: 'rgba(255, 255, 255, 0.92)'
            }}
            inactiveDotStyle={{
                // Define styles for inactive dots here
            }}
            inactiveDotOpacity={0.4}
            inactiveDotScale={0.6}
        />
    );
}
render() {
    return (
        <View>
            <Carousel
                autoplay
                autoplayDelay={1000}
                ref={this.ref}
                data={this.props.items}
                renderItem={this.renderItem}
                sliderWidth={width}
                itemWidth={width}
            />
            {this.pagination()}
        </View>
    )
}

}
const styles = StyleSheet.create({
slide: {},
})

@erdalugur - could you try again to format that message?

@OliverEvans96  thanks for feedback

I got a typescript example to run by merging @erdalugur 's example with the basic js example from the repository. Here it is:
`import React, { Component } from "react";
import { Text, View, SafeAreaView } from "react-native";
import Carousel from "react-native-snap-carousel";
interface ItemProps {
title: string;
text: string;
}
// interface Props {
//   carouselItems?: ItemProps;
// }
interface State {
activeIndex: number;
carouselItems: ItemProps[];
}
class CustomCarousel extends Component<any, State> {
ref = React.createRef();
state = {
activeIndex: 0,
carouselItems: [
{
title: "Item 1",
text: "Text 1",
},
{
title: "Item 2",
text: "Text 2",
},
{
title: "Item 3",
text: "Text 3",
},
{
title: "Item 4",
text: "Text 4",
},
{
title: "Item 5",
text: "Text 5",
},
],
};
renderItem = ({ item, index }: { item: ItemProps; index: number }) => {
return (
<View
style={{
backgroundColor: "floralwhite",
borderRadius: 5,
height: 250,
padding: 50,
marginLeft: 25,
marginRight: 25,
}}
>
<Text style={{ fontSize: 30 }}>{item.title}
{item.text}

);
};
render() {
return (
<SafeAreaView style={{ flex: 1, backgroundColor: "rebeccapurple", paddingTop: 50 }}>
<View style={{ flex: 1, flexDirection: "row", justifyContent: "center" }}>
<Carousel
layout={"default"}
ref={this.ref}
data={this.state.carouselItems}
sliderWidth={300}
itemWidth={300}
renderItem={this.renderItem}
onSnapToItem={(index: number) => this.setState({ activeIndex: index })}
/>

);
}
}
export default CustomCarousel;
`
I left the props interface there as it could be used as reference for passing down props to your component. You just need to change any in the class declaration statement for your props interface

I have also added a functional component example in the issue mentioned above, for those who are interested.

@SirKadogan creating your ref with type any defeats the purpose. Can we get an example where you use the real type of the Carousel?

@grafficmedia There is a @types/react-native-snap-carousel library which has good types (not perfect tho) if you are still looking for it.

I have also added a functional component example in the issue mentioned above, for those who are interested.

DId you get any?

Please let Documentation include both CLass and functional Component structures.
You can also add Typescript too.
I couldn't use this, as typescript complained


Animation engine not updating object properties.

When running an animation the codes object isnt being updated each frame or at all.

already brought up in issue #15


test: scenarios-feature_branch_happy_path (2024-02-08 00:00:59.387716+00:00)

automatic test cleanup


Faulty type reasoning

TypeScript Version:  2.5.3
Code
class A
{
    readonly AProp = 1;
}

 class B
 {
     readonly BProp = 1;
 }

 export function Test1()
{
    const x: (A | B) = new B();

    if (x instanceof A)
    {
        const prop = x.BProp;
    }
    else
    {
       const prop = x.BProp
    }

}

// A *self-contained* demonstration of the problem follows...
// Test this by running `tsc` on the command-line, rather than through another build tool such as Gulp, Webpack, etc.

Expected behavior:
Does not compile, because the property 'BProp' is not available on type A.
Actual behavior:
Compiles (VS2017, Ts.2.5.3)

This is probably working as intended.
It looks like control flow type analysis narrows x to type B in the assignment, since it knows that the value assigned to x is definitely a B.  And the x instanceof A type guard narrows it further to A & B*, which has both AProp and BProp.
If you want to prevent that kind of analysis, you can change the assignment to
const x = new B() as (A | B);

which forces the compiler to see the assigned value as an A | B, and you get your expected error.
*You might think that A & B should be never because A and B are classes unrelated by inheritance and you cannot make an object which is an instance of both classes at the same time.  But that would require nominal typing, which TypeScript doesn't currently have.

@jcalz  is correct

Mea culpa, sorry all for false alert.


CUDA error: device-side assert triggered when exporting quantized model

Reminder

[X] I have read the README and searched the existing issues.

Reproduction
Hi,
I have exported my fine-tuned mixtral with LORA using the export script. That works like a charm.
Now, I'm trying to quantize it. I'm running:
 python src/export_model.py     --model_name_or_path exported_mixtral_w_LORA/  --template default --export_dir quant/ --export_quantization_bit 4  --export_quantization_dataset data/c4_demo.json
but after a few minutes I get:
Quantizing model.layers blocks :  25%|█████▊                 | 8/32 [24:08<1:12:27, 181.14s/it]
./aten/src/ATen/native/cuda/IndexKernel.cu:92: operator(): block: [256,0,0], thread: [96,0,0] Assertion index >= -sizes[i] && index < sizes[i] && "index out of bounds" failed.?, ?it/s]
.
.
.
File "/home/jesantos/.conda/envs/codegen_3_10/lib/python3.10/site-packages/transformers/models/mixtral/modeling_mixtral.py", line 323, in forward
query_states, key_states = apply_rotary_pos_emb(query_states, key_states, cos, sin, position_ids)
File "/home/jesantos/.conda/envs/codegen_3_10/lib/python3.10/site-packages/transformers/models/mixtral/modeling_mixtral.py", line 222, in apply_rotary_pos_emb
cos = cos[position_ids].unsqueeze(unsqueeze_dim)
RuntimeError: CUDA error: device-side assert triggered
Compile with TORCH_USE_CUDA_DSA to enable device-side assertions.
Is something wrong with my settings?
Thanks again
Expected behavior
No response
System Info
No response
Others
No response

I am not sure if mixtral is compatible with optimum, try https://github.com/AutoGPTQ/AutoGPTQ instead


Incorrect window client area size in windowed mode

The code that adjusts window's client area size on Windows is currently incorrect, so if you expect a 1280x720 render area, what you actually get is a window with swapchain extent of 1272x689. This would affect the window if it is not in fullscreen mode. The reason is that AdjustWindowRectEx not only adjust the right and bottom values, it will also adjust top and left values., The recommended way is to just set top and left as 0, right = desired width, bottom = desired height, call AdjustWindowRectEx and then calculate width as right - left, and height as bottom - top. You can then call MoveWindow to move it to the center of the screen. Like this:
RECT windowRect;
if (fullscreen)
{
	windowRect.left = 0L;
	windowRect.right = (long)screenWidth;
	windowRect.top = 0L;
	windowRect.bottom = (long)screenHeight;
}
else
{
	windowRect.left = 0L;
	windowRect.right = (long)width;
	windowRect.top = 0L;
	windowRect.bottom = (long)height;
}

DWORD dwExStyle;
DWORD dwStyle;

if (fullscreen)
{
	dwExStyle = WS_EX_APPWINDOW;
	dwStyle = WS_POPUP | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
}
else
{
	dwExStyle = WS_EX_APPWINDOW | WS_EX_WINDOWEDGE;
	dwStyle = WS_OVERLAPPEDWINDOW | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
}

AdjustWindowRectEx(&windowRect, dwStyle, FALSE, dwExStyle);

auto window = CreateWindowEx(0,
	TEXT("wat"), TEXT("wat"),
	dwStyle,
	0, 0, windowRect.right - windowRect.left, windowRect.bottom - windowRect.top,
	nullptr, nullptr, hinstance, nullptr);`

Thx :+1:


Google Calendar Doesn't Print

Google Calendar does not print when using the Chrome extension.
Configuration:
Web browser and its version: Chrome 76.0.3809.132
Operating system and its version: ChromeOS 76.0.3809.132, Win 10, OSX 10.14.3,
PDF.js version: 2.2.191
Is a browser extension: Yes
Steps to reproduce the problem:

Click on the cog wheel and click Google's built in Print button to get the Preview screen.
Then click the next Print button that is displayed.

What is the expected behavior?
You should get 2 popups to print the calendar. First is the Preview, second being the Chrome Print dialog
What went wrong?
You do get the Preview popup, but then after clicking the next Print button, the next screen to choose a printer never displays.
The following JavaScript error occurs and the final print popup never displays.
Uncaught (in promise) Error: Invalid or corrupted PDF file. at viewer.js:1103
https://chrome.google.com/webstore/detail/pdf-viewer/oemmndcbldboiebfnladdacbdfmadadm

I have published a new version in the Chrome Web Store, release notes: https://github.com/Rob--W/pdf.js/releases/tag/chrome-2.3.164

Appreciate the awesome response time! Sorry to not have the best of news, but here are my results:
OS: Windows 10 and OSX 10.14.3
PDF.js version: 2.3.164
Browser: Chrome v77
Chrome extension PDF Viewer
New result:
There is no JavaScript error, but the popup to choose a printer still does not display. The job renders immediately to PDF and goes to to download folder
OS: ChromeOS v76
PDF.js version: 2.3.164
Browser: Chrome v76
Chrome extension PDF viewer
New result:
Same result as before. JavaSript error is displayed and it cannot be printed.
Thanks!

Thank you for the feedback. Reopening to keep tracking this since it looks like the issue is not fully resolved yet.

This is different from the other issue.
The problem here is that the PDF URL generated by Google Calendar behaves differently depending on how often it is being requested.

First request: a HTML page that sets the PDF_INLINE=ok session cookie. Immediately redirects to a PDF URL.
Second request: PDF resource. Clears the PDF_INLINE cookie. Responds with a PDF (Content-Disposition:attachment) that invokes a printing command.

It's going difficult to create a general solution against this. I could try to fetch the PDF again, or implement a setting to ignore certain domains or URLs, and add G calendar to that list by default.

Hi,
I was having issues printing from google calendar and through trial and error found it was this extension.
This is still a problem on Linux Chrome Version 85.0.4183.83 (Official Build) (64-bit) with PDF.js 2.3.164
Once you tell it what dates you want to print the select a printer dialogue never comes up.
In the javascript console I get:

viewer.js:1121 Uncaught (in promise) Error: Invalid or corrupted PDF file.
at viewer.js:1121
(anonymous) @ viewer.js:1121

Can I help troubleshoot in anyway - or is there a solution?
Thanks,

I'm in Firefox 92.0 on Xubuntu 18.04 and have the same issue. The second print dialog never comes up and it prints to PDF by default. No way around it I can find.
Is this fixed?
Thanks.


Release supporting cardano-node v8

Leaderlogs in current release v5.3.2 do not support cardano-node v8. I've seen a couple merged PRs (#33, #34) making it compatible with v8. I haven't been able to try these changes myself, but if it is confirmed working I am kindly asking for a new release 🙇♂
Thank you!

@robinboening does your experience have anything in common with what we've reported in https://github.com/cardano-community/cncli/issues/25?

@rphair I am currently using cncli v5.3.0 and since I updated my cardano node to v8.0.0 (now v8.1.1) cncli leaderlogs throw the following error
error: Invalid value for '--active-stake <active-stake>': invalid digit found in string

This seems to be fixed in the mentioned PRs though, hence my request for a new release.

thanks @robinboening - that's different than what we were looking at 🙏

@robinboening

This seems to be fixed in the mentioned PRs, hence my request for a new release.

Mentioned PRs are fixes to the wrapper scripts , cncli binary (or it's version) would remain the same


UpdateServicesServer: Null value passed to New-InvalidResultException

Details of the scenario you tried and the problem that is occurring
On line 663 in the Set-TargetResource function, the following call is made:
New-InvalidResultException -Message $errorMessage -ErrorRecord $_

However, unlike previous calls to similar commands (see line 416), this command is not inside a try/catch block. Therefore, the $_ variable is null and the function errors out without detailing the resource failure. Instead, it leads the user on a wild goose chase tracking down $null values. See #58 for an example.
Verbose logs showing the problem
Suggested solution to the issue
Proposals:

Replace $_ with a meaningful value such as "Set-TargetResource has been run. However, the resource is not in the desired state. The following parameters are not set to the desired values: ..."
Remove lines 660-664 altogether, as testing is in its own function

I prefer option 2, as the Set function has already performed its work and the state has already changed. The Unit and Integration tests should be providing feedback as to the effectiveness of the Set function, not the Set function itself. If, on subsequent execution of the configuration block, the test continues to fail and Set-TargetResource continues to be called, then an issue with the Set-TargetResource function should be filed and addressed.
Additionally, Issues #45 and #47 are related to apparent false negatives related to the Set-TargetResource calling Test-TargetResource
The DSC configuration that is used to reproduce the issue (as detailed as possible)
See #58
The operating system the target node is running
See #58
Version and build of PowerShell the target node is running
Version of the DSC module that was used
v1.2.1

@johlju , this seems like an issue that needs your attention 😉

I can confirm that option #2 above seems to run without issues and completes the desired state changes given my configuration in #58; I commented these lines out on a local copy of the resource and ran it without issues.


remove snowalb when target bc does not have

remove snowalb from restart file  when target bc does not have. It depends on the PR https://github.com/GEOS-ESM/MAPL/pull/1825 from MAPL

@weiyuan-jiang this didn't work. We get some weird values for snow albedo:
59 :-8681-08-02 18:20:00       0   195136       0 :      0.0000     0.38401      37.696 : SNOWALB

I'm marking this PR draft until we resolve issue with "old land" restarts.

Can you show me the directory you tested?

@biljanaorescanin I guess I should remove it when it goes to "else" block

@weiyuan-jiang now it works. I used new branch from MAPL with this PR: bugfix/wjiang/rm_var_from_meta
I suppose what is left is to add "exit" in regrid.pl if someone tries to regrid restarts with snow albedo or we have to add new land option with new boundary conditions to options in regrid.pl. Not sure what option we want to proceed with @gmao-rreichle ?

I suppose what is left is to add "exit" in regrid.pl if someone tries to regrid restarts with snow albedo or we have to add new land option with new boundary conditions to options in regrid.pl. Not sure what option we want to proceed with @gmao-rreichle ?

@biljanaorescanin, @weiyuan-jiang : I thought we no longer need the "exit" from regrid.pl because @weiyuan-jiang added this functionality to regrid.pl: https://github.com/GEOS-ESM/GEOSgcm_GridComp/pull/618/commits/8020e32b0cabee822085555a6e50c2eb95f00c19
I'm not sure, though, if the above commit also works when the source restart uses snow_albedo but the target uses "old land" bcs (ie, no snow_albedo).  Would regrid.pl omit snow_albedo from the target restart or write zeros or do something else?

I suppose what is left is to add "exit" in regrid.pl if someone tries to regrid restarts with snow albedo or we have to add new land option with new boundary conditions to options in regrid.pl. Not sure what option we want to proceed with @gmao-rreichle ?

@biljanaorescanin, @weiyuan-jiang : I thought we no longer need the "exit" from regrid.pl because @weiyuan-jiang added this functionality to regrid.pl: 8020e32 I'm not sure, though, if the above commit also works when the source restart uses snow_albedo but the target uses "old land" bcs (ie, no snow_albedo). Would regrid.pl omit snow_albedo from the target restart or write zeros or do something else?

@gmao-rreichle When we run regrid.pl we give restarts to start from and we are asked for boundary conditions used when those restarts were created, there is list to choose from. regrid.pl has no option of boundary conditions that created restart with snow albedo. If we want to use regrid.pl to regrid/remap catch restart we would have to add those boundary conditions as options. This works with remap_restats.py since there we option where we give our own boundary conditions path we don't have that option with remap.pl.  We can talk more offline.
These are options in regrid.pl:
Sample GCM tags
F14  : Fortuna-1_4  .........  Fortuna-1_4_p1
F20  : Fortuna-2_0  .........  Fortuna-2_0
F21  : Fortuna-2_1  .........  Fortuna-2_5_pp2
G10  : Ganymed-1_0  .........  Ganymed-1_0_BETA4
G10p : Ganymed-1_0_p1  ......  Ganymed-1_0_p6
G20  : Ganymed-2_0  .........  Ganymed-2_1_p6
G30  : Ganymed-3_0  .........  Ganymed-3_0_p1
G40  : Ganymed-4_0  .........  Heracles-5_4_p3
ICA  : Icarus  ..............  Jason
GITOL: 10.3  ................  10.18
INL  : Icarus-NL  ...........  Jason-NL
GITNL: 10.19  ...............  10.23

My understating is that regard.pl won't be able to access the new bcs with snowalb.  Now the question is "Do we need to update regard.pl so it can use the new bcs? " @gmao-rreichle

Ok, let me try again... Sorry I'm a bit confused as to what was and wasn't done.  There are too many ongoing threads.
For remap_restarts.py, snow_albedo is ok when it's in the target restart.  Also, we can handle the case when snow_albedo is in the source restart but not in the target restart per #673.
We still need to merge #673 but are waiting for https://github.com/GEOS-ESM/MAPL/pull/1825.
Question 1: Is this summary for remap_restarts.py correct?
For regrid.pl, we can use added the following commit
https://github.com/GEOS-ESM/GEOSgcm_GridComp/pull/618/commits/8020e32b0cabee822085555a6e50c2eb95f00c19
but this commit is useless because regrid.pl does not allow any bcs versions that have snow_albedo (for source or target restart).
Question 2: Is this summary for regrid.pl correct?
Question 3: Rather than an "exit", don't we just need a simple comment in the interactive portion of regrid.pl that explicitly states that "bcs with MODIS snow albedo cannot be remapped with regrid.pl and remap_restarts.py should be used instead" or something to that effect?
I faintly remember that we already talked about this last item before, but I can't find it on github.  It may be buried somewhere in Teams chats.

PS: We may as well take the opportunity to put a message into regrid.pl that alerts the user to the fact that regrid.pl is being phased out and replaced with remap_restarts.py.  @weiyuan-jiang or @biljanaorescanin, please create a draft GMAO_Shared PR that adds these messages into regrid.pl.

Correct
Correct
I will make a PR on GMAO_Shared and add these comments to regrid.pl
"bcs with MODIS snow albedo cannot be remapped with regrid.pl and remap_restarts.py should be used instead"
and regrid.pl is being phased out and replaced with remap_restarts.py
I agree, seems like a right way is to remove that commit since we anyway can't use it if we don't change regrid.pl more. @weiyuan-jiang what do you think? Will you remove it or me if you agree? https://github.com/GEOS-ESM/GEOSgcm_GridComp/commit/8020e32b0cabee822085555a6e50c2eb95f00c19  ?

@biljanaorescanin, @weiyuan-jiang:
This PR only goes into Biljana's branch and can be merged now, I think.  We don't want to have two GCM GC PRs for the snow albedo changes.  This should leave us with the following to-do items:

Merging this PR will make #618 dependent on https://github.com/GEOS-ESM/MAPL/pull/1825, so this needs to be documented in #618.
We still need to remove https://github.com/GEOS-ESM/GEOSgcm_GridComp/commit/8020e32b0cabee822085555a6e50c2eb95f00c19  from #618
We need to document on #618 that it is related to https://github.com/GEOS-ESM/GMAO_Shared/pull/304


Support N-dimensional convolution functions and links

Reopen #1258.
Rel #945 and #1076.
Goal

Implement nd-Convolution function and link
Implement nd-Deconvolution function and link
Implement nd-Pooling function and link
cuDNN support as well as CUDA, from which version?

Update: nd-Pooling is split to #1353.
Update: nd-Deconvolution is split to #1408 .

How should we generalize im2col_gpu and col2im_gpu functions in conv.py which use elementwise CUDA kernels? There may be some possible ways as illustrated in the following discision tree. As first implementation, I adopt code generation and will push it shortly for reference.

Actually generalize as code?

Yes

Use cupy.elementwise?

Yes

When to take care of the generality?

CUDA runtime

Implement CUDA C operations incupy.elementwise.

CUDA compile time

Code generation.

No

Implement in cupy with adding necessary functions.

No

Implement codes for required dimensions individually: 1D, 2D, 3D, 4D...

I open another PR because I happened to make #1258 deactivated. Perhaps its empty commit has gone away on rebasing to the latest master.

I do not fully understand how we realize the generalization of im2col and col2im with these two strategies. But if you think performance of code-generation and the complexity of its implementation are reasonable, I think code-generation is good as a first trial.

I pushed the first implement with code-generation, which has no cuDNN support yet.

I show current status of this PR.
■…Done □…Doing
ND Convolution

Items
Documentation
Test
Implementation

Utils - CPU - im2col_nd_cpu
N/A
■
■

Utils - CPU - col2im_nd_cpu
N/A
■
■

Utils - GPU - im2col_nd_gpu
N/A
■
■

Utils - GPU - generate_im2col_nd_kernel
□
□
■

Utils - GPU - col2im_nd_gpu
N/A
■
■

Utils - GPU - generate_col2im_nd_kernel
□
□
■

Function - CPU - forward
N/A
■
■

Function - CPU - backward
N/A
■
■

Function - GPU - forward
N/A
■
■

Function - GPU - backward
N/A
■
■

Function - cuDNN - forward
N/A
□
□

Function - cuDNN - backward
N/A
□
□

Function - convolution_nd
■
■
■

Link
□
□
□

ND Pooling
To be addressed.
ND Deonvolution
To be addressed.

While some small fixes may follow, we can start reviewing this PR.

[ ] Skip 1D convolution test with cuDNN because it looks not support it.
[ ] Is the Nth root of wscale okay to initialize ConvolutionND link's weight parameter?
[ ] When to instanciate ConvolutionND function in ConvolutionND link.
[ ] Generated CUDA kernel codes should be cached because they are generated on every call.

cuDNN seems not to support 1D convolution, which returns CUDNN_STATUS_NOT_SUPPORTED error.
How should we make this case?

use im2col algorithm
raise exception

This time I choose the former after other conditions such as cuDNN version and FP16 dtype, where im2col is used even when use_cudnn is True.

Is it better to split the issue to convolution and pooling, because the change is growing bigger?

It may be enough to generate N-dimensional codes on setup.pying if possible.

It is desirable to separate this PR into smaller ones that are logically separated (although can be dependent on each other to some extent) because it gets easier to understand the dependency of files in PR. But you do not have to do it if you expect it will take too much time.

I believe the most straightforward way is to separate this PR into two parts, namely, ND convolution part and ND pooling part. But I am not confident because I cannot not fully check the implementation. So is it reasonable for you?

Okay, I will split it, take not so much time.

@delta2323  I've fixed the points you reviewed as well as some lines for test, now it passes Travis CI. Please review again when it's convenient for you.

In TestConvolutionND, we check the result of forward propagations of CPU and GPU. As these use the same method (namely, _forward_xp) with different im2col functions, I am a little concern that we cannot detect the bugs in the codes which both CPU and GPU versions are used. So, how about adding the test case in which we compare the result of forward propagation of ConvolutionND with N=2 with Convolution2D?

Definitely.

Thanks for your comments, I will follow them to fix. I really think you are so smart and decent, it is good to have such review and conversation.

@takagi Is it ready for reviewing?

Yes, please.

LGTM except the comment.

I will add tests for FP16 and FP64 after #1295, dtype support for initializers, is merged.

I fixed the comments!

LGTM 👍

I reverted this PR. Please reopen it.

I will send another PR for this, PRs seems not to have "reopen" buttons.


Problem to install application

Hi, folks.
I'm with a problem to install the application. When i execute the command bellow get a error:
Command: bundle exec rake staytus:build
Error Message:
rake aborted! TypeError: no implicit conversion of Fixnum into String /opt/app/vendor/bundle/ruby/2.3.0/gems/rails_env_config-1.1.1/lib/rails_env_config.rb:12:in[]='
/opt/app/vendor/bundle/ruby/2.3.0/gems/rails_env_config-1.1.1/lib/rails_env_config.rb:12:in block in load' /opt/app/vendor/bundle/ruby/2.3.0/gems/rails_env_config-1.1.1/lib/rails_env_config.rb:11:in each'
/opt/app/vendor/bundle/ruby/2.3.0/gems/rails_env_config-1.1.1/lib/rails_env_config.rb:11:in load' /opt/app/vendor/bundle/ruby/2.3.0/gems/rails_env_config-1.1.1/lib/rails_env_config/railtie.rb:7:in block (2 levels) in class:Railtie'
/opt/app/vendor/bundle/ruby/2.3.0/gems/rails_env_config-1.1.1/lib/rails_env_config/railtie.rb:4:in each' /opt/app/vendor/bundle/ruby/2.3.0/gems/rails_env_config-1.1.1/lib/rails_env_config/railtie.rb:4:in block in class:Railtie'
/opt/app/vendor/bundle/ruby/2.3.0/gems/activesupport-5.1.6/lib/active_support/lazy_load_hooks.rb:67:in block in execute_hook' /opt/app/vendor/bundle/ruby/2.3.0/gems/activesupport-5.1.6/lib/active_support/lazy_load_hooks.rb:60:in with_execution_control'
/opt/app/vendor/bundle/ruby/2.3.0/gems/activesupport-5.1.6/lib/active_support/lazy_load_hooks.rb:65:in execute_hook' /opt/app/vendor/bundle/ruby/2.3.0/gems/activesupport-5.1.6/lib/active_support/lazy_load_hooks.rb:50:in block in run_load_hooks'
/opt/app/vendor/bundle/ruby/2.3.0/gems/activesupport-5.1.6/lib/active_support/lazy_load_hooks.rb:49:in each' /opt/app/vendor/bundle/ruby/2.3.0/gems/activesupport-5.1.6/lib/active_support/lazy_load_hooks.rb:49:in run_load_hooks'
/opt/app/vendor/bundle/ruby/2.3.0/gems/railties-5.1.6/lib/rails/application.rb:91:in inherited' /opt/app/config/application.rb:10:in module:Staytus'
/opt/app/config/application.rb:9:in <top (required)>' /opt/app/Rakefile:4:in require'
/opt/app/Rakefile:4:in <top (required)>' (See full trace by running task with --trace)
Can you help me?

Problem resolved.
https://github.com/adamcooke/staytus/issues/222


Add HLSL shaders and improve tooling

Description
With the framework now being able to consume shaders in SPIR-V format, this PR will start adding actual HLSL shaders to the repository for at least some samples. I'll be starting with adding HLSL shaders to my samples and maybe other not so complex samples.
✅ What this PR currently does:

Adds a way to specify a set of HLSL shaders for a sample similar to how GLSL shaders can be added to a sample (so they show up in the IDE)
Adds a new overload for the (hpp)api sample base class that handles toggling between glsl and hlsl
Adds an optional CMake argument for passing additional arguments to DXC (e.g. to enable a given extension) called DXC_ADDITIONAL_ARGUMENTS
Has some minor fixes for HLSL offline compilation introduced in #990
Restructures folders for shaders, so samples can have a set of shaders in a glsl sub folder and a hlsl sub folder

shaders\sample_name (e.g. ray_tracing_basic)

glsl

raygen.rgen
closesthit.rchit
miss.rmiss

hlsl

raygen.rgen.hlsl
closesthit.rchit.hlsl
miss.rmiss.hlsl

I'm adding .hlsl to the file names as that automatically gives you HLSL syntax highlighting in e.g. MSVC
The only downside to this is that we need to exclude these files from the build process, or else MSVC want's to compile them with it's own DXC version for the D3D target

To avoid that, I disable this behavior for MSVC, see https://github.com/SaschaWillems/Vulkan-Samples/commit/8aa9573289f65279edd80ac20808f668c6ca0380

Adds some basic information on the shaders used in this repo incl. links to the HLSL chapters in the Vulkan Guide
Fixes some GLSL shaders to make mapping to HLSL possible/easier (e.g. HDR sample shaders)
Adds shaders to some samples where they were missing from the CMake file (and thus wouldn't show up in the IDE)
Adds a way to switch between GLSL and HLSL shaders via command line using a plugin

e.g. vulkan_samples ray_tracing_basic --shading-language hlsl
The sample base class defaults to glsl, so omitting above argument will try to load glsl shaders

📃List of samples that got HLSL shaders added
For a complete list of samples see #1014
This PR adds HLSL shaders (based on their GLSL counterparts) for the following samples:

calibrated_timestamp
color_write_enable
compute_nbody (+hpp variant)
conditional_rendering
conservative_rasterization
debug_utils
descriptor_buffer_basic
descriptor_indexing
dynamic_blending
dynamic_line_rasterization
dynamic_primitive_clipping
dynamic_rendering
dynamic_uniform_buffers (+hpp variant)
fragment_shading_rate
graphics_pipeline_library
hdr (+hpp variant)
instancing (+hpp variant)
logic_op_dynamic_state
memory_budget
mesh_shading (+hpp variant)
open_cl_interop (needs #1021 to work)
open_gl_interop
patch_control_points
portability
profiles (can't test, see #1008)
push_descriptors
ray_tracing_basic
ray_tracing_extended
ray_queries
shader_debugprintf
separate_image_sampler (+hpp variant)
sparse_image
synchronization_2
terrain_tessellation (+hpp variant)
texture_compression_basisu
texture_loading (+hpp variant)
texture_mipmap_generation (+hpp variant)
timestamp_queries (+hpp variant)
vertex_dynamic_state

❌ What this won't do

Add HLSL compilation to the build process (which is not the scope of this PR, see #990, which has been merged)
Add HLSL shaders for the ARM framework based samples

💬Up for discussion

✅ Offline compilation from #990 will result in .spv files generated at build-time. Should we add them to the repo, or exclude them?

As per the call on 2024-04-08 we decided to add the compiled .spv files, so people can test/run this without requiring DXC

How to handle if someone requests hlsl shaders but a sample doesn't have them? Should we just fail or fall back?
One thing that feels kinda odd now is that we also have a realtime shader selection plugin that was merged from another PR, which defines enums and code that now feels out of place. We should discuss if we want to remove that one. It's not used anywhere.

🚧Opens

Add some more documentation for maintainers on how to get HLSL shaders added to a sample
Due to the way DXC optimizes vertex inputs, some of the samples display a validation layer performance message for that. It's not critical and nothing that should stop merging us this PR

Fixes #892
Fixes #179
General Checklist:
Please ensure the following points are checked:

[x] My code follows the coding style
[x] I have reviewed file licenses
[x] I have commented any added functions (in line with Doxygen)
[x] I have commented any code that could be hard to understand
[x] My changes do not add any new compiler warnings
[x] My changes do not add any new validation layer errors or warnings
[x] I have used existing framework/helper functions where possible
[x] My changes do not add any regressions
[x] I have tested every sample to ensure everything runs correctly
[x] This PR describes the scope and expected impact of the changes I am making

Note: The Samples CI runs a number of checks including:

[x] I have updated the header Copyright to reflect the current year (CI build will fail if Copyright is out of date)
[x] My changes build on Windows, Linux, macOS and Android. Otherwise I have documented any exceptions

Quick note: While adding HLSL shaders I noticed that several samples are broken on main or at least display validation errors. So when reviewing, most errors that show up are probably also visible on main. I didn't want to fix it in order not to pollute this PR.

Quick note: While adding HLSL shaders I noticed that several samples are broken on main or at least display validation errors. So when reviewing, most errors that show up are probably also visible on main. I didn't want to fix it in order not to pollute this PR.

Tested most samples and found no issues, sorry for the delay. I did notice that Performance/WaitIdle does not launch on Android. I thought it was unrelated, but the same sample opens fine in #1051 , maybe it's an issue from a commit in between the two?

I did notice that Performance/WaitIdle does not launch on Android. I thought it was unrelated

That is indeed unrelated to this PR. That sample was broken on master for quite some time and was fixed by a different PR that I haven't merged. So it shouldn't matter for this PR :)


feature: Implement Progressive Web App (PWA) features

Is your feature request related to a problem? Please describe.
It would be a great enhancement for the website to function as a Progressive Web App (PWA). Implementing PWA features will allow users to:
Install the website as an app on their devices.
Access content offline.
👉 PWAs offer a more engaging user experience by making websites behave like native applications. Implementing PWA will provide:
Offline functionality: Users can still interact with content without an internet connection.
Improved engagement: Users can install the website as a web app, increasing return traffic.
Describe the solution you'd like
I would like to add Progressive Web App (PWA) functionality to improve the website. The solution includes:
Service Worker: Cache important assets to provide offline functionality.
Web App Manifest: Create a manifest with details like app name, icon, start URL, and theme color for adding the site to the home screen.
Add to Home Screen (A2HS): Let users install the website as a web app on their devices.
HTTPS: Ensure the website is served over HTTPS.
App Shell: Build an app shell to make core parts of the site load faster.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Adding PWA functionality will allow users to use the website offline and install it like an app, which can improve the overall experience.

Please assign me

can i work on it ?


Upgrade fastembed version from 0.1.1 to 0.2.1 (latest)

Currently, qdrant-client uses fastembed version 0.1.1 however there is a latest version of fastembed 0.2.1 available out there.
Why should it be upgraded?
version 0.1.1 is outdated for qdrant as the latest version 0.2.1 has brough many changes in structure of code and efficiency
There have been following changes by going from 0.1.1 to 0.2.1 in fastembed

use "with" to open JSON files
HuggingFace download support for FlagEmbedding
chore: patch for new Xenova Jina source
feat: Support xenova/multilingual-e5-large, xenova/paraphrase-multilingual-mpnet-base-v2
Refactoring of internal structure
Refactor: Introduce experiments dir, README changes
Support Python v3.12
Simplify imports
Fix query to align with Qdrant mixin usage
Make 0.2.1 Release + Update docs

How to change
This can be changed easily by replacing the previous version 0.1.1
fastembed = [
    { version = "0.1.1", optional = true, python = "<3.12" }
]

With the latest version 0.2.1
fastembed = [
    { version = "0.2.1", optional = true, python = "<3.12" }
]

Test Cases
I have run test cases on qdrant with fastembed of both versions to see if any piece of code is affected
Failing Test: tests/test_fast_embed.py
FAILED tests/test_fast_embed.py::test_set_model - AssertionError: assert False

Next Step
If this issue sounds valid, I'll be happy to investigate the failing test case and upgrade to the latest version

Hm, thanks for pointing out the failing test
Updating version is not the only thing we need to do after the refactoring of fastembed which has been done though

@joein , I was trying to solve this issue from fastembed qdrant/fastembed#95.
Should I wait for fastembed to be upgraded to latest version, or work on currently support version (0.1.1)?

upgraded in #493


[core] Provide a function to get wheel movement on x and y, for trackpad-based input devices

Issue description
On my Mac, the trackpad scroll provides a blend of both the X and Y scroll. This was "fixed" recently via #2437, but in a way that still only provides one value. So writing, for instance, a GUI which has both horizontal and vertical scrollbars is impossible.
However, looking at the code, openGL is providing both x and y scrolling. Raylib also has many functions that are repeated for both X/Y and Vector2 overloads. So it would make logical sense to provide a GetMouseWheelMoveV function that returns a Vector2 with both x and y components, instead of picking the largest amplitude. I'll also note that for whatever reason the x scroll scale is much bigger on the trackpad (that is, the x value seems to be larger than the y value based on similar movements on my trackpad when scrolling).
I actually have a working version of this function, and can submit a PR, but I have not explored all the ramifications, and don't want to move further unless it's agreed such a function can be added.
Environment
MacOS Monterey 12.3.1, Apple M1 Pro ARM, magic trackpad.
Code Example
Simple D program that writes a scroll position with movement of the text on the screen:
import raylib;

void main()
{
    InitWindow(500, 500, "raylibtest");
    SetTargetFPS(60);

    float pos = 0;
    while(!WindowShouldClose())
    {
        float mwm = GetMouseWheelMove();
        pos = pos + mwm;
        auto drawpos = pos;
        if(drawpos < 0) drawpos = 0;
        BeginDrawing();
        ClearBackground(Colors.WHITE);
        DrawText(TextFormat("%f", pos), 10, cast(int)drawpos, 20, Colors.BLACK);
        EndDrawing();
    }
}

@schveiguy Feel free to send a PR with a new function. :)


Fix  missing ctx  in new_form.tmpl

Fix  #27432
Regression of #27265

Needs a backport for 1.21

Wait until the next merge ;)


Handle non-root usage of cron resource and basic test. - Reset of PR #5710

Signed-off-by: Tensibai<EMAIL_ADDRESS>Description
Ensure the crontab command line used doesn't use -u if not run as root, fail if non-root and trying to set someone else crontab.
Issues Resolved

Issue 2491
StackOverflow Q/A: Unable to run Chef cron recipe as non-root user

Check List

[x] New functionality includes tests
[X] All tests pass
[X] RELEASE_NOTES.md, has been updated if required (not required for bugfixes, required for API changes)
[X] All commits have been signed-off for the Developer Certificate of Origin. See https://github.com/chef/chef/blob/master/CONTRIBUTING.md#developer-certification-of-origin-dco
[x] Non-root user editing its own crontab should not raise an error.
[x] Non-root user editing someone else crontab should raise an error.

So I'm a bitlost with the functionnal test not working, taker of advice on what I'm missing :)

@Tensibai wanna try to rebase this. We've changed a lot in our testing in a last few months

@tas50 Rebased, style corrected. There's still some tests failing but they don't seem related to this change.

@Tensibai is this still active? Should we keep working on this?

Unsure, I didn't had time nor will to work around latest comment from Lamont about define_resource_requirement nor to check if the long time overdue rewrite of this resource did happen.
I'd say the test case is in the pr, if you add it to current master and it fails, that's still something to work on imho.
Happy to discuss it in more details on slack if you want


Reach parity with Dapr features

Describe the proposal
Missing functionality that needs to be addressed:

Subscribe to topics
Bindings callbacks
Service invocation callback

I assume this is likely to be implemented in DaprClient

These are currently manually implemented by the user by either exposing a web server with the required endpoints, or implementing the daprclient gRPC interface.

Thanks, Yaron. I am aware of these gaps. Thanks for creating the issue.

The part of this issue related to bindings: https://github.com/dapr/java-sdk/pull/81/


Help needed: Nuxt and vue-dropzone

Hi,
Thanks for that really nice component.
I would like to use it with nuxt but within my current setup build is ok but I got nothing rendered for the dropzone (size 0x0 even if I set a size).
I'm pretty new to Vue and nuxtjs.
Here is my setup:
nuxt.config.js:
module.exports = {
  head: {
    title: 'Florie Briand',
    meta: [
      { charset: 'utf-8' },
      { name: 'viewport', content: 'width=device-width, initial-scale=1' }
    ],
    link: [
      { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' },
      { rel: 'stylesheet', href: 'https://fonts.googleapis.com/css?family=Roboto' },
      { rel: 'stylesheet', href: 'https://fonts.googleapis.com/icon?family=Material+Icons' }
    ]
  },
  plugins: [
    { src: '~plugins/vue-dropzone.js', ssr: false },
  ]
 }

plugins/vue-dropzone.js
import Dropzone from 'vue2-dropzone'
import Vue from 'vue'

Vue.use(Dropzone)

pages/index.vue
<template>

Welcome to your Vue.js app!

    <dropzone id="myVueDropzone"  width="200px" height="80px" url="https://httpbin.org/post" v-on:vdropzone-success="showSuccess">

        <input type="hidden" name="token" value="xxx">
    </dropzone>

</template>

Thanks for the help!

Hi @MarcMagnin
I can't say I've looked much at Nuxt although there have been some pull requests previously to get vue-dropzone supported in server-side rendering so I know it's doable.
My first suggestion would probably to look at your config file
  plugins: [
    { src: '~plugins/vue-dropzone.js', ssr: true},
  ]
 }

Does anything different happen if you set ssr to true?
And looking at this nuxt doco is talks about some build settings so it might be worth seeing if they make any difference...
Cheers

You can't use ssr: true since Dropzone uses many browser environment properties (window, document, etc) and will error out on the server.
The Nuxt docs are notorious for being bad so personally I found it easier to just shim the whole thing:
import Vue from 'vue'

Vue.use({
  install(Vue) {
    let component = {}
    if (process.browser) {
      component = require('vue2-dropzone')
    }
    component.render = function(createElement) {
      const that = this._self
      return createElement('form', {
        attrs: {
          class: 'dropzone',
          id: that.id || undefined,
          action: that.url
        }
      }, this.$slots.default)
    }
    Vue.component('dropzone', component)
  }
})

Then just configure the plugin as usual in nuxt.config.js:
module.exports = {
  plugins: [ '~plugins/dropzone.js' ]
}

Caveat emptor etc, this is just a hack, while it works for the time being it will eventually break somewhere down the road since Nuxt is still in beta.

Thanks for the write up @Etheryte . I'll try and take a look at it further as I need to get my head around this whole SSR stuff at some stage anyway!

@Etheryte i still have the issue saying that unknown component 'Dropzone' when i do that
any solutions?

@finalight If the component is not registered then your error seems to be somewhere else, from your current description it sounds like in capitalization.

Did anyone succeed using nuxt and this dropzone component?

Hi @lomholdt
Im honestly not sure sorry. We're currently working on a major overhaul of this component and the docs so I'll try and include a SSR/Nuxt example in there. @AlexanderYW or @vrajroham is this something either of you could maybe take a look at?

Spent around an hour trying getting it to work with no luck, I haven't really played with Nuxt before
If @vrajroham can't either we should maybe tag it with hacktober and hope that someone have a fix?

Same here @AlexanderYW @rowanwins. Not familiar with nuxt.js, but I'll surely look into it and update here!  Need some time :clock1:

Thanks @rowanwins, that sounds great!
@AlexanderYW Me too, no success so far.
Could be awesome with a nuxt-community version of the plugin leveraging this component. Just an idea of course, first of all it would be fantastic to just have it working with SSR :)

For anyone having a hard time or looking for an example, we've been using the solution I've outlined above in production for a few months now without any issues.

Hi @Etheryte, I Tried your sample, but I cannot get it to work
The first sample of code you wrote I assume belongs in ~plugins/dropzone.js
and the second ofc in nuxt.config.js as you write
But when I do that I get errors in the console like

Unable to get property 'destroy' of undefined or null reference ``

and

Invalid dropzone element

and

The client-side rendered virtual DOM tree is not matching server-rendered content. This is likely caused by incorrect HTML markup, for example nesting block-level elements inside
, or missing
. Bailing hydration and performing full client-side render.

are you sure your code works with the latest Nuxt.Js?, also It doesn't even render the page anymore
Do you know what the issue might be or what I am doing wrong / missing?, since I'm just following what you wrote

@AlexanderYW I tried the example as well, and I get the same error.

I haven't tested with the latest release, our production runs on 1.0.0-alpha3. I imagine the errors are rather straightforward to resolve if you set the debugger to catch on thrown errors.

@AlexanderYW I tried multiple ways but no luck :frowning_face:. Except @Etheryte solution work perfectly in my case.

The issue with the latest Nuxt release was simple prop passing. Since many people seem to struggle with this, I've packaged the solution and published it both on NPM as well as on Github.
Installation:
npm i --save nuxt-dropzone

Usage:
<template>
  <dropzone id="foo" :url="'http://httpbin.org/anything'"></dropzone>
</template>

Cool @Etheryte, thank.

Hey Thanks @Etheryte,
Your component links added to README. :tada:

Thanks @Etheryte we've been struggling with exactly the same problem and have been throwing our hands up in frustration as the Nuxt docs are pretty bad. This helps immensely!

Thanks @Etheryte for writing up the docs and the component. FYI We've just published a fairly major overhaul of this component so you might want to take a look at updating your's to bring in the latest changes.

@rowanwins Thanks for the heads up, I've updated the component to 3.0.0. I've subscribed to the releases so that I can get notified automatically in the future.

data:[{"url":"https://mounty.sgp1.digitaloceanspaces.com/images/4517c293-7bc4-4292-b50a-56de76878965.jpeg","name":"index.jpg"},{"url":"https://mounty.sgp1.digitaloceanspaces.com/images/227e93d3-18e2-4f3b-af4d-99f736f575e7.jpeg","name":"index2.jpg"}]
every time when uploading multiple files it is sending two files at a time having response as above.
methods: {
success(file,response) {
this.$emit('uploaded',response.data[0].url)
}
}
data() {
return {
// See https://rowanwins.github.io/vue-dropzone/docs/dist/index.html#/props
options: {
url: "some images api/",
uploadMultiple: true,
autoProcessQuee: false
}
}
},

@vijay18399 Please ask either Stack Overflow or make a new ticket, this is an old ticket abut a completely different problem.


Feature request: signals to be logged

In order to improve the usability of the framework, I think it would be important to add this set of data to be logged:

joint_states (of all joints)

position
velocity
acceleration
torque

motor_state (of all motors)

position
velocity
acceleration
current
pwm

inertials (from all IMUs)

rpy
gyro
accelerometer

cartesian_wrenches (all those computed by WBD)
FT_sensors

FT
temperature

This is the list of things we are currently logging for offline testing. Reference code: https://github.com/ami-iit/bipedal-locomotion-framework/tree/dc113093d2467e854a2b1427265af55f559f13d0/devices/YarpRobotLoggerDevice
Let me remark that this data might be robot-dependent. For example, the lists of FTs and cartesian_wrenches depend on the robot.
Moreover, we might need to add more data in the future.
cc @nunoguedelha @traversaro

It might also be useful to log the text log coming from the modules. In general anyway, it would be nice to have a shared interface between the online and offline logging.
cc @GiulioRomualdi

For the TextLogging I took inspiration from what is done in YarpManager. https://github.com/ami-iit/bipedal-locomotion-framework/pull/546

For the TextLogging I took inspiration from what is done in YarpManager. ami-iit/bipedal-locomotion-framework#546

@GiulioRomualdi , I guess you meant more specifically https://github.com/ami-iit/bipedal-locomotion-framework/pull/541.

@S-Dafarra , I've added the following bullets/issues in the description according to your comments:

[ ] Improve the handling of the robot dependant configuration
[ ] Add the possibility to log the YarpTextLogging

@S-Dafarra , I had already added #133 to this epic, and just added it to the issue description.
Also added the issue #139 fixing the problems we ran into during the last test session on Friday.

If it's ok with you @S-Dafarra , I would close this Epic.

I agree. Great work!


[Peer Review Request]Restls: 对TLS握手的完美伪装

@wwqgtxx @H1JK
Hi there,
I hope you are having a good day.
First off, many thanks to the Clash.Meta project. We couldn't build a prototype quickly without your efforts.
We're currently working on a brand new protocol named Restls which can be used as an extension to Shadowsocks. It shares a similar goal with ShadowTLS to circumvent GFW whitelisting but tries to fix ShadowTLS' fundamental flaw of not being able to provide server authentication.
If that sounds good, you might want to take a look at the draft:
Restls: A Perfect Impersonation of TLS Handshake
You can find a proof-of-concept implementation in the same repo.
----------------------
你们好，
希望你们一切顺利。
首先很感谢Clash.Meta的平台，不然我们无法快速实现这个想法。
我们正在设计一个新的协议，名为Restls，它可以作为Shadowsocks的插件使用。它的目标与ShadowTLS类似——绕过GFW的白名单机制，但它试图解决ShadowTLS在协议设计中未能实现的服务端认证，从而避免被准确封杀。
如果你觉得这听起来还行，你或许想看一看这个协议的设计稿：
Restls: 对TLS握手的完美伪装
这个仓库同样包含了一个实现以及其使用方式。

Is it possible to use BLAKE3 as the hash algorithm instead of SHA1? Although HMAC-SHA1 is still considered safe, SHA1 itself are no longer safe and formally deprecated by NIST and not used by high-version TLS. This is also a point that I complaint about ShadowTLS.
x := hmac.New(sha1.New, []byte("hello"))
fmt.Println(hex.EncodeToString(x.Sum(nil)))
// result: f0779069bc6870453951e14d5a28be6031c2f9a0

x = hmac.New(func() hash.Hash {
	return blake3.New(20, nil)
}, []byte("hello"))
fmt.Println(hex.EncodeToString(x.Sum(nil)))
// result: 9de511243ba00b248f7c63c339f99a8e32f02f66

I'm using lukechampine.com/blake3 as BLAKE3 library. This library was optimized and has a good performance.

既然你是发出来让大家评价一下，那我也来评价一下应该问题不大，我的评价：远不如 REALITY

An important thing to do with TLS parroting/impersonating is to correctly handle TCP redirect attacks. Coia proposed a PoC for ShadowTLS, mentioning that TCP redirection attacks can accurately identify it.
Firewall sniffs out the SNI and redirect the TCP connection to the real server (like "override destination"), then the client is actually handshaking with the real server. For ShadowTLS v2, the real server does not recognize the payload (HMAC and inner protocol handshake etc) sent by client so it would forcibly close the connection (RST), which shows that it is ShadowTLS and can be easily identified by firewall.
It seems that Restls has designed a relatively complete authentication, but what will happen if the server authentication fails (such as facing a TCP redirect attack mentioned above)? Does the client close the connection when it finds out that it is not connecting to the proxy server? Then this is also a clear characteristic.
If not, what should be sent to the server? Just use HTTP to request its root directory and close the connection? Most of the countermeasures are not completely safe, if you use the exact same behavior across all connections, across all implementations, sooner or later this will be identified by censors, because they are using machine learning.

Is it possible to use BLAKE3 as the hash algorithm instead of SHA1? Although HMAC-SHA1 is still considered safe, SHA1 itself is no longer safe and formally deprecated by NIST and not used by high-version TLS. This is also a point that I complaint about ShadowTLS.
x := hmac.New(sha1.New, []byte("hello"))
fmt.Println(hex.EncodeToString(x.Sum(nil)))
// result: f0779069bc6870453951e14d5a28be6031c2f9a0

x = hmac.New(func() hash.Hash {
	return blake3.New(20, nil)
}, []byte("hello"))
fmt.Println(hex.EncodeToString(x.Sum(nil)))
// result: 9de511243ba00b248f7c63c339f99a8e32f02f66

I'm using lukechampine.com/blake3 as BLAKE3 library. This library was optimized and has a good performance.
Compare to SHA256, BLAKE3 is faster and has a customizable size.

That's a nice suggestion. We will try out other hash algorithms and blake3 looks great.
We acknowledge that SHA1 is vulnerable to collision attacks. Note that although SHA1 is no longer considered secure for collision attacks, it doesn't break the HMAC. https://crypto.stackexchange.com/questions/26510/why-is-hmac-sha1-still-considered-secure

An important thing to do with TLS parroting/impersonating is to correctly handle TCP redirect attacks. Coia proposed a PoC for ShadowTLS, mentioning that TCP redirection attacks can accurately identify it.
Firewall sniffs out the SNI and redirect the TCP connection to the real server (like "override destination"), then the client is actually handshaking with the real server. For ShadowTLS v2, the real server does not recognize the payload (HMAC and inner protocol handshake etc) sent by client so it would forcibly close the connection (RST), which shows that it is ShadowTLS and can be easily identified by firewall.
It seems that Restls has designed a relatively complete authentication, but what will happen if the server authentication fails (such as facing a TCP redirect attack mentioned above)? Does the client close the connection when it finds out that it is not connecting to the proxy server? Then this is also a clear characteristic.
If not, what should be sent to the server? Just use HTTP to request its root directory and close the connection? Most of the countermeasures are not completely safe, if you use the exact same behavior across all connections, across all implementations, sooner or later this will be identified by censors, because they are using machine learning.

Great question!
The complete client implementation should make this behavior customizable IMHO. Users provide a list of HTTP requests and we'll make them randomly. The connection shouldn't be closed deterministically. It should behave like a long connection and close later. The goal is to make it similar to regular proxy traffic.