when using service-upstream: true use FQDN

Is there an existing issue for this?

[X] I have searched the existing issues

Does this enhancement require public documentation?

[X] I have added an Acceptance Criteria item for adding and/or adjusting public documentation (if applicable)

Problem Statement
Currently using this feature we use {service}.{namespace}.svc.
Underneath this means we can do multiple DNS lookups to get the service.
Would it make sense to use {service}.{namespace}.svc.cluster.local to avoid some of the lookups?
Proposed Solution

Use FQDN instead of partial domain when using service-upstream

Additional information
No response
Acceptance Criteria

[ ] Check if cluster.local is configurable. If it is, reconsider this improvement
[ ] Once done check the DNS lookup go down when using service-upstream: true

Let's make it a configuration but have the default set as: .svc.cluster.local so it works for most.
Can we make it a KIC global configuration?

After making some tests with coredns log plugin enabled I've verified that this indeed would decrease the number of DNS queries made periodically, from :
# 2024-11-20T13:30:16.321988054+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.svc.cluster.local. SRV 23065
# 2024-11-20T13:30:16.322108554+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.kong.svc.cluster.local. A 36177
# 2024-11-20T13:30:16.322140471+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.kong.svc.cluster.local. SRV 42231
# 2024-11-20T13:30:16.322311096+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.cluster.local. SRV 5591
# 2024-11-20T13:30:16.322697388+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.svc.cluster.local. SRV 22470
# 2024-11-20T13:30:16.322973181+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.svc.cluster.local. A 30963
# 2024-11-20T13:30:16.323037681+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.kong.svc.cluster.local. SRV 3028
# 2024-11-20T13:30:16.323112431+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.cluster.local. A 26723
# 2024-11-20T13:30:16.323118973+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.cluster.local. A 44180
# 2024-11-20T13:30:16.323122181+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.cluster.local. SRV 51510
# 2024-11-20T13:30:16.323162431+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.kong.svc.cluster.local. A 24715
# 2024-11-20T13:30:16.323261931+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.svc.cluster.local. A 10374
# 2024-11-20T13:30:16.336072458+01:00 [INFO] udp Request: httpbin-deployment.kong.svc. SRV 5107
# 2024-11-20T13:30:16.336275333+01:00 [INFO] udp Request: httpbin-deployment.kong.svc. SRV 17820

to
# 2024-11-20T13:32:20.447688423+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.cluster.local.cluster.local. A 12120
# 2024-11-20T13:32:20.447771840+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.cluster.local.kong.svc.cluster.local. A 42749
# 2024-11-20T13:32:20.447777590+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.cluster.local.svc.cluster.local. A 24739
# 2024-11-20T13:32:20.447911923+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.cluster.local. A 13713
# 2024-11-20T13:32:20.457980238+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.cluster.local.svc.cluster.local. A 31128
# 2024-11-20T13:32:20.458014780+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.cluster.local. A 56589
# 2024-11-20T13:32:20.458019196+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.cluster.local.cluster.local. A 25465
# 2024-11-20T13:32:20.458021196+01:00 [INFO] udp Request: httpbin-deployment.kong.svc.cluster.local.kong.svc.cluster.local. A 43958

Albeit there's still some of those that are interesting.

Regarding DP's DNS config: I've looked at https://docs.konghq.com/gateway/latest/production/networking/dns-considerations/ and https://docs.konghq.com/gateway/3.8.x/migrate-to-new-dns-client/ but I couldn't find anything relevant to this (perhaps there's more that I couldn't find).

Regarding making this configurable: I believe a flag/env in KIC would do the trick. We could possibly make this a parameter through:

IngressClassParameters field

That would only be relevant to Ingress related resources
We do not have a similar configuration option for Gateway API resources

Another Service annotation: ingress.kubernetes.io/service-domain which could be set to a domain that should be appended to this Service dns name so service-name.service-ns.svc.<annotation-value>

Having said that I'm not sure this level of granularity would be required for KIC (at least today). I'm happy to hear feedback on this one though.
#6697 adds the flag and uses it (requires fixing tests etc.).

On top of adding a flag/env configuration we could extend this to auto-detect. A simple in-cluster lookup
// getClusterDomain returns Kubernetes cluster domain, defaults to "cluster.local".
func getClusterDomain(ctx context.Background) string {
	apiSvc := "kubernetes.default.svc"

	resolver := net.Resolver{
		PreferGo: true,
	}
	cname, err := resolver.LookupCNAME(ctx, apiSvc)
	if err != nil {
		return DefaultClusterDomain
	}

	clusterDomain := strings.TrimPrefix(cname, apiSvc)
	clusterDomain = strings.TrimSuffix(clusterDomain, ".")

	return clusterDomain
}

could make this automatic. This IMHO should be a separate issue.

I agree that the granularity doesn't seem necessary.
I think it's so uncommon to change the default that not making it automatic is fine.
TL;DR what you have in #6697  is enough to consider this issue as done


Generated message types should implement MessageWithConstraints

... at least for backward compatibility with the code from core-java.

@armiol, it would partially solve the issue with ”required” INT fields we have in core-java.
If we do this, the checking of command messages would just call validate() once again.

We have discussed that with @dmdashenkov several weeks ago.
What I proposed is to omit this interface for now, since there is no code which ever uses this interface at runtime.

Let's discuss this issue vocally tomorrow.


Remove deprecated completions endpoint

Completions endpoint is deprecated and will be removed on 4 Jan 2024

Resolves #296


Cannot find ffmpeg

I have the same issue, anyone can help pls?
This is the path address:

If you open the command line and type ffmpeg, do you get anything?

If you open the command line and type ffmpeg, do you get anything?

Thanks for reply.
im using this command:
crunchyroll-dl -i https://www.crunchyroll.com/es/dr-stone/episode-14-master-of-flame-789327 -u<EMAIL_ADDRESS>-p monster13 -l esLA

@adriannx For your own security please do not post your username and password publicly. I have gone ahead and deleted that comment for you.
To respond to your message, I mean if you open the Command Prompt and type in ffmpeg, what do you get as the output? If that does not work, can you try following this guide: https://m.wikihow.com/Install-FFmpeg-on-Windows

@adriannx For your own security please do not post your username and password publicly. I have gone ahead and deleted that comment for you.
To respond to your message, I mean if you open the Command Prompt and type in ffmpeg, what do you get as the output? If that does not work, can you try following this guide: https://m.wikihow.com/Install-FFmpeg-on-Windows

I do not know very well the appropriate command that I should use, therefore I have not used ffmpeg in the command to download.
Thanks for the guide.
On the other hand, my server is from Germany and im from South America, so i wanna download spanish sub/raw, maybe that the issue? because my server is not from south america or north america?
Regards!

What output do you get when you run a command? Does it say that it cannot download, or does it crash? I have seen where some subtitles are region-locked, so the fact that your server is in a different region may be a problem.


[release-1.11] Use safe timeout and proxy for spiffe bundle

This is an automated cherry-pick of #34685

@howardjohn CLA please.

@googlebot I consent.


Add it-students.txt

IT-Akademy
https://www.it-akademy.fr/
Student

Adding IT-Akademy.

@AlbanJamon Please provide us with a proof, which shows that the school recognizes the domain you are submitting as an official email domain for the students.
You can provide us with any of the following:

A copy of instruction (a hard-copy or electronic one) given to you by the school that tells you to use an email address in this email domain
An URL of a page at the official school website that says that students use this email domain
A reference to a recognized journal where an article was published by someone from the school, with explicit affiliation to the school, and e-mail address from the email domain
A WHOIS data that link the email domain to the school somehow
A copy of official letter from the school representative saying that the school provides e-mail addresses in this domain to the students
Anything else that can prove this fact in similar way, i.e. can be verified independently.

@AlbanJamon You might miss my previous comment. Please react.

@AlbanJamon I am sorry, this request remains unanswered for a while. I have to close it without merging. Please reopen and comment if you have an update regarding the aforementioned issue. Thank you for your understanding!


feat: automatically add app for review in testflight

first step for https://github.com/get10101/meta/issues/443

Note that we do have a problem:
reviewing the app takes some time, if in the meantime the deployed coordinator changes with some breaking changes, the released reviewed app won't work.
Given we don't guarantee anything on regtest, I think we can live with this.

What do you think of only supporting users on our test vm with the apk?

Given this action shouldn't cost us anything I would just run it as well and just don't guarantee anything. We don't have breaking changes too often 🤞.


Update the GGUF usage with llama.cpp doc page

there's now way cleaner syntax than https://huggingface.co/docs/hub/en/gguf-llamacpp to load a model from HF in llama.cpp

This is resolved by https://github.com/huggingface/hub-docs/pull/1280 right?

hmm no only partly i think
https://huggingface.co/docs/hub/en/gguf-llamacpp is still sub-optimal imo.
cc @Vaibhavs10, and also cc @ngxson who opened https://github.com/huggingface/huggingface.js/pull/778 which is the same command(s) but "in-product" (on the Hub) vs. in a doc

Good catch, will open a PR today to update and ask for everyone's reviews! 👍

Opened a PR to discuss: https://github.com/huggingface/hub-docs/pull/1326
cc: @ngxson - I wasn't able to add you as a reviewer, but please feel free to review

@julien-c now it can be closed I guess :smiley_cat:

yes we can close but @Vaibhavs10 @ngxson i would still add how to install (recommend brew etc) to that doc page WDYT?
Closing in the meantime


samlPairwiseID calculation not unique per relying-party

In evaluating the requirement for the 2 new attributes samlSubjectID & samlPairwiseID, we've been looking over specs & recommendations. In the SAML v2.0 Subject Identifier Attributes Profile Version 1.0, they have this to say about samlPairwiseID;

Assuming a particular scope, a given subject MUST be identified with a different, though consistent, unique ID for each relying party to which a value is provided

However, looking at how the v5 installer calculates this, relying party isn't a factor;
    <AttributeDefinition xsi:type="Scoped" id="samlPairwiseID" scope="%{idp.scope}">
        <InputDataConnector ref="computed" attributeNames="computedId"/>
    </AttributeDefinition>

    <DataConnector id="computed" xsi:type="ComputedId"
            generatedAttributeID="computedId"
            salt="%{idp.persistentId.salt}"
            algorithm="%{idp.persistentId.algorithm:SHA}"
        encoding="BASE32">

        <InputDataConnector ref="ldap" attributeNames="%{idp.newPersistentId.sourceAttribute}" />
    </DataConnector>

Should this in some way be factoring the relying party?

Received confirmation that the ComputedId data connector takes relying party into account;

The ComputedId DataConnector generates a single-valued IdPAttribute from the (usually SHA-1) digest of a requester's name (in SAML, an entityID), a source attribute value, and a salt that must be kept secret to prevent off-line generation of the hashes to recover the underlying attribute value.


