Issue #6569 document_colors_disabled shouldn't escape quotes (compare-locales warning)

First of all, please rebase the patch onto the current master, since there are merge conflicts.
(It appears that the patch is based on a fairly old PDF.js version.)
Second of all, I'm wondering if it's actually necessary to update the id of the string?
According to https://developer.mozilla.org/en-US/docs/Mozilla/Localization/Localization_content_best_practices#Changing_existing_strings:

[...] If your changes are relevant only for English — for example, to correct a typographical error or to make letter case consistent — then there is generally no need to update the entity name.

@Archaeopteryx Do you have time to fix up this PR? All it needs is a rebase and a revert of the ID change. Then it should be good to go.

From the discussions on IRC the following should be changed before we can land this PR:

Rebase onto the current master (keep it as one commit by squashing if necessary: https://github.com/mozilla/pdf.js/wiki/Squashing-Commits)
Make the ID change more descriptive: document_colors_disabled2 could become document_colors_not_allowed or something else that has the same meaning.

The reason for this change are the warnings at https://l10n.mozilla.org/dashboard/compare?run=551090.

Sorry for the delay. I have pushed an updated commit, but lost the previous 'pdf.js' repository, so it seems impossible to update this pull request. Should I open a new one?
The reason why the string gets updated is that unnecessary escaping creates warnings in Mozilla's l10n validator compare-locales like mentioned in the previous comment. If the string id would remain unchanged, locales wouldn't pick it up.

I have made a new pull request with your updated commit in it (#6676), so we can close this PR.


Ensure params are set in creates and removes

Closes #156
Summary
(If you have not already please refer to the contributing guideline as described
here)

[x] Tell us about the problem your pull request is solving.
Params are missing in create requests, leading to an error being thrown by Feathers
[x] Are there any open issues that are related to this? #156
[x] Is this PR dependent on PRs in other repos? No, a separate PR has been submitted upstream, but that's just catching misbehaviour in this package (https://github.com/feathersjs/feathers/pull/1004)

If so, please mention them to keep the conversations linked together.
Other Information
If there's anything else that's important and relevant to your pull
request, mention that information here. This could include
benchmarks, or other information.
Your PR will be reviewed by a core team member and they will work with you to get your changes merged in a timely manner. If merged your PR will automatically be added to the changelog in the next release.
If your changes involve documentation updates please mention that and link the appropriate PR in feathers-docs.
Thanks for contributing to Feathers! :heart:

So something changed in<EMAIL_ADDRESS>that caused this to break but I am not sure what and it is only happening in combination with feathers-vuex and I wasn't able to reproduce this otherwise.
params should - and according to all Feathers test are - always set to at least an empty object.

You might be able to revert this because of https://github.com/feathersjs/feathers/pull/1012 once a new @feathersjs/feathers is released.
It appears this change was made because of an uncaught regression in feathers core.

I vote for leaving it in.  If there's ever another regression, we're ready.  ;)


Flutter getx: Loop happen  in login midelware

I am using Getx on my sample project like this:
class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return GetMaterialApp(
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      initialRoute: AppLinks.LOGIN,
      getPages: AppRoutes.pages,
      initialBinding: MainBinding(),
    );
  }
}

I have this routes:
class AppRoutes {
  static final pages = [
    GetPage(
      name: AppLinks.LOGIN,
      page: () => Login(),
      binding: LoginBinding(),
    ),
    GetPage(
      name: AppLinks.DASHBOARD,
      page: () => Dashboard(),
      middlewares: [
        AuthGuard(),
      ],
      children: [...

as you can see I declared a middelwares:
  middlewares: [
    AuthGuard(),
  ],

This is a simple midelware:
class AuthGuard extends GetMiddleware {
  final authService = Get.find<AuthService>();

  @override
  int? get priority => 1;

  @override
  RouteSettings? redirect(String? route) {
    if (authService.isAuthenticated)
      return RouteSettings(name: AppLinks.LOGIN);
    else
      return RouteSettings(name: AppLinks.DASHBOARD);
  }
}

Inside Loginpage I have a button:
ElevatedButton(
  style: ElevatedButton.styleFrom(
    primary: Colors.red,
    onPrimary: Colors.green,
    onSurface: Colors.pink,
  ),
  onPressed: () => controller.toDashboard(),
  child: Text("Dashboard"),
)

and inside it's controller I have this:
class LoginController extends GetxController {
  toDashboard() => Get.toNamed(AppLinks.DASHBOARD);
}

But when I call toDashboard method I get into loop in this statement:
  @override
  RouteSettings? redirect(String? route) {
    if (authService.isAuthenticated)
      return RouteSettings(name: AppLinks.LOGIN);
    else
      return RouteSettings(name: AppLinks.DASHBOARD);
  }
}

I am using:
environment:
  sdk: ">=2.12.0 <3.0.0"
dependencies:
  flutter:
    sdk: flutter
  cupertino_icons: ^1.0.2
  get: ^4.3.4

and doctor:
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 2.8.1, on Debian GNU/Linux 10 (buster) 4.19.0-18-amd64, locale en_US.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 32.0.0)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2020.3)
[✓] Android Studio
[✓] VS Code (version 1.63.2)
[✓] Connected device (2 available)

• No issues found!

@tazik561
You should return null when you don't need to redirect.
In this case you are setting the Middleware for the Dashboard Route and you are saying if the user is Authed then redirect him to the dashboard, but he is already on the way to the dashboard. So when you return null, the Navigator knows that the user is allowed to enter here.
class AuthGuard extends GetMiddleware {
  final authService = Get.find<AuthService>();

  @override
  int? get priority => 1;

  @override
  RouteSettings? redirect(String? route) {
    if (authService.isAuthenticated)
      return RouteSettings(name: AppLinks.LOGIN);
    else
      return null; // CHANGE THIS
  }
}

returning null also gives same error. looping.

I solved loop problem with below code.
`
/// Root auth middleware implementation.
class RootAuthMiddleware extends GetMiddleware {
@override
// ignore: overridden_fields
int? priority;
RootAuthMiddleware({required this.priority});
@override
Future<GetNavConfig?> redirectDelegate(GetNavConfig route) async {
if (RootService.to.isLoggedIn.value){
return await super.redirectDelegate(route);
}
return GetNavConfig.fromRoute(Routes.feed);

}
}
`

I solved loop problem with below code.
/// Root auth middleware implementation.
class RootAuthMiddleware extends GetMiddleware {
  @override
  // ignore: overridden_fields
  int? priority;

  RootAuthMiddleware({required this.priority});

  @override
  Future<GetNavConfig?> redirectDelegate(GetNavConfig route) async {
    if (RootService.to.isLoggedIn.value){
      return await super.redirectDelegate(route);
    }

    return GetNavConfig.fromRoute(Routes.feed);
  }
}


Missing mypy dependency

Steps to reproduce:

Create a new project with the template (currently version 2.0.1)
Chose mypy as the type_checker
Complete templating

Expected result:

mypy is a [dev] dependency of the project
type checking runs in new project

Actual result:

pyright is a [dev] depdendency instead
Running tox -e type-checking in the new project gives ERROR: InvocationError for command could not find executable mypy

This was originally noticed when updating a project from 1.0.0 to 2.0.1

As discussed in person, if you have a chance to take a look at this it would be much appreciated


fix(chart): set ttlSecondsAfterFinished on certgen job to 60 by default

This is painless workaround for ArgoCD bug: argoproj/argo-cd#6880

thanks for raising this ! I think 30s also works here.
weighing the pros and cons of setting this as a default - I believe the con of this is slower clean up (pressure on the k8s API server) ?

@zhaohuabing probably. It's not specified anywhere in the ArgoCD docs, but ArgoCD freezes forever on sync phase when job is deleted too quickly.
60s also allows to read logs without much timing pressure ;)
@arkodg you are probably right, but I'm not sure if it creates any pressure, and if it does, its so small and done only when upgrading/installing the chart, as it's just a hook

@zhaohuabing probably. It's not specified anywhere in the ArgoCD docs, but ArgoCD freezes forever on sync phase when job is deleted too quickly.
60s also allows to read logs without much timing pressure ;)
@arkodg you are probably right, but I'm not sure if it creates any pressure, and if it does, its so small and done only when upgrading/installing the chart, as it's just a hook

cool, lets get this in, can we reduce this to 30 ?

I've not seen any problems, but let me try in my setup again first.
Give me a few minutes :D

@JuniorJPDJ can you run make generate and commit the changes

rebased and make generated

/retest


No Hostname after importing OPEN API Collection

Hi,
I have imported a collection from OPEN API JSON which seemed to work fine.
The trouble I'm having is that in every imported request the URL is missing host or base-URL.
I.e. Prefilled is http://request, instead of https://myHost.test/v1/request
I tried to add a Base URL in the Collection Settings under Presets but this didn't change anything.
Is it possible to change this behavior without having to change every request (which would be quite tedious)?
Thanks a lot in advance.
Cheers,
Sebastian
PS: I'm using Bruno v1.9.0 under Windows

I got around this by adding this to my open api json file before importing.
"servers": [
{
"url": "http://localhost:12345",
"description": "Test"
}
],

Agree, would be nice to have an option for default host name when none is given (e.g. imported collection)

I came over here just yesterday for this issue, but... today it started working, so I checked my update log and it updated today from 1.33.0 to 1.34.0 and now I am getting a {{baseUrl}} prefixed when I import OpenAPI documents.


Skip satellite assemblies when testing NuGet packages

It would be great if we could skip satellite assemblies when testing NuGet packages, since they don't have debug info. Otherwise the test fails with unable to read debug info.

@ctaggart, any plans to release 3.0.1?

@ejball, sorry the delay. Thanks for the reminder.

Just pushed 3.1.1

Thanks, it's working great!


Attributes 'created' and 'updated' in Product and Contact models is missing a default/auto value

I hope the title is self-explanatory.
Product model (created and updated attributes):
https://github.com/DefectDojo/django-DefectDojo/blob/612a0f682ae0a4e007196de4f438782464b3ae3d/dojo/models.py#L790
Contact model (updated attribute):
https://github.com/DefectDojo/django-DefectDojo/blob/8667488e06c78dc6823102027569156a0375f98a/dojo/models.py#L530
Other models such as Alert and Finding, use either auto_now_add=True or default=now

merged for release 2.12


Typespec openapi3 0.51 generates array as allOf, previously direct array

Hi, got some weird output when upgrading from 0.50 to 0.51.
An array in our model is now generated as 'allOf:' and e.g. redocly complains with

OpenAPI Sampler: found allOf with "array" type. Result may be incorrect

Can be viewed in the playground with this content:
import "@typespec/rest";
import "@typespec/openapi";

using TypeSpec.Http;
using TypeSpec.Rest;

model User
{
    someField: string;

    @OpenAPI.extension("x-someFieldAttr", true)
    usergroups?: Usergroup[];
}

model UserListReply
{
    value: User[];
}

model Usergroup
{
    someField: boolean;

    @OpenAPI.extension("x-someFieldAttr", true)
    users?: User[];
}

interface UserController {
    @route("/someRoute")
    @get ListUser(): UserListReply;
}

0.51 generates Usergroup.users field as an 'allOf' with type array.
0.50 generates Usergroup.users field as 'type' array (no allOf).
Note that there is some influence by the controller/route and the OpenAPI.extension decorators.
If they are removed the type.field is not generated as allOf.
Please have a look and check behaviour.
Paste the example into 0.51, check yaml line 48 (allOf), comment out the route and get, check yaml line 37.

investigate what is done here versus what serialization should be
why do the decorators change the representation?

So what is happening here is:

