Port Parsing.Indent, Parsing.Token?

Is your change request related to a problem? Please describe.
does it makes sense to port these modules?

https://github.com/purescript-contrib/purescript-parsing/blob/main/src/Parsing/Indent.purs
https://github.com/purescript-contrib/purescript-parsing/blob/main/src/Parsing/Token.purs
other modules?

In my opinion these modules should be a separate package.
https://github.com/purescript-contrib/purescript-parsing/issues/226


SQL Azure => Azure SQL Database

Hi @yamatoya, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by Microsoft and real humans are currently evaluating your PR.
TTYL, AZPRBOT;


Merge parseDistance methods

Honestly, I do not see any benefits in this approach.

Violating SRP for parseDistance method, because it's not only parsing, but also converting. Impossibility to reuse separated convertDistance(float, Unit) method, which may provides generic (and well-tested) conversion logic.
Ambiguity in this method, since it's being called for two, in my opinion, different, use cases: converting numeric string to given unit AND analyzing text string and using default unit if it's not found. IMO it's different semantics, so it should be done by different methods.


Keywords for searchers

A lot of people don't know what the System Media Transport Controls are called. Adding keyword like "Media popup", "Media pop-up", "Media pop up", "Media overlay" and "Media controls".

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

ID: c756203f-fa1e-c530-7827-96f1325f91a7
Version Independent ID: 86dc190a-3c44-e3bf-6b3c-3207dca7c371
Content: Integrate with the System Media Transport Controls - UWP applications
Content Source: windows-apps-src/audio-video-camera/integrate-with-systemmediatransportcontrols.md
Product: uwp
Technology: audio-video-and-camera
GitHub Login: @drewbatgit
Microsoft Alias: drewbat

and this also could apply to https://docs.microsoft.com/en-us/uwp/api/windows.media.systemmediatransportcontrols

Unfortunately, according to our SEO team, we don't have a mechanism for adding arbitrary keywords that influence search results. And we have decided not to add additional terms to the text of the article at this time. Our intent is that people who are new to the platform will search for "media playback" and related terms to land on our main Media Playback page that describes all of the playback features supported for UWP apps, including SMTC.

@drewbatgit
Sorry for going off topic but do you know if they'll be updated on Windows 10?
They still use the Windows 8 icons and have only been updated on the lockscreen. They don't show the app that is playing.  Some may only want it to appear when they pause or play, or skip forwards or backwards and not when they adjust the volume. Some may want it in the volume flyout (which makes a lot of sense actually).
I'm sorry if you don't know and it's my fault for asking something like this on a documentation issue.
It's not just UWP exclusive developers that want to use the SMTC. There's Chrome and Firefox.
The word pop-up could be used like the following sentence: "The SMTC is a pop-up in the top left on Windows 10 and is in the Guide on Xbox One". It doesn't have to be in some hidden place.

And we have decided not to add additional terms to the text of the article at this time.

Well alright.


feat: support event v2

Not able to obtain an bot with v2 hook. Delay.

Codecov Report

Merging #4 (af9f04a) into main (be1437c) will decrease coverage by 1.73%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main       #4      +/-   ##
==========================================
- Coverage   83.09%   81.36%   -1.74%
==========================================
  Files          20       21       +1
  Lines         704      719      +15
==========================================
  Hits          585      585
- Misses         79       94      +15
  Partials       40       40

Impacted Files
Coverage Δ

event_v2.go
0.00% <0.00%> (ø)

Continue to review full report at Codecov.

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


LUN-127: Add custom disciplines

This pull request belongs to an issue on our bugtracker.
You can find it there by looking for an issue with the key which is mentioned in the title of this pull request.
It starts with the keyword LUN.
The api is not ready for the feature, as it should be ready asap, I started with this, but few things are missing.

If you want to avoid the hoc you could introduce an async function parameter to the hooks to resolve the url (adding this for documentation purposes)


[FLINK-26261] Wait for JobManager deployment ready before accessing REST API

First part following resource dependencies in the reconciler logic: Wait for the JM deployment to be ready before trying to access the JM. This will be built upon for improving the error detection/handling later on.

@gyfora PTAL

I wonder if caching the deployment is even necessary, it adds complexity and can lead to cases where the deployment disappears and we do not notice. The reconcile loops should not run too often for this to stress kubernetes, what do you think @tweise ?

I tested your PR locally and hit this error, when deleting the CR @tweise did you notice?
2022-02-24 11:44:24,277 o.a.f.k.o.c.FlinkDeploymentController [INFO ] [default.basic-example] Cleaning up application cluster basic-example
Exception in thread "pool-3-thread-4" java.lang.IllegalStateException: Cached custom resource must be present at this point
	at io.javaoperatorsdk.operator.processing.event.EventProcessor.lambda$isCacheReadyForInstantReconciliation$1(EventProcessor.java:248)

I wonder if caching the deployment is even necessary, it adds complexity and can lead to cases where the deployment disappears and we do not notice. The reconcile loops should not run too often for this to stress kubernetes, what do you think @tweise ?

I agree with @gyfora here. The refresh loop is 1 min at the moment, shouldn't be a big deal.

I wonder if caching the deployment is even necessary, it adds complexity and can lead to cases where the deployment disappears and we do not notice. The reconcile loops should not run too often for this to stress kubernetes, what do you think @tweise ?

We actually don't need to cache the whole objects for this purpose. However, I would like to limit the checking for secondary resources unless really necessary as that may become a scalability concern. How frequently we check the job status should ideally be independent from this logic.

I tested your PR locally and hit this error, when deleting the CR @tweise did you notice?
2022-02-24 11:44:24,277 o.a.f.k.o.c.FlinkDeploymentController [INFO ] [default.basic-example] Cleaning up application cluster basic-example
Exception in thread "pool-3-thread-4" java.lang.IllegalStateException: Cached custom resource must be present at this point
	at io.javaoperatorsdk.operator.processing.event.EventProcessor.lambda$isCacheReadyForInstantReconciliation$1(EventProcessor.java:248)

I also see it now. It is related to the deployment event watching as it goes away when disabling prepareEventSources

@wangyang0918 if you have some time to look at this we could use a bit of extra feedback :)

I am getting to this PR now.

@gyfora this is working pretty well now, I also added a port readiness check. But the current implementation with control logic scattered over job status observer and reconcilers makes it pretty hard to implement this in a cleaner way. I'm working on some refactoring and hopefully that will lead to simplification. Hope to have it done soon to avoid larger merge conflicts.

Sounds good @tweise !

@gyfora I think after the refactor this looks much better now. Minor improvements can be dealt with as follow-up. I think there will be significant work necessary to make the reconciliation more robust. I'm wondering if it should be implemented as a state machine. The job upgrade part needs to be looked at. What happens when the previous job never came up due to a code issue and user pushes an update to fix the problem. This should be possible and we need to have test coverage for it also.

I think this PR is a good step to avoid unnecessary reconciliation. But it seems that I still find some java.util.concurrent.TimeoutException when accessing the rest service even after PORT_READY_DELAY_SECONDS. Maybe my minikube is a little slow or JobManager does not have enough resources(0.5 cpu).

I changed the delay to 10s and added a port readiness check. The 10s may still not be enough in some situations for the REST service to get ready (after the port is ready). That is covered by the retry though.

I will have to take a look again after the refactor, but there is also in the ticket opened in the meantime: https://issues.apache.org/jira/browse/FLINK-26377
cc @Aitozi


Centre d'Education aux Adultes des Navigateurs

Part of CSSDN (Centre de Service Scolaire des Navigateurs)
English: School Services Center of Navigateurs

@Overfl0w-grrrl Please provide us with an URL of a page on the official website where the school offers an IT-related long-term (>1 year) course. Thank you!