cmd/cover: add number of uncovered lines

The coverage HTML file generated by go tool cover -html=coverage.out only displays the coverage percentage per package; as a result it's hard to identify, by just glancing at the list of packages and their coverage, where the coverage is lacking because small packages and giant packages are treated the same.
This is a feature request to add, in addition to the coverage percentage, the number of lines that are uncovered: this will enable to see what packages are big contributors to the lack of coverage.

There are external tools such as IDEs that read this file format, so this would be a breaking change to them. Regardless of its own merits, a change like this needs to be rolled out carefully.

Thanks for the reply @robpike! Note that I'm not talking about changing the format of the coverage itself, only that of the HTML file produced by go tool cover -html=coverage.out. Is this HTML file read by IDEs?
In the comment to the related change (https://go-review.googlesource.com/c/go/+/172424/) I have an example of the "improved" HTML.

Ah, I misunderstood. I don't know if IDEs read the HTML, but I doubt it.

Ah, I misunderstood. I don't know if IDEs read the HTML, but I doubt it.

Same here, I believe it's reasonably safe to change the HTML.

CC @ianthehat

I would be very surprised if any tool/integration is attempting to parse the HTML (I don't know of one), and I don't think it would be sensible to refuse changes if that was the only reason. The HTML output should never be a stable supported API!

@ianthehat Totally agree... I think the only "interface" the HTML should fulfill is to be valid HTML ;).


Cursor.copy: support temporary files

On some platforms, tempfile.TemporaryFile creates a tempfile._TemporaryFileWrapper instance which does not subclass io.IOBase. This makes TemporaryFile ineligible for use with Cursor's copy method on those platforms. Also, neither of the other two temporary file types tempfile.NamedTemporaryFile and tempfile.SpooledTemporaryFile subclass IOBase, making them ineligible for use with Cursor's copy method on all platforms.
This PR adds support for all three temporary file types by appending additional classes to the cursor module's file_type module-level variable.
Resolves #325.

@manselmi Thanks for adding this improvement. To make this PR more solid, would you please add a new test case below test_copy_with_file test?

@manselmi Thanks for adding this improvement. To make this PR more solid, would you please add a new test case below test_copy_with_file test?

@sitingren Test added.  :)


Prepare to be ready to tweak parameters for upcoming ANTLR version.

Signed-off-by: Henner Zeller<EMAIL_ADDRESS>

Codecov Report

Merging #2837 (779a501) into master (aae2320) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #2837   +/-   ##
=======================================
  Coverage   27.07%   27.07%
=======================================
  Files          99       99
  Lines       32106    32106
=======================================
  Hits         8694     8694
  Misses      23412    23412

Impacted Files
Coverage Δ

src/SourceCompile/ParseFile.cpp
49.66% <ø> (ø)

Continue to review full report at Codecov.

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


[WIP] OSD-19779 Use local monitoring plugin on 4.14+ clusters

What type of PR is this?
bug
What this PR does / Why we need it?
Since 4.14, the monitoring-plugin is required to be run locally. The plugin is running in cluster as a service so port forwarding is the only way to access it otherwise.
This PR sets up the locally running backplane console to include a locally running monitoring-plugin container in it's network and access it via a nginx server. The serer is pre-set in the monitoring-plugin container so we don't have other ways to access it.
This does not change the behavior for pre-4.14 clusters. It only adds the new container when the cluster is 4.14 and above.
Which Jira/Github issue(s) does this PR fix?
OSD-19779
Special notes for your reviewer
Pre-checks (if applicable)

[ ] Ran unit tests locally
[x] Validated the changes in a cluster
[ ] Included documentation changes with PR

Codecov Report

Merging #292 (64743e7) into main (d01e44d) will decrease coverage by 1.76%.
The diff coverage is 4.57%.

Additional details and impacted files

@@            Coverage Diff             @@
##             main     #292      +/-   ##
==========================================
- Coverage   46.91%   45.15%   -1.76%
==========================================
  Files          53       53
  Lines        3568     3718     +150
==========================================
+ Hits         1674     1679       +5
- Misses       1633     1771     +138
- Partials      261      268       +7

Files
Coverage Δ

cmd/ocm-backplane/console/console.go
31.49% <4.57%> (-10.75%)
:arrow_down:

/lgtm


new: Refactor project and dependency graphs.

When I first built the project graph, I built it to:

Lazy load projects on demand, instead of eager loading everything upfront.
Have the graph available from the workspace instance, since it'll be needed everywhere.

However, this has caused a ton of problems, primarily with Rust's lifetime and borrow system. The biggest issue is that lazy loading graph nodes requires the graph to be mutable, and in turn, the workspace.  This is definitely a performance hit.
So in the end, I said screw it, and I rewrote the project graph to eager load all projects up front. This avoids interior mutability, and allows projects as refs... no more cloning! It's also no longer coupled to the workspace, which allows the workspace to be in read-only more for the most part. Big win here.
While I was refactoring the project graph, I was also able to achieve 2 more improvements:

Moved the platforms layer to the workspace. This really needed to be at the top-level, not in the project graph.
Refactored the dependency graph to work like the new project graph. We're also able to pass references through the constructor now using lifetimes, which is a huge win.

!benchmark


Missing haptic in war thunder

playing war thunder with the bhaptic arm pieces there is no haptic firing the main guns but there is with the secondary guns.

Does it happen with every plane ? In the vest there are haptics ?
In the f4u-1c it happened to me, and it was a bug with the telemetry in WT, so I made a workaround, and took data directly from my joystick, but I can't do that for every joystick model, it would be to much work.

Does it happen with every plane ? In the vest there are haptics ?
In the f4u-1c it happened to me, and it was a bug with the telemetry in WT, so I made a workaround, and took data directly from my joystick, but I can't do that for every joystick model, it would be to much work.

ive only flown ww2 planes and they all had no haptic from the main guns. I dont have the vest so i put all effects to the arm pieces.


Unable to find GitHub repository matching 'undefined'.

Testing microsoft/vscode#114967

I also see this

I also see this

Fixed with https://github.com/microsoft/vscode-pull-request-github/pull/2418

Fixed with https://github.com/microsoft/vscode-pull-request-github/pull/2418

Started happening again for me

@mhmo91 I got the same issue, and it was solved when I set the up-stream.

Same to me


Installation not working

Module: Delta Lake Tables
Lab/Demo: 07
Task: setup.ps1
Step: Before you start - 5
Description of issue
cannot install the module
Repro steps:

rm -r dp-203 -f
git clone https://github.com/MicrosoftLearning/dp-203-azure-data-engineer dp-203
cd dp-203/Allfiles/labs/07
./setup.ps1

had tested and ran my own tests with no problems. Please share screenshot and/or error messages received from lab environment.
PS C:\learn-pr\mslearn-fabric> git clone https://github.com/MicrosoftLearning/dp-203-azure-data-engineer dp-203
Cloning into 'dp-203'...
remote: Enumerating objects: 1411, done.
remote: Counting objects: 100% (84/84), done.
remote: Compressing objects: 100% (41/41), done.
remote: Total 1411 (delta 42), reused 56 (delta 27), pack-reused 1327
Receiving objects: 100% (1411/1411), 28.69 MiB | 27.77 MiB/s, done.
Resolving deltas: 100% (738/738), done.
Updating files: 100% (319/319), done.
PS C:\learn-pr\mslearn-fabric> cd dp-203/Allfiles/labs/07
PS C:\learn-pr\mslearn-fabric\dp-203\Allfiles\labs\07> ./setup.ps1
Closing as no issues seen.


Add LLVM IR view for Rust

closes #497

You even improved the LDC IR handling! That's lovely!
Thank you so much for your time, and sorry it took us so long to review it :)

thank you for the fast review, nice that it was so easy to add.


output PVLV params for VSPatchLayer

it looks like VSPatchLayer may now be the only one using these PVLV params, in which case they should be folded into the VSPatch params instead, but anyway this is a quick fix for @garymm to use in comparing params.

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

Comparison is base (873f850) 36.90% compared to head (d245082) 36.90%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #224      +/-   ##
==========================================
- Coverage   36.90%   36.90%   -0.01%
==========================================
  Files          54       54
  Lines       11147    11149       +2
==========================================
  Hits         4114     4114
- Misses       6792     6794       +2
  Partials      241      241

Impacted Files
Coverage Δ

axon/layerparams.go
36.30% <0.00%> (-0.13%)
:arrow_down:

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


Stop archiving duplicate perf test artifacts in Jenkins

Looks like we are currently archiving and keeping 2 copies of test artifacts for perf tests in the event that the perf tests fail (benchmark_test_output.tar.gz and perf_test_output.tar.gz), though one artifact contains slightly more than the other.  This is because we always want to keep the benchmark results (so we archive benchmark_test_output here) but on failure we also archive results in perf_test_output for all types of tests.

We should verify the difference in content between the 2 artifacts and stop keeping both because its redundant and eats space on Jenkins or in Artifactory.

I investigated the benchmark and perf files and they seem identical. The only difference is that the perf output is inside another tar file:

benchmark_test_output.tar.gz.\openjdk-tests... [the rest is the same]
perf_test_output.tar.gz\perf_test_output.tar.\openjdk-tests... [the rest is the same]

Closed by https://github.com/AdoptOpenJDK/openjdk-tests/pull/2378


Uniquely identify computer where files reside

unique id
MAC-address would be nice but not trivial to obtain
human readable nick name
set in config file, fallback on hostname?
import socket
print(socket.gethostname())

Must save hostname when adding a new file;
FileFactory.locatedAt()
log()
Must be able to specify hostname when querying, by default only look for local files.
local
def byPath(self, path):
def knowsByPath(self, path):
global
def knows(self, image):
def getSeries(self, image):
def knowsSeries(self, image):
def add(self, provenance):
def update(self, image):
def all(self):
def bySubject(self, subject):
def byApproval(self, approvalStatus):
def updateApproval(self, fpath, approvalStatus):


Fix .dockerignore file by removing index.html

UI docker container build is faling because index.html wasn't copied to the container.
Signed-off-by: Darko Draskovic<EMAIL_ADDRESS>

Codecov Report

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

@@           Coverage Diff           @@
##           master     #725   +/-   ##
=======================================
  Coverage   85.32%   85.32%
=======================================
  Files          64       64
  Lines        3993     3993
=======================================
  Hits         3407     3407
  Misses        399      399
  Partials      187      187

Continue to review full report at Codecov.

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


Automatically create a GH discussion along with a release