Because the decorator we cannot have a reference with extra property($ref is not allowed to have siblings in openapi3.0)
There is a circular reference that cause the emitter framework to return a placeholder when we check if it is going to be a $ref or something inline and we default to thinking this will resolve to a $ref in the end

And this happens when using the operation because of the change in the order of resolution. Because of the operation we start resolving UserReply first which start the circular reference at User[] instead of User

Hi & thanks for the update.
I see that it fixes my issue and that we now don't get the allOf level.
I have a similar example which still adds an allOf level.
import "@typespec/rest";
import "@typespec/openapi";

using TypeSpec.Http;

model Node
{
    someField: string;
}

model NodeReply
{
    @OpenAPI.extension("x-someFieldAttr", true)
    value: Node;
}

See the difference when OpenAPI decorator is included and excluded.
The output for this seems to be the same in 0.50 and 0.51 so no change between these version.
No array involved here.
I don't know openapi enough and cannot say that its correct or incorrect but the decorator seems to affect quite alot.
best regards /stefan

This one is expected as you cannot have properties sibling of $ref the ref must be wrapped in allOf. With openapi 3.1 I believe this restriction has been lifted but we don't have an emitter for 3.1 yet.


contrib/script: To add script for kind cluster

This commit is to add the script to bring up kind cluster with cilium.
Most of the options and steps are similar as smoke-test in github
action. Hence, it will help to some capacity to debug any failure in
smoke test as well.
Signed-off-by: Tam Mach<EMAIL_ADDRESS>PS: Sorry, I just remembered that you have similar PR https://github.com/cilium/cilium/pull/12527 after
created this, I can close this one as well /cc @christarazi
Testing
I used this one for quite sometimes as part of local development, some sample run can be found as below

 NO_BUILD=1 IPv6=1 ./contrib/scripts/kind.sh
$ NO_BUILD=1 IPv6=1 ./contrib/scripts/kind.sh
Deleting cluster "kind" ...
Deleted Networks:
kind

Total reclaimed space: 2.885GB
Creating cluster "kind" ...
 ✓ Ensuring node image (kindest/node:v1.19.1) 🖼
 ✓ Preparing nodes 📦 📦
 ✓ Writing configuration 📜
 ✓ Starting control-plane 🕹
 ✓ Installing StorageClass 💾
 ✓ Joining worker nodes 🚜
Set kubectl context to "kind-kind"
You can now use your cluster with:

kubectl cluster-info --context kind-kind

Not sure what to do next? 😅  Check out https://kind.sigs.k8s.io/docs/user/quick-start/
Image: "cilium/cilium:latest" with ID "sha256:0c1d192b31a884752703d81126f284ca9e9f415793b5815de230372bf8445fcd" not yet present on node "kind-control-plane", loading...
Image: "cilium/cilium:latest" with ID "sha256:0c1d192b31a884752703d81126f284ca9e9f415793b5815de230372bf8445fcd" not yet present on node "kind-worker", loading...
Image: "cilium/operator-generic:latest" with ID "sha256:6d307105932393dbb92dc9c787cb18a510ed5b53c760a81908df4b4936c391c1" not yet present on node "kind-control-plane", loading...
Image: "cilium/operator-generic:latest" with ID "sha256:6d307105932393dbb92dc9c787cb18a510ed5b53c760a81908df4b4936c391c1" not yet present on node "kind-worker", loading...
Release "cilium" does not exist. Installing it now.
NAME: cilium
LAST DEPLOYED: Thu Oct 29 00:02:08 2020
NAMESPACE: kube-system
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
You have successfully installed Cilium with Hubble.

Your release version is 1.8.90.

For any further help, visit https://docs.cilium.io/en/v1.8/gettinghelp
pod/cilium-8jpsq condition met
pod/cilium-node-init-8fmll condition met
pod/cilium-node-init-r22f2 condition met
pod/cilium-operator-c4855965d-mrlpc condition met
pod/cilium-operator-c4855965d-xtjqc condition met
pod/cilium-r9m4b condition met
pod/coredns-f9fd979d6-nn5pl condition met
pod/coredns-f9fd979d6-sr6dc condition met
pod/etcd-kind-control-plane condition met
pod/kube-apiserver-kind-control-plane condition met
pod/kube-controller-manager-kind-control-plane condition met
pod/kube-proxy-898xb condition met
pod/kube-proxy-9q4x8 condition met
pod/kube-scheduler-kind-control-plane condition met
customresourcedefinition.apiextensions.k8s.io/ciliumnetworkpolicies.cilium.io condition met
deployment.apps/echo-a created
deployment.apps/echo-b created
deployment.apps/echo-b-host created
deployment.apps/pod-to-a created
deployment.apps/pod-to-external-1111 created
deployment.apps/pod-to-a-denied-cnp created
deployment.apps/pod-to-a-allowed-cnp created
deployment.apps/pod-to-external-fqdn-allow-google-cnp created
deployment.apps/pod-to-b-multi-node-clusterip created
deployment.apps/pod-to-b-multi-node-headless created
deployment.apps/host-to-b-multi-node-clusterip created
deployment.apps/host-to-b-multi-node-headless created
deployment.apps/pod-to-b-multi-node-nodeport created
deployment.apps/pod-to-b-intra-node-nodeport created
service/echo-a created
service/echo-b created
service/echo-b-headless created
service/echo-b-host-headless created
ciliumnetworkpolicy.cilium.io/pod-to-a-denied-cnp created
ciliumnetworkpolicy.cilium.io/pod-to-a-allowed-cnp created
ciliumnetworkpolicy.cilium.io/pod-to-external-fqdn-allow-google-cnp created

NO_BUILD=1 ./contrib/scripts/kind.sh
$ NO_BUILD=1 ./contrib/scripts/kind.sh
Deleting cluster "kind" ...
Deleted Networks:
kind

Total reclaimed space: 0B
Creating cluster "kind" ...
 ✓ Ensuring node image (kindest/node:v1.19.1) 🖼
 ✓ Preparing nodes 📦 📦
 ✓ Writing configuration 📜
 ✓ Starting control-plane 🕹
 ✓ Installing StorageClass 💾
 ✓ Joining worker nodes 🚜
Set kubectl context to "kind-kind"
You can now use your cluster with:

kubectl cluster-info --context kind-kind

Thanks for using kind! 😊
Image: "cilium/cilium:latest" with ID "sha256:0c1d192b31a884752703d81126f284ca9e9f415793b5815de230372bf8445fcd" not yet present on node "kind-worker", loading...
Image: "cilium/cilium:latest" with ID "sha256:0c1d192b31a884752703d81126f284ca9e9f415793b5815de230372bf8445fcd" not yet present on node "kind-control-plane", loading...
Image: "cilium/operator-generic:latest" with ID "sha256:6d307105932393dbb92dc9c787cb18a510ed5b53c760a81908df4b4936c391c1" not yet present on node "kind-worker", loading...
Image: "cilium/operator-generic:latest" with ID "sha256:6d307105932393dbb92dc9c787cb18a510ed5b53c760a81908df4b4936c391c1" not yet present on node "kind-control-plane", loading...
Release "cilium" does not exist. Installing it now.
NAME: cilium
LAST DEPLOYED: Thu Oct 29 00:07:18 2020
NAMESPACE: kube-system
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
You have successfully installed Cilium with Hubble.

Your release version is 1.8.90.

For any further help, visit https://docs.cilium.io/en/v1.8/gettinghelp
pod/cilium-4nmkl condition met
pod/cilium-node-init-cw82x condition met
pod/cilium-node-init-sr25f condition met
pod/cilium-operator-c4855965d-cclsm condition met
pod/cilium-operator-c4855965d-ksg9l condition met
pod/cilium-vq66w condition met
pod/coredns-f9fd979d6-7vjmx condition met
pod/coredns-f9fd979d6-xlfhf condition met
pod/etcd-kind-control-plane condition met
pod/kube-apiserver-kind-control-plane condition met
pod/kube-controller-manager-kind-control-plane condition met
pod/kube-proxy-czxtb condition met
pod/kube-proxy-jmmvx condition met
pod/kube-scheduler-kind-control-plane condition met
customresourcedefinition.apiextensions.k8s.io/ciliumnetworkpolicies.cilium.io condition met
deployment.apps/echo-a created
deployment.apps/echo-b created
deployment.apps/echo-b-host created
deployment.apps/pod-to-a created
deployment.apps/pod-to-external-1111 created
deployment.apps/pod-to-a-denied-cnp created
deployment.apps/pod-to-a-allowed-cnp created
deployment.apps/pod-to-external-fqdn-allow-google-cnp created
deployment.apps/pod-to-b-multi-node-clusterip created
deployment.apps/pod-to-b-multi-node-headless created
deployment.apps/host-to-b-multi-node-clusterip created
deployment.apps/host-to-b-multi-node-headless created
deployment.apps/pod-to-b-multi-node-nodeport created
deployment.apps/pod-to-b-intra-node-nodeport created
service/echo-a created
service/echo-b created
service/echo-b-headless created
service/echo-b-host-headless created
ciliumnetworkpolicy.cilium.io/pod-to-a-denied-cnp created
ciliumnetworkpolicy.cilium.io/pod-to-a-allowed-cnp created
ciliumnetworkpolicy.cilium.io/pod-to-external-fqdn-allow-google-cnp created

NO_BUILD=1 NO_PROVISION=1 ./contrib/scripts/kind.sh
$ NO_BUILD=1 NO_PROVISION=1 ./contrib/scripts/kind.sh
Release "cilium" has been upgraded. Happy Helming!
NAME: cilium
LAST DEPLOYED: Thu Oct 29 00:10:51 2020
NAMESPACE: kube-system
STATUS: deployed
REVISION: 2
TEST SUITE: None
NOTES:
You have successfully installed Cilium with Hubble.

Your release version is 1.8.90.

For any further help, visit https://docs.cilium.io/en/v1.8/gettinghelp
pod/cilium-4nmkl condition met
pod/cilium-node-init-cw82x condition met
pod/cilium-node-init-sr25f condition met
pod/cilium-operator-c4855965d-cclsm condition met
pod/cilium-operator-c4855965d-ksg9l condition met
pod/cilium-vq66w condition met
pod/coredns-f9fd979d6-7vjmx condition met
pod/coredns-f9fd979d6-xlfhf condition met
pod/etcd-kind-control-plane condition met
pod/kube-apiserver-kind-control-plane condition met
pod/kube-controller-manager-kind-control-plane condition met
pod/kube-proxy-czxtb condition met
pod/kube-proxy-jmmvx condition met
pod/kube-scheduler-kind-control-plane condition met
customresourcedefinition.apiextensions.k8s.io/ciliumnetworkpolicies.cilium.io condition met
deployment.apps/echo-a configured
deployment.apps/echo-b configured
deployment.apps/echo-b-host configured
deployment.apps/pod-to-a configured
deployment.apps/pod-to-external-1111 configured
deployment.apps/pod-to-a-denied-cnp configured
deployment.apps/pod-to-a-allowed-cnp configured
deployment.apps/pod-to-external-fqdn-allow-google-cnp configured
deployment.apps/pod-to-b-multi-node-clusterip configured
deployment.apps/pod-to-b-multi-node-headless configured
deployment.apps/host-to-b-multi-node-clusterip configured
deployment.apps/host-to-b-multi-node-headless configured
deployment.apps/pod-to-b-multi-node-nodeport configured
deployment.apps/pod-to-b-intra-node-nodeport configured
service/echo-a unchanged
service/echo-b unchanged
service/echo-b-headless unchanged
service/echo-b-host-headless configured
ciliumnetworkpolicy.cilium.io/pod-to-a-denied-cnp unchanged
ciliumnetworkpolicy.cilium.io/pod-to-a-allowed-cnp unchanged
ciliumnetworkpolicy.cilium.io/pod-to-external-fqdn-allow-google-cnp unchanged