https://taformation.ca/programmes/reparation-et-service-en-electronique/
This is the website of the program that is related. (The building name is different than the school's name, but is part of the complex.

@Overfl0w-grrrl Thank you for your patience while waiting for a review and processing your request. Pull request merged.
Please start requesting the licenses in about an hour, to let the changes to propagate through our system.


Sometimes my site is 500 internal server error happen

Hi All,
Sometimes my site is 500 internal server error happen. Here I shared the screenshot

Please help me !!!!!....

This is nothing to do with Whenever. Please seek a more general support forum such as Stack Overflow, IRC or a Rails mailing list.


Crash on UICircularRingLayer

I have a crash
var ringLayer: UICircularRingLayer {
// swiftlint:disable:next force_cast
return layer as! UICircularRingLayer
}
Could not cast value of type 'CALayer' (0x2022f3468) to 'UICircularProgressRing.UICircularRingLayer' (0x100edb1a0).
its inside UICircularRing.swift line 336

I'm going to need more information than that to help here.

I got same error after I updated to latest version.
I was able to fix it 👍
before

UICircularProgressRingView is old.
after

Set UICircularProgressRing to Class name.

Also, if you vend 6.5 because of the SwiftUI update, make sure you Inherit Module from Target.


Fixes #7316: inverseOf should be ignored for "multiple" relation ("many" in 1-to-many or many-to-many).

Currently inverseOf works by design, but behavior rather tricky, this feature is very close to bug, please see related issue. Unfortunately this PR breaks BC, especially for people who used inverseOf with asArray.

Q
A

Is bugfix?
somewhat

New feature?
no

Breaks BC?
yes

Tests pass?
yes

Fixed issues
#7316

See https://github.com/yiisoft/yii2/issues/7316#issuecomment-334929080


Simplify packit custom create archive command

@lachmanfrantisek, is there anything wrong with the config?

The create-archive action did not output a path to the generated archive. Please make sure that you have valid path in the single line of the output.

The full path to the archive is printed as the last line:
> make tarball
...
rst2man /home/psss/git/tmt/tmp/man.rst > /home/psss/git/tmt/tmp/tmt-0.16/tmt.1
cd /home/psss/git/tmt/tmp && tar cfz SOURCES/tmt-0.16.tar.gz tmt-0.16
/home/psss/git/tmt/tmp/SOURCES/tmt-0.16.tar.gz

It works nicely locally. So there is some problem with the service. I'll create an issue.
Sorry for this occurring problem.

Potential problem:

you run action in the sandbox and print absolute path
we check the output outside of the sandbox and the absolute path can maybe differ

(You can try using relative paths, but I still create an issue for this.)

@lachmanfrantisek, thanks for looking into this. The relative path does not work:
error: File ./tmt-0.16.tar.gz: No such file or directory

I've tried both tmp/SOURCES/... and ./tmp/SOURCES/.... Seems the only currently working way is to move the created archive to the top directory.

Thank you for testing all variants. We need to fix that on our side. There might a problem with the subdirectory.

@lachmanfrantisek, thanks for looking into this. Let me know when I can test it again.

/packit build

@lachmanfrantisek, has there been any progress to make this working?

@lachmanfrantisek, has there been any progress to make this working?

Unfortunately no, sorry. But @TomasTomecek is now working on the shell expansion and have some problems that can be related to this.

/packit build

It seems that the archive is in ./tmp/SOURCES/tmt-0.18.tar.gz and not ./tmt-0.18.tar.gz.

@TomasTomecek, yes, that was the intention: To simplify Makefile so that moving the archive is not necessary. Providing the full/relative path to the archive in the output should be sufficient for Packit to find it.

@TomasTomecek, yes, that was the intention: To simplify Makefile so that moving the archive is not necessary. Providing the full/relative path to the archive in the output should be sufficient for Packit to find it.

So you're saying that the build should pass with the current changes and the fact the SRPM can't be created is wrong?

@TomasTomecek, that's what I've understood from our discussion with @lachmanfrantisek: That if the custom archive command prints out a valid path the to archive it should just work. Which makes sense to me. Otherwise users are forced to move the archive to proper location. Fixing this in one place (packit) seems to me to be a better option than duplicating this unnecessary action again and again in individual Makefiles.

@TomasTomecek We are creating the symlink, but it does not work for some reason in the service:
Using user-defined script for ActionName.create_archive: [['make', 'tarball']]
Running command: make tarball
06:33:42.377 base_git.py       DEBUG  Action command output: ['rm -rf /sand...
Created archive: /sandcastle/tmp/SOURCES/tmt-0.18.tar.gz
Linking to the specfile directory: /sandcastle/tmt-0.18.tar.gz
:
Running command: rpmbuild -bs --define _sourcedir . --define _srcdir . --define _specdir . --define _srcrpmdir . --define _topdir . --define _builddir . --define _rpmdir . --define _buildrootdir . tmt.spec

Message: An unexpected error occurred when creating the SRPM: Command failed (rc=1, reason={"metadata":{},"status":"Failure","message":"command terminated with non-zero exit code: Error executing in Docker Container: 1","reason":"NonZeroExitCode","details":{"causes":[{"reason":"ExitCode","message":"1"}]}})
error: File ./tmt-0.18.tar.gz: No such file or directory

I suspect the symlinks are not being propagated well b/w sandbox and worker.
Anyway, I'm really confused here. I can see the tarball path being printed:
cd /sandcastle/docker-io-usercont-sandcastle-prod-20200729-063317269798/tmp && tar cfz SOURCES/tmt-0.18.tar.gz tmt-0.18
./tmp/SOURCES/tmt-0.18.tar.gz\n']

So how come that packit goes for error: File ./tmt-0.18.tar.gz: No such file or directory and not for ./tmp/SOURCES/....
We should probably add some debug prints in packit codebase whether it's able to find the archive. We'd also know if the symlinking works.

I've looked around it a bit; enforced same handling of paths as in service.

So how come that packit goes for error: File ./tmt-0.18.tar.gz: No such file or directory and not for ./tmp/SOURCES/....

@TomasTomecek That is because the build command is called with every directory set as . (when ran locally produces absolute path, when ran in service uses .).
Tried to break it in multiple ways:

the archive must be accessible (as in: was accessible when it was built) at the location in packit script, otherwise it fails (e.g. built archive name != printed path)
from that I conclude the symlink is created (since the path to archive is correct)

not excluding possibility of the symlink being in wrong directory (thus making the relative path incorrect)

I also noticed that Makefile contains TMP variable that is used when creating tarball, but the echo with path to archive doesn't use it. (The version before changes uses mv from specifically $(TMP)/SOURCES/... to .)
@psss Have you tried it this way? If not, could you please try?- @echo ./tmp/SOURCES/$(PACKAGE).tar.gz
+ @echo $(TMP)/SOURCES/$(PACKAGE).tar.gz

Trying with @echo $(TMP)/SOURCES/$(PACKAGE).tar.gz to print the path.

Seems this did not help either. The resulting path was:
/sandcastle/docker-io-usercont-sandcastle-prod-20200803-125030982828/tmp/SOURCES/tmt-0.20.tar.gz

But:
Message: Preparing of the upstream to the SRPM build failed:
The create-archive action did not output a path to the generated archive.
Please make sure that you have valid path in the single line of the output.

Sorry for the confusion, packit requires relative path and the $(TMP) got expanded into absolute path.
I think it would be best to continue with ./tmp/SOURCES/$(PACKAGE).tar.gz, since it passed the file-existence check in packit and focus on the symlinking on our side (I have packit/packit#923 ready to see what's going on with the relative/absolute paths while linking and checking existence).
Also would you like to try stage version (more info: https://github.com/packit-service/packit-service/issues/649) of packit? It would  help with catching problems early and speed up debugging of problems like this. :)

Ok, I'll revert the change to use relative path. I've also enabled the staging instance. Let's see...

Thanks. PR with extended logging is not merged yet, I'll trigger rebuild when it gets merged.

/packit build

/packit build

we should make @mfocko packit admin :)

/packit build

/packit build

Wow, passed! are we good here? I just can't believe it that the fix was so "easy"

Nice! Looks good :)

@lachmanfrantisek, @TomasTomecek, @mfocko, works nice in production as well. Thanks for fixing this!

@psss thank you for your patience and working with us!


Update TOC

:warning: Validation status: warnings

File
Status
Preview URL
Details

<EMAIL_ADDRESS>:warning:Warning
View (azure-node-latest)
Details

<EMAIL_ADDRESS>:warning:Warning
View (azure-node-latest)
Details

docs-ref-mapping/reference.yml
:white_check_mark:Succeeded

<EMAIL_ADDRESS>
[Warning] 1 invalid cross reference(s) "<xref:https%3A%2F%2Fnodejs.org%2Fapi%2Ferrors.html%23errors_class_systemerror>".

<EMAIL_ADDRESS>
[Warning] 1 invalid cross reference(s) "<xref:https%3A%2F%2Fnodejs.org%2Fdist%2Flatest-v8.x%2Fdocs%2Fapi%2Fall.html%23errors_class_system_error>".

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


HL-747, HL-801, HL-802, HL-799, HL-803 | Improve handler's UI for Ahjo / Talpa

Description :sparkles:
New features:

Improve handler's workflow
Add "locked" state before sending batch to Ahjo
Add fancy batch transitions when changing status
Remove batch (also remove batch if it's freed of applications)
Add confirmation when changing batch status or removing it with HDS dialog modal

Covers:

HL-747
HL-801
HL-802
HL-799
HL-803

Figured it requires new tests and more python love.

API branch is deployed to platta: https://kesaseteli-pr2074.api.dev.hel.ninja/healthz :rocket::rocket::rocket:

Codecov Report

Merging #2074 (59aa19f) into develop (8a6f4b1) will decrease coverage by 6.14%.
The diff coverage is 33.33%.

@@             Coverage Diff             @@
##           develop    #2074      +/-   ##
===========================================
- Coverage    33.38%   27.24%   -6.14%
===========================================
  Files          771      472     -299
  Lines        14820     8424    -6396
  Branches      3122     1905    -1217
===========================================
- Hits          4947     2295    -2652
+ Misses        9389     5845    -3544
+ Partials       484      284     -200

Impacted Files
Coverage Δ

frontend/shared/src/utils/application.utils.ts
66.66% <33.33%> (-6.67%)
:arrow_down:

... and 299 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

API branch is deployed to platta: https://kesaseteli-pr2074.api.dev.hel.ninja/healthz :rocket::rocket::rocket:

API branch is deployed to platta: https://kesaseteli-pr2074.api.dev.hel.ninja/healthz :rocket::rocket::rocket:

API branch is deployed to platta: https://kesaseteli-pr2074.api.dev.hel.ninja/healthz :rocket::rocket::rocket:

API branch is deployed to platta: https://kesaseteli-pr2074.api.dev.hel.ninja/healthz :rocket::rocket::rocket:

Python codecoverage now fixed!

API branch is deployed to platta: https://kesaseteli-pr2074.api.dev.hel.ninja/healthz :rocket::rocket::rocket:


Slim 4 - setBasePath is not taken into account

I have Slim 4 app that is deployed into a subfolder and called like so: https://subdomain.example.com/api/foo
Inside my code I have this line:
$app->setBasePath("/api");
According to the docs path and ignore shouldn't include basepath. But this doesn't work:
"path" => "/",
"ignore" => ["/foo"],

After adding basepath like below the code works:
"path" => "/api",
"ignore" => ["/api/foo"],

There are some differences between Slim 3 and Slim 4 according to @tuupola comment here

Here is a test showing the differences: https://github.com/tuupola/slim-basepath

Apparently this is expected behaviour with Slim 4: https://github.com/slimphp/Slim/issues/2898. I will think about possible workarounds.

@tuupola I think it's worth mentioning that this is the behavior of the PSR-7 implementation itself, not Slim 4 per se. So far as per your tests Slim-Psr7 and Nyholm/Psr7 have the same behavior. I'm not sure about Guzzle and Zend though.

True, I will also test with Expressive to see how it works.


Update argocd library from 2.7.9 to 2.8.4

Update of the ArgoCD library to the 2.8.4.
Also, updated dependencies needed with "go mod tidy".
This is a previous step for future PRs that will provide support for multisource applications.

Going to close this because https://github.com/argoproj-labs/argocd-image-updater/pull/636 incorporates these changes and has been merged.


Websockets keep reconnecting when server is run with Bun

Full disclosure upfront: I'm pretty sure the root cause of this is a bug in Bun itself, which I've already filed here. However, I don't know how long that could take to fix on their end, while adding a workaround in Hocuspocus seems to be very simple and not have any side-effects as far as I can tell. This workaround would be to change this line from this.webSocket.ping() to this.webSocket.ping(''). I'm happy to create a pull request for that, if there are no objections.
Description
We're building a Hocuspocus-powered server that's supposed to be run in Bun, rather than in NodeJS. With this setup, everything works great except websocket Pings are not sent correctly to the client, which means the client never sends a Pong back, causing Hocuspocus to kill the websocket after the timeout with the message "4408 Connection Timeout". The client then reacts by creating a new connection, until that one also gets killed, producing an endless loop.
Steps to reproduce the bug
Steps to reproduce the behavior:

Make sure Bun is installed
In an empty directory, run bun init, accept the default values it's asking for
Run bun install @hocuspocus/server
Replace the content of index.ts with the example code from the Getting Started guide
Add a timeout to the server config in index.ts (e.g. timeout: 5 * 1000)
Run bun run index.ts
Connect with any Hocuspocus client from the browser and observe the websocket messages

The websocket will be repeatedly closed (4408) and reconnected ad inifitum. No Ping or Pong messages are sent.
Expected behavior
The websocket stays open as long as the client is active, and Ping and Pong messages are regularly exchanged as configured by the timeout.
Environment?

operating system: Windows, Alpine Linux (in Docker on Ubuntu)
browser: N/A
mobile/desktop: N/A
Hocuspocus version: 2.13.7

I wanted to modify the websocket ping already for a long time, but haven't had time yet. I've also had issues with it in the past.
Bun seems to have fixed it though, at least they closed their issue :) Would be great if you could let us know if that fixes the issue for you.

Yeah, they were really quick with this! Will report back once the update has landed and I was able to test it 👍

Oh btw, @janthurau unless I'm misunderstanding what you're talking about, at least in Firefox you can enable ping/pong/close messages by enabling the "Control" option in this dropdown:

The empty messages in the background of that screenshot are the pings. If the ping has a payload it will show up there normally as well

@janthurau can confirm that the most recent Bun version (>= v1.1.37) fixes the problem for us!


Missing Action Management HUD button

Thanks for this great module! I use the Action Management options in your module and noticed that recently the "Additional control added to the token HUD during combat to manually adjust actions." is not visible anymore on any of the tokens. The Action Management overlay is working, but I can't find the extra button to manually adjust it for tokens. I looked into the module settings and didn't find any unchecked option about it. Thanks for looking into it!

Ah, yea, the dialog with checkboxes was removed in favor of simply clicking on the icon in the displayed hud 😄

Oops, I missed that change, which is awesome. Sorry about that!


code review

Changes

chore: fix typos in README.md
chore: remove unused variables
chore: remove strange line
chore: use time.Since
chore: change NewModel signature to write cleaner code
chore: remove variable shadowing import

please accept my code review


Convert map outputs to lists for Python3 support

Hey Daniil, thanks for your work on this repo.
I noticed that some places in the code use the output of the map function directly, which is a problem for Python3 since the function returns a map object instead of a list. I've just gone ahead and converted instances of map object to list in a bunch of places -- I noticed you did this for some files already, but it's currently breaking the cityscapes dataset, which I'm currently trying to use :-)
The Python2 docs guarantee the result of map is always a list so I assume this shouldn't break anything.

Hey @erasaur -- great job, thank you so much!


format fails on packages with non-module path dependencies

The CLI format command fails with this error on packages which import artifacts that are not modules:
-> Not a directory (os error 20)
-> failed to check if file exists
   internal:packages/server/src/package/format.rs:64:15 tangram_server::package::format::<impl tangram_server::Server>::format_module::{{closure}}::{{closure}}
   path = /Users/benlovy/code/packages/packages/attr/tangram.ts/patches

The offending import:
import patches from "./patches" with { type: "directory" };

It tried creating the invalid path /Users/benlovy/code/packages/packages/attr/tangram.ts/patches, which fails at the try_exists() call because the parent is not a directory.

I did the simplest fix possible here, and I doubt that it's right. What is the expected behavior?
I'm also adding tests here and would appreciate more ideas.


Fixed spelling of Receiver and a few other typos

Signed-off-by: Malini Bhandaru<EMAIL_ADDRESS>

Thank you @mkbhanda !


OpenVPN Instances. Add client, no certificate.

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[ ] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[ ] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Describe the bug
Setting up a new connection to a VPN service (Nord,Express etc) using the new Instances as a Client role has a mandatory certificate field.
Public VPN providers that i have do not prove a certificate with a private key so unable to add this.
The certificate field only shows the self signed Opensense web gui certificate and None is not a option
Using the old client menu does not force this certificate option.
To Reproduce
Steps to reproduce the behavior:
Goto VPN, OpenVPN,, Instances (New)

to create
Change role to client
Check certificate dropdown.
Filling in all details inc the VPN CA and verify client certificate to none and trying to save still requires a certificate

Expected behavior
Client certificate, like in the original method of adding clients should have a "None (Username and password required) option
Describe alternatives you considered
Environment
Software version used and hardware type if relevant, e.g.:
OPNsense 23.7.5-amd64
openvpn | 2.6.6

https://github.com/opnsense/core/issues/6856#issuecomment-1728089616

https://github.com/opnsense/core/issues/6856#issuecomment-1728089616

Thanks but I'm unable to get it to create any instance as the Opnsense Gui certificate says it cannot be validated and does not allow to save.
It would be this option
--verify-client-cert none
That if set either needs to ignore the certificate field or none needs to be a certificate option

according to https://community.openvpn.net/openvpn/wiki/DeprecatedOptions#Option:--client-cert-not-requiredStatus:RemovedinOpenVPNv2.5 --verify-client-cert  has been deprecated. I don't mind offering options in the gui (as mentioned in the ticket as well), but only when they're not up for deprecation.

according to https://community.openvpn.net/openvpn/wiki/DeprecatedOptions#Option:--client-cert-not-requiredStatus:RemovedinOpenVPNv2.5 --verify-client-cert  has been deprecated. I don't mind offering options in the gui (as mentioned in the ticket as well), but only when they're not up for deprecation.

Hi.
Think that may be misread.
The old
--client-cert-not-required
Is being depreciated and replaced with the new
--verify-client-cert
Not having a no certificate option means all paid for VPNs won't work.

https://openvpn.net/community-resources/reference-manual-for-openvpn-2-6/

--verify-client-cert is a server setting (https://github.com/opnsense/core/issues/6856#issuecomment-1727678968), if someone wants movement on this topic, he or she should really spend some time building a functional setup with openvpn and explain which combination of settings he or she needs for a specific scenario. I'm not planning to spend more time on this guessing what people want.

--verify-client-cert is a server setting (https://github.com/opnsense/core/issues/6856#issuecomment-1727678968), if someone wants movement on this topic, he or she should really spend some time building a functional setup with openvpn and explain which combination of settings he or she needs for a specific scenario. I'm not planning to spend more time on this guessing what people want.

Sorry, you are correct on that setting. This is what services such as NordVPN must have enabled on their servers.
I have a working client openvpn config
It doesn't really help as there isn't a certificate option, or certificate file because services like NordVPN do not provide one, hence no certificate file.
This

And this section of code requires a certificate but there is not one. It is assumed that a client must have a certificate that is linked to a CA in the current instances settings but there isn't one.
This code if statement does not account for the
"Verify Client Certificate"
Setting if it is set to none
if (!empty((string)$instance->cert)) {
if ($instance->cert->isFieldChanged() || $validateFullModel) {
$tmp = Store::getCertificate((string)$instance->cert);
if (empty($tmp) || !isset($tmp['ca'])) {
$messages->appendMessage(new Message(
gettext("Unable to locate a Certificate Authority for this certificate"),
$key . ".cert"
));
}
}

if you try to modify the openvpn file created into one that works for you, it shouldn't be an issue to fix it on our end.
To start a file generated from the gui, use:
/usr/local/sbin/openvpn --config /var/etc/openvpn/instance-xxxxx-xxxx-xxx-xxx-xxxx.conf

(xxxxx-xxxx-xxx-xxx-xxxx equals the uuid of the instance)
https://github.com/opnsense/core/commit/6d5ca5da1ae23a9a47f300ea253f5c6868a85064 removed the requirement for a certificate.

if you try to modify the openvpn file created into one that works for you, it shouldn't be an issue to fix it on our end.
To start a file generated from the gui, use:
/usr/local/sbin/openvpn --config /var/etc/openvpn/instance-xxxxx-xxxx-xxx-xxx-xxxx.conf

(xxxxx-xxxx-xxx-xxx-xxxx equals the uuid of the instance)
https://github.com/opnsense/core/commit/6d5ca5da1ae23a9a47f300ea253f5c6868a85064 removed the requirement for a certificate.

Ah Brill.
Doesn't seem to have made it to the master branch yet so wasn't seeing it.
Will try manually adding to my server to see if that let's me save the instance with no certificate.
New to actually browsing github so trying to get my head around the processes
Ta

This slipped through when doing 23.7.5 since the whole model file was being edited. I've cherry-picked this now for 23.7.6 via 98a7e04954. It may apply to 23.7.5 cleanly but not entirely sure (but the change is trivial by hand anyway).
Cheers,
Franco

Changed on 23.7.5 and it does indeed fix the certificate issue and allow to save.
One thing to note is that the verify client certificate option on 23.7.5 seems to be classed as a "client" option and does not get removed when changing instance from server to client in the drop down.
I've tried for about an hour to see how it determines what is client and what's server setting, but my coding skills aren't good enough to determine if it's been fixed in 23.7.6.
This causes the connection to not start and error with.

if you remove the optional manually from the configuration file and start the openvpn instance, does that offer the expected results? Fixing the dependency issue should be a minor thing.

if you remove the optional manually from the configuration file and start the openvpn instance, does that offer the expected results? Fixing the dependency issue should be a minor thing.

Have tried removing and commenting out.
Each time I press the start button on the opnsense gui it adds it back in again.

you need to start openvpn from the console in that case.
/usr/local/sbin/openvpn --config /var/etc/openvpn/instance-xxx.conf


Init command

To get a cool some examples with the users and pets is nice but removing the references to get started is a pain if you dont have that much time. For more productivity it would be nice to have a command to remove those references from pets to users.

Hi @somehowchris,
No need for that now, but we would happy to see a PR


Setting a relation fails after insert

I have encountered a weird bug which results in inconsistent behavior:
//If set before insertion
$entity->set('relation', /*Array of entities*/);
$entity->get('relation'); //Returns array

$mapper->insert($entity);

//If set after insertion
$entity2->set('relation', /*Array of entities*/);
$entity2->get('relation'); //Returns null

After the first entity is inserted in database, the setter does not work anymore.
Any idea on why this happens?

If I use an arbitrary value which is not a relation name, it works.

Spot does not automatically save related entities at this time - is that what you are trying to accomplish here?
Explanation:
I think what is going on for the second attempt after insertion is that Spot reloads entity relations after save, which probably clears your property.
Also - If you want to explicitly set a relation in Spot, you have to use the relation method instead:
$entity->relation('posts', [ /* array of entities, or ideally a Spot\Entity\Collection object */]);

The get and set methods are for properties, so they will not work reliably for relations.

I know about the relation method, and when digging into the code I saw that set uses relation when you try to set a relation. So, I don't think that's the problem here.
I also know that Spot does not save relations which is what I am trying to implement right now.
I created in my mapper a saveRelations method. The problem is that I get inconsistent results when setting explicit relations.
In my example above, I work on the first entity without any problems. The explicit relation is working like expected and I can use $entity->get('relationName')
But, after inserting my first entity, I cannot seem to be able to set an explicit relation on other entities which have not been inserted yet, it always returns null.

I just tried using relation directly and it works as expected.
It seems like there is something wrong with this variable self::$relationFields[get_class($this)] in the get and set which makes retrieving and setting relation unreliable.
I think either relation should be removed from get and set or self::$relationFields should be fixed to be more reliable in get and set.
The problem lies in Entity::set, line 482:
        if (in_array($field, self::$relationFields[get_class($this)])) {
            // Set relation
            $this->relation($field, $value);
        } elseif ($modified) {
            $this->_dataModified[$field] = $value;
        } else {
            $this->_data[$field] = $value;
        }

I just realized I had a property of the same name as my relation. So, I think I encountered an edge case where get and set don't set/get data in the same place.
set goes in this order: relation, dataModified, then data.
get goes in this order: dataModified, data, then relation.
We might just need to reorder them so that they match each other.


Suggest improving DOMDocument::create

Please trim the HTML string first, at the moment it's difficult to work with heredocs and nowdocs

This was implemented in https://github.com/PerryRylance/DOMDocument/commit/326680e4a709138d395a99221c631316ed99ec58


Add alt text in search icon

I ran YACS through http://wave.webaim.org and we are missing alt text for the search icon.
Add alt text to the search icon so that screenreader users can understand the search bar.

@kburk1997  where can i find the search icon?


Fix RawKeyboard exception

This pull request fixes #10. If we manually supply a FocusManager instance to BuildOwner, the system will not call registerGlobalHandlers() on it and therefore not try to override the global input event handler. This is explicitly stated in the documentation of BuildOwner:
"If the focusManager argument is not specified or is null, this will construct a new [FocusManager] and register its global input handlers via [FocusManager.registerGlobalHandlers], which will modify static state. Callers wishing to avoid altering this state can explicitly pass a focus manager here."

Hey @Coronon,
Thanks for pointing it out. Will merge this and will update the package soon.
I really appreciate your contribution. 👍🏽✌🏽


Upside down box

Describe the project you want to add with tech stack

This project contains an animation where a box type element flips down.Can you assign this task to me?
Expected behavior

Screenshots (optional)

https://github.com/pranjay-poddar/Dev-Geeks/assets/128773151/ecd6e556-f5f7-4420-8dbb-9c1bc59bd480
Additional context (optional )

@MohitGupta121 ,
@TusharKesarwani Can you assign this task to me?

@MohitGupta121 ,@TusharKesarwani Can you Please assign this task to me?As Gssoc contribution period is going to end..this issues can level me up ..Please assign this issue to me...Please.


Select a day by code

Hi there. I set the $scope variable as a global variable as follow:
var scope;
var app = angular.module('demoApp', ['multipleDatePicker']);
app.controller('demoController', ['$scope', function ($scope) {
    scope = $scope;
}

And I select the date by program as follow:
scope.myArrayOfDates=[moment()];

However, the datepicker want update the selected date with red background layout until I hover any date in the datepicker.
Do I miss something or there is any better way to select dates by program? Thank you.

Hi,
I don't get everything, why do you copy the scope variable ?
Can you provide more code of your controller please ?

Because I want to access the scope outside the controller block. I have other action outside the controller block to decide which dates should be selected. And I want to select the dates by program.
By the way, myArrayOfDates is a ng-model for the multiple date picker refer from the demo code.

You can init the myArrayOfDates once and pass it to the directive, then if you want to change the date you have to change the array, not redefine it with an =, there is a watch on it but it's not triggered when you redefine it, it's an angular thing.
So, just do once scope.myArrayOfDates=[moment()] then to select only one date do
scope.myArrayOfDates.splice(0, scope.myArrayOfDates.length);
scope.myArrayOfDates.push(moment());

Thank you for you reply, however, it still don't work.
Please refer to my app.js:
var scope;
function myCallback() {
    scope.myArrayOfDates.push(moment());
}
var app = angular.module('demoApp', ['multipleDatePicker']);
app.controller('demoController', ['$scope', function ($scope) {
        scope = $scope;
        $scope.myArrayOfDates = [];
}]);

And front end is something like:
<html>
    <body>
        <multiple-date-picker ng-model="myArrayOfDates" sunday-first-day="true" disable-days-before="today"></multiple-date-picker>
    </body>
</html>

When I call myCallback() function, the layout will not update until I hover on the date picker.

I don't have much time right now, can you provide a https://jsfiddle.net/ please to test it online ?

https://jsfiddle.net/o4gq4hgm/5/

I already resolve it! I update the myArrayOfDates using a function inside the controller will works. And I trigger the function using a ng-click action of the button. In that case I no need to cop the $scope variables.
Demo can refer from: https://jsfiddle.net/o4gq4hgm/7/
Btw, thanks for your patient reply, I'm new to angular, not so familiar with the ng stuff.

Glad you found 👏


#36 - Add Event Page

📚 Add Event Page
What

Updated Metadata Front-Matter (added Speaker Section) as String[] of JSON objects (all fields in JSON are mandatory... if not present leave it to "", see example 20231129.mdx).
Added Interface ISpeaker in Event Model
Added component Event Card to show Event information (youtube link if url present, event registration link and with new Speaker Section)
Added Component AddToCalendar (extracted from EventWidget for reuse in EventCard)
Added Event Page that use param (search) for find an Event. If the event was found it will show the component (otherwise Alert component). Example http://localhost:3000/event?search=20231129

📝 To Do
a. Loading Spinner on EventPage (waiting correct information to be displayed)

@Undermaken I'll fix leftovers from this PR in the near future :D

@Undermaken I'll fix leftovers from this PR in the near future :D

I would like to contribute but I'm out due to a strong flu!
Thanks to both of you for this. I guess it's an interesting feature for our web site, especially to target specific events!

yeah! That's a foundamental feature, don't worry I think I'll ber able to fix this before new year's eve 👍🏼


ci: Increase the CI image wait timeout to 30 minutes

There are many CI image build runs that take more than 10 minutes to
complete because of the GitHub Actions concurrency limit. It would be
ideal if we can serialize workflow runs so that tests start after the
CI image build finishes, but in the meantime increase the wait time to
30 minutes as a short term workaround to prevent unnecessary failures.
Ref: https://github.com/cilium/cilium/actions/workflows/build-images-ci.yaml
Signed-off-by: Michi Mutsuzaki<EMAIL_ADDRESS>

🤔 This will cause some jobs to wait around for a while if the images for whatever reason fail to be pushed, causing a larger pile up from the infra perspective. Are we convinced this is the best approach?

definitely not the best approach, more of a short term mitigation. i'm hoping we can use workflow_dispatch or something to trigger test runs only after the CI image job finishes, but @nbusseneau mentioned there were some limitations in github actions the last time he tried to do that 👀


Research Unity Ads integration

Research how to implement TIKI in Unity Ads SDK to increase user consent in sharing their data.

[ ] Create a simple Unity development project
[ ] Describe how to implement the integration
[ ] Add sample codes
[ ] Create new stories if needed for code implementation

Resource:
https://docs.unity.com/ads/en/manual/ImplementingDataPrivacy

not applicable


self hosted linux agent 2.164.1/3 stopped running jobs

Agent Version and Platform
Version of your agent?
2,164.1/3 Ubuntu18.04
Azure DevOps Type and Version
on premise not sure how to get version
If dev.azure.com, what is your organization name?
https://dev.azure.com/jblhive/
What's not working?
I had agent 2.164.1 installed and working on two Azure hosted Ubuntu 18.04 vm's. in my againt pool.
This was working and it was running several pipeline jobs right along.
Not sure what happened but now jobs are just waiting in que and never run.
Status of pending jobs say:
"The agent request is not running because all potential agents are running other requests. Current position in queue:1"
If I look at the pipeline agent pool status shows:
The agent "online", "Idle" and "enabled"
It also looks like 2.164.3 may have been pushed and may be the issue I can not tell.
It tried reinstalling the agent but still no luck. Agent logs show some errors.
Agent_20200117-143327-utc.log
Agent and Worker's Diagnostic Logs
Logs are located in the agent's _diag folder. The agent logs are prefixed with Agent_ and the worker logs are prefixed with Worker_. All sensitive information should already be masked out, but please double-check before pasting here.
Agent_20200117-144037-utc.log

this is the status of a "working" install. the script installed it in ~/azp/agent  directory.
david@Ubuntu1804b:~/azp/agent$ ls -l
total 52
drwxr-xr-x  3 david david  4096 Feb  4 16:23 _diag
drwxrwxrwx 27 root  root   4096 Jan 27 04:29 _work
drwxr-xr-x 22  1001   117 20480 Jan 26 22:37 bin
-rwxr-xr-x  1  1001   117  2940 Jan 23 02:33 config.sh
-rwxr-xr-x  1  1001   117   707 Jan 23 02:33 env.sh
drwxr-xr-x  6  1001   117  4096 Jan 23 02:34 externals
-rwxr-xr-x  1  1001   117  2014 Jan 23 02:33 run.sh
-rwxr-xr-x  1 david david   510 Jan 26 22:37 runsvc.sh
-rwxr-xr-x  1 david david  4070 Jan 26 22:37 svc.sh
david@Ubuntu1804b:~/azp/agent$
I noticed that after it tried to upgrade (and stopped working) there were several other folders. I don't have that status as I wiped and reinstall to get back on line.  If it fails again I will recheck status of those.

did it again this morning.
Broken upgrade and build machine down again.
the directory now looks like:
david@Ubuntu1804b:~/azp/agent$ dir
_diag  _work  bin  bin.2.164.7  config.sh env.sh  externals  externals.2.164.7  run.sh runsvc.sh svc.sh
david@Ubuntu1804b:~/azp/agent$
david@Ubuntu1804b:~/azp/agent$ ls -l
total 76
drwxr-xr-x  3 david david  4096 Feb  5 14:11 _diag
drwxrwxrwx 27 root  root   4096 Feb  5 14:11 _work
drwxr-xr-x 22  1001   117 20480 Jan 26 22:37 bin
drwxr-xr-x 22 david david 20480 Feb  5 14:11 bin.2.164.7
-rwxr-xr-x  1  1001   117  2940 Jan 23 02:33 config.sh
-rwxr-xr-x  1  1001   117   707 Jan 23 02:33 env.sh
drwxr-xr-x  6  1001   117  4096 Jan 23 02:34 externals
drwxr-xr-x  6 david david  4096 Feb  5 14:11 externals.2.164.7
-rwxr-xr-x  1  1001   117  2014 Jan 23 02:33 run.sh
-rwxr-xr-x  1 david david   510 Jan 26 22:37 runsvc.sh
-rwxr-xr-x  1 david david  4070 Jan 26 22:37 svc.sh
david@Ubuntu1804b:~/azp/agent$

attached console dump showing ls -l
broken agent upgrade.txt

is there a way to turn off upgrades?

PLEASE tell me how to fix this. Its becoming very problematic!

@dvesccovi1 - The issues is that some of the directories and files in your agent install directory are owned by mid 1001 but you are running the agent as user 'david'.
If you run the following command:
% chown -R david:david /azp/agent

That should fix your problem and prevent it from happening again.
We currently do not have a method for disabling auto updates.

I'll give it a try … thanks for the quick reply

@dvescovi1 - you may need to do
% sudo  chown -R david:david /azp/agent

Since I just noticed your _work directory is owned by root.

yes the _work directory is mapped to a large storage drive on Azure as I am building a large yocto image which consumes a large amount of space, I am also storing some saved download and state files there needed for yocto builds  Is that going to be a problem?

the standard Linux vm allocated on Azure does not have a big enough drive so I had to mount an extra 2TB drive to _work mount point

Then I would do the following:
% chown david:david /azp/agent/*.sh
% chown -R david:david /azp/agent/bin
% chown -R david:david /azp/agent/externals

looks like the original install script I used put the agent in my home directory /home/david/azp …should it be off the root?

it can be wherever, but all the files need to be owned by the user the agent is being run as.

look like queued jobs are now running!

is there a command I can use to dump version number and status that is running?

hello, the last hint didn't work for me, on ubuntu 20.04, it seems to be a permissions issue because i removed the validation from the user in config.sh and run sh script and run the scripts with sudo ./config.sh and sudo ./run.sh and it worked. now i will investigate what is happening what is the missing permission.
`# we want to snapshot the environment of the config user
if [ $user_id -eq 0 -a -z "$RUNNER_ALLOW_RUNASROOT" ]; then
echo "Must not run with sudo"
exit 1
fi
`

hello, the last hint didn't work for me, on ubuntu 20.04, it seems to be a permissions issue because i removed the validation from the user in config.sh and run sh script and run the scripts with sudo ./config.sh and sudo ./run.sh and it worked. now i will investigate what is happening what is the missing permission. # we want to snapshot the environment of the config user if [ $user_id -eq 0 -a -z "$RUNNER_ALLOW_RUNASROOT" ]; then echo "Must not run with sudo" exit 1 fi

@IvanDonoso did you ever determine the source of this error? I am hitting the same thing though it seems to me that all agent-related files are owned by the correct user.

hi jweyer8
I did not find the origin, but something that worked for me was to delete everything and reinstall the runner with this link
https://docs.github.com/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-a-repository


cursor plugin: fix typeError if displayTime: null

Title: Fix typeError if displayTime: null in Cursor plugin
Please make sure you provide the information below:
Short description of changes:
Adding a simple check for this.displayTime before getting its getBoundingClientRect(). Previously it was giving an error:
Cannot read properties of null (reading 'getBoundingClientRect')

Breaking in the external API:
None
Breaking changes in the internal API:
None
Todos/Notes:
None
Related Issues and other PRs:
fixes #2501

Coverage increased (+0.2%) to 81.308% when pulling c07cb8e15d37e0751379d7f2c95480785d301ce8 on MikeyZat:master into f9800325f00396a24666482236d9d3301b0b728a on katspaugh:master.

@thijstriemstra sure, it's done


prettify modal demo

use explicit binding bind:open={modal_open}
instead of bind:open which can be confusing for beginners
also, in real-world-code, the 'open state' variable mostly has a different name than 'open'

Thanks


Jules5

Hello Jim and Eric,
I have finished the JULES containers for 5.0, 5.1, 5.2, 5.3, 5.4 and 5.5 (5.x) and corresponding tests. All of them worked successfully with my NLDAS domain test cases. Could you please review the code for merging it to the main repository? My test case directory is /discover/nobackup/swang9/Models/JULES/TEST/.
Thanks,
Shugong

I am able to run these six versions of JULES and reproduce your results.  I made several updates to this branch, and I am still able to reproduce your results.
But for JULES 5.2, 5.3, and 5.4, the results are questionable.  For example, I see qle=0 for the whole domain for 2 months.
I also want to confirm the LAI is supposed to be a constant 5 for the whole domain.
I also compiled/ran JULES using the GNU compilers (which is necessary for the upcoming tutorial).  To me, some of the scatter plots in the JULES 5.x results are too spread out for changing compilers.
Please use this modulefile for any GNU testing: /home/jvgeiger/privatemodules/lisf_7_gnu_4_9_2
Please update your jules5 branch before committing any new updates.

Hi Jim,
I know what is going on for “But for JULES 5.2, 5.3, and 5.4, the results are questionable. For example, I see qle=0 for the whole domain for 2 months.” There is a flag that we have to set.  I will do it quickly.
Thanks,
Shugong
From: James Geiger<EMAIL_ADDRESS>Reply-To: NASA-LIS/LISF<EMAIL_ADDRESS>Date: Monday, February 3, 2020 at 12:38 PM
To: NASA-LIS/LISF<EMAIL_ADDRESS>Cc: "Wang, Shugong (GSFC-617.0)[Science Application International Corp.]"<EMAIL_ADDRESS>State change<EMAIL_ADDRESS>Subject: [EXTERNAL] Re: [NASA-LIS/LISF] Jules5 (#453)
I am able to run these six versions of JULES and reproduce your results. I made several updates to this branch, and I am still able to reproduce your results.
But for JULES 5.2, 5.3, and 5.4, the results are questionable. For example, I see qle=0 for the whole domain for 2 months.
I also want to confirm the LAI is supposed to be a constant 5 for the whole domain.
I also compiled/ran JULES using the GNU compilers (which is necessary for the upcoming tutorial). To me, some of the scatter plots in the JULES 5.x results are too spread out for changing compilers.
Please use this modulefile for any GNU testing: /home/jvgeiger/privatemodules/lisf_7_gnu_4_9_2
Please update your jules5 branch before committing any new updates.
[Image removed by sender. plot_qle_tavg 01 swang9]https://urldefense.proofpoint.com/v2/url?u=https-3A__user-2Dimages.githubusercontent.com_29410619_73676011-2D8be53000-2D4681-2D11ea-2D8aa7-2Db91ccb8d9ea3.png&d=DwMCaQ&c=ApwzowJNAKKw3xye91w7BE1XMRKi2LN9kiMk5Csz9Zk&r=SA70DnUudFJcc5lbrVIdAX0aS3Ozm-jBWHB97p6-svo&m=4kVh9U75MCBsZCu587d3qp6868JouqK99xQ-ouI2buc&s=Vm9f7IjajcCyRbkn98J-ENWds_rpY-dtQ6A3Oc6zfIQ&e=
[Image removed by sender. fenxi_gpp_tavg 59 gnu_vs_intel]https://urldefense.proofpoint.com/v2/url?u=https-3A__user-2Dimages.githubusercontent.com_29410619_73676092-2Db800b100-2D4681-2D11ea-2D87c6-2D01ea626e8205.png&d=DwMCaQ&c=ApwzowJNAKKw3xye91w7BE1XMRKi2LN9kiMk5Csz9Zk&r=SA70DnUudFJcc5lbrVIdAX0aS3Ozm-jBWHB97p6-svo&m=4kVh9U75MCBsZCu587d3qp6868JouqK99xQ-ouI2buc&s=EW42Bl4U_dP3PMO1m0HnxWk45a6VbSGmOtP-AZEjvco&e=
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_NASA-2DLIS_LISF_pull_453-3Femail-5Fsource-3Dnotifications-26email-5Ftoken-3DAKE5JCGXYM6JTXDIZ5MKAYDRBBI6XA5CNFSM4KMIDIT2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKUXBUI-23issuecomment-2D581529809&d=DwMCaQ&c=ApwzowJNAKKw3xye91w7BE1XMRKi2LN9kiMk5Csz9Zk&r=SA70DnUudFJcc5lbrVIdAX0aS3Ozm-jBWHB97p6-svo&m=4kVh9U75MCBsZCu587d3qp6868JouqK99xQ-ouI2buc&s=3sXOhwrc4hEreA8nLhAGB2mQNBvOreY6kVK0Gh7CJGo&e=, or unsubscribehttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AKE5JCCW2OU2LZDFJEJZWPDRBBI6XANCNFSM4KMIDITQ&d=DwMCaQ&c=ApwzowJNAKKw3xye91w7BE1XMRKi2LN9kiMk5Csz9Zk&r=SA70DnUudFJcc5lbrVIdAX0aS3Ozm-jBWHB97p6-svo&m=4kVh9U75MCBsZCu587d3qp6868JouqK99xQ-ouI2buc&s=_NtEHApK7oRNB6S3t-vAFKTzpqSSjwdm1zGwx1i4rjc&e=.


Make PHP5 compatible

This change is

The code is PHP5 and PHP7 compatible right now. What your change does is breaking PHP4 compatibility only. Anyway, I suppose we can do it.

However, this breaks code style.


Reduces port name length to 15 chars
Triggers workflow to run

WHAT JIRA STORY/TASK IS RELATED TO THIS PR?
HOW DO I TEST OUT THIS PR?
WHICH ENDPOINTS SHOULD BE READY FOR TESTING?:

Demo link

IS THERE ANY JENKINS CONSOLE LINK FOR CODE COVERAGE AND BUILD INFO?
N/A
ARE THERE ANY RELATED PRs?
N/A

LGTM


[DRAFT] [WOR-1542] Private endpoints for LZ Storage Account

https://broadworkbench.atlassian.net/browse/WOR-1542
Overview
This PR sets up a private endpoint for accessing the Terra Storage Account from within the MRG. It does not remove the existing public endpoint. There is no change to the storage account configuration or hostname. The net effect is the PE is used within the MRG; and the public IP is used for external access.
Concretely, setting this up necessitated adding 4 stairway steps:

CreateStorageAccountDNSZoneStep -- creates a private DNS zone for the storage account
CreateStorageAccountVirtualNetworkLinkStep -- associates the private DNS zone with the VNet
CreateStorageAccountPrivateEndpointStep -- creates the private endpoint itself
CreateStorageAccountDNSZoneGroupStep -- associates the private DNS zone with the private endpoint

Azure loves their granular resources!
Testing performed

Deployed to my BEE, created a landing zone and workspace
Workspace functionality still works (including workflows)

From my laptop, storage account resolves to external IP:

From a Terra notebook, resolves to internal IP:

Next steps / open questions

Do some more testing, get feedback
I would like to do the same thing for Azure Relay and Azure Batch. There is a lot of stairway/test boilerplate though. Is there a good way to reuse code?
Does access via PEs gets the same storage access logging?
When we move forward with this, we may wish to migrate landing zones. Can the framework in https://github.com/broadinstitute/dsp-scripts/tree/master/landingzone/migrate-lz be used for this?
Are there cost implications for using private endpoints?

@rtitle checking in, is this still in progress or can this PR be closed?

I can close this for now -- we still may want to do this but I had wanted to think through the cost implications a little more first.


Use Build.SourceBranch as the head ref for package change detection

This change updates the js - mgmt - pr configuration to use the Build.SourceBranch pipeline variable to determine the head ref to use for determining changes against the target branch.  This will cause the correct PR ref (i.e. refs/pull/1234/merge) to be used.  Prior to this change the following error would be thrown in builds, presumably causing package changes to be detected incorrectly:
git diff --name-only origin/master origin/arm-compute-core-http
Exit Code: 128
Error:
fatal: ambiguous argument 'origin/arm-compute-core-http': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'

Hmmm, that didn't seem to work.  I'm not sure why it's not recognizing the PR ref correctly, will try to dig into that later.

That might not be what you want to do. Isn't that ref a pointer to the merge commit. If that is the case you'll be triggering based on not only changes on the incoming PR, but also changes since the branch you are merging was branched off.

@daviwil Are the changes here still relevant?

Probably not, thanks!


Feature/search bar

Search-bar Component
The search-bar component now has it's own route in react-router-dom in "/searchbar".
It also has the functionality to autocomplete search results by name using mock data.
Later on, the search bar will connect to the back-end API to work with actual data and implement more features mentioned in the Trello.

Looks good!


Stream subscription rows disappear after rapid subscribing and unsubscribing

As seen in the GIF below, a weird behavior involving the disappearance of a stream row occurs if a user rapidly subscribes and unsubscribes from a stream row in the Streams modal.

Hmm, it might have something to do with the local echo (not totally sure), which kind of breaks when you use a hotkey really really fast.

I think we fixed this as I can no longer reproduce -- it looks to have been a race condition where we were doing rerendering in the success handler.  Thanks for the report @synicalsyntax!


Fixed errors raised during setting attributes for models in views/utils.py

Fixed bugs regarding setting model fields
Fixed bugs relating using setattr with ManyToMany and ManyToOne relations instead of calling their set() method
Fixed errors regarding setting Foreignkey value using only primary key

Problem
I found bugs regarding setting values for models in set_property_from_data in views/utils.py.
Though the problem is not one easily found, My app tended to result in errors asking to call the set method of a many to one field (reverse foreignkey) rather that set the values directly.
I also found that one model I had that depended on a custom user model, was having errors raised because it did not have a name attribute
@timed
def set_property_from_data(
    component_or_field: Union[UnicornView, UnicornField, Model], name: str, value: Any,
) -> None:
    """
    Sets properties on the component based on passed-in data.
    """

    if not hasattr(component_or_field, name):
        return
    if isinstance(component_or_field, Model):
        set_property_for_model(component_or_field, name,value = value)
        return

    field = getattr(component_or_field, name)
    component_field_is_model_or_unicorn_field = _is_component_field_model_or_unicorn_field(
        component_or_field, name
    )

    # UnicornField and Models are always a dictionary (can be nested)
    if component_field_is_model_or_unicorn_field:
        # Re-get the field since it might have been set in `_is_component_field_model_or_unicorn_field`
        field = getattr(component_or_field, name)

        if isinstance(value, dict):
            for key in value.keys():
                key_value = value[key]
                set_property_from_data(field, key, key_value)
        else:
            set_property_from_data(field, field.name, value)            #<---Problem if Model has no name attribute.
    else:
        type_hints = get_type_hints(component_or_field)

        if name in type_hints:
            # Construct the specified type by passing the value in
            # Usually the value will be a string (because it is coming from JSON)
            # and basic types can be constructed by passing in a string,
            # i.e. int("1") or float("1.1")

            if is_dataclass(type_hints[name]):
                value = type_hints[name](**value)
            else:
                value = type_hints[name](value)

        if hasattr(component_or_field, "_set_property"):
            # Can assume that `component_or_field` is a component
            component_or_field._set_property(name, value)
        else:
            setattr(component_or_field, name, value)                #<---- Problem source Many relation field.

To fix this I found it necessary to implement a separate helper function to handle model assignments that could take care of all the problem cases.

🎉 This is awesome, thanks for the PR! I have https://github.com/adamghill/django-unicorn/pull/177 on-going right now which is touching some of this same code, but it appears that they won't conflict with each other. I'm trying to get that PR merged into master in the next day or so.
Any chance you could add some tests to make sure this covers all of your use-cases? #177 adds an explicit file to test set_property_from_data which is probably where tests should live: https://github.com/adamghill/django-unicorn/pull/177/files#diff-a1daf5746c0c3b2448701cd6d37a1f2f5172d68bfe2cb25e19fffe63bcefd0d8. If you want to wait for me to merge my PR into master and then rebase that might make the most sense?

Hello, I also believe waiting is a far better option.

Sorry that merging #177 took longer than I expected -- it is now merged into master, though. Can you take a look and 1) let me know if it causes other issues with your existing code and 2) let me know when I should take a closer look at this PR?
Thanks! I'm looking forward to better handling of Django models in the next release. 😎

#177 has been merged into master.
Documentation changes that detail how to interact with Django models in the upcoming 0.26.0: https://github.com/adamghill/django-unicorn.com/pull/14. Lots of back-end changes here, but hopefully it contains less magic and is more explicit. Let me know what you think!

I now have a test for correctly handling foreign keys for a model in https://github.com/adamghill/django-unicorn/releases/tag/0.26.0. Can you check if 0.26.0 works better for that situation? I have not yet looked into many-to-many models, but hopefully it is relatively easy to add that support in along with tests.

That's great news. Sorry I was unable to attend to the PR any sooner. I got held up with some school projects. I'll test the new release out with the project I was working on

No worries! Hopefully this new approach makes sense. Looking forward to your feedback!

I created a new PR to handle many-to-many fields on a model: https://github.com/adamghill/django-unicorn/pull/180.

Thanks for the work you put into this PR, but because of all of the other changes I just ended up dealing with this directly so I'm going to close this. I look forward to your next PR! :)

I actually found the same issue (on master tree I could not find this commits) with one of my models.
The solution that I managed to implement was actually just to comment the row:
set_property_from_data(field, field.name, value)
and replace it with:
setattr(component_or_field, name, field)
in django_unicorn/views/utils.py
After finding this solution, I found this PR and I tried this code, which was causing error on my page.
What I actually have is a model with a foreignkey to User. When user is empty @Joetib version fails, while the standard 0.27.0 version works. When user was set, original was not working, didn't try this PR in that case. My version seems to work in both cases, but I'm not sure if I may have broken other parts of the code, since I didn't fully understood how it works.

@mbacicc Can you check 0.27.1 and see if it works for your use-case? Thank you!


[FEATURE] Add v1.0.3 UI related CI/CD

Is your feature request related to a problem? Please describe.

UI branch:   https://github.com/harvester/dashboard/tree/harvester-release-v1.0
Describe the solution you'd like

Describe alternatives you've considered

Additional context

@WuJun2016 u can use the release-harvester-* branch name, and therefore we don't need to change the existing drone CI.

Now CI/CD is available， so close.


DOCKER_HOST without protocol

Docker accepts DOCKER_HOST env without a protocol, falling back to tcp afaik.
It'd be great to support the fallback scenario.

After further thought assuming a protocol could be problematic. From the documentation it appears that DOCKER_HOST should always specify a protocol (https://docs.docker.com/engine/reference/commandline/dockerd/#examples).

There is another issue I just stumbled across. dive seems to assume port 80 when no port is specified. It should instead assume port 2375.


Mitigate thread race conditions & hashcode collision risks

We have been seeing intermittent instances of this issue happening https://github.com/mikependon/RepoDB/issues/1133
It has taken a lot of debugging and stepping through in order to isolate the potential issue, but we've observed no recurrence of the errors since applying this patch locally and are therefore submitting a PR.
We are in a TimescaleDb / Postgresql 15 environment and are using RepoDb for its binary protocol support for bulk operations.
Findings
Race conditions
When creating db commands during both reads and inserts, the ClassProperty.GetPropertyHandler<TPropertyHandler>() is executed. The returned property handler is used to modify db commands such that their type matches what the database engine expects, and the value of the parameters is converted using the property handler. Quite elegant and also explains why at first we could find no use of Npgsql's TypeMapper system in the Postgresql-specific projects!
However, the code as-is can cause a null return for properties that do have a property handler.
Consider 2 threads:
One enters GetPropertyHandler<TPropertyHandler>(), where propertyHandlerWasSet is false, so it proceeds to set propertyHandlerWasSet = true before it has obtained a reference to PropertyHandlerCache.Get<TPropertyHandler>(GetDeclaringType(), PropertyInfo);. A second thread entering GetPropertyHandler<TPropertyHandler>() at this point can then observe propertyHandlerWasSet to be true, causing the method to return null. When this method returns null, the db parameter is not modified, and leads to errors such as reported in the mentioned issue because the unconverted type is passed through to the database provider.
Hashcode collisions
Furthermore in other areas we observed a chance for hashcode collisions when constructing cache keys, due to summing other hashcodes. Instead, this code has been converted to use HashCode.Combine.

@mikependon hi there just FYI we've been running this build since this PR and have not seen a resurgence of the errors in the related issue

@alexn-tinwell thanks for this PR. We are reviewing this already.


[Question] Item Terminal and Retrieval Modules

So we're playing the Create Above and Beyond Modpack and this pipe mod is included.
we're having a strange issue now that we're trying to automate a farm though- We have an inventory (a barrel) connected to a kelp farm, which then is connected via pipes to our storage system (a network of Storage Drawers from the mod of the same name connected to an Item Terminal via pipes) and I just put a Low Retrieval Module into the pipe adjacent to the Kelp pipe, except now it seems that I can't pull kelp from that pipe? Does having a retrieval module in the pipe beside a storage stop you from actually pulling items from it using an Item Terminal or something? The actual descriptions of the items don't make it clear at all, and I can't tell if this is intended functionality or a really crummy bug.

A retrieval module extracts items from the storage network into a single destination container, so the destination container stops being considered a part of the network. An item terminal can only see containers that are a part of the network.


Fix panic when decode icmpv6 option

Missing 0 length check when decode icmpv6 option.
Security hole, easy to be attacked by this kind of icmpv6 packets.
panic: runtime error: slice bounds out of range [recovered]
panic: runtime error: slice bounds out of range
goroutine 50 [running]:
testing.tRunner.func1(0xc4204262d0)
/usr/local/go/src/testing/testing.go:711 +0x2d2
panic(0xcbc8e0, 0x1627cf0)
/usr/local/go/src/runtime/panic.go:491 +0x283
*/vendor/github.com/google/gopacket/layers.(*ICMPv6Options).DecodeFromBytes(0xc4204d3b38, 0x1652b26, 0x7, 0x7, 0x1642b60, 0x1bdb2e0, 0x164e460, 0xc42006eea0)
*/vendor/github.com/google/gopacket/layers/icmp6msg.go:470 +0x426
*/vendor/github.com/google/gopacket/layers.(*ICMPv6RouterSolicitation).DecodeFromBytes(0xc4204d3b08, 0x1652b22, 0xb, 0xb, 0x1642b60, 0x1bdb2e0, 0x0, 0x4e504b)
*/vendor/github.com/google/gopacket/layers/icmp6msg.go:175 +0x11d

Thanks!


NSubstitute warnings with upm

I imported extenject 9.1.0 using upm,  and I get the following warnings:
A meta data file (.meta) exists but its asset 'Packages/com.svermeulen.extenject/OptionalExtras/TestFramework/Editor/AutoSubstitute/__MACOSX/AutoSubstitute/NSubstitute' can't be found. When moving or deleting files outside of Unity, please ensure that the corresponding .meta file is moved or deleted along with it.

Couldn't delete Packages/com.svermeulen.extenject/OptionalExtras/TestFramework/Editor/AutoSubstitute/__MACOSX/AutoSubstitute/NSubstitute.meta because it's in an immutable folder.

@starikcetin I get this warning with your fork,  using openupm


Support for Network Flow Logging?

Would it be possible to add some kind of network flow logging to Headscale?
Perhaps something basic like byte counters between nodes to begin?

The network types for the client seem to be here:
https://github.com/tailscale/tailscale/blob/main/types/netlogtype/netlogtype.go
There's some documentation on the feature, and a blog post announcing it.
Does anybody know if there's anything special that needs to be done on the client, to enable them shipping the network log information? Or is it currently being sent by the Tailscale clients to headscale, and we simply discard it?

I think this data is sent to their logtail server which we can't reconfigure. https://tailscale.com/kb/1011/log-mesh-traffic

If anyone tries to implement logtail API, here are some tech docs: https://github.com/tailscale/tailscale/blob/main/logtail/api.md

I would like to share some of my insights that I gained while working on the client logs.[^1]
What logtail is
Both network flow logs and client logs send their data to a Logtail[^2] instance. The clients send the data to the logtail instance as JSON objects. The data is grouped by type (e.g. client logs, network flow logs). The originating node is also identifiable.
Configuration of the logtail instance
It is possible to configure the logtail instance locally with the LogTarget system policy under windows or the TS_LOG_TARGET environment variable under Linux.
These settings are only used for the client logs. The network flow logs are always sent to log.tailscale.io.
Problems:

For this feature to be possible tailscaled must respect the set logtail instance for all logging. This has to be changed upstream in tailscale and is blocking this feature in headscale.
It would be good if the logtail instance could be configured by the control server. This will take some thought to get right though.

Receiving the network flow logs
A corresponding service that receives and possibly processes the network flow logs would also be required for this feature.
The logtail protocol is fortunately very simple.
A simple receiver that only writes the data to the file system can be written in a short time.[^3]
These logs can the be processed further using your own log pipelines.
Open Questions:

Should this log receiver be part of headscale? I personally tend towards no.

[^1]: Clients Logs is a feature for the central collection of client's logs that works very similar to the network flow logs behind the scenes.
[^2]: API Docs: https://github.com/tailscale/tailscale/blob/main/logtail/api.md
[^3]: A simple receiver for client logs (and ssh session monitoring): https://github.com/Qup42/loghead

How does one enable network flow logging on the client? I've setup a simple http server that gets the contents of the requests but I can't see any network flow logs (logs for the tailtraffic.log.tailscale.io collection). Is there an environment variable or config that needs to be set on the client?

For network flow logging to work you currently have to patch both the local client and the control plane. As stated above some patches to the client are required and support for this feature is not yet implement in the headscale control server.
But you can of course patch your executables for debugging purposes:
control plane
diff --git a/hscontrol/mapper/mapper.go b/hscontrol/mapper/mapper.go
index df0f4d9..4dac498 100644
--- a/hscontrol/mapper/mapper.go
+++ b/hscontrol/mapper/mapper.go
@@ -560,6 +560,8 @@ func (m *Mapper) baseMapResponse() tailcfg.MapResponse {
                // TODO(kradalby): Implement PingRequest?
        }

+       resp.DomainDataPlaneAuditLogID = "6262626262626262626262626262626262626262626262626262626262626262"
+
        return resp
 }

@@ -594,6 +596,9 @@ func (m *Mapper) baseWithConfigMapResponse(
                DisableLogTail: !m.logtail,
        }

+       // 32*b
+       resp.DomainDataPlaneAuditLogID = "6262626262626262626262626262626262626262626262626262626262626262"
+
        return &resp, nil
 }

diff --git a/hscontrol/mapper/tail.go b/hscontrol/mapper/tail.go
index c10da4d..459069f 100644
--- a/hscontrol/mapper/tail.go
+++ b/hscontrol/mapper/tail.go
@@ -128,9 +128,10 @@ func tailNode(
        //   - 74: 2023-09-18: Client understands NodeCapMap
        if capVer >= 74 {
                tNode.CapMap = tailcfg.NodeCapMap{
-                       tailcfg.CapabilityFileSharing: []tailcfg.RawMessage{},
-                       tailcfg.CapabilityAdmin:       []tailcfg.RawMessage{},
-                       tailcfg.CapabilitySSH:         []tailcfg.RawMessage{},
+                       tailcfg.CapabilityFileSharing:        []tailcfg.RawMessage{},
+                       tailcfg.CapabilityAdmin:              []tailcfg.RawMessage{},
+                       tailcfg.CapabilitySSH:                []tailcfg.RawMessage{},
+                       tailcfg.CapabilityDataPlaneAuditLogs: []tailcfg.RawMessage{},
                }

                if randomClientPort {
@@ -159,5 +160,8 @@ func tailNode(
                tNode.LastSeen = node.LastSeen
        }

+       // must be 32 decoded bytes, here: 32*a
+       tNode.DataPlaneAuditLogID = "6161616161616161616161616161616161616161616161616161616161616161"
+
        return &tNode, nil
 }

client
Patch the client to send the traffic for the tailtraffic.log.tailscale.io collection to your host instead of the default host/log URL.

This issue is stale because it has been open for 90 days with no activity.

not stale


configure: error: C compiler cannot create executables (MacOS Sierra 10.13.4)

I tried almost ever solution that was found at Issues section for this repo.
ruby-build: use openssl from homebrew
Downloading ruby-2.4.1.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.1.tar.bz2
Installing ruby-2.4.1...

BUILD FAILED (OS X 10.13.4 using ruby-build 20180329)

Inspect or clean up the working tree at /var/folders/kn/mlf_7qp95kqbh7gm9vs32s7w0000gp/T/ruby-build.20180411145837.3593
Results logged to /var/folders/kn/mlf_7qp95kqbh7gm9vs32s7w0000gp/T/ruby-build.20180411145837.3593.log

Last 10 log lines:
config.guess already exists
config.sub already exists
checking build system type... x86_64-apple-darwin17.5.0
checking host system type... x86_64-apple-darwin17.5.0
checking target system type... x86_64-apple-darwin17.5.0
checking whether the C compiler works... no
configure: error: in `/var/folders/kn/mlf_7qp95kqbh7gm9vs32s7w0000gp/T/ruby-build.20180411145837.3593/ruby-2.4.1':
configure: error: C compiler cannot create executables
See `config.log' for more details
make: *** No targets specified and no makefile found.  Stop.

config.log:
...
configure:4265: checking whether the C compiler works
configure:4287: clang  -O3 -Wno-error=shorten-64-to-32  -I/Users/Pan 1/.rbenv/versions/2.4.1/include  -L/Users/Pan 1/.rbenv/versions/2.4.1/lib  conftest.c  >&5
clang: error: no such file or directory: '1/.rbenv/versions/2.4.1/include'
clang: error: no such file or directory: '1/.rbenv/versions/2.4.1/lib'
configure:4291: $? = 1
configure:4329: result: no
...

$ xcode-select -p
=> /Library/Developer/CommandLineTools
$ whereis gcc
=> /usr/bin/gcc

#385


Need to remove VM agent in Azure VM before generalize

If we generalize an Azure VM and use this captured VM image in Azure stack hub, we need to remove the extensions and VM agent in Azure VM. Since Azure VM support higher version of VM agent then azure stack hub, if we don't remove VM agent in Azure VM before generalize, the VM agent will show not ready in Azure stack VM.

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

ID: cb89c681-689b-a8df-38e4-671313a36774
Version Independent ID: 67f9a8d4-4de8-0ce9-5ecd-40d7b68269c7
Content: Move a VM to Azure Stack Hub - Azure Stack Hub
Content Source: azure-stack/user/vm-move-overview.md
Service: azure-stack
Sub-service: azure-stack-hub
GitHub Login: @sethmanheim
Microsoft Alias: sethm

@xizhuang
Thanks for your feedback! We will investigate and update as appropriate.

@xizhuang
You are correct. When you generalize an Azure VM and use the captured VM image in Azure Stack Hub, you need to remove the extensions and VM agent in Azure VM. If you don't remove the VM agent in Azure VM before generalizing, the VM agent will show not ready in Azure Stack VM

Hi, YashikaTyagi,
Thanks for investigating on this.
May I know when this article will be updated?
Regards,
Xiaoyu
From: YashikaTyagi @.>
Sent: Monday, May 1, 2023 8:05 PM
To: MicrosoftDocs/azure-stack-docs @.>
Cc: Xiaoyu Zhuang @.>; Mention @.>
Subject: Re: [MicrosoftDocs/azure-stack-docs] Need to remove VM agent in Azure VM before generalize (Issue #2320)
@xizhuanghttps://github.com/xizhuang
You are correct. When you generalize an Azure VM and use the captured VM image in Azure Stack Hub, you need to remove the extensions and VM agent in Azure VM. If you don't remove the VM agent in Azure VM before generalizing, the VM agent will show not ready in Azure Stack VM

Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-stack-docs/issues/2320#issuecomment-1529631524, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AMU4IJYPR4UAMYPA77Y33SDXD6RIBANCNFSM6AAAAAAXKKSRMQ.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

@xizhuang
I have assigned to content author who will update accordingly.

@YashikaTyagii Very sorry for the delay. The article has been updated and should be live later today. Thank you for reaching out. #please-close


Index bug - to reproduce, select 'Yes' for dogs, Next, 'No' for pets, Next, Back, Back, NextIf blocked, contact @nicolesorial

opened by accident oops


Introduce payload overflow config as a service annotation

Purpose

Introduce a new service annotation called 'PayloadOverflowConfig' to service annotation.

Goals

User should be able to decide the memory threshold and the temporary payload location in case of an overflow

Approach

memoryThresholdInMB and tempLocation fields in PayloadOverflowConfig will let the user define these settings

Automation tests

Unit tests

Added

Security checks

Followed secure coding standards in http://wso2.com/technical-reports/wso2-secure-engineering-guidelines? yes
Ran FindSecurityBugs plugin and verified report? yes
Confirmed that this PR doesn't commit any keys, passwords, tokens, usernames, or other secrets? yes

Samples

@http:ServiceConfig {
    basePath: "/customOverflow",
    overflowConfig: { memoryThresholdInMB: 0.00002, tempLocation: "testBallerinaOverFlow" }
}
service<http:Service> customOverflow bind mockEP {
    @http:ResourceConfig {
        methods: ["POST"],
        path: "/"
    }
    test1(endpoint caller, http:Request request) {
        http:Response response = new;
        mime:Entity responseEntity = new;
        match request.getByteChannel() {
            error err => io:print(err.message);
            io:ByteChannel byteChannel => responseEntity.setByteChannel(byteChannel);
        }
        response.setEntity(responseEntity);
        _ = caller->respond(response);
    }
}

This PR is no longer valid >> https://groups.google.com/forum/#!topic/ballerina-dev/iKx6c-MJyoA
hence closing


Component failing to load after HA update

Version of the custom_component
Latest from master branch as of today. HA version  2023.7.1
Configuration
multiscrape:
  resource: https://www.hamqsl.com/solarxml.php
  scan_interval: 3600
  sensor:
    - unique_id: solar_flux_index
      name: "Solar Flux Index"
      select: "solarflux"
      value_template: '{{ value.strip()|int }}'
      state_class: measurement
      icon: mdi:weather-sunny-alert

Describe the bug
Component fails to load. This was after an update to latest HA 2023.7.1. I then also updated the component itself from master but to no avail.
Debug log

2023-07-08 07:01:18.931 ERROR (MainThread) [homeassistant.setup] Error during setup of component multiscrape
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 288, in _async_setup_component
    result = await task
             ^^^^^^^^^^
  File "/config/custom_components/multiscrape/__init__.py", line 82, in async_setup
    return await _async_process_config(hass, entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/multiscrape/__init__.py", line 155, in _async_process_config
    await _register_services(hass, target_name, coordinator)
  File "/config/custom_components/multiscrape/__init__.py", line 201, in _register_services
    async_set_service_schema(hass, DOMAIN, target_name, service_desc)
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 687, in async_set_service_schema
    response := hass.services.supports_response(domain, service)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/core.py", line 1763, in supports_response
    if not (handler := self._services[domain][service]):
                       ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
KeyError: 'scraper_noname_0'
2023-07-08 07:01:18.950 WARNING (MainThread) [py.warnings] /usr/src/homeassistant/homeassistant/setup.py:303: RuntimeWar
ning: coroutine 'DataUpdateCoordinator.async_refresh' was never awaited
  return False

Same here :(
Logger: homeassistant.setup
Source: core.py:1763
First occurred: 7 lipca 2023 o 22:43:41 (1 occurrences)
Last logged: 7 lipca 2023 o 22:43:41
Error during setup of component multiscrape
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/setup.py", line 288, in _async_setup_component
result = await task
^^^^^^^^^^
File "/config/custom_components/multiscrape/init.py", line 89, in async_setup
return await _async_process_config(hass, entry)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/multiscrape/init.py", line 162, in _async_process_config
await _register_services(hass, target_name, coordinator)
File "/config/custom_components/multiscrape/init.py", line 208, in _register_services
async_set_service_schema(hass, DOMAIN, target_name, service_desc)
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 687, in async_set_service_schema
response := hass.services.supports_response(domain, service)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 1763, in supports_response
if not (handler := self._services[domain][service]):
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
KeyError: 'scraper_noname_0'

Thanks. Version 6.7.1 solved the problem.

Thanks - confirmed now working.


Installing on fresh installation of chronicle-app produces error

After installing using the commands in the README, I attempted to run:
chronicle-etl --extractor imessage --since "2022-02-07" --transformer imessage
It was them prompted with:

Plugin specified by job not installed.
Do you want to install chronicle-imessage and start the job? (Y/n)

This is a little odd, since I just installed it. However, when going with "Y" or "n", I both run into a stack trace:

/Users/userboy/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.2/lib/chronicle/etl/job_definition.
rb:42:in `validate!': Job definition is invalid (Chronicle::ETL::JobDefinitionError)

Thanks for reporting this! I moved this issue to the main chronicle-etl issue because it's a problem in the way plugins/dependencies are loaded. Someone else hit this issue a few days ago too but the error handling was swallowing up too much information to give a provide a useful error.
I just released a version of chronicle-etl (v0.4.3) that does a slightly better job of handling exceptions and messaging when plugins fail to load. Can you give it a shot and let me know if you're able to get it working? Running with --verbose will give the full stack trace:
chronicle-etl --extractor imessage --since "2022-02-07" --transformer imessage --verbose
Also, what shows up when you run $ chronicle-etl plugins:list?

No prob!
Looks like installing the plugin fails now too, after updating the gem.

/Users/user/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/registry/plugin_registry.rb:43:in `rescue in activate': Plugin 'imessage' couldn't be loaded (Chronicle::ETL::PluginLoadError)

Plugins list:
~/dotfiles on master !2 ?1 ❯ chronicle-etl plugins:list                                                                                took 5s at 01:22:05
Installed plugins:
  NAME     DESCRIPTION                                    LATEST VERSION
  imessage Connectors for iMessage                        0.2.2
  shell    Extract shell command history from Bash or Zsh 0.2.0

When trying to run the extractor:
~/dotfiles on master !2 ?1 ❯  chronicle-etl --extractor imessage --since "2022-02-07" --transformer imessage --verbose                                                                                at 01:24:03
Plugin specified by job not installed.
Do you want to install chronicle-imessage and start the job? Yesn) Y
[✖] Installing imessage... Error
/Users/myuser/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/registry/plugin_registry.rb:43:in `rescue in activate': Plugin 'imessage' couldn't be loaded (Chronicle::ETL::PluginLoadError)
        from /Users/myuser/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/registry/plugin_registry.rb:35:in `activate'
        from /Users/myuser/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/registry/plugin_registry.rb:56:in `install'
        from /Users/myuser/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/cli/plugins.rb:22:in `block in install'
        from /Users/myuser/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/cli/plugins.rb:20:in `each'
        from /Users/myuser/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/cli/plugins.rb:20:in `install'
        from /Users/myuser/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/cli/jobs.rb:127:in `install_missing_plugins'
        from /Users/myuser/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/cli/jobs.rb:55:in `start'
        from /Users/myuser/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
        from /Users/myuser/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-hollaback-0.2.1/lib/thor/hollaback.rb:68:in `run'

Ahh, in fixing the previous issue, I forgot to remove a require 'pry' in the imessage plugin. I think your stack trace above is missing the last few dozen lines right? Was the original error about.
I released a fixed version. You can run: gem install chronicle-imessage -v 0.2.3. Let me know if that takes care of the issue.
A few takeaways:

I need to distinguish between plugins that aren't installed and those that can't be loaded successfully
I need to set up tests/CI for the plugins 🤣

Thank you!
Progress now. I am able to get a job running.
Running into a slightly different error now - though this one may be specific to imessage?
I wonder if I to let it access some permission ?
Beginning job
/Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-imessage-0.2.3/lib/chronicle/imessage/imessage_extractor.rb:61:in load_my_phone_contact': undefined method fetch' for nil:NilClass (NoMethodError)
      phone_number: @config.my_phone_number || local_contacts.my_phone_contact.fetch(:phone_number),
                                                                              ^^^^^^
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-imessage-0.2.3/lib/chronicle/imessage/imessage_extractor.rb:51:in `prepare_data'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-imessage-0.2.3/lib/chronicle/imessage/imessage_extractor.rb:22:in `prepare'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/runner.rb:34:in `prepare_job'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/runner.rb:13:in `run!'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/cli/jobs.rb:114:in `run_job'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/cli/jobs.rb:58:in `start'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-hollaback-0.2.1/lib/thor/hollaback.rb:68:in `run'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-1.2.1/lib/thor/invocation.rb:116:in `invoke'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-1.2.1/lib/thor.rb:243:in `block in subcommand'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-hollaback-0.2.1/lib/thor/hollaback.rb:71:in `block in run'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/hollaback-0.1.1/lib/hollaback/sequence.rb:34:in `call'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-hollaback-0.2.1/lib/thor/hollaback.rb:71:in `run'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/thor-1.2.1/lib/thor/base.rb:485:in `start'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/lib/chronicle/etl/cli/main.rb:35:in `start'
    from /Users/goose/.rbenv/versions/3.1.1/lib/ruby/gems/3.1.0/gems/chronicle-etl-0.4.3/exe/chronicle-etl:5:in `<top (required)>'
    from /Users/goose/.rbenv/versions/3.1.1/bin/chronicle-etl:25:in `load'
    from /Users/goose/.rbenv/versions/3.1.1/bin/chronicle-etl:25:in `<main>'

Great, the plugin is loading successfully and this is now just a normal, boring bug! I created a new issue: https://github.com/chronicle-app/chronicle-imessage/issues/3 and should be pretty straightforward to fix.


Behaviour of pp.drop_layer

To keep the spatial proteomics object consistent pp.drop_layer should drop Layer.SEGMENTATION and Layer.OBS when either Layer.SEGMENTATION or Layer.OBS is dropped.

Addressed in #44, closing issue.


Translation string : update wizzard

On top of #5626, this try to autosuggest adding "trans._" in the right places and update the wizard to have a as a shortcut to apply this suggestion.
In this case of course it's not the right things to press a, but you get the idea.

Submitting as draft as it relies on  #5626

It seems that at some point between PR https://github.com/napari/napari/pull/5626 and this one, the tools/test_string.py script has stopped working. I'm having a little trouble working out exactly when this happened with git bisect, though.
Here's the error:
python tools/test_strings.py
not translating bytestring b"opacity"
not translating bytestring b"geometry"
not translating bytestring b"color"
Traceback (most recent call last):
  File "/Users/genevieb/Documents/GitHub/napari/tools/test_strings.py", line 647, in <module>
    issues, outdated_strings, trans_errors = _checks()
  File "/Users/genevieb/Documents/GitHub/napari/tools/test_strings.py", line 515, in _checks
    issues, outdated_strings, trans_errors = find_issues(paths, SKIP_WORDS)
  File "/Users/genevieb/Documents/GitHub/napari/tools/test_strings.py", line 476, in find_issues
    module = import_module_by_path(fpath)
  File "/Users/genevieb/Documents/GitHub/napari/tools/test_strings.py", line 433, in import_module_by_path
    spec.loader.exec_module(module)
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/Users/genevieb/Documents/GitHub/napari/napari/components/dims.py", line 26, in <module>
    class Dims(EventedModel):
  File "/Users/genevieb/Documents/GitHub/napari/napari/components/dims.py", line 123, in Dims
    def _check_ranges(ranges):
  File "pydantic/class_validators.py", line 93, in pydantic.class_validators.validator.dec
  File "pydantic/class_validators.py", line 152, in pydantic.class_validators._prepare_validator
pydantic.errors.ConfigError: duplicate validator function "napari.components.dims.Dims._check_ranges"; if this is intended, set `allow_reuse=True`

Narrowed it down a bit.
The last good commit was e12acd875c918b0897e199afab6d742b2401d78d from https://github.com/napari/napari/pull/5702
The first commit where running python tools/test_strings.py gives this error is commit 5fa6716fceaa0d77516d664373c3f3a84ccd790d from https://github.com/napari/napari/pull/5522

This is due to double execution of napari._vispy.experimental.vispy_tiled_image_layer, I'm not sure why there is a custom loader instead of using importlib existing one that checks they already exists, so I've done so and it seem to work .

In which module and line the custom loader is used?

tools/test_strings.py 79, in the diff I replace it with importlib.import_module.

@Czaki @Carreau I copy edited the PR title and description a bit—hopefully I didn't change anything to be wrong!