Description
a) we want to collect as many user feedback as possible
b) we want to release value more often
c) @mwarkentin suggested repeatedly (and rightly) to create a GH discussion linked to a release (it's new GH feature).
Example
0.8.0 example (manual): https://github.com/cloudskiff/driftctl/discussions/520

didn't work for 0.10, let's find a solution for 0.11 then

Goreleaser (#355) should allow us to do this since it can create draft releases

We'll create the discussions manually until further notice.

we wonder if it's relevant with a high release cadence.

Reopening as Goreleaser now supports automatic release discussions.

@sjourdan WDYT of a potential downside to doing this: opening an unfocussed discussion for every release would be for multiple issues to be discussed in one thread. It seems to me that the benefit (a), "collect as many user feedback as possible", is achievable through github discussions, issues, PRs, and discord.
Benefit (b), "release value more often", seems totally orthogonal to opening release discussions?
I'm not saying I'm necessarily against the idea, and I'll defer to longer-term maintainers in any case, but I do want to probe the "why" a little.

to summarize the current state of discussions around this:

it was a great idea when we were releasing once every few weeks with a large scope of new features
now we decided to release as soon as we merge something, it may create too much noise

thank you @craigfurman for raising the point!


$http: allow differentiation between Request Error, Abort and Timeout

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Adding param xhrStatus to response and separate handlers for onerror, onabort and ontimeout
What is the current behavior? (You can also link to an open issue here)
Same handler for all error events
What is the new behavior (if this is a feature change)?
Separate handlers
Does this PR introduce a breaking change?
Probably not
Please check if the PR fulfills these requirements

[x] The commit message follows our guidelines: https://github.com/angular/angular.js/blob/master/CONTRIBUTING.md#commit-message-format
[x] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

Other information:
Some additional tests might be required in httpSpec.js and the docs would need updating as well.

Can you explain why you propose this change?

This path is in reference to issue #15380 regarding xhr requests being force timed out after 60 seconds on iOS 10. The issue is that in src/ng/httpBackend.js, all error cases have the same handlers:
xhr.onerror = requestError;
xhr.onabort = requestError;
xhr.ontimeout = requestError;

which makes it difficult to differentiate between these possibilities in the callback. So separate handlers will help developers better handle these different errors by being able to show the respective error messages, etc.

Sounds reasonable. I might actually need this myself in an app :)
Question: Is there a standard for the strings "Request Timed Out" , "Request Error", "Request Aborted"? Or did you take the most simple wording?
If we merge this, we also need to update the docs about this.

@gkalpak can you please add more tests and documentation?

I'll take a look to add more tests cases and update the docs.

@frederikprijck Much appreciated!

Continued in https://github.com/angular/angular.js/pull/15847


[WIP] Bugfix/issue 570 USB disconnecting is causing a deadlock

Fixes #570
This PR is not ready for review.
Risk
This PR makes no API changes.
Testing Plan
I tested the fix manually by trying to connect/disconnect the USB cable 30 times continuously for multiple times. The app didn't freeze after disconnecting the cable.
Summary
The deadlock happens when:

USBTransportReader thread locks PROTOCOL_REFERENCE_LOCK in SdlConnection.java
Main thread locks CONNECTION_REFERENCE_LOCK in SdlProxyBase.java
Main thread waits to lock PROTOCOL_REFERENCE_LOCK that is already locked by USBTransportReader thread
After that, in most case, USBTransportReader thread releases PROTOCOL_REFERENCE_LOCK and things go without a problem. But in some rare cases, USBTransportReader thread waits to lock CONNECTION_REFERENCE_LOCK  before releasing PROTOCOL_REFERENCE_LOCK which causes a deadlock between the two threads.

The scenario is little complicated but basically, when the connection is broken, the following  might happen:

When we call proxy.dispose(), main thread tries to clean the proxy, unregister the sessions, and remove them from listenerList

Main thread gets delayed and execution is switched to USBTransportReader thread

USBTransportReader thread tries to run the following loop:

for (SdlSession session : listenerList) {
  session.onTransportError(info, e);
}

In normal cases, The loop shouldn't run because main thread should have already cleaned listenerList. But because the main thread got delayed, the loop runs and causes a deadlock.
The PR prevents the rare case from happening by:

adding a flag to SdlSession to check if one thread unregistered the session, the other threads don't do actions on it
making USBTransport.disconnect() synchronized

CLA

[x] I have signed the CLA

Codecov Report

Merging #696 into develop will decrease coverage by 0.07%.
The diff coverage is 0%.

@@              Coverage Diff              @@
##             develop     #696      +/-   ##
=============================================
- Coverage      41.41%   41.34%   -0.08%
  Complexity      2647     2647
=============================================
  Files            361      361
  Lines          15720    15729       +9
  Branches        1662     1662
=============================================
- Hits            6511     6503       -8
- Misses          8913     8932      +19
+ Partials         296      294       -2

Impacted Files
Coverage Δ
Complexity Δ

...m/smartdevicelink/SdlConnection/SdlConnection.java
19.67% <0%> (-0.59%)
19 <0> (ø)

...smartdevicelink/encoder/VirtualDisplayEncoder.java
24.71% <0%> (-4.6%)
8% <0%> (ø)

Continue to review full report at Codecov.

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

Closing as the USB transport has been rewritten and this version is deprecated.


python 3.7: Optional w/o default, description placement

Hi!
I've got an API that can describe itself with something that looks like JSON Schema. I write "looks like", because I'm not sure if it does conform with everything.
(A quick romp through the schema spec does not state if a non-required field must provide a default.)
In my case, the result is a generated python dataclass with something like this (v15.0.174):
@dataclass
class BackupCollection:
    """Backup Solr indexes and configurations for a specific collection. One copy of the indexes
    will be taken from each shard, and the config set for the collection will also be copied.
    """
    """Defines a request ID that can be used to track this action after it's submitted. The
    action will be processed asynchronously.
    """
    backup_collection_async: Optional[str]
    """The name of the collection to back up."""
    collection: str
    """A location on a shared drive for the backup-collection command to write to. Alternately,
    it can be set as a cluster property with the cluster endpoint, which also supports
    setting a location.
    """
    location: str
    """The name of the backup."""
    name: str

I have to gripe about some of that:

Note the missing default on backup_collection_async.
The spec did not include a default, so there is none in the dataclass.
In this case, it's fine as it's just one parameter, but I have more complex classes that take 1 required and 15 optional parameters.
w/o a default value, this get's very tedious to use, when you don't want to use the from_dict.

Proposed solution: for fields that have no default specified in the schema, we use [name]: Optional[T] = None.

the docstrings are placed above the fields.
This is quite unusual in python. At least for me, since I'm usually expecting docstrings below the declaration.

Proposed solution: we put field descriptions in the top level docstring, i.e.
@dataclass
class CreateAlias:
    """
    Create an Alias

    :param create_alias_async: Defines a request ID that can be used to track this action after it's submitted. The action will be processed asynchronously.
    :param collections: The list of collections to be known as this alias. Incompatible with any of the routing parameters. Either this parameter or a complete set of routing parameters is required.
    :param create_collection: The settings to use to create a collection for each new time partition. Most options from the collection create command are available, except for 'name', 'async' and 'waitForFinalState'.
    :param name: The alias name to be created.
    :param router: Routing specific properties to define a time routed alias.  Do not specify 'collections' when creating a time routed alias.
    :param tz: Optional timezone for use with any date math that may exist in other parameters. Defaults to UTC.
    """
    create_alias_async: Optional[str]
    collections: Optional[List[str]]
    create_collection: Optional[Dict[str, Any]]
    name: str
    router: Optional[CreateAliasRouter]
    tz: Optional[str]

That way, help(CreateAlias) can provide more insight when interacting on the REPL.
Comments and other opinions welcome :3

To add default values the properties should also be sorted to make the default ones last (a python restriction)
It would also be cool to include the json schema default keyword


Fix e2e tests with Nightwatch, SauceLabs and CircleCI!

Also removes route-helpers.
@ericelliott you or someone at keystone will need to setup a SauceLabs account and store the environment variables SAUCE_USERNAME and SAUCE_ACCESS_KEY within CircleCI.
There is duplication within the new nightwatchCI.json and nightwatch.json. 'integration' could either be removed or maybe someone finds a way to use nightwatch --env with the autorunner.
PS: I havent tested it but the original assertion test would probably work as well. We're using the SauceLabs silenium server now, which obviously works way smoother than having CircleCI set up a silenium internally. The test uses the expect API but I don't mind changing it back :)
I'll be back after I get some sleep!

Nice! Looks really good just glancing over it. I'll have to dig in and take a look later. In the middle of something.
Thanks a lot!


Mutant type statistics in file report

Add some statistics when outputting to file:
{
  "CONDITIONALS_NEGATION": 10,
  "CONDITIONALS_BOUNDARY": 8,
  "INCREMENT_DECREMENT": 3
}

The problem comes form a division by zero issue. In case we have only not covered mutations report, efficacy becomes NAN, hence facing marshalling issues later on.
rep.tEfficacy = float64(rep.killed) / float64(rep.killed+rep.lived) * 100

tests efficacy should be calculated only if the number of killed is grater than zero, otherwise it keeps its zero value, so we avoid division by zero.
does this make sense to you @k3rn31 ?


Share: use resolverImplicitCatalog in generating a record shared link instead of chaise url

chaise config name : resolverImplicitCatalog. The scope is only on record page:

undefined or absent: use the chaise path (same as existing permalink)
false: use /id/{{{catalog_number}}}/{{{RID}}}
<implicit catalog #>: two scenarios

if catalog number in the chaise URL is the same as <implicit catalog #> then use /id/{{{RID}}}
else, use /id/{{{catalog_number}}}/{{{RID}}}

Note: We will be adding @{{{version}}} after {{{RID}}} when we have a way to navigate between snapshots through chaise.

@carlkesselman if I also have a DOI, do you want to also listed DOI as one of the shared links?

@jrchudy I added this config to rbk-dev to reflect implicit default catalog, which is 2.

The changes for this issue have been merged into master, reassigning to @hongsudt  to verify the feature is working as expected.

@karlcz  pointed out that if the catalog defined in the config option, resolverImplicitConfig, is not the same as the current catalog number, we should use the current catalog number like /id/{{{current_catalog_number}}}/{{{RID}}}.
This is currently implemented incorrectly.


Misc refactors and documentation

not done yet
just opening for initial thoughts @neelnanda-io :)