contrib/script: To add script for kind cluster

@qmonnet thanks for your review, I have corrected silly mistake from my side. I will wait for Chris input first before addressing your pending comments, hope its fine :)

Awesome and sure, no problem!

Thanks both for your review comments, let me mark this one as draft to reducing unnecessary notifications while I am incorporating your comments. Will mark it ready once done :)


witnessClasses can support not including the specified class?

Please answer these questions before submitting your issue.

Why do you submit this issue?
[ ] Question or discussion
[ ] Bug
[ ] Requirement
[x] Feature or performance improvement

Question

What do you want to know?

Bug

Which version of SkyWalking, OS and JRE?

Which company or project?

What happen?
If possible, provide a way for reproducing the error. e.g. demo application, component version.

Requirement or improvement

Please describe about your requirements or improvement suggestions.
I want to start the plugin when one class exists but no other class exists

No such thing. Read how classloader works you will know why.


RevEng: Add testing that the generated files compile.

Also update the code generation to produce ToTable() instead of old Table() API.
And updated the exceptions to no longer carry around a GeneratedCode property as we were not using it.
See #1669.

:shipit:

Fixed with commit ccc0372.


As a user I want to login to access my feeds from any computer/browser

Some feed persistence would be really handy. Obviously this blows the scope up a bit so I don't expect this but I think it would be neat. I'd also be keen to help out if possible.

@adjohnston Nice idea, feel free to give it a go.
Would be nice to see a loose plan of attack if you do attempt it, happy to do a bit of pairing.


:sparkles: Feat/branch protection recognize rule changes only through pr

What kind of change does this PR introduce?
It's a feature, described on the corresponding issue

[x] PR title follows the guidelines defined in our pull request documentation

Which issue(s) this PR fixes
Fixes #2727
Notes for the reviewers
I tried to split the PR on independent commits, so it might be easier to review commit by commit.
The last commit were just refactors on the previously existent code of the file I worked on. Let me know if you prefer that I make the refactors as another PR.
Does this PR introduce a user-facing change?
Branch Protection check now also evaluates if the project requires PRs prior to make changes to the branch. This won't change anything for the users that already require reviews, but will enable score enhancement for those who can't require reviewers.

Can you rebase/merge in the changes from main before review?  #3502 introduced some scoring changes, so you'll need to resolve the merge conflict.

@spencerschrock, rebase made =)

This PR has been stale for some time because for the solution that we had concluded on this thread, we had to change the structure clients.BranchProtectionRule to make the RequiredPullRequestReviews a pointer instead of a struct value. Since the package clients is exported to the wild, we had to balance if the change was worth it and to double check if the change wouldn't break any external project possibly depending on this package.


E-Mail Validation fails on /admin123 login

Describe the bug
After entering login data for admin123 message "Your Email must be a valid email address." appears, but e-mail address is valid.
To Reproduce
Steps to reproduce the behavior:

Go to https://ph7.example.com/admin123/main/login
Enter admins e-mail, username and password
See error

Expected Behavior
e-mail address should validate
Screenshots / Screencasts

Workaround
To get this working, I considered following workaround:
--- Validate.class.php.ORIG	2023-07-30 04:29:28.602137792 +0000
+++ Validate.class.php	2023-07-30 04:24:20.233319333 +0000
@@ -272,6 +272,7 @@
     public function email($sEmail, $bRealHost = false)
     {

+        return true;
         $sEmail = filter_var($sEmail, FILTER_SANITIZE_EMAIL);

         if ($bRealHost) {

Hi @ip6li
Thanks for mentioning this. Returning true will completely disable the email validation check. We don't want this. Could you share the pattern format of the email you have used?


chore: remove grafana & prometheus from dev setup

Changes

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#1353
#1352  👈
#1351
#1350
#1348
#1347
#1345
#1344
#1343
#1342
#1341
#1340
#1339
#1338
#1337
#1336
#1335
#1334
#1333
#1332
#1329
#1328
#1327
#1322
#1321
#1320
#1319
#1318
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @NathanFlurry and the rest of your teammates on  Graphite


"soft delete" <> "soft overwrite"???

If I generate a key in Azure key vault (or import it from a certificate) and give it a name of "TestTDEKey", even though "soft delete" is on, I find that I cannot recover the key if I accidentally generate another key using the same name "TestTDEKey". If I had assigned the original key as the TDE Protector and encrypted databases using it, the old key is replaced and is no longer available, making databases inaccessible. I can't see the original key I created... correct me if I'm wrong but "soft delete" <> "soft overwrite". Does MS have a process to handle accidental key overwrites?

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

ID: 5ec6afe4-89a8-1b96-7ae4-81651004d858
Version Independent ID: 1d17a759-76a0-c990-3993-4fe32ec3a5ed
Content: Rotate TDE protector - PowerShell - Azure SQL Database
Content Source: articles/sql-database/transparent-data-encryption-byok-azure-sql-key-rotation.md
Service: sql-database
Sub-service: security
GitHub Login: @aliceku
Microsoft Alias: aliceku

@cmosqu Thanks for the feedback! We are currently investigating and will update you shortly.

I am not aware of any feature to handle accidental overwrites.
@aliceku Please pitch in if otherwise.

We will proceed to close this issue now.
If there are further questions regarding this matter, please comment and we will gladly continue the discussion.


Ran out of disk space. I do I know which containers/images take most space?

I'm running boot2docker + docker and ran out of disk space. Is there a way to list which containers/images take the most space? Also, in which directory does Docker save its images/containers? Is there a way to delete all containers which have not been started for more than X weeks?

Hi!
If you are reporting a new issue, PLEASE make sure that does not have any duplicates already open.
We would like to take this time to remind you of the information we need to debug the problem you are seeing. This is an automated response so if this ticket is not about a bug, do not fret.
If you fail to provide this information within 7 days, we will close this because we cannot debug your issue. We can reopen whenever the information is provided.
Thank you.
Please see:
https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues
Description of problem:

`docker version`:

`docker info`:

`uname -a`:

Environment details (AWS, VirtualBox, physical, etc.):

How reproducible:

Steps to Reproduce:
1.
2.
3.

Actual Results:

Expected Results:

Additional info:

#ENEEDMOREINFO

You can use docker images to see the size of your images.
Everything, by default, is stored in /var/lib/docker.

Also docker ps -a --size.
You should probably also do something like docker rmi -f $(docker images --filter dangling=true -q)
Closing since this is not an issue.
For support please hop on #docker on IRC, forums.docker.com, or the docker-user mailing list.
Thanks!


How to add a query to every request

Say I have a basic request like this:
var request = supertest(app)

request.post('/api/Note')
.query({
  token: token_val
})
.send(body)
.expect(200)
.end()

I'm struggling to find a good way to automatically apply the above .query() chain on all outgoing requests. I looked into using the superagent-use plugin, but I'm not quite sure if this would be the way to go, or how I would write .query() such that it could be used as a plugin.
Basically I'd like to set this somewhere once:
agent.use(query({token: token_val}))

and let that query be chained on all requests. Is this possible? I've done a bit of searching around but have not found a solution. Thanks in advance for the help!

It's now possible with superagent (note that supertest is a separate codebase, so I'm not sure if has it yet):
const myAgent = require('superagent').agent().use(req => req.query(etc));

myAgent.post(url).end(cb); // posts with the query


ENH: Support for Dependant files required for Execution runtimes [Julia]

Is your feature request related to a problem? Please describe.
For Julia based projects some authors have been requesting the ability to include julia files such as Manifest.toml and Project.toml to get fine grain control over the julia packages used. This control seems a lot more important in the julia context than python. Sometimes these files can be nested in directories to change the behaviour of how julia imports packages and continuous_time directory would use the local Project.toml and Manifest.toml files in preference to the global ones at the root level of lectures. :
/lectures
    Project.toml
    Manifest.toml
    /dynamic_programming
       # source files
   /continuous_time
       Project.toml
       Manifest.toml
      # source files

https://pkgdocs.julialang.org/v1/toml-files/
Looking at the docs:
Store external assets: Notebooks being executed often require external assets: importing scripts/data/etc. These are prepared by the users.

@chrisjsewell I had a look at the python api in the docs but couldn't see how files get added as dependencies. We could use this mechanism after detecting a julia kernel to look for some set files such as the ones above and copy them into jupyter-cache for execution.
Describe the solution you'd like
We can look at adding support to automatically copy these files (based on the folder structure) when a julia kernel is detected.
Describe alternatives you've considered
None

Thanks. Yeah, as this is something essential for Julia I think it is best if it is automatic

@mmcky @jlperla after looking at the codebase. It seems that the execution happens in the source directory itself. So, this issue is already handled.
Unless you are executing in a temp directory by turning on this option:
execute:
   run_in_temp: true

In this case, execution happens in this temp directory and dependant files are not copied there.

Thanks @AakashGfude .We will follow whatever you guys tell us to do. I also really appreciate want to make sure we can use the same devops to whatever extent possible with the python books.
Just keep in mind that we want the separate Project.toml files at the top level of the source tree and at a few sub-trees as well.
And that it needs to execute with the those same relative paths. And when we generate the notebook repo we need all of those as well.

And when we generate the notebook repo we need all of those as well.

We will need to add this to sphinx-tojupyter as a builder step in https://github.com/QuantEcon/sphinx-tojupyter/issues/33


Print err and exit when service control fails

Print err and exit when service control fails. Fixes issue bruhs/caddy-service#2.

Hey @timothywlewis! I don't want to be too much picky but I could you replace the two lines you added by "log.Fatal(err)". This piece of code prints the error and automatically runs os.Exit(1). After that, we'll merge this ASAP 😄

I'm not opposed to making the change if it actually will display the err to the user. I tried log.Fatal(err) but it didn't display any output which is why I used fmt.Println(err) instead. My guess is that log isn't wired up to stdout/stderr in Caddy by default.

When using the package log, Caddy sets by default to discard what we print unless we pass it as an option or flag. I'll merge this then 😄


python slave lates fails with compilation error

start-build jenkins-python-slave:
File "/tmp/Python-3.7.0/Lib/ensurepip/init.py", line 27, in _run_pip
| import pip._internal
  | File "/tmp/tmpoawgt5mu/pip-10.0.1-py2.py3-none-any.whl/pip/_internal/init.py", line 42, in
  | File "/tmp/tmpoawgt5mu/pip-10.0.1-py2.py3-none-any.whl/pip/_internal/cmdoptions.py", line 16, in
  | File "/tmp/tmpoawgt5mu/pip-10.0.1-py2.py3-none-any.whl/pip/_internal/index.py", line 25, in
  | File "/tmp/tmpoawgt5mu/pip-10.0.1-py2.py3-none-any.whl/pip/_internal/download.py", line 39, in
  | File "/tmp/tmpoawgt5mu/pip-10.0.1-py2.py3-none-any.whl/pip/_internal/utils/glibc.py", line 3, in
  | File "/tmp/Python-3.7.0/Lib/ctypes/init.py", line 7, in
  | from _ctypes import Union, Structure, Array
  | ModuleNotFoundError: No module named '_ctypes'
  | make: *** [altinstall] Error 1
  | Removing intermediate container e02548dcffe3
  | error: build error: The command '/bin/sh -c set -x     && INSTALL_PK

https://bugs.python.org/issue31652

@adyachok could you have a look?


Templates for onRender

Should a template file be used instead of including return in onRender?

hxtree won't require a template onRender because there is no replication of content throughout. This requires administration and the complexity improves as you include more flexibility in the production of templates. If content types are added, they must conform with administration of content.
Please check here:
https://refactoring.guru/design-patterns/chain-of-responsibility
Why don't you try code generation based on UI / Graphical Interface?

Hi Awsin,
The question I don't know the answer to is whether an onRender call could consist of enough markup to justify it being broken up into another a View (*.phtml) type file for separation of concerns? For example, what would a bloated Module/Navbar onRender() look like? I'd rather keep it simple, of course, but it certainly something to consider.
I'm both familiar with the Refactoring Guru and the Chain of Responsibility design pattern. However, reading through it again, got me to think about applying a chain of responsibility to DOM elements, which could be pretty neat for forms.
e.g. button onSubmit could be picked up by a module with xpath \form using the design pattern. This inline with the way the DOM ancestor variable access currently works.
<form>
<button/>
<form>

I certainly see the benefits of a WYSIWYG implementation. But, first I think it's important to flesh out the core modules.

Also, I see the page templates you're referring to being essentially just a boilerplate page that gets copied over during page creation that consist of LHTML5.

Page templates should feature semantic elements:
https://www.w3schools.com/html/html5_semantic_elements.asp


Prepare extension for 0.19

While 0.19 discussions should be kept in the Elm Slack #elm-dev channel, we should coordinate efforts to prepare for Elm 0.19.
This extension relies on elm-oracle. Elm-oracle has not been updated for some time, but by looking on the source code, it seems like it should continue work successfully. For other linting/auto-completion, we should verify that all changes in 0.19 are covered.
One minor breaking change will be that there is only one elm binary for all command line-operations. We will need to change some calls to command-line operations.
Todo:

[ ] Verify elm-oracle
[ ] Verify user-projects, symbols code
[ ] Elm-reactor operations
[ ] Elm-repl operations
[ ] Elm-make operations
[ ] Elm-package operations

Please suggest any missing tasks here.
How should we proceed? Should we have a separate branch for 0.19 PR's?

Based on my testing, elm-oracle does not recognise the installed dependencies of an Elm 0.19 project. When 0.19 alpha’s elm install has been run for a project, elm-oracle simply outputs this error:
[{"error":"Dependencies file is missing. Perhaps you need to run `elm-package install`?"}]

Based on this, I think elm-oracle will need to be updated for Elm 0.19.

Based on feedback from Evan in the Elm-community Slack channel, upgrading elm-oracle could be difficult and unsupported. We should consider alternatives. A language server would be the best solution, but in the meantime, is there any other editor plugin implementations for parsing Elm that we could use?

Just for brevity I tried to emulate a 0.18 world for 0.19, worked some what.
Se https://gist.github.com/axelo/793a652fdd4f88c8e60f76933b9899fd
It may or may not work for others, but when trying out 0.19 always nice to not lose all tooling.
And to get errors to get reported correctly one can temporary patch elmLinter.js,
Se  https://gist.github.com/axelo/4446c12712e8f8b9356c3a79e84a9216 as POC.

See #242 for a PR in progress, feel free to join.

@axelo - thanks for the error reporting json patch - I'll try to integrate it now.

Fixed by #243


Incorrect version download for MPF

The link provided for MPF is for Visual Studio 2010-2013 but this is listed under Visual Studio 2017. I came here from "https://docs.microsoft.com/en-us/visualstudio/extensibility/creating-a-basic-project-system-part-1?view=vs-2017#test-the-template-registration" where they ask to download MPF and look for a file called ProjectBase.files which does not exist in the download from this link.

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

ID: 616affe3-8417-fab8-4a92-15a71dde6646
Version Independent ID: a8aafe78-e9ae-ee89-0a9a-e80c3e0ba939
Content: Using Managed Package Framework for a Project Type (C#) - Visual Studio
Content Source: docs/extensibility/internals/using-the-managed-package-framework-to-implement-a-project-type-csharp.md
Product: visual-studio-dev15
GitHub Login: @gregvanl
Microsoft Alias: gregvanl

Did you find a solution?

Thanks for submitting your feedback and we apologize for the delayed response. Due to current resourcing and substantial extensibility changes we are currently working on that will result in significant doc changes, we are closing this lower priority issue. We will return to this issue on a later date and address it based on it's relevance after those extensive extensibility updates are made. Feel free to comment here as necessary.


Update Go to 1.7.4 (security fixes)

Update Go to 1.7.4 (security fixes)
Issues
https://golang.org/doc/devel/release.html#go1.7

@alberts can you include the template for the pr and fill it out?

@amitaekbote I included the parts of the template that seemed relevant. What else would you like me to add?

The checklist
Checklist

[x] Included a test which will fail if code is reverted but test is not
[x] Followed relevant code rules Rules for Packages and Systemd

If this is a component/package update, include

[ ] Change Log from last:
[ ] Test Results:
[ ] Code Coverage:

For context, we are trying to do this so we can speed up reviews by checking off basic things like tests and code guidelines. if there isnt a new test added a brief explanation as to why we didnt would be nice.
Ideally we look at all these and see if they added value or not and tweak the template accordingly.


Add local printing

This (admittedly huge) change adds Privet to the connector, making progress on #6

mostly lgtm, with some optional comments
feel free to merge if you think they are not worth of addressing.

@bvsbvs Thank you for reviewing.

Now the compile Fails with go 1.5 and 1.4.2
go get github.com/google/cups-connector/connector
Yesterday it worked without problems
github.com/google/cups-connector/privet
In file included from go/src/github.com/google/cups-connector/privet/avahi.go:12:0:
avahi.h:9:34: fatal error: avahi-client/publish.h: No such file or directory
#include <avahi-client/publish.h>
^
compilation terminated.

@RayBa82, see
https://github.com/google/cups-connector/issues/44#issuecomment-133597386


Invalid textPath placement

What happened?

lib
pic

svg

ink

resvg

rsvg

What should have happened?

Dunlop Corner is missplaced
gray curve at "Chris amon Straight" looks strage

Copyright
source https://commons.wikimedia.org/wiki/File:Manfeild_Autocourse_track_map_(New_Zealand).svg
author Will Pittenger
license https://creativecommons.org/licenses/by-sa/3.0/deed.de

Can confirm.
By the way, Firefox doesn't render "Dunlop Corner" at all.

fixed in resvg 0.14

Good. Thanks.


Support for dependency injection with interfaces for testing purposes

Can you please extract the signatures of the admin classes into services so we can mock them to test our code
Thank you

Yeah, we're using it like that, But i think that will be great if that the inversion of control, can be supported by default on the library, given that is like a netcore standard.
Thanks for your help tho.

Most of the time defining such interfaces in the SDK is counterproductive. Each user only cares about a subset of the SDK methods, which means one of 2 things can happen:

If we extract all signatures of a class into a single interface (e.g. FirebaseAuth --> IFirebaseAuth) users will end up having to implement very large interfaces, where most methods are of no interest to them.
Alternatively we can extract each existing class into a number of small interfaces. But this also leads to several issues such as:

It's a major diversion from the conventions used in our client SDKs and our existing Admin SDKs.
It's not clear where we should draw the lines when it comes to splitting interfaces. We certainly don't want to inundate the SDK with a large number of interfaces.

Personally I think asking developers to define their own interfaces is the best course of action. Since developers know best about their specific application requirements, they are in the best position to decide what these interfaces should look like.
I will keep this issue open for a bit longer to see if it receives any additional feedback/suggestions.

@hiranya911 The solution you propose merely shifts the problem:
It is impossible to test the class FirebaseNotificationSender.
There is no alternative to being able to mock a service.
At one point or another, there will be an untested service.
Please re-evaluate this design decision, as it introduced great risk at critical services, interfacing with FirebaseAuth and FirebaseMessaging, for example.
Mocking can be supported by offering non-sealed classes using Moq.
And please rename this issue, its name is very misleading:
This has nothing to do with IoT, but is simple adding support for Mocking.
Adding IoC support for the entire SDK would be a lot more work.

Yeah you right about the title, english is not my first language c:
Mocking those services is not imposible, is just annoying. i'll pass you an example on your issue, hope it helps

It is impossible to test the class FirebaseNotificationSender.

Assuming that class simply turns around and calls the FirebaseMessaging API, you shouldn't need to test it. That's the idea.
Mocking is just a way to swap out third-party or otherwise unmodifiable code with your own code for testing. The solution above has the same net result. You just treat INotificationSender as the main programming interface, and FirebaseNotificationSender as an unmodifiable implementation of it. Then MockNotificationSender just becomes your mock for FirebaseNotificationSender. FirebaseNotificationSender can still participate in any end-to-end tests executed against a test Firebase project.

Mocking can be supported by offering non-sealed classes using Moq.

If we were to support direct mocking of SDK interfaces, I'd like to think through different options and the developer experience a bit more before we start unsealing our APIs. There are other classes like UserRecord, FirebaseToken and BatchResponse we need to think about as well. Which APIs are you looking to mock, and what would your ideal test code look like?

Also related to #158

By introducing interfaces, the developer receives more flexibility and a cleaner public interface.
Yes, I can write an adapter (copy pasting your classes public signatures), but this will be prone to errors when you upgrade your SDK.
Interfaces provide a stable public API to work against, while the internals of the class can change at any time.
Unsealing classes simply enables developers to extend your classes and add extra code they require (and also add Mocks, if you have no interfaces).
Yes, developers can put stones in their way, but you typically only extend a frameworks classes if you have special requirements, e.g. due to standards and regulatory guidelines in specific fields.
Of course mocking of services would also require the possibility to create new BatchResponses using a public constructor. As this is just a data object, I see no reason for an internal constructor.
Your documentation clearly states to use the service directly and BatchResponse also has xmldoc communicating that this is a response object.
Simplified example of mocking and testing a service, which uses a firebases service (e.g. verifying that we treat the response objects correctly)
//TODO impossible to Mock with FirebaseAdmin 1.13.0 (sealed class without interface)
var firebaseMessagingMock = new Mock<FirebaseMessaging>();
firebaseMessagingMock
	.Setup(messaging => messaging.SendMulticastAsync(It.IsAny<MulticastMessage>()))
	.ReturnsAsync(() =>
		new BatchResponse(new[]
		{
			SendResponse.FromMessageId("messageId1"),
			SendResponse.FromMessageId("messageId2")
		}));
var firebaseService = new FirebaseService(otherServiceMock.Object, firebaseMessagingMock.Object, Bouncer.Instance,
	NullLogger<FirebaseService>.Instance);
// TODO test firebaseServiceBehaviour

Yes, I can write an adapter (copy pasting your classes public signatures), but this will be prone to errors when you upgrade your SDK.

Couple of points worth noting here:

You don't necessarily have to mimic our API surface. In fact, in most cases you shouldn't (see my comment below about wrappers).
Our public API is already stable with strict adherence to SemVer. So you won't encounter breaking API changes unless we bump the major version number. In which case, you have to update some of your code to match any way.

Unsealing classes simply enables developers to extend your classes and add extra code they require (and also add Mocks, if you have no interfaces).

I'm not against making it possible to mock certain APIs. But if we do that I'd like to do it in a SDK-wide, consistent way (or at least have a plan to make it so). Focusing on 1-2 classes at a time is likely not going to work out well in the long run.

Simplified example of mocking and testing a service, which uses a firebases service (e.g. verifying that we treat the response objects correctly)

What is FirebaseService in this example? Is that some class in your code or something provided by the SDK?
It also seems this is simple enough to handle via some wrappers in your code (at least as a stop gap measure).
public class NotificationResponse {

}

public class NotificationSender {
    public async Task<NotificationResponse> SendMulticastAsync(MulticastMessage message) {
        // Impl using FirebaseMessaging
    }
}

Now you can mock NotificationSender for unit testing. I understand it's more work, but it gets the job done at least until we make the necessary changes in the SDK-end. There are also schools of thought that argue that this is in fact the best practice for consuming external dependencies :)

I ran into the same issue trying to mock BatchResponse in my unit tests.
I found the same issue submitted on firebase-admin-java repo
where BatchResponse was turend into an interface.

@Dongata can you elaborate what exactly you mean by services?
In general, this is the pattern I'd recommend for developers (taking FirebaseMessaging API as an example:
interface INotificationSender {
  Task sendAsync(String token, String title, String body);
}

class FirebaseNotificationSender : INotificationSender {
  // Implement the interface using `FirebaseMessaging` class from the SDK.
}

class MockNotificationSender : INotificationSender {
  // Mock implementation for testing
}

Then you use the INotificationSender interface everywhere in your code, where you wish to send a notification. This cleanly separates Firebase SDK from your code, and makes it easier to test. In the future if you choose to change how you send notifications (e.g. say using our REST API), that just becomes a matter of coming up with a new implementation for the same interface.

In my case, this would mean the interface would have to contain methods returning FirebaseToken, which means my interface is implicitly bound to a Firebase implementation, which sort of defeats the whole point of using an interface in the first place.

If someone has this same issue, here's a work around
https://github.com/firebase/firebase-admin-dotnet/issues/196#issuecomment-849161404

Bumping this as my team is also running into this issue.
This all seems to be a matter of opinion with one camp saying, "You should always use a pure adapter" and the other saying, "Make an interface for the public methods and properties."  Both of which are valid approaches.
Pure Adapter
If you are using a pure adapter, you're creating a class and interface that directly duplicates functionality like:
public class MyMessage
{
    // Wrapper around FirebaseAdmin.Messaging.Message

    public Message ToMessage()
    {
        // Conversion code for FirebaseAdmin.Messaging.Message
    }
}

public interface IMyFirebaseService
{
    public Task<string> SendMessageAsync(MyMessage message);
}

public class MyFirebaseService : IMyFirebaseService
{
    public async Task<string> SendMessageAsync(MyMessage message)
    {
        var firebaseApp = FirebaseApp.GetInstance("Firebase");
        var firebaseMessaging = FirebaseMessaging.GetMessaging(firebaseApp);
        return await firebaseMessaging.SendAsync(message.ToMessage());
    }
}

And using it like:
public class MyNotificationService
{
    private readonly IMyFirebaseService _myFirebaseService;

    public MyNotificationService(IMyFirebaseService myFirebaseService)
    {
        _myFirebaseService = myFirebaseService;
    }

    public async Task SendNotificationAsync(MyMessage message)
    {
        var result = await _myFirebaseService.SendMessageAsync(message);

        // Do something based on result
    }
}

In this case, you treat MyFirebaseService as a black box because it's an adapter, its implementation details are specific to Firebase, and its implementation will change if you change notification services.  This means you mock IMyFirebaseService in MyNotificationService and only test MyNotificationService.  The downside is you don't unit test MyFirebaseService.SendMessageAsync(Message) and instead verify it works through integration tests.  This hurts your unit test code coverage and means you must be very careful to limit the amount of logic in MyFirebaseService to keep from inadvertently adding bugs.
Dependency Injection Adapter
With a Dependency Injection adapter, FirebaseApp and FirebaseMessaging would implement interfaces and the code above becomes something like:
public interface IMyNotificationService
{
    public Task<string> SendMessageAsync(Message message);
}

public class MyNotificationService : IMyNotificationService
{
    private readonly IFirebaseApp _firebaseApp;
    private readonly IFirebaseMessaging _firebaseMessaging;

    public MyNotificationService(IFirebaseApp firebaseApp)
    {
        _firebaseApp = firebaseApp;
        _firebaseMessaging = _firebaseApp.GetMessaging();
    }

    public async Task SendMessageAsync(string title)
    {
        var message = new Message
        {
            // Implementation details
            Title = title
        };

        var result = await _firebaseMessaging.SendAsync(message);

        // Do something with result
    }
}

In this case, MyFirebaseService isn't required because IFirebaseApp is injected into the MyNotificationService constructor directly.  You mock IFirebaseApp and IFirebaseMessaging and configure IFirebaseApp.GetMessaging() to return your mocked IFirebaseMessaging instance.  You can then test MyNotificationService.SendMessageAsync(string) directly.  All the boilerplate code from MyFirebaseService disappears.
The downside here is the need to mock IFirebaseApp and IFirebaseMessaging, but mocking libraries like Moq can handle that directly without the need to implement the entire IFirebaseApp and IFirebaseMessaging interface in your own class.  There is never a need for an SDK user to implement IFirebaseApp or IFirebaseMessaging directly because they are using the mocking library or the Firebase Admin SDK instances.
The other downside is the MyNotificationService code is also tied to Firebase, which makes switching notification providers more difficult.
Opinion
The point of pure adapters is to hide implementation details from callers of the adapter, require loose coupling, and make swapping components easier because the business logic is separated from implementation details.
However, pure adapters also require creating (at least some) boilerplate code and (potentially) extra classes/interfaces to wrap the adapted code, its exceptions, and its data structures.  When the adapted code changes either from moving to the next major version or changing the underlying provider, the adapter's code must also change.  Those changes typically cascade up the call stack when our abstractions must change.
A point that is hammered into our heads when learning Object-Oriented Programming and reading books like Clean Code is the need for flexibility and loose coupling in our designs.  In fact, that is why the adapter pattern exists.  The quest for this ideal often leads to over-engineered and complex code with hidden technical debt where our adapter abstractions still end up being too tightly coupled and the need to change the providers used by our adapters does not happen frequently enough to justify the extra work of creating the adapter in the first place.
Instead, the adapter acts as a warm blanket so we can sleep easier at night knowing that if we had to change providers, we could.  But we probably won't, or, at least, won't change if often enough that the effort to create a pure adapter pays off.
Implementing interfaces for the public functionality in the Firebase Admin SDK still allows users who want to create a pure adapter to continue to do so.  It also allows users who want to leverage Dependency Injection and Inversion of Control to do so without needing to resort to Fakes or Shims.

+1 here. Same problems - SDK is untestable out of the box. 👎🏿

+1

The amount of wrappers needed to crate a BatchResponse that can be mocked is still unreasonable. At least the response composition should be done with interfaces. So that when you create an SDK wrapper you can mock the responses. And your wrapper contains no logic beside proxying.


wrong font - Petty Magic (Talent)

Describe the bug
Talent — Petty Magic description do not use default font.
It use Calibri font.
Screenshots

Also Sword of Justice  (Miracles of Verena) has formating typo


⚠ Jerry Savelle Ministries International Australia has degraded performance

In 5e1fd89, Jerry Savelle Ministries International Australia (https://jsmiaustralia.org) experienced degraded performance:

HTTP code: 200
Response time: 7614 ms

Resolved: Jerry Savelle Ministries International Australia performance has improved in c57858f after 24 minutes.


Add HGR inline chutes without decoupler from SpaceDock

This pull request was automatically generated by SpaceDock on behalf of Monniasza, to add HGR inline chutes without decoupler to CKAN.
Please direct questions about this pull request to Monniasza.
Mod details:
name = /mod/2389/HGR%20inline%20chutes%20without%20decoupler
author = Monniasza
abstract = The mod adds versions of HGR inline chutes without decouplers.
license = MIT
Homepage =
description =
The mod adds two derivative parachutes for Home Grown Rocket Parts:
HGR MK.18 Inline Chute without decoupler
LOM-7 Inline Chute without decoupler

The mod requires HGR 1.875m Parts to work correctly

@Monniasza  OK, where is that mod?

HGR got adopted, but the new maintainer does not want to be indexed in CKAN:

https://forum.kerbalspaceprogram.com/index.php?/topic/131556-16-19-hgr-community-fixes-home-grown-fixes-for-home-grown-rockets-v170-02019-nov-12/&do=findComment&comment=3441759
https://forum.kerbalspaceprogram.com/index.php?/topic/131556-16-19-hgr-community-fixes-home-grown-fixes-for-home-grown-rockets-v170-02019-nov-12/&do=findComment&comment=3441844

Re-opening temporarily because I want to look at the script validation UI...


Fix e2e

Summary

How did you test your changes?

hey. closing it for now. let's revisit when it's ready.


Feature request: Ability to check for Winpilot updates without Windows updates

Clarification: I just want a button that checks for Winpilot updates without checking for Windows updates. Currently, one button does both.

https://github.com/builtbybel/Winpilot/releases/tag/3.6.0


Snowman_Escape

Your checklist for this pull request
Author name
Author: Michael Q
About your game
What is your game about?
You are a snowman, and you must reach the goal of each level without dying.
How do you play your game?
Use WASD to move, J to restart.
Reach the goal (green circle) on each level. Rocks are can be pushed. if there are any buttons (blue circles), a rock must be on top of it for the goal to work. Don't walk into lasers.
Code
Check off the items that are true.

[x] The game was made using the Sprig editor.
[x] The game is placed in the in the /games directory.
[x] The code is significantly different from all other games in the Sprig gallery (except for games labeled "demo").
[x] The game runs without errors.
[x] The name of the file/game contains only alphanumeric characters, -s, or _s.
[x] The game name is not the same as the others from gallery

Thanks for your PR!

Thanks for PR! Where did you hear about Sprig?

I heard about it from a friend, who also made a game on Sprig.

Thanks for PR! Where did you hear about Sprig?

I heard about it from a friend, who also made a game on Sprig.

oh nice! What is their game? Sorry for the delay too

Thanks for PR! Where did you hear about Sprig?

I heard about it from a friend, who also made a game on Sprig.

oh nice! What is their game? Sorry for the delay too

No worries! Their game is called "starjump", made by skifli.

Out of curiosity, did you use any game for inspiration?

Not any in particular, I just thought it would be cool to add lasers to the template sokoban game.
Although I didn’t change things up in my game too much, I really admired how “Baba is me” played with the traditional sokoban formula to make their game.

Right:) How to solve this level?

Ah, this was a tough one! :)
(Just in case - the blue rock has to be pushed onto the blue circle before the green circle (aka the goal) will activate.)

Thanks! And this?

Thanks! And this?

Yeah, this level is quite brutal. I've (hopefully) uploaded a video here that shows the completion of that level and the last few remaining. Hope this helps!
https://github.com/hackclub/sprig/assets/136814442/05cbd805-8dfa-43fa-b9d9-daf8ebfa9c3d


Add a label for PRs which need to be squashed

To reduce the incidence of merged PRs with “review commits”, it would be useful to support a specific “needs-squashing” label, with attendant automation to prevent merges of PRs with that label. This would still allow users to handle the squash, without needing any manual work using git, by removing the label and doing a “merge with squash”.
This will need to be implemented at least partially on all repositories.

There's a new GH feature that lets you compare across commits, even after amending commits and force-pushing to the same feature branch. Example: https://github.com/submariner-io/submariner/compare/3a096065516201378fc9312b0847cf3153ab4e58..b6e0698fef6e21af50eed9124d753034d271d90f
Given that, think we just shouldn't send commits with changes due to PR feedback. The PR should always be ready to merge.


[WIP] Deploy and use libvirtd in a container [skip ci]

This patch should be largely complete, but VMs currently fail to boot.

@stu-gott just looked at this briefly, but I guess the VMs are not starting because libvirt tries to start the qemu-kube script which is on the host and not inside the libvirt container. Did you check cluster/kubectl.sh get events?

Any updates?

While moving everything into the virt-handler pod, virt-handler started to panic. running that to ground.

The panic turned out to be caused by a race condition. Virt-handler was programmed to panic if libvirt was unreachable--which is fine if they're in distinct pods. As it turned out, virt-handler was consistently checking for libvirt before it was online.

@fabiand @admiyo @rmohr Libvirtd in a container is now functional. Please take another look at this PR when you can.

Ok, I've verified that we can indeed escape the comma character and refer directly to cpu,cpuacct when assigning cgroups.
I wonder if this is really the correct approach though. libcgroup does the right thing when we specify cpu or cpuacct together or separately. attempting to skip that and refer directly to cpu,cpuacct is only setting ourselves up for future headaches when the systemd change finally propagates to the host and cpu,cpuacct doesn't exist either on host or container (and the symlink points nowhere)

libcgroup does the right thing

If you have another way of changing them, that is definitely preferable ...

@rmohr: Networking verified. I can use the demo disks to boot a VM and log in via console.

retest this please

retest this please


add Environment Variables buildpack

Posting to get some feedback.
I assumed that adding BP_LIVE_RELOAD_ENABLED would enable the watchexec buildpack but it does not.

I think I know what's going on. To take an analogous example:
Like in the web servers buildpack, in the Nodejs buildpack, the watchexec buildpack is optional=true in all of the order groups.
When run a NodeJS build for a yarn app with the env var BP_LIVE_RELOAD_ENABLED=true, the yarn-start buildpack participates in the build. It checks the value of that env var and requires watchexec at launch time if it's set.
The problem here is that the buildpacks that are setting the start commands in this language family never check that env var, never require watchexec. They'll need to be changed to fully enable this feature.


Doc update for spatial avg

Describe your documentation update

In this example for the spatial average, variable tas is used for deriving Nino 3.4 index. However in CMIP, the variable name tas has been indicating near surface (2-m) temperature, I think it would make more sense to use ts variable instead, which is for surface temperature (thus considered as sea-surface temperature over ocean).
I suggest replacing tas by ts.

Another doc caught in https://github.com/XCDAT/xcdat_test/pull/27 to be done with this issue:
data_var should replace keep_var


Question about granule_search() from web services API

Is the intended functionality of granule_search() to return a maximum of thirty days?
Right now, no matter how long of a date range you provide, it will only return about 30 days of granules. If no start or end date is provided, it will download the first thirty days of the dataset.
Is this the expected functionality?

@daniel-kane probably not. Sorry I was on vacation and just saw this. What behavior would you like and we can implement it?

@daniel-kane ping

@daniel-kane PING again.

Closing this one off... if you feel like re-opening then please go ahead.


KMS Support

In this PR

[x] AWS KMS Signer / Verifier
[x] AWS KMS Signer / Verifer Tests
[x] GCP KMS Signer / Verifier
[x] GCP KMS Signer / Verifier Tests

In a follow-up PR

[ ] Azure KMS Signer / Verifier
[ ] Vault KMS Signer / Verifier

In light of go-consolidation, would it make sense to explore putting it in go-sslib directly?

would it make sense to explore putting it in go-sslib directly

This is a good question. We should have a plan for incremental adoption of go-ssllib. We'll think about this before next Friday's call.

We have some demand for this from users that are interested before the go-ssl work is likely to be done.

In light of go-consolidation, would it make sense to explore putting it in go-sslib directly?

@adityasaky, I think that is a path we would love to explore.  However, I the project needs to be under open governance.  Let's discuss at a community meeting or KubeCon EU with the rest of the team.

Would it make sense to breat these into 2 commits one for each signer verifier?

@adityasaky, I think that is a path we would love to explore. However, I the project needs to be under open governance. Let's discuss at a community meeting or KubeCon EU with the rest of the team.

We've (cc @jkjell) started working towards this. The idea is a lightweight go-sslib governance that gives maintainer bits to TUF, in-toto etc.

I'll continue my review tomorrow as well as testing it all locally. I'm curious about the nested go.mods. These have the capability to cause a ton of pain, and I think we should avoid it in favor of just having a singular top level go.mod.
I have some other thoughts but will roll them into further review comments.
Very good work so far!

Still TODO befoire merge:

[ ] Write tests to ensure that different key types from GCP/AWS are being parsed correctly by cryptoutil
[ ] Implement options for AWS and GCP KMS Signers
[ ] Add placeholder contexts in Signer functions

I didn't dive in too much to gcp or hashivault.

dang, sorry if I messed anyone around 🤦 - hashicorp vault KMS is being held back for a further release. I removed it from this PR, sorry for the inconvenience.


Fails to compile on rustc 1.8.0 (db2939409 2016-04-11)

ansi-term fails to build on Debian Stretch testing with above said rustc version.
The error output is:
.cargo/registry/src/github.com-88ac128001ac3a9a/ansi_term-0.9.0/src/lib.rs:189:5: 189:23 error: user-defined types or type parameters cannot shadow the primitive types [E0317]
.cargo/registry/src/github.com-88ac128001ac3a9a/ansi_term-0.9.0/src/lib.rs:189     type str : ?Sized;
                                                                                ^~~~~~~~~~~~~~~~~~
.cargo/registry/src/github.com-88ac128001ac3a9a/ansi_term-0.9.0/src/lib.rs:189:5: 189:23 help: run `rustc --explain E0317` to see a detailed explanation

Eeeep this is bad, will fix

Any luck on this?

I have created a PR. It seems to fix the issue for me.

Update: With rust 1.14, the issue is gone.

I’m glad the original issue is gone, and I’ve merged that PR anyway, but I’m sorry that I never got back to doing this at the time!


Debug

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

is this still relevant? or did you fix the underlying issue your PR last week?

oh yes


1.10.2 Murder Error Help me

What steps will reproduce the problem?

Server Start
Minigame Round Error

What were you expecting to happen? What happened instead?
skin load error
What version of the plugin are you using? Type /version <Plugin Name>
Murder_v3.3.1-SNAPSHOT
What Spigot version are you using? Type /version
1.10.2 version
What plugins are you using? Type /plugins

CleanroomGenerator
MenuBuilder_v1.1.0-SNAPSHOT
Murder_v3.3.1-SNAPSHOT
NickNamer_v3.13.2-SNAPSHOT
NPCLib_v2.2.6
PacketListenerAPI_v3.4.4
PermissionsEx-1.23.4
ResourcePackAPI_v2.2.1
Vault
WorldEdit
WorldGuard

Do you have an error log? Use pastebin.com. *If you're not sure, upload your
whole server log*
https://pastebin.com/Tm53MJDL
Did your client crash? Upload errors in .minecraft/logs/latest.log as well
no
Additional information?  (Are you using Bungeecord? Did it work in previous versions? etc.)
No

Have you tried restarting the server and tried again?

No

Then go do dat den, you should make sure you restart your server before you input an issue


Remove Ant Commander Personal version 4.8

Checklist for Pull Requests

[x] Have you signed the Contributor License Agreement?
[ ] Is there a linked Issue?

Manifests

[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.6 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Removed Ant Commander Personal version 4.8 as latest version is 4.10
Microsoft Reviewers: Open in CodeFlow

URL: https://www.antcommander.com/personal/versions/AntCommander-4.8.exe
OK
(Automated message - build 882)


Mix of content about external / internal ASE

The heading for this section of the documentation is "Create an external ASE", but the content is still a bit of mix between creating an external and internal ASE. I think it would be less confusing if the content matched the heading. There is another section of the document reserved for "Create internal ASE", so I don't think the content needs to be mixed.

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

ID: 7e31ca36-9aa0-f429-f2fd-65ba2758c359
Version Independent ID: e201f645-18c4-f420-167c-6431d114ef5b
Content: Create an External App Service environment - Azure
Content Source: articles/app-service/environment/create-external-ase.md
Service: app-service
GitHub Login: @ccompy
Microsoft Alias: ccompy

@olavt Thank you for your feedback. We will investigate and update further.

@Olavt, That’s a good observation! Thanks for the feedback on this item. As you noticed in both the documents ‘Create external ASE’ and ‘Create internal ASE’; the first para highlights the same content just to provide a good comparison of the both. The ‘Create external ASE’ as it does provide extensive steps for creating an external ASE and also compares internal ASE for better clarity and also links the ‘Create internal ASE’ document for better guidance. Kindly do let us know if you need more insights on this.

@olavt, Since we have not heard back from you we will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly reopen the issue and continue the discussion.
Just checking in to see if you have had a chance to see the previous response. Kindly let us know if you need further assistance on this issue or is good to be closed.


Updating indicators

Hi @Brockfanning
Based on local needs, and applicable data, I'm beginning to update some of the indicators.  Is this the correct file to update the indicator wording this is reflected within the banner of the Indicator pages?
Note: 5.d.1 is a new indicator that was previously included in the side.  5.b.1 is an edited indicator.

@brockfanning it looks like the change worked, just want to make sure i edited the correct file. thanks!


Improve authority docs

clarify what client authority means.  Remove Local Player Authority references.

:tada: This PR is included in version 5.2.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


archive has incorrect │ checksum

Error: Failed to install provider
│
│ Error while installing hashicorp/aws v4.34.0: archive has incorrect
│ checksum
│ zh:c8cc597cba3e94a32f398638189bec49813c27671a2fc50074bd2aab0c8e0f51
│ (expected
│ zh:44e763adae92489f223f65866c1f8b5342e7e85b95daa8d1f483a2afb47f7db3)

Hi,
seems to be an issue with downloaded modules by Terraform, it is happening each time? or after cache clean it start to work?
https://terragrunt.gruntwork.io/docs/features/caching/#clearing-the-terragrunt-cache

It actually happens every time and I even tried to change the version, clear the correct workspace cache, uninstall both terraform and terragrunt, and reinstalled it but nothing helps.
But when I tried "terraform init" with terraform codebase it worked without any issue.

This happens for us when you use TF_PLUGIN_CACHE_DIR.  Terraform's docs provide this note:

Note: The plugin cache directory is not guaranteed to be concurrency safe. The provider installer's behavior in environments with multiple terraform init calls is undefined.

When you run terragrunt run-all init or let terragrunt auto init, this causes issues when multiple terraform runs try to populate the cache simultaneously.  We wrote our own initialization script to optimize/serialize the init process to overcome this.  If you don't have that many terraform repos you're trying to initialize, you could use --terragrunt-parallelism=1 to init everything first serially.  It's only populating the cache that causes problems.  Once it is populated, we've never had issues with lots of parallelism just reading from their cache.

See issue #1212 for additional discussion, assuming this is what is hitting you.

This happens for us when you use TF_PLUGIN_CACHE_DIR. Terraform's docs provide this note:

Note: The plugin cache directory is not guaranteed to be concurrency safe. The provider installer's behavior in environments with multiple terraform init calls is undefined.

When you run terragrunt run-all init or let terragrunt auto init, this causes issues when multiple terraform runs try to populate the cache simultaneously. We wrote our own initialization script to optimize/serialize the init process to overcome this. If you don't have that many terraform repos you're trying to initialize, you could use --terragrunt-parallelism=1 to init everything first serially. It's only populating the cache that causes problems. Once it is populated, we've never had issues with lots of parallelism just reading from their cache.

@tjstansell can you share the initialization script you mention or a general idea of how you are doing this? We have hundreds of Terragrunt files and using TF_PLUGIN_CACHE_DIR with Atlantis has only generated issues for us.
Thank you in advance!

Our script recursively scans for any .tf or .hcl files, then does a best effort parsing of them line-by-line to look for provider definitions.
So, it includes all of those as well to make sure they get pre-cached. Then, in the end, it creates a precache directory with a providers.tf with all of the providers listed and runs terraform init on that one directory.  This effectively serializes the provider install.  We don't have repos with conflicting provider version requirements or anything like that, so it works for us.  But in theory, you could do the same thing in groups if you have multiple versions of a provider that needs to get cached.

@tjstansell thank you you gave me some ideas!

I started getting this morning this type of error in GitHub workflow (no cache in TF used) with recently released 5.71:
Initializing provider plugins...
- Finding hashicorp/aws versions matching ">= 5.62.0, >= 5.67.0, >= 5.68.0, >= 5.70.0"...
- Installing hashicorp/aws v5.71.0...
╷
│ Error: Failed to install provider
│
│ Error while installing hashicorp/aws v5.71.0: archive has incorrect
│ checksum
│ zh:e746662547a839b0344729783bb57bdf6899f78d3de19e545d58d0acff9567c4
│ (expected
│ zh:c164d3ed13eb4c28ac243221591fc4ac3cfe621f8cd20af533dedd98a6387363)
╵
Error: Terraform exited with code 1.
Error: Process completed with exit code 1.

but it works fine when ran locally on MacOS laptop:
Initializing provider plugins...
- Finding hashicorp/aws versions matching ">= 5.62.0, >= 5.67.0, >= 5.68.0, >= 5.70.0"...
- Installing hashicorp/aws v5.71.0...
- Installed hashicorp/aws v5.71.0 (signed by HashiCorp)
Terraform has created a lock file .terraform.lock.hcl to record the provider
selections it made above. Include this file in your version control repository
so that Terraform can guarantee to make the same selections by default when
you run "terraform init" in the future.

Terraform has been successfully initialized!

Any idea why checksums doesn't match on Linux OS (GitHub) and works on MacOS ?

I started getting this morning this type of error in GitHub workflow (no cache in TF used) with recently released 5.71

Might be a problem with terraform, a simple terraform init gives me the same error. Reverting to a previous version solves this issue


Can we create topic subscription problematically using .net core 2

is that possible ?

@LilanMadusankaSilva We have a net standard client 6.1 client located on our nightly nuget feed on myget (https://www.myget.org/gallery/exceptionless) See this for more info (https://github.com/FoundatioFx/Foundatio.AzureServiceBus/pull/2)
If you specify your azure ad credentials it will create topic subscription you define in the passed in options for you. But we don't expose any management api's directly to do any management other than delete the queue. We are not going to be releasing this other than a nightly feed until Microsoft brings back the connection string based management features as requiring AD credentials to even create a topic is insane. Does this help?
@shahbarkha Am I missing anything?

@niemyjski - Thats correct. We don't expose separate API to manage any entities like creating/deleting topic subscriptions . Although we ensure they get created as soon as the user tries to send or recv the message to and from the topic through PublishAsync and SubscribeAsync.
So programatically topics are getting created though above APIs.

@shahbarkha - So programmatically topics are getting created though above APIs.
That means I can create topic subscriptions pragmatically. Can you give me sample code for that?

@LilanMadusankaSilva Which code are you accessing? I don't see that we are using IAzureSubscriptionReceiver anywhere.
You should use IMessage interface to access the functionality. Something like this:
IMessageBus messageBus =
new AzureServiceBusMessageBus(new AzureServiceBusMessageBusOptions() {
Topic = "Topic1",
SubscriptionName = "Subscriber1",
ConnectionString = "Endpoint=sb://nnn.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=lpgwMXDswO3SgJkfEPoF/pZ/HAizlMgkWnNDaAvfuug=",
SubscriptionId = "69636ii3-911f-4ac0-bda9-12d6126471df",
ResourceGroupName = "resourcegroup",
NameSpaceName = "namespace",
Token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlZXVkljMVdEMVRrc2JiMzAxc2FzTTVrT3E1USIsImtpZCI6IlZXVkljMVdEMVRrc2JiMzAxc2FzTTVrT3E1USJ9.eyJhdWQiOiJodHRwczovL21hbmFnZW1lbnQuY29yZS53aW5kb3dzLm5ldC8iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC83MzBjNTliZC05NTIyLTRkZTEtYjE1Yy05NzU2YTA1NTA2MGMvIiwiaWF0IjoxNTAyMjk4ODk1LCJuYmYiOjE1MDIyOTg4OTUsImV4cCI6MTUwMjMwMjc5NSwiYWlvIjoiWTJGZ1lGaWoyV0wrZEU3YlhybnNqSTVqRnczMkFBQT0iLCJhcHBpZCI6ImYxODkyY2U0LTg5MjQtNGU1Yi05Y2E4LWNiNWRiM2I3NWE1OCIsImFwcGlkYWNyIjoiMSIsImVfZXhwIjoyNjI4MDAsImlkcCI6Imh0dHBzOi8vc3RzLndpbmRvd3MubmV0LzczMGM1OWJkLTk1MjItNGRlMS1iMTVjLTk3NTZhMDU1MDYwYy8iLCJvaWQiOiIxMjVkN2MzYi0zYTVjLTQ0ZWYtOTk2OS1iZTJlMDg5NWM4YmMiLCJzdWIiOiIxMjVkN2MzYi0zYTVjLTQ0ZWYtOTk2OS1iZTJlMDg5NWM4YmMiLCJ0aWQiOiI3MzBjNTliZC05NTIyLTRkZTEtYjE1Yy05NzU2YTA1NTA2MGMiLCJ2ZXIiOiIxLjAifQ.rWbOooQ7Jrdjblj0pBDy07hIe3IAcktu-2apM8DZztG6fZMhJLCts_PsKMh0-u3j2boG_bfFFxI9OwgxYqDWonQMVAhHlANgM3KEmEoKv_4WgG7rawamipi6JAGTejfVOQeaoUZFCHbC0N02hMNeaReyhj8gukwmQMruUOTA_u9STM5ra13BSiZZMH8OSS3HwvnI5-nkIzbQqdOD5KaR1PDPMMHKR104lX43zhK9HyJvPlv1d16BwT8ejoAUfIrJ0zxgFpsPoJg1XdVkS7FA5XB_Js0bCt5Kto0EXltx8H5bcpTB5kjZvPVsv9TmakwwutOv9dPBDU36euSNMaLjEQ"
});
messageBus.SubscribeAsync(msg => { Console.WriteLine(msg); }).GetAwaiter().GetResult();

If you can please provide me working sample code?


Create a version tag

Thank you for this.
If I try to use go-libp2p-grpc as a library, I get the following:
$ go get github.com/birros/go-libp2p-grpc
go<EMAIL_ADDRESS>reading github.com/birros/go-libp2p-grpc/go.mod at revision v0.0.0: unknown revision v0.0.0

You'd need to add a v0.0.0 tag (or v0.0.1 or whatever) so that Go will be able to download it.

Done.
Thx


Does Anyone Use Noty With Nuxtjs ?

Noty version: 3.X
Browser: Chrome
OS: Windows 10
jsFiddle link (if available): .....

You can use https://github.com/renoguyon/vuejs-noty and add it as a plugin. For example:
# plugins/noty.js
import Vue from 'vue'
import VueNoty from 'vuejs-noty'

export default () => {
  Vue.use(VueNoty, {
    timeout: 2500,
    progressBar: true
  })
}

Or you can create a wrapper yourself.

I came across this problem today and fixed it by creating a plugin.
(1) Under "plugins" folder, created a new file called "noty.js" with the following code:
import Vue from "vue";
import Noty from "noty";

Vue.prototype.$noty = (type, text) => new Noty({ type, text });

(2) Inside "nuxt.config.js" file, added the path to my plugin to the plugins property:
  plugins: ["~/plugins/noty.js"]
(3) Then inside my component, used it like so:
<template>

haahahah

</template>


gst-plugins-good-1.20.1 fails to build

Steps To Reproduce
Steps to reproduce the behavior:
1.nixos-rebuild build with latest nixos-unstable at commit 236cc2971ac72acd90f0ae3a797f9f83098b17ec
Build log
building '/nix/store/7vbzb4vyhl97m1mbn4j3nz5q15656v95-gst-plugins-good-1.20.1.drv'...
qtPreHook
unpacking sources
unpacking source archive /nix/store/x1z59xzyp4jw7821gn90jxjid9frvd88-gst-plugins-good-1.20.1.tar.xz
source root is gst-plugins-good-1.20.1
setting SOURCE_DATE_EPOCH to timestamp<PHONE_NUMBER> of file gst-plugins-good-1.20.1/po/gst-plugins-good-1.0.pot
patching sources
patching script interpreter paths in scripts/extract-release-date-from-doap-file.py
scripts/extract-release-date-from-doap-file.py: interpreter directive changed from "#!/usr/bin/env python3" to "/nix/store/553d7c4xcwp9j1a1gb9cb1s9ry3x1pi9-python3-3.9.13/bin/python3"
configuring
meson flags: --buildtype=plain         --libdir=/nix/store/pa8jyip3v45zl3rv62kn5gwwq2hdyx25-gst-plugins-good-1.20.1/lib --libexecdir=/nix/store/pa8jyip3v45zl3rv62kn5gwwq2hdyx25-gst-plugins-good-1.20.1/libexec         --bindir=/nix/store/pa8jyip3v45zl3rv62kn5gwwq2hdyx25-gst-plugins-good-1.20.1/bin --sbindir=/nix/store/pa8jyip3v45zl3rv62kn5gwwq2hdyx25-gst-plugins-good-1.20.1/sbin         --includedir=/nix/store/2k9wc4scklni0iwysdlslpi0p56vm86g-gst-plugins-good-1.20.1-dev/include         --mandir=/nix/store/pa8jyip3v45zl3rv62kn5gwwq2hdyx25-gst-plugins-good-1.20.1/share/man --infodir=/nix/store/pa8jyip3v45zl3rv62kn5gwwq2hdyx25-gst-plugins-good-1.20.1/share/info         --localedir=/nix/store/pa8jyip3v45zl3rv62kn5gwwq2hdyx25-gst-plugins-good-1.20.1/share/locale         -Dauto_features=enabled         -Dwrap_mode=nodownload         --prefix=/nix/store/pa8jyip3v45zl3rv62kn5gwwq2hdyx25-gst-plugins-good-1.20.1 -Dexamples=disabled -Ddoc=disabled -Dglib-asserts=disabled -Dgtk3=disabled -Drpicamsrc=disabled
The Meson build system
Version: 0.61.2
Source dir: /build/gst-plugins-good-1.20.1
Build dir: /build/gst-plugins-good-1.20.1/build
Build type: native build
Project name: gst-plugins-good
Project version: 1.20.1
building '/nix/store/3x76dysb874z3q9ky1s9c4p3p26hzwxs-nixos-version_fish-completions.drv'...
building '/nix/store/d2ivzizd428qw5a5389fz2cdv5lzrz43-options.json.drv'...
C compiler for the host machine: gcc (gcc 11.3.0 "gcc (GCC) 11.3.0")
C linker for the host machine: gcc ld.bfd 2.38
Host machine cpu family: x86_64
Host machine cpu: x86_64
C++ compiler for the host machine: g++ (gcc 11.3.0 "g++ (GCC) 11.3.0")
C++ linker for the host machine: g++ ld.bfd 2.38
Compiler for C supports link arguments -Wl,-Bsymbolic-functions: YES
Compiler for C supports arguments -fvisibility=hidden: YES
Compiler for C supports arguments -fno-strict-aliasing: YES
Message: Disabling GLib asserts
Has header "dlfcn.h" : YES
Has header "fcntl.h" : YES
Has header "inttypes.h" : YES
Has header "memory.h" : YES
Has header "process.h" : NO
Has header "stdint.h" : YES
Has header "stdlib.h" : YES
Has header "strings.h" : YES
Has header "string.h" : YES
Has header "sys/ioctl.h" : YES
Has header "sys/param.h" : YES
Has header "sys/socket.h" : YES
Has header "sys/stat.h" : YES
Has header "sys/time.h" : YES
Has header "sys/types.h" : YES
building '/nix/store/l81hn1mza46cn749j7p3yiwkb30q5fl9-unit-script-nix-gc-start.drv'...
Has header "unistd.h" : YES
Library m found: YES
building '/nix/store/zykm7rhc1zz8cwzly6mk0r9fd74dxr7w-options.xml.drv'...
Checking for function "asinh" with dependency -lm: YES
Checking for function "clock_gettime" with dependency -lm: YES
Checking for function "cosh" with dependency -lm: YES
Checking for function "dcgettext" with dependency -lm: YES
Checking for function "getpagesize" with dependency -lm: YES
Checking for function "isinf" with dependency -lm: YES
Checking for function "mmap" with dependency -lm: YES
Checking for function "mmap64" with dependency -lm: NO
Checking for function "sinh" with dependency -lm: YES
Checking for function "gmtime_r" with dependency -lm: YES
Checking for size of "char" : 1
Checking for size of "int" : 4
Checking for size of "long" : 8
Checking for size of "short" : 2
Checking for size of "void*" : 8
Checking for size of "off_t" : 8
Header <dlfcn.h> has symbol "RTLD_NOLOAD" : YES
Compiler for C supports arguments -Wmissing-declarations: YES
Compiler for C++ supports arguments -Wmissing-declarations: YES
Compiler for C supports arguments -Wredundant-decls: YES
Compiler for C++ supports arguments -Wredundant-decls: YES
Compiler for C supports arguments -Wwrite-strings: YES
Compiler for C++ supports arguments -Wwrite-strings: YES
Compiler for C supports arguments -Winit-self: YES
Compiler for C++ supports arguments -Winit-self: YES
Compiler for C supports arguments -Wmissing-include-dirs: YES
Compiler for C++ supports arguments -Wmissing-include-dirs: YES
Compiler for C supports arguments -Wno-multichar: YES
Compiler for C++ supports arguments -Wno-multichar: YES
Compiler for C supports arguments -Wvla: YES
Compiler for C++ supports arguments -Wvla: YES
Compiler for C supports arguments -Wpointer-arith: YES
Compiler for C++ supports arguments -Wpointer-arith: YES
Compiler for C supports arguments -Wmissing-prototypes: YES
Compiler for C supports arguments -Wdeclaration-after-statement: YES
Compiler for C supports arguments -Wold-style-definition: YES
Compiler for C supports arguments -Waggregate-return: YES
Found pkg-config: /nix/store/0sjmycy1s616jag5fvsczjgzj7rf0kc2-pkg-config-wrapper-0.29.2/bin/pkg-config (0.29.2)
Run-time dependency gstreamer-1.0 found: YES 1.20.1
Run-time dependency gstreamer-base-1.0 found: YES 1.20.1
Run-time dependency gstreamer-net-1.0 found: YES 1.20.1
Run-time dependency gstreamer-controller-1.0 found: YES 1.20.1
Run-time dependency gstreamer-check-1.0 found: YES 1.20.1
Run-time dependency gstreamer-pbutils-1.0 found: YES 1.20.1
Run-time dependency gstreamer-allocators-1.0 found: YES 1.20.1
Run-time dependency gstreamer-app-1.0 found: YES 1.20.1
Run-time dependency gstreamer-audio-1.0 found: YES 1.20.1
Run-time dependency gstreamer-fft-1.0 found: YES 1.20.1
Run-time dependency gstreamer-riff-1.0 found: YES 1.20.1
Run-time dependency gstreamer-rtp-1.0 found: YES 1.20.1
Run-time dependency gstreamer-rtsp-1.0 found: YES 1.20.1
Run-time dependency gstreamer-sdp-1.0 found: YES 1.20.1
Run-time dependency gstreamer-tag-1.0 found: YES 1.20.1
Run-time dependency gstreamer-video-1.0 found: YES 1.20.1
Run-time dependency gstreamer-gl-1.0 found: YES 1.20.1
Message: GStreamer OpenGL window systems: wayland x11
Message: GStreamer OpenGL platforms: egl glx
Message: GStreamer OpenGL apis: gles2 gl
Run-time dependency gstreamer-gl-prototypes-1.0 found: YES 1.20.1
Run-time dependency gstreamer-gl-x11-1.0 found: YES 1.20.1
Run-time dependency gstreamer-gl-wayland-1.0 found: YES 1.20.1
Run-time dependency gstreamer-gl-egl-1.0 found: YES 1.20.1
Run-time dependency zlib found: YES 1.2.12
Run-time dependency glib-2.0 found: YES 2.72.1
Run-time dependency gobject-2.0 found: YES 2.72.1
Run-time dependency gio-2.0 found: YES 2.72.1
Run-time dependency orc-0.4 found: YES 0.4.32
Program orcc found: YES (/nix/store/8ahhb6519qa0ryjdcylq8jj5bjaghlrf-orc-0.4.32-dev/bin/orcc)
Fetching value of define "__ILP32__" :
Program nasm found: YES (/nix/store/70ij88lq47r2vvag86jk07nwifna5rd2-nasm-2.15.05/bin/nasm)
Message: nasm found on x86-64
Header <gst/gstconfig.h> has symbol "GST_DISABLE_GST_DEBUG" with dependency gstreamer-1.0: NO
Message: GStreamer debug system is enabled
Program python3 found: YES (/nix/store/553d7c4xcwp9j1a1gb9cb1s9ry3x1pi9-python3-3.9.13/bin/python3.9)
WARNING: Python files installed by Meson might not be found by python interpreter.
 This warning can be avoided by setting "python.platlibdir" option.
WARNING: Python files installed by Meson might not be found by python interpreter.
 This warning can be avoided by setting "python.purelibdir" option.
Message: Nasm configured on x86-64
Library bz2 found: YES
Has header "bzlib.h" : YES
Has header "sys/soundcard.h" : YES
Message: Checking headers needed for Open Sound System 4 plugin...
Has header "fcntl.h" : YES (cached)
Has header "sys/ioctl.h" : YES (cached)
Has header "sys/stat.h" : YES (cached)
Has header "sys/types.h" : YES (cached)
Message: Required headers found, building Open Sound System 4 plugin.
Has header "linux/videodev2.h" : YES
Message: building v4l2 plugin
Run-time dependency gudev-1.0 found: YES 237
Run-time dependency libv4l2 found: YES 1.22.1
Run-time dependency x11 found: YES 1.7.2
Run-time dependency xext found: YES 1.3.4
Checking for function "XShmAttach" with dependency xext: YES
Run-time dependency xfixes found: YES 6.0.0
Run-time dependency xdamage found: YES 1.1.5
Has header "aalib.h" : YES
Library aa found: YES
Run-time dependency cairo-gobject found: YES 1.16.0
Run-time dependency flac found: YES 1.3.4
Run-time dependency gdk-pixbuf-2.0 found: YES 2.42.8
Dependency gtk+-3.0 skipped: feature gtk3 disabled
Run-time dependency jack found: YES 1.9.19
Run-time dependency libjpeg found: YES 2.1.3
Library mp3lame found: YES
Header <lame/lame.h> has symbol "lame_init" : YES
building '/nix/store/mf6lyly23h7hidbrdy5cln93ahl9lpwl-unit-nix-gc.service.drv'...
Header <lame/lame.h> has symbol "lame_set_VBR_quality" : YES
Header <lame/lame.h> has symbol "MEDIUM" : YES
Run-time dependency caca found: YES 0.99.beta20
building '/nix/store/nw2n46z2w3vi8ssc1l18igh85brwlycq-options-docbook.xml.drv'...
Run-time dependency libdv found: YES 1.0.0
Run-time dependency libpng found: YES 1.6.37
Run-time dependency libmpg123 found: YES 1.29.3
Run-time dependency libraw1394 found: YES 2.1.2
Run-time dependency libavc1394 found: YES 0.5.4
Run-time dependency libiec61883 found: YES 1.2.0
Checking for function "avc1394_send_command" with dependency libavc1394: YES
Checking for function "rom1394_free_directory" with dependency libavc1394: YES
C++ compiler for the host machine: g++ (gcc 11.3.0 "g++ (GCC) 11.3.0")
C++ linker for the host machine: g++ ld.bfd 2.38
Run-time dependency qt5 (modules: Core, Gui, Qml, Quick) found: YES 5.15.3 (pkg-config)
Program moc-qt5 moc found: NO

ext/qt/meson.build:51:2: ERROR: Program 'moc-qt5 moc' not found or not executable

A full log can be found at /build/gst-plugins-good-1.20.1/build/meson-logs/meson-log.txt
note: keeping build directory '/tmp/nix-build-gst-plugins-good-1.20.1.drv-2'
error: builder for '/nix/store/7vbzb4vyhl97m1mbn4j3nz5q15656v95-gst-plugins-good-1.20.1.drv' failed with exit code 1

Notify maintainers
@matthewbauer
Metadata
 - system: `"x86_64-linux"`
 - host os: `Linux 5.15.43, NixOS, 22.11 (Raccoon), 22.11pre-git`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.8.1`
 - channels(kn): `"nixos"`
 - channels(root): `"nixos"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Pinging @Mindavi due to 43edcbfc7393e9a385ff2d0c5c23412742fbb483
Pinging @schmittlauch due to c4f1d21e66188faf5e16e09493e0267588f5b93c

Pretty sure this is fixed by #176246.


Build/grunt: JSHint code-style features are deprecated

JSHint is getting out of the code-style business; but I do think it's good to keep with set of generally formatting rules in addition to error/warning detection rules.

Warning This option has been deprecated and will be removed in the next major release of JSHint. JSHint is limiting its scope to issues of code correctness.

The JSHint documentation points to JSCS (so it would be JSHint and JSCS) although there are other solutions like ESLint available.

Going to leave this in place. From what I can tell as long as we stick to a fixed version of JSHint then we should be fine. There's no "modern" JavaScript in Phaser, and Lazer uses ESLint, so all good there.


My Cursor does not work properly

I just reported the issue and instead of seeing what fixes there may be, you just shut down the thread?

This is already a known bug and if you would've red my comment then you would've seen that this issue has already adressed in issue #7847
Please use chatrooms if you want tips how to tackle this problem. You can also view our full list of official chatrooms.


[NEW FEATURE]: RPC for DogeHouse, DogePresence

RPC for DogeHouse, dubbed, DogePresence is a feature like the one in Discord. When opened the desktop client, it automatically puts the currently opened app (except DogeHouse duh) on the profile for everyone to see. It is automatic and there is no way for the user to switch it off, but that will come soon.
PS (Only for Ben): Sorry for the new feature man.

I think it would be better to add this once it can be toggled, otherwise users have no control over it except closing dogehouse when they use other apps if they don't want RPC. Also, as far as I can see, only the user can see there own RPC right now, so this seems very incomplete. Don't get me wrong, I'm not against the idea, but it seems this has a lot of implementation that is missing, and I think it would be best to complete the whole thing first.
I also think that it should wait until the new design (#1462)

@TheOtterlord Toggling is almost done on the backend (electron process), but I would need someone to help me in the frontend. I know that new design should be completed and let it complete, till then I can add more features and add custom RPC like giving choice of which app to display like in Discord.

I think it would be better to add this once it can be toggled, otherwise users have no control over it except closing dogehouse when they use other apps if they don't want RPC. Also, as far as I can see, only the user can see there own RPC right now, so this seems very incomplete. Don't get me wrong, I'm not against the idea, but it seems this has a lot of implementation that is missing, and I think it would be best to complete the whole thing first.
I also think that it should wait until the new design (#1462)

And everyone can see the RPC not only the user, @TheOtterlord

I'm going to close this as the solution given does not match the feature. In addition, new features in Kofta are no longer allowed and new features are not currently accepted #1462 and a backend solution is also required for this feature.