Note that pytest fails on a laptop without a GPU. (That's true in main as well).
Here's a colab demonstrating that EasyTransformer tests still work: https://colab.research.google.com/drive/1MKJ6nkRTNWXqXQYK524Ojjxvn7NkuDfI?usp=sharing

Note that pytest fails on a laptop without a GPU. (That's true in main as well).
Here's a colab demonstrating that EasyTransformer tests still work: https://colab.research.google.com/drive/1MKJ6nkRTNWXqXQYK524Ojjxvn7NkuDfI?usp=sharing

This should be fixed with https://github.com/neelnanda-io/Easy-Transformer/pull/68
By the way, it looks like your test_ files are manual tests? I've also renamed them in that PR as they will otherwise clash with test runners (e.g. Pytest assumes they are tests and tries to run them). In general if they are manual tests, I'd recommend converting them to Pytest tests so the CD can run them on each push.

Closing as the codebase has changed a lot since this was written, and merging is likely now too complex. @smithjessk sorry about this - if you want to pull out some of the changes here into other PRs on the new codebase, I can review them quickly if that helps?


Document Npm2 compared to Npm3 behaviour

Add to README.md explanation about different ways to use with Npm2 compared to Npm3 and also PR Angular 2.0 docs to explain the same thing

As I can see, there is only one difference in behavior  between NPM2 and NPM3 relatively to this package: the former installs peer dependencies first time (but each next time it shows warnings), the latter doesn't install anything at all showing only warnings.
I just changed the README to recommend adding all dependencies in the package.json at the start, so I think this issue is bot relevant any more.


Remove jQuery Dependency

issues #9

Well, didn't really test it, but at least it doesn't have malicious code.
Merge it, and test it on production env lol


Remix Build error: "env" is not exported

remix's build no longer works.
sst version 0.0.293
> build
> remix vite:build

vite v5.2.8 building for production...
✓ 1688 modules transformed.
x Build failed in 3.35s
Error [RollupError]: node_modules/sst/dist/resource.js (1:9): "env" is not exported by "__vite-browser-external:node:process", imported by "node_modules/sst/dist/resource.js".
file: /Users/kldeb/lop-ion/node_modules/sst/dist/resource.js:1:9
1: import { env } from "node:process";
            ^
2: const raw = {
3:     // @ts-expect-error,
    at getRollupError (file:///Users/kldeb/lop-ion/node_modules/rollup/dist/es/shared/parseAst.js:392:41)
    at error (file:///Users/kldeb/lop-ion/node_modules/rollup/dist/es/shared/parseAst.js:388:42)
    at Module.error (file:///Users/kldeb/lop-ion/node_modules/rollup/dist/es/shared/node-entry.js:13688:16)
    at Module.traceVariable (file:///Users/kldeb/lop-ion/node_modules/rollup/dist/es/shared/node-entry.js:14136:29)
    at ModuleScope.findVariable (file:///Users/kldeb/lop-ion/node_modules/rollup/dist/es/shared/node-entry.js:11817:39)
    at BlockScope.findVariable (file:///Users/kldeb/lop-ion/node_modules/rollup/dist/es/shared/node-entry.js:6037:38)
    at Identifier.bind (file:///Users/kldeb/lop-ion/node_modules/rollup/dist/es/shared/node-entry.js:7311:40)
    at CallExpression.bind (file:///Users/kldeb/lop-ion/node_modules/rollup/dist/es/shared/node-entry.js:4749:28)
    at CallExpression.bind (file:///Users/kldeb/lop-ion/node_modules/rollup/dist/es/shared/node-entry.js:8975:15)
    at ForOfStatement.bind (file:///Users/kldeb/lop-ion/node_modules/rollup/dist/es/shared/node-entry.js:4753:23) {

Closing, this was my issue. I was referencing the Resource object in client side code instead of through the loader.

Closing, this was my issue. I was referencing the Resource object in client side code instead of through the loader.

What is the 'loader'? I am having a similar issue with nextjs

@jimboboliver a loader in remix is a function that only runs server side.


how to recognition hollow word?

recognition hollow word
how to configure,like this image:

Please send your question to the users mailing-list.
See CONTRIBUTING


Migrate langmeta module to org.langmeta domain

See https://github.com/scalameta/scalameta/commit/befb24a1344001067f0f848b764d7591ca3dce8f

Langmeta no longer exists in 4.0, so I believe this ticket should be closed.


AADB2C90057: The provided application is not configured to allow the 'OAuth' Implicit flow

At the step to configure authentication settings for user flow, there is need to select Access tokens as an additional steps undocumented.
The process of login to power portal failed due to miss-configuration.
The error "AADB2C90057: The provided application is not configured to allow the 'OAuth' Implicit flow" has come.
The instruction should be modified as follows.
https://docs.microsoft.com/en-us/powerapps/maker/portals/configure/configure-azure-ad-b2c-provider-manual

[before] Under Implicit grant, select the ID tokens check box.
[after]    Under Implicit grant, select the Access tokens and the ID tokens check box.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: dfb5611f-dfc2-dab5-536c-b86db008b4bf
Version Independent ID: db45733d-fcfb-e92b-1107-7a7ed3d57028
Content: Configure the Azure Active Directory B2C provider manually - Power Apps
Content Source: powerapps-docs/maker/portals/configure/configure-azure-ad-b2c-provider-manual.md
Service: powerapps
GitHub Login: @sandhangitmsft
Microsoft Alias: sandhan

Thank you for reaching out. The documentation has been updated to reflect use of Access tokens (used for implicit flows) instead. The changes will be visible soon. If there's any additional issue, please reach out using support ticket for investigation.


Lost D.O. total measures

Context
Measures like total people, total foreigners, etc. are lost from the combo box. At least in Spain.
Steps to Reproduce
Just try to add a Population measure to a points dataset in Spain. The option is not there
Additional info
Looks like the values eventually tagged as potential denominators for normalizing are not being offered as measures in the combo. But then you have 'Total dwellings' within 'Housing' category, so this theory hace aguas.
cc @talos @danicarrion

cc @rafatower @ethervoid

Btw, these measures are available through the API.

The dataservices function is returning all the data but seems like the builder is not parsing it correctly and doesn't show all the options.

The problem comes from the group policy used by the OBS_LegacyBuilderMetadata function which creates multiples objects for the same tag.
In the case of Spain, there are 5 different tags.age_gender objects and the builder instead of accumulating them, override the key and only the last one is shown.
We should fix the legacybuildermetadata to make it group by tag
// @talos

I'm working on a fix in the builder part to aggregate it instead of override just in case

Just opened a PR for observatory-extension v1.1.4, which should fix this bug.

Deployed new version of the observatory with the fix for this bug. @AbelVM could you please re-check if it's all ok, thx! :)

I see the same options under age&gender :(

@AbelVM could you post a screenshot of the menu with missing measures? It appears to be working for me:

Looks like it's working ok now, so let's close it.
Thanks mates!


Disks API, always return empty value in type, and 0 in size parameters

Steps:
use API : get /nodes/{nodeid}/disks
Response :

Fixed the size and type. Also, the mountpoint and opts will be empty if this disk is not mounted. And fstype if there is no file system on this disk.

size still 0

although the size of the disk is 74.5 GB

commit : f653c14e04a1e49ea0ce4608781b4fba14456889


chore: backports from byAsSorry

A few backports to master from the byAsSorry branch.

You have a merge conflict now - can you merge master, please? Thanks!

bors merge


Imagemin config is ignored

Hi. Thanks for this plugin :) I was using Imagemin with webpack for years without problems, but cannot force it to work with Vite.
Fresh Vite install with Vue 3:
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import viteImagemin from 'vite-plugin-imagemin'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    viteImagemin({
      gifsicle: {
        optimizationLevel: 7,
        interlaced: false,
      },
      optipng: {
        optimizationLevel: 7,
      },
      webp: {
        quality: 75,
      },
      mozjpeg: {
        quality: 10
      },
      pngquant: {
        quality: [0.65, 0.9],
        speed: 4,
      },
      svgo: {
        plugins: [
          {
            removeViewBox: false,
          },
          {
            removeEmptyAttrs: false,
          },
        ],
      },
    })
  ]
})

It does not matter what I type in mozjpeg quality or optipng optimizationLevel because I will always get same assets.
dist/assets/logo.03d6d6da.png  -69%  6.69kb / tiny: 2.08kb
dist/assets/test.6ece58c0.jpg  -83%  3522.61kb / tiny: 616.63kb
So .jpg 10% and 100% results in same size.
Also, it is the same after disabling mozjpeg by
mozjpeg: false
It looks like config is ignored, but this:
    viteImagemin({
      disabled: true
    })

does actually disable compressing, so config is not ignored if it recognizes this option.
What is going on?

I will look at it later

I will look at it later

I will look at it later

This is caused by webp。
webp: {
          quality: 75,
 }

imagemin will first read the configuration of webp to compress jpg and png.
So just set webp to false
You can also upgrade to version 0.2.7. The default webp is set to false, and the webp configuration is deleted in vite.config.ts

Thanks!


I am getting this weird Error when ever I open the neovim

someone help me!!!

check this config:
save_file = vim.fn.expand "$HOME/.bookmarks", -- bookmarks save file path

This is my config....
require('bookmarks').setup {
      sign_priority = 8,  --set bookmark sign priority to cover other sign
      save_file = v.fn.expand "$HOME/.bookmarks", -- bookmarks save file path
      keywords =  {
        ["@t"] = " ",
        ["@m"] = " ",
        ["@i"] = " ", --☑ mark annotation startswith @t ,signs this icon as `Todo`
        ["@w"] = " ", -- mark annotation startswith @w ,signs this icon as `Warn`
        ["@f"] = " ", --⛏ mark annotation startswith @f ,signs this icon as `Fix`
        ["@n"] = " ", -- mark annotation startswith @n ,signs this icon as `Note`
      },
      on_attach = function(bufnr)
        local bm = require "bookmarks"
        local map = v.keymap.set
        map("n","mm",bm.bookmark_toggle) -- add or remove bookmark at current line
        map("n","mi",bm.bookmark_ann) -- add or edit mark annotation at current line
        map("n","mc",bm.bookmark_clean) -- clean all marks in local buffer
        map("n","mn",bm.bookmark_next) -- jump to next mark in local buffer
        map("n","mp",bm.bookmark_prev) -- jump to previous mark in local buffer
        map("n","ml",":Telescope bookmarks list<cr>") -- show marked file list in quickfix window
        map("n","mx",bm.bookmark_clear_all) -- removes all bookmarks
      end
    }

exec this:
ls -l $HOME/.bookmarks

Make sure that. bookmars is a file and not a directory

Its working now

Thank you so much


Podman driver shouldn't define /sys/fs/cgroup vol

Since podman version 0.8.5 it has auto detected when the mounting of
/sys/fs/cgroup is necessary and only mounts a subset of that dir as
needed by the container runtime. In newer versions, explicitly
defining this actually fails with an OCI runtime permission denied
error. Therefore, not only is this not necessary but can cause
failures for users.
Signed-off-by: Adam Miller<EMAIL_ADDRESS>Please include details of what it is, how to use it, how it's been tested
Please include an entry in the CHANGELOG.md if the change will impact users.
PR Type

Docs Pull Request

Travis CI failures look unrelated since the failure is in docker functional tests and this is a docs change on something not docker.

Thanks! RE: CI, we need to merge #2354 first.

@maxamillion Thank you for this! :+1:
@decentral1se This is exactly the problem I mentioned on IRC the other day. Would there be a chance to get this removed from the (published) 2.22 docs at https://molecule.readthedocs.io/en/stable/configuration.html#podman as well? Right now, the docs tend to lure the reader into a configuration that is very likely to fail (on newer podman versions), so it would be great to get this sorted out.


refactor: make module analysis async

This allows us to parse source files in parallel for the first run:
Benchmark 1: ../deno/deno_old run -A ts_morph.ts
  Time (mean ± σ):      2.332 s ±  0.017 s    [User: 2.193 s, System: 0.126 s]
  Range (min … max):    2.307 s …  2.366 s    10 runs

Benchmark 2: ../deno/target/release/deno run -A ts_morph.ts
  Time (mean ± σ):      1.052 s ±  0.006 s    [User: 2.259 s, System: 0.132 s]
  Range (min … max):    1.040 s …  1.060 s    10 runs

Summary
  ../deno/target/release/deno run -A ts_morph.ts ran
    2.22 ± 0.02 times faster than ../deno/deno_old run -A ts_morph.ts
scratch % cat ts_morph.ts
import<EMAIL_ADDRESS>import<EMAIL_ADDRESS>import<EMAIL_ADDRESS>import<EMAIL_ADDRESS>
Same speed on second run:
Benchmark 1: ../deno/deno_old run -A ts_morph.ts
  Time (mean ± σ):     419.2 ms ±   3.7 ms    [User: 390.3 ms, System: 40.7 ms]
  Range (min … max):   415.1 ms … 428.8 ms    10 runs

Benchmark 2: ../deno/target/release/deno run -A ts_morph.ts
  Time (mean ± σ):     415.4 ms ±   4.6 ms    [User: 385.7 ms, System: 39.6 ms]
  Range (min … max):   412.2 ms … 425.1 ms    10 runs

  Warning: Statistical outliers were detected. Consider re-running this benchmark on a quiet system without any interferences from other programs. It might help to use the '--warmup' or '--prepare' options.

Summary
  ../deno/target/release/deno run -A ts_morph.ts ran
    1.01 ± 0.01 times faster than ../deno/deno_old run -A ts_morph.ts

maybe this should rather be "perf: make module analysis async"


Interesting artifacts produced through U-pres

The original output:

The output after running it through neural-style with the same settings:

Neither the content image, or the style image, have any 90 degress rectangle shapes that would cause these artifacts. So where are they from/what caused them to appear?

Original tile piece:

U-pres version of the tile:


bugfix: gracefully shut down the server

[ ] I have registered the PR changes.

Ⅰ. Describe what this PR did

客户端的 当前server地址列表 会根据注册中心的服务器下线通知 来移除对应server地址，使得下线server地址能尽可能快的被移除.
The current server address list of the client will be removed according to the server offline notification of the registry, so that the offline server address can be removed as soon as possible

server 下线时异步发送下线消息到客户端来移除server地址，防止注册中心的消息下发延迟.
When the server goes offline, an offline message is sent to the client asynchronously to remove the server address, preventing message delivery delay in the registry

增加了server下线时的睡眠时间，确保没有新的请求进来
Increased the sleep time when the server is offline to ensure that no new requests come in

Ⅱ. Does this pull request fix one issue?

https://github.com/seata/seata/issues/6039
Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

这个实现存疑,

我认为不需要鸡肋的shutdownmessgae,它破坏了原有的协议,而且与低版本也不兼容,seata大量用户使用的都不会是最新版.
这个pr将高可靠的注册中心视作为不可靠,感觉多此一举
我认为解决这个问题只需要20行左右的代码,此实现太过复杂,而且收益很小

This realization is doubtful

I don't think there is a need for the cockamamie shutdownmessgae, it breaks the original protocol and is incompatible with lower versions, seata is used by a large number of users who won't be up to date with the latest version.
This pr treats highly reliable registries as unreliable, which feels redundant.
I think the solution to this problem requires only about 20 lines of code, this implementation is too complex and the benefits are small.

没太明白为什么破坏了原有的协议，shutdownmessgae 和 hearbeatmessage一样都是 empty body的消息，对协议基本没有改动. 能不能响应 shutdownmessgae，其实就是看客户端有没注册的processor去处理.
2，3 已经讨论过了.

I do not quite understand why the original protocol is broken. shutdownmessgae and hearbeatmessage are both empty body messages, which basically do not change the protocol. The ability to respond to shutdownmessgae depends on whether the client has a registered processor to handle it.
2,3 has already been discussed.

优雅停机 目前 只处理 注册中心 服务端地址 下线的消息, ServerShutDownMessage 暂时不处理
Elegant shutdown only processes messages that the registry server address is offline. ServerShutDownMessage is not processed for the time being

Codecov Report
Attention: 19 lines in your changes are missing coverage. Please review.

Comparison is base (3baeb49) 48.92% compared to head (53e66b0) 49.53%.

:exclamation: Current head 53e66b0 differs from pull request most recent head 0d180fe. Consider uploading reports for the commit 0d180fe to get more accurate results

Additional details and impacted files

@@             Coverage Diff              @@
##                2.x    #6143      +/-   ##
============================================
+ Coverage     48.92%   49.53%   +0.60%
- Complexity     4765     4821      +56
============================================
  Files           913      913
  Lines         31700    31717      +17
  Branches       3827     3830       +3
============================================
+ Hits          15510    15711     +201
+ Misses        14647    14460     -187
- Partials       1543     1546       +3

Files
Coverage Δ

...n/src/main/java/io/seata/common/DefaultValues.java
0.00% <ø> (ø)

...very/registry/zk/ZookeeperRegisterServiceImpl.java
63.04% <100.00%> (+1.72%)
:arrow_up:

...covery/registry/etcd3/EtcdRegistryServiceImpl.java
11.27% <0.00%> (-0.09%)
:arrow_down:

...overy/registry/nacos/NacosRegistryServiceImpl.java
14.58% <0.00%> (-0.11%)
:arrow_down:

...ery/registry/consul/ConsulRegistryServiceImpl.java
1.66% <0.00%> (-0.03%)
:arrow_down:

...a/io/seata/discovery/registry/RegistryService.java
0.00% <0.00%> (ø)

... and 14 files with indirect coverage changes

I don't understand what this test is supposed to verify.

我不懂你这句话的意思,可以描述清楚点吗?
I don't understand what you mean by this sentence. Can you describe it more clearly?

I don't understand what this test is supposed to verify.

之前修改了server端用来发送ShutdownMsg, 写了单测，后来这块回滚了，但是我把保留下来了.
I previously modified the server side to send ShutdownMsg and wrote a single test. Later, this was rolled back, but I kept it and added coverage.

I don't understand what this test is supposed to verify.

之前修改了server端用来发送ShutdownMsg, 写了单测，后来这块回滚了，但是单测保留下来了. I previously modified the server side to send ShutdownMsg and wrote a single test. Later, this was rolled back, but I kept it and added coverage.

ok


TOS Redirection not working after Accepting

After a login attempt, if TOS were not accepted, the user lands on a TOS "accept" page.
If the user accept, it must be redirected to the URI it was previously pointing.
Instead, the user is redirected on AAC root.

Solved with pull request #450


Can we use Python and Jython both as Suite executor in Robot Framework ?

Requirement is to process a custom Java library and get a particular value(A).
Pass A to a python library which uses pandas module to process certain dependent files.

I doubt pandas works on Jython, but this ought to be possible by utilizing the remote library interface.
This issue tracker is for bug reports and enhancement requests. Please use robotframework-users mailing list, our active Slack community, or other such forums listed at robotframework.org for general questions and discussion.


solve #1444 and #1359.

I use webpack version 2.6 and new configure syntax rather than 1.x.
When I follow the instruction on readme.md. It always failed on Basic Usage with the message below.
ERROR in ./~/css-loader?{"modules":false,"importLoaders":1,"localIdentName":"[name]--[local]--[hash:base64:8]"}!./~/postcss-loader/lib!./~/react-toolbox/lib/button/theme.css
  Module build failed: Error: composition is only allowed when selector is single :local class name not in ".raised", ".raised" is weird

So I figured out what's wrong. The Default value of css-loader is false on new versions.
It will solve #1444 and #1359.

+1

the additional commit is a bugfix. see commit message.


Support for Upsert operation in IKernelMemory

Following off of https://github.com/microsoft/kernel-memory/issues/85
I've observed that the documentId parameter in the IKernelMemory.Import<*>Async methods is actually used as the value for a reserved tag __document_id when importing to a vector storage (Azure AI Search in my case). Since it is not used as the primary key for the entity in the index, I can upload multiple pieces of information with the same documentId which count as unique objects in the index grouped together by tag.
I understand the benefit of doing this if you were separately uploading parts of a larger file, but it also means that there is no easy Update mechanism if my intention is to completely replace everything associated with the documentId in question.
If my source content changes (and potentially has conflicting information with what is already in the index), I would love for deletion of the old information in the index to be part of the SDK. My workaround for this is (in pseudocode):
if (await IKernelMemory.IsDocumentReadyAsync(documentId))
{
    await IKernelMemory.DeleteDocumentAsync(documentId)
}

await IKernelMemory.Import<*>Async(...)

Is there any benefit to an adding an Upsert or CreateOrUpdate operation natively?

it also means that there is no easy Update mechanism if my intention is to completely replace everything associated with the documentId in question.

hi @drelyea when uploading a document with the same ID, the resulting operation is equivalent to an Upsert. All the previous information is replaced. For instance if you upload a PDF with ID "foo" and then upload a Word doc with the same ID "foo", the content of the PDF is replaced with the content of the Word doc. Same if you upload multiple files under the document ID (a document can be composed of multiple files).
Perhaps the "Import" name is confusing, but I can assure it's design to work this way:

If a Document ID is provided => Upsert, ie Replace
If a Document ID is not provider => Insert new record

Hey @dluc! Thanks for getting back to me. This seems at odds with the behavior I observe, at least with ImportText.

uploading a document with the same ID, the resulting operation is equivalent to an Upsert

Is this true for both ImportDocument and ImportText?
As an example, I call IKernelMemory.ImportText at two different points in time with the same documentId but conflicting information:
// Call 1
memory.ImportTextAsync(
    text: "Researchers from the International Society of Frog Enthusiasts have determined there are exactly 386 kinds of Frog in the world", // Random text
    documentId: "2cc8d19a-4fa1-484b-8f27-1a1b72f653f2"); // A specific guid

// Call 2
memory.ImportTextAsync(
    text: "Researchers from the International Society of Frog Enthusiasts have determined there are exactly 5 kinds of Frog in the world", // Random text
    documentId: "2cc8d19a-4fa1-484b-8f27-1a1b72f653f2"); // A specific guid

When I look at my index in Azure Search Service searching for 'frog', I can see 2 distinct entities with matching __document_id tag:
"value": [
    {
      "id": " [some distinct key] ",
      "tags": [
        "__document_id:2cc8d19a-4fa1-484b-8f27-1a1b72f653f2",
        ....
      ],
      "payload": "{\"url\":\"\",\"schema\":\"20231218A\",\"file\":\"content.txt\",\"text\":\"Researchers from the International Society of Frog Enthusiasts have determined there are exactly 386 kinds of Frog in the world\",\"vector_provider\":\"AI.AzureOpenAI.AzureOpenAITextEmbeddingGenerator\",\"vector_generator\":\"TODO\",\"last_update\":\"2024-01-04T22:25:59\"}",
            "embedding": [ <taken out for length> ]
    },
    {
      "id": " [some distinct key] ",
      "tags": [
        "__document_id:2cc8d19a-4fa1-484b-8f27-1a1b72f653f2",
        ....
      ],
      "payload": "{\"url\":\"\",\"schema\":\"20231218A\",\"file\":\"content.txt\",\"text\":\"Researchers from the International Society of Frog Enthusiasts have determined there are exactly 5 kinds of Frog in the world\",\"vector_provider\":\"AI.AzureOpenAI.AzureOpenAITextEmbeddingGenerator\",\"vector_generator\":\"TODO\",\"last_update\":\"2024-01-04T22:27:00\"}",
      "embedding": [ <taken out for length> ]
    }
]

Finally, when I call IKernelMemory.AskAsync("How many kinds of frogs are there?"), I get back:
There are conflicting reports. One source states that there are exactly 386 kinds of frog in the world, while another source states that there are only 5 kinds of frog in the world. Therefore, the exact number of frog species is unclear.

And the MemoryAnswer.RelevantSources object clearly shows 2 distinct sources with the same __document_id tag value.

I believe I may have found the answer after looking into BaseOrchestrator - I'm using the MemoryServerless implementation, currently invoking via a CLI which instantiates and tears down dependencies each run.
If the update operation depends on persisted pipeline records between operations, that would absolutely explain the behavior I see. I'll do a little more digging and see if this is the case.

If the update operation depends on persisted pipeline records between operations, that would absolutely explain the behavior I see. I'll do a little more digging and see if this is the case.

thanks for investigating, yes I think you're on the right track. All Import* methods act as Upsert, and for the upsert logic to work, they require persistence in the content storage where the ID uniqueness/existence is detected. Serverless memory by default is volatile, and that would explain what you're seeing.
If you need Serverless Memory to be fully persistent:

set a content storage. The default SimpleFileStorage is ok, but you need to set StorageType to Disk.
set a vector storage. The default SimpleVectorDb is ok for tests/demos, but you need to set StorageType to Disk. If you want something more performant but local, I'd suggest using Qdrant or Postgres (other options are coming soon)

If by any chance you're setting Serverless to use queues, I would avoid using SimpleQueues and opt for Azure Queues or RabbitMQ. Or just don't use queues with Serverless, because it's an odd setup :-)

Appreciate it - I'll look into these options! I also verified by an integration test running the two ImportText operations one after another without teardown in the middle and did observe upsert working properly. Persistence is what I was missing, I had assumed uniqueness came as part of the Azure Search dependency and not the pipeline content storage.
Thanks for the help!


lookup tag before delete a manifest.

we should first lookup tag before delete a manifest. Thus fix bug manifests unknown and the tag is not deleted by.

Please sign your commits following these rules:
https://github.com/moby/moby/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "master" git@github.com:wutongjie23hao/distribution.git somewhere
$ cd somewhere
$ git commit --amend -s --no-edit
$ git push -f

Amending updates the existing PR. You DO NOT need to open a new one.

What if the tag is deleted in the middle of deleting the manifest?

when we decide delete a tag, we only should assure that the tag is deleted. If the manifest is not deleted, gc will delete it. But if we delete the manifest at first, the tag is not deleted at all.

Closing as wildly outdated. Please feel free to reopen if need be.


[G7T5-154] Fix duplicate skill name error handling

Description

Fixes Jira ticket #G7T5-154

List all acceptance criterias of user story and indicate which has been solved previously and which is solved currently

[x] On updating a skill with an existing skill name, appropriate feedback is displayed. (solved)

Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

[x] I have added the corresponding testcases into the testcase document

Please indicate the testcase ID you have added or are using

[x] G7T5-6-6

Checklist:

[x] I have added the appropriate labels to my PR
[x] My code follows the style guidelines of this project
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes

Closing due to issue being resolved in another PR: https://github.com/is212g7t5/spm/pull/115


EDR_Stats KeyError on 'Average' for CAL_BUFFER

pyrise version: latest main branch
Python version: 3.9
Operating System: ubuntu

Description
I found that for one image that hiproc would fail somewhere in the pipeline for an image ESP_065856_1890 on a KeyError for 'Average' but it wasn't clear with verbose logging which function/area the pipeline was breaking. After some trial and error running things I found that EDR_Stats was failing on  a single ccd channel (in this case ESP_065856_1890_RED2_1) because of a missing json file.
Diving deeper in I found the error was specifically with the "CAL_BUFFER" return for this ccd, where there is no average value/other statistical data.
Below is the output for the bad ccd:
PVLGroup([
  ('TotalPixels', 372)
  ('ValidPixels', 0)
  ('NullPixels', 0)
  ('LisPixels', 372)
  ('LrsPixels', 0)
  ('HisPixels', 0)
  ('HrsPixels', 0)
])

and the next is the "CAL_BUFFER" for ESP_065856_1890_RED2_0:
PVLGroup([
  ('Average', 1075.9247311828)
  ('StandardDeviation', 22.093155656939)
  ('Variance',<PHONE_NUMBER>8172)
  ('Minimum', 1035.0)
  ('Maximum', 1104.0)
  ('TotalPixels', 372)
  ('ValidPixels', 372)
  ('NullPixels', 0)
  ('LisPixels', 0)
  ('LrsPixels', 0)
  ('HisPixels', 0)
  ('HrsPixels', 0)
])

There was nothing in the stderr for the histat kalasiris function, so I am not sure what went wrong, maybe something internal to ISIS?
As a longer term suggestion, it would be helpful if verbose logging was more verbose in terms of saying which step of the pipeline it is in, which image is being operated on etc.
What I Did
note: requires my moody tool to download the edr files, simply pip install moody
moody hirise_edr ESP_065856_1890
EDR_Stats ./*.IMG -v -k

Fun.
So, -v is for casual chattiness.  For debugging, use -vv.  That will log which module you're in as you go, and will also show the stack traces.  There are some hiproc operations which are run using Python's multiprocessing, and when N jobs are all being logged at the same time, things can, indeed, get messy.  If that gets to be problematic, you can always set --max_workers 1 which should make it single-threaded and make the logs more "linear."
The source of the error is because I'm not handling the return from histat properly.  In certain recent conditions (typically in the period after August 2020 when we changed some ADC settings on the instrument), the CAL_BUFFER pixels can legitimately all be the special value LIS.  In this case, histat doesn't apparently return a key/value pair for "Average" (which is what stats used to do, but now does something different).  So I need to handle the condition when there isn't an "Average" key in the PVL-text that comes back from histat.
Should be easy to fix.

I think using .get(key, default) for each line of parse_histat would work if None's can be used for missing values


[idea] Add probot WIP to prevent accidental merging of WIP PRs

see: https://probot.github.io/apps/wip/ a bot to stop PRs with WIP in title being merged

WONTFIX. Nice to have but probably not an issue for us right now in this repo.


Fix records containing invalid foreign keys

About foreign keys: what about fixing the invalid data?
Here's what this PR does:

delete records that require a parent record, but it's lost
for the other records (where the parent record is not required), set the foreign field to NULL

In order to create this pull request, I installed concrete5 <IP_ADDRESS> and concrete5 8.0 (the version that Version20160725000000 migrates to), and inspected the foreign keys existing in 8.0 but not in <IP_ADDRESS>.

IMO this should be done in a new migration. Once a migration is merged we should not edit it so that this actually gets applied for everyone. Also could we do this with an array and a loop instead of a long list of calls?

IMO this should be done in a new migration.

This PR tries to fix the problematic data for this exact migration, that's the reason why I added it here.

Also could we do this with an array and a loop instead of a long list of calls?

Please note that there are two different functions called (nullifyInvalidForeignKey and deleteInvalidForeignKey), and the order of these calls is not random

But what if this migration has already been applied to my site?

But what if this migration has already been applied to my site?

If this migration already succeeded (that is, the foreign keys have been created), that means that there were no invalid data and this PR is unnecessary...

Fixing values in order to allow the creation of the foreign keys:

shouldn't be done before the migration that introduces these foreign keys, otherwise we may introduce invalid data between the two migrations
is useless after the creation of the foreign keys

An approach alternative to this pull request could be to add a method like this to the Concrete\Core\Updater\Migrations\Migrations\AbstractMigration class:
protected function fixForeignKeys(\Doctrine\DBAL\Schema\Schema $schema)
{
    $queries = [];
    $platform = $this->connection->getDatabasePlatform();
    foreach ($schema->getTables() as $table) {
        foreach ($table->getForeignKeys() as $foreignKey) {
            $columns = $foreignKey->getLocalColumns();
            if (count($columns) === 1) {
                $column = $table->getColumn($columns[0]);
                $localTable = $table->getQuotedName($platform);
                $localColumns = $foreignKey->getQuotedLocalColumns($platform);
                $localColumn = $localColumns[0];
                $remoteTable = $foreignKey->getQuotedForeignTableName($platform);
                $remoteColumns = $foreignKey->getQuotedForeignColumns($platform);
                $remoteColumn = $remoteColumns[0];
                if ($column->getNotnull()) {
                    $queries[] = "
                        delete LocalTable
                        from {$localTable} as LocalTable
                        left join {$remoteTable} as RemoteTable
                            on LocalTable.{$localColumn} = RemoteTable.{$remoteColumn}
                        where LocalTable.{$localColumn} is not null
                            and RemoteTable.{$remoteColumn} is null
                    ";
                } else {
                    $queries[] = "
                        update {$localTable} as LocalTable
                        left join {$remoteTable} as RemoteTable
                            on LocalTable.{$localColumn} = RemoteTable.{$remoteColumn}
                        set LocalTable.{$localColumn} = null
                        where LocalTable.{$localColumn} is not null
                            and RemoteTable.{$remoteColumn} is null
                    ";
                }
            }
        }
    }
    $fkEnabled = $this->connection->fetchColumn('select @@foreign_key_checks');
    if ($fkEnabled) {
        $this->connection->executeQuery('set foreign_key_checks = 0');
    }
    for ($cycle = true; $cycle === true;) {
        $cycle = false;
        foreach ($queries as $query) {
            if ($this->connection->executeQuery($query)->rowCount() > 0) {
                $cycle = true;
            }
        }
    }
    if ($fkEnabled) {
        $this->connection->executeQuery('set foreign_key_checks = 1');
    }
}

Thanks @mlocati

I just tested this with 8.2RC2 and it seem to work as expected! Great!!!


Blog styles

Have you read the contributing guidelines ?
What is the purpose of your pull request?

[x] Bug fix

[ ] New feature

Fixes #195

Proposed changes

Replaced predefined CSS classes for blog content styling with Tailwind CSS Typography classes.
This change ensures consistent and responsive typography styling across the blog content.
I also updated the useEffect hook in the BlogBody component to set the innerHTML of the blog content container directly instead of appending to it, which prevents duplicate content from being rendered when the blogBody prop changes.

Warning
Please read these points carefully and answer honestly with an X
into all the boxes. Example : [X]
Before submitting a pull request make sure you have:

[x] Read the guidelines for contributing.
[ ] Wrote some tests.
[x] Respected the linting guidelines.

there's a merge conflict in the offing here.

Hey @Joe-Mwangi 👋🏾
Are you still working on this?

Hey @Joe-Mwangi 👋🏾
Are you still working on this?

Yes am working on it. Thanks for the reminder


add quick link to my studies on the main page

Add a link to quickly get a list of your studies.

In the meantime, in case that users find this issue, is to sort the list of studies by the last column (status) so that the "private" studies are first.

This is a sub-case of https://github.com/biocore/qiita/issues/1019, closing this one.


NO-JIRA: fix: correct the task name

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Please upload report for BASE (main-rhtap@2f26730). Learn more about missing BASE report.

Additional details and impacted files

@@              Coverage Diff              @@
##             main-rhtap     #696   +/-   ##
=============================================
  Coverage              ?   57.95%
=============================================
  Files                 ?       53
  Lines                 ?     4215
  Branches              ?        0
=============================================
  Hits                  ?     2443
  Misses                ?     1531
  Partials              ?      241


syncfusion_flutter_datepicker: ^20.3.61

version 22.1.39 is incompatible with previous intl version, please consider lowering it in the yaml
Because every version of flutter_localizations from sdk depends on intl 0.17.0 and syncfusion_flutter_datepicker >=21.2.4 depends on intl ^0.18.0, flutter_localizations from sdk is incompatible with syncfusion_flutter_datepicker >=21.2.4.

Please upgrade to Flutter >=3.10 as of Flutter 3.7 localizations package still depend on intl 0.17

Yes but the latest sdk requires full null safety everywhere, which is not possible for procrastinators who prefer focusing on cooler stuff.
Are you using any of the elements in the changelog (screenshot below)?
Else why force users ?

Yes but the latest sdk requires full null safety everywhere, which is not possible for procrastinators who prefer focusing on cooler stuff.
Are you using any of the elements in the changelog (screenshot below)?
Else why force users ?


Unable to automatically provision Power Platform environments using PowerShell

In preparation for a MOC training, I have to automatically provision a handful of Power Platform environments in a single Tenant. I am using a specific PowerShell script, which makes use of the "Microsoft.PowerApps.Administration.PowerShell" and "Microsoft.PowerApps.PowerShell" cmdlets. Here I have a permanent issue, which makes it impossible to proceed. In order to locate the root cause, I am using the following set of commands:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Force
dir . | Unblock-File
Install-Module -Name Microsoft.PowerApps.Administration.PowerShell
Install-Module -Name Microsoft.PowerApps.PowerShell -AllowClobber
Add-PowerAppsAccount
The last PowerShell command is the one which is always causing the issue in whichever context. Here is the outcome:

@RobertRybaric Can you provide us the link to the doc that you are following to create environments using PowerShell, so that we can assign it to right writer to look into the issue.

@RobertRybaric Can you provide us the link to the doc that you are following to create environments using PowerShell, so that we can assign it to right writer to look into the issue.

Hi @Nkrb , it is the HOL guidance to the MB-600 training and in particular the tenant setup document: https://github.com/MicrosoftLearning/MB-600-Dynamics-365-Power-Platform-Solution-Architect/blob/master/TenantSetup.md
I tried to use the script Setup.ps1 mentioned in the above guidance, but with no success. I have made a handful of other experiments to find the root cause, and it seems, that the PowerShell command Add-PowerAppsAccount is failing for me in every situation. It is worth mentioning, that I have always installed the latest versions of all the respective cmdlets and used any other hints I could find, always with the same result.

@RobertRybaric Can you reach out to the authors for that repo. We only handle issues related to the content specified in the docs.

@RobertRybaric Can you reach out to the authors for that repo. We only handle issues related to the content specified in the docs.

I have done this already, but the authors do not seem to handle the issues. There are 5 open issues in the repo and no one takes care of those issues.

Please go to https://cdx.transform.microsoft.com/ -> Help -> Get Help -> Submit request -> Enter information about the issue to get help. Power Apps docs issues are only for Power Apps documentation changes.


add instructions for the emotional picture task

At the beginning of the emotion picture task, please show the following instructions:
Before each meditation practice, you will view 6 images presented one at a time. You will be asked to rate on a scale of 1 to 9 how negative, neutral, or positive you find each picture (1=very negative, 5=neutral, 9=very positive). There are no correct answers; we want to know how these pictures make people feel.
NOTE: This task involves viewing and labeling emotional pictures, both pleasant and unpleasant. The emotions typically evoked by the pictures include disgust, fear, contentment and amusement.
(show a “continue” button at the bottom)

I tested it and it worked. Thank you.

I tested it and it worked. Thank you.


Tutorial ambigious

Hello.
Pretend that you don't know how to play the game at all.  (I did not a minute ago.)
In the tutorial, on the second screen, drag the three all the way to the right (a line four blocks long).  Now, drag the 4 all the way to the left (a line four blocks long).
Ok, I followed the instructions in the tutorial.  Now it just sits there.. I tap some things..  Nothing happens.
The tutorial does move to the next screen if I make the 3-line 3 blocks long and the 4-line 4 blocks long.  So, I think the length of lines matters!  (Right?)
The tutorial should have a step that shows the user how to make lines the correct length.

Thanks for the feedback @daveloyall !
I worked on a few different iterations of the tutorial, made a few internal testing and the current one was the one that seemed to be the more intuitive... But creating tutorial is way more complex than I expected, I received different feedbacks everytime someone played it.
In this specific case, it seemed that highlighting the lines that weren't valid would have been enough but I guess I was wrong.

I'm thinking about adding a step (before the one above ☝ ) with a 4x2 grid, and a 3 in the corner, explaining that the line should have the same length of the number.
What do you think?

Well, you can just tell the user with text, yes.
But, it may be more fun to just say "only some lines are valid!" and let them figure it out.  The small board you described would be useful for that, yes.
I didn't notice the highlighting until I started playing the game itself.

The eye don't see what the mind don't know
--Somebody

When there is one line, maybe I just think it changes colors sometimes.  When there are two lines and one of them is invalid, maybe I just think different lines have different colors.
Parting thought: now that I know how to play, I won't be useful for tutorial feedback anymore.  I could try and pretend that I don't know the game mechanics, but, that's not as useful as feedback from a true neophyte!

@daveloyall the problem with the tutorials, is that there's not bullet-proof solution.
For example, see this user on Hacker News who had a totally different experience and idea from yours (https://news.ycombinator.com/item?id=21834409).

Parting thought: now that I know how to play, I won't be useful for tutorial feedback anymore. I could try and pretend that I don't know the game mechanics, but, that's not as useful as feedback from a true neophyte!

😬 That's why I had to find new people for testing each tutorial improvements.


Migrate Workbox documentation to /web

As part of our efforts to centralize docs for Chrome's OSS projects, we'd like to move the official Workbox docs from https://workboxjs.org to https://developers.google.com/web/tools/workbox/. This would place the docs along-side Lighthouse and DevTools.
Markdown source
Content will be migrated from https://github.com/GoogleChrome/workbox-microsite.
We believe a lot of the existing articles can be migrated without too much friction:
https://workboxjs.org/get-started/webpack.html
https://workboxjs.org/get-started/gulp.html
https://workboxjs.org/get-started/npm-script.html
https://workboxjs.org/examples/workbox-sw/
https://workboxjs.org/examples/workbox-broadcast-cache-update/index.html etc.
Domain
Once docs have been migrated, we will redirect https://workboxjs.org to /web/tools/workbox/.
When
If we're able to get TW help, we might be able to move the site content over sooner. If not, workbox-core are happy to move the site over after BlinkOn later in September. We'll want to complete this before the V3 launch of Workbox aimed at October.
To discuss
Our generated JSDocs are the main piece that will require some additional thought.
Projects like DevTools maintain these types of docs (e.g for the remote debugging protocol) on GitHub pages: https://chromedevtools.github.io/devtools-protocol/. We could do similar for our JSDocs and keep all other main content on /web.
cc @jeffposnick @gauntface @philipwalton from workbox-core
cc @kaycebasques as TW fyi
cc @PaulKinlan @petele on move

Started migration here: https://github.com/google/WebFundamentals/tree/workbox
Reference docs will need some rebuilding to be DevSite friendly.

Update from me: DevSite JSDoc template is in and I've added the code to auto-update reference docs in WebFun. Now just need to figure out the last complaints from DevSite (Which sadly WebFun doesn't catch).

The content from https://workboxjs.org/examples/ have been moved to Glitch, at https://workbox-samples.glitch.me/examples/
The URLs should (assuming I configured things correctly...) map 1:1 from https://workboxjs.org/example/* to https://workbox-samples.glitch.me/examples/*, so it would just be a question of configuring the old Firebase Hosting domain to do a 301 Redirect to the Glitch domain for anything under /examples/.

This is currently pending a review: https://github.com/google/WebFundamentals/pull/5099#issuecomment-334482462

Moved over now.


Request validator error messages to support localization

Are you requesting a feature, reporting a bug or ask a question?
Requesting a feature
What is the current behavior?
When I run a survey with the following validator:
        "validators": [{
          "regex": "^[A-Z]{3}[0-9]{3}$",
          "text": {
            "default": "Input must be in AAAnnn format",
            "zh": "Chinese translation"
          },
          "type": "regex"
        }],

The following exception is thrown:
invariant.js:42 Uncaught Error: Objects are not valid as a React child (found: object with keys {default, zh}). If you meant to render a collection of children, use an array instead.
    in div (created by SurveyElementErrors)
    in div (created by SurveyElementErrors)
    in SurveyElementErrors (created by SurveyQuestion)
    in div (created by SurveyQuestion)
    in div (created by SurveyQuestion)
    in SurveyQuestion (created by SurveyRow)
    in div (created by SurveyRow)
    in SurveyRow (created by SurveyPage)
    in div (created by SurveyPage)
    in SurveyPage (created by Survey)
    in div (created by Survey)
    in div (created by Survey)
    in div (created by Survey)
    in Survey (at survey.js:94)
    at invariant (invariant.js:42)
    at throwOnInvalidObjectType (react-dom.development.js:6748)
    at reconcileChildFibers (react-dom.development.js:7659)
    at reconcileChildrenAtExpirationTime (react-dom.development.js:7756)
    at reconcileChildren (react-dom.development.js:7747)
    at updateHostComponent (react-dom.development.js:7998)
    at beginWork (react-dom.development.js:8229)
    at performUnitOfWork (react-dom.development.js:10224)
    at workLoop (react-dom.development.js:10288)
    at HTMLUnknownElement.callCallback (react-dom.development.js:542)

What is the expected behavior?
Validator messages to support localization, like the following:
        "validators": [{
          "regex": "^[A-Z]{3}[0-9]{3}$",
          "text": {
            "default": "Input must be in AAAnnn format",
            "zh": "Chinese translation"
          },
          "type": "regex"
        }],

How would you reproduce the current behavior (if this is a bug)?
Provide the test code and the tested page URL (if applicable)
Tested page URL:
Test code
your_code_here

Specify your

browser:
browser version:
surveyjs platform (angular or react or jquery or knockout or vue): react
surveyjs version: 1.0.11

@sfcrebecca You are right. Text property for validator is not localizable. We have missed it when were working on localization functionality. I would consider this as a bug.
Thank you,
Andrew

Thanks, @andrewtelnov

@sfcrebecca I have added this functionality. It will be avaiable in the next minor update on the next week.
Thank you,
Andrew

Noted, thanks a lot!!


GBAtemp News Bridge failed with error 0

Error message: Call to a member function getTimestamp() on bool
Query string: action=display&bridge=GBAtemp&type=N&format=Atom
Version: dev.2021-04-25

Bridge is working.


Webpack compiled bundle includes Function() eval which chrome extensions does not allow

Hi,
my webpack build output a javascript that uses Funciton("") evaluating. Chrome extensions security policy does not allow that:
Uncaught EvalError: Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'self' blob: filesystem: chrome-extension-resource:".

Is there a way to use webpack without it outputting unsafe expressions like this?
e.g. Angular has a configuration to disable features that use unsafe eval:
https://docs.angularjs.org/api/ng/directive/ngCsp

Can you post your webpack config? This is probably result of a plugin or devtool behavior.

@eyalw Any update? Having a runnable example would help.

@bebraw it seems the eval code was related to React, not Webpack.
we can close this issue.
sorry for the hassle.

@eyalw Where did you find the issue on React? I can't locate it. Also seeing the same unsafe-eval error using React+Webpack and trying to track down the issue.

I need help with this
when I used ng build --prod the problem goes away...but when I use ng build I get the eval related code. Does anyone know a setting I can use with Angular apps to turn off the unsafe code in development?


Switch to MSL 3.2.3

Due to the bode diagram example listed in https://trac.openmodelica.org/OpenModelica/ticket/4793, there are still two remaining models in the MoveTo_Modelica package.

Done by<PHONE_NUMBER>a20766404998fb8135e151dbf575fa


Cargo Telepad

Adds cargo telepad, a teleport pad that must be placed adjacent to a cargo ordering console and teleports in ordered goods at a constant rate with an animation and sound effect, instead of just popping into existence on the console.
Tested pretty well to ensure the loop worsk properly.
Also adds windows XP shutdown sound effect to misc sounds effects for some reason

Maybe mark this as a draft?

It's all done.

But why did you remove the call shuttle functionality? It worked right?

Seems a bit useless if there isn't an actual shuttle, doesn't it?

But at least people can restart the round

This is cargo, not comms console lol

Should be ready (I spent time making sure the funny while(true) loop doesn't ever go into deadlock)


GUVNOR-2190 : Ace editor DRL syntax hilighting for the source tab.

Had to move the DrlEditor class to kie-wb-common. PR to drools-wb here
https://github.com/droolsjbpm/drools-wb/pull/36

http://github.com/droolsjbpm/kie-wb-common/commit/c39653349


vcpkg and OS going to sleep for idle mode detected.

Is your feature request related to a problem? Please describe.
On widows if there are no user input for a while the system is detected on idle and go to sleep.
vcpkg doesn't make the OS aware that is busy. So resulting in the system suspend if left just working install few long time consuming library.
Proposed solution
set the vcpkg thread, at least for windows system, to keep the system awake while installing/compiling libraries.
like reported here :
SetThreadExecutionState
Describe alternatives you've considered
well, tried simple tools that rely on the function above but Win10 seems ignoring too.
So doing in chunks install, smaller batch of library install.
Additional context
It is not really a high priority feature, but would be nice to make the tool "more complete" and reliable.
thanks.

It would be a great addition

does anyone know if there a comparable feature on all platforms besides windows?
the linked article is discussing the feature in the winbase.h header file for windows.


[.NET] Add markdown docs generation for AdaptiveCards library

Description
Adds support for generating markdown docs for the AdaptiveCards .NET library via the vsxmd nuget package. It couldn't be easier to use -- just document C# code with standard xmldoc comments and build. The updated docs should be placed in source/dotnet/Library/AdaptiveCards/docs/.
It's worth noting that originally I was looking at docfx as a solution, but it doesn't satisfy our needs. Despite stating:

DocFX can produce documentation from source code (including .NET, REST, JavaScript, Java, Python and TypeScript) as well as raw Markdown files.

You can't actually emit raw Markdown files. It's a poorly written statement because docfx can generate documentation that includes Markdown files that you author as part of its documentation. In other words, you can write your own Markdown files (e.g. samples or articles) and have them be included in the HTML generated by the tool. dotnet/docfx#684 tracks supporting Markdown as an output format, but it seems unlikely to get traction as the bug is four years old at this point.
There's a fair amount of public API surface exposed that lacks documentation in our library (VS emits warnings for public surfaces that lack docs), but addressing that will be in a future checkin.
Microsoft Reviewers: Open in CodeFlow

@jwoo-msft - this is pretty straightforward to add to your project in VS:

Right-click on your project and click Manage Nuget Packages...
Search for and install the vsxmd package
Right-click on your project and click Properties
In the Build tab's Output section, check the XML documentation file checkbox (don't worry about the path right now
Save the project
Right-click the project and choose Edit Project File
In the property group near the top (probably just under DocumentationFile, add:

<VsxmdAutoDeleteXml>True</VsxmdAutoDeleteXml>

Edit the DocumentationFile to be $(MSBuildProjectDirectory)/docs/<whateveryourprojectnameis>.xml
Save and close the project file and build the project

At this point you should have a new directory in your project directory named docs containing <whateveryourprojectnameis>.md. 👍

/azp run

/azp run

@jwoo-msft - this is pretty straightforward to add to your project in VS:

Right-click on your project and click Manage Nuget Packages...
Search for and install the vsxmd package
Right-click on your project and click Properties
In the Build tab's Output section, check the XML documentation file checkbox (don't worry about the path right now
Save the project
Right-click the project and choose Edit Project File
In the property group near the top (probably just under DocumentationFile, add:

<VsxmdAutoDeleteXml>True</VsxmdAutoDeleteXml>

Edit the DocumentationFile to be $(MSBuildProjectDirectory)/docs/<whateveryourprojectnameis>.xml
Save and close the project file and build the project

At this point you should have a new directory in your project directory named docs containing <whateveryourprojectnameis>.md. 👍

Thanks!

/azp run


ambiguous path in log file

The log file writes out the names of the output files, including the relative path from where the job was launched.  But, it saves this file to the save directory, which can differ.  If one must save all output to the same directory, then we should remove the path from the file names in the log file.

Fixed.  Also, added check that the file names do not include paths.  see commit 318d11b


ci: remove commitlint

removes commitlint from CI

we don't generate changelogs from commit messages (but rather from changesets). right now, it's just annoying to manage commit lints for contributors. if we don't like incoming commit messages, we can still squash-merge into a nicer message.
we could go further and also remove husky from the repo?

Yeah, not sure about it.. I personally use them (and don't even mind the commithooks too much), but it feels like a tax when managing contributions sometimes

Will add husky instead 👏


TGP-2660/fix warnings

Checklist for developers before reviewing

[x] I have merged in main
[x] I have run  sbt prePR to run all tests, format and check the code coverage
[x] I have written unit tests to cover any code that I wrote, where necessary
[x] I have ran the microservices with the latest SM2 config
[x] I have checked all the Acceptance Criteria pass
[x] I have run the pipeline journey tests
[x] I have run the local journey tests
[x] I have moved the ticket to Review in Jira
[x] I have left a message in tgp-prs on slack to alert other Devs that this ticket is ready for review

Checklist for developers before merging

[ ] The PR has been approved by 2 other developers
[ ] I have merged in main
[ ] I have run  `sbt preMerge' to run all tests, check formatting and code coverage
[ ] I have ran the microservices with the latest SM2 config
[ ] I have checked all the Acceptance Criteria pass
[ ] I have run the pipeline journey tests
[ ] I have run the local journey tests
[ ] I have spoken to the QAs about any changes that may need to be made to the journey tests OR no changes to the journey tests are necessary

Reminders for developers after merging

Wait for pipeline to pass
Move ticket to QA column in Jira
Leave message in tgp-qa on slack to alert QAs that this ticket is ready for testing

Just a few comments
In general though this PR makes me ridiculously happy - looking forward to no warnings!
Can you also add it as a checkpoint on the Pre PR checklist


Write a Ruby program to find length of a string

Description
Write a Ruby program to find length of a string
Input  : abcd
Output : 4

How to contribute

Save the solution in FindLengthOfAString.rb file
Add FindLengthOfAString.rb file in program/find-length-of-a-string folder

For stuff like this are you looking for an answer without a built in method? For instance string.length

Hey @jfinley6
Any method will be acceptable, if not explicitly addressed (like, write a program *** without using in-built function)

Ok perfect

!assign


fix:[CORE-1945] Fix for NPE

Description

some policy jobs were failing due to NPE which is fixed now

Problem
NPE
Solution
add NPE checks
Fixes # (issue if any)
NPE
Type of change
Please delete options that are not relevant.

[X] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Chore (no code changes)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also
list any relevant details for your test configuration

[ ] Run all policies of a target type in local and verify there is no error

Checklist:

[X] My code follows the style guidelines of this project
[X] My commit message/PR follows the contribution guidelines of this project
[X] I have performed a self-review of my code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes

Other Information:
List any documentation updates that are needed for the Wiki

Tested logs in local:

Tested in local. exempetion request auto expired