SwiftUI previews: Use in-memory database by default

When using SwiftUI's previews (PreviewProvider) in Xcode and database access is triggered for any reason, Realm uses either the default configuration or the app's actual configuration. Both are problematic.
Goals
Create/modify Realm objects in SwiftUI PreviewProvider in a transient way.
Expected Results
No database file is created/modified when using a PreviewProvider and no crashes occur. Realm transactions in SwiftUI previews run completely separate from the app's database.
Actual Results
With default configuration:

~/Library/Containers/AppName/Data/Library/Application Support/default.realm is being created/opened.
Possible crash of the preview if a Realm migration is required.

With app's actual sync configuration:

Possible crash of the preview if a "real" build of the app is already running because "Multiple sync agents attempted to join the same session".
Possible crash of the preview if a Realm migration is required.

Code Sample
import SwiftUI
import RealmSwift

@main
struct RealmTestApp: SwiftUI.App {
    var body: some Scene {
        WindowGroup {
            CarList()
        }
    }
}

@objcMembers class Car: Object, ObjectKeyIdentifiable {
    dynamic var model = ""
}

struct CarList: View {
    @ObservedResults(Car.self) var cars
    var body: some View {
        Button("Add Car") {
            let realm = try! Realm()
            try! realm.write {
                realm.add(Car())
            }
        }
        List {
            ForEach(cars, id: \.self) { car in
                Text(String(car.id))
            }
        }
    }
}

struct CarList_Previews: PreviewProvider {
    static var previews: some View {
        CarList()
    }
}

Workaround
Of course, it's generally preferable to avoid creating any instances of RealmSwift.Object for a PreviewProvider, but that's not always feasible.
Unfortunately, there doesn't seem to be an easy way to globally set up a custom RealmSwift.Configuration for Xcode's preview mode when using the SwiftUI lifecycle. Therefore, the configuration has to be set when the preview is being created (preferrably only once; the following is just for demonstrative purposes):
struct CarList_Previews: PreviewProvider {
    static var previews: some View {
        Realm.Configuration.defaultConfiguration = Realm.Configuration(
            inMemoryIdentifier: "XcodePreview",
            schemaVersion: 0
        )
        return CarList()
    }
}

Environment
Xcode 12.5
Realm 10.7.4 (via SPM)

This sounds like a good idea to me if there's a good way to do it. I suspect there's some complications, but we should try to see what we can do to work better with Previews.

The following works, but I don't know nearly enough about Realm to guess what side-effects that might introduce:
https://github.com/andreasley/realm-cocoa/commit/75211315a722b6c886a9705cec80501ffc1fae67

I'm using the following workaround. This creates two configurations - one is the 'main'  and the other is 'preview'.
The preview is set to be 'in_memory'. I also load in sample data from a Data asset preview_realm.json in the Preview Assets.xcassets bundle.
I inject the configuration at App startup as below
.environment(.realmConfiguration, RealmManager.main)
Here's the actual structure
struct RealmManager {

    static var instance = RealmManager()

    lazy var realm = try! Realm(configuration: RealmManager.main)

    static let main: Realm.Configuration =  {
        var cfg = Realm.Configuration()
        print("Created 'main' Realm Configuration")
        return cfg
    }()

    static let preview: Realm.Configuration = {
        var cfg = Realm.Configuration(inMemoryIdentifier: "in_memory")
        do {
            var realm = try Realm(configuration: cfg)
            let schemaVersion = try Repository.fromBundledAsset("preview_realm", realm: realm)
            print("In-memory schema: \(schemaVersion) for loaded preview realm")
        } catch {
            fatalError("Failed to load 'in_memory' Realm: \(error)")
        }
        return cfg
    }()

}

For each preview I inject the configuration as below:-
struct MyView_Previews: PreviewProvider {
    static var previews: some View {
        MyView(
            .environment(\.realmConfiguration, RealmManager.preview)
    }
}

Seems to work just fine.

A year later... is there an official way of handling this? I could not find any information in the documentation on how to use Previews with Realm and this is essential to be able to have a good development experience with SwiftUI

I found working examples in the official documentation https://www.mongodb.com/docs/realm/sdk/swift/swiftui/swiftui-previews/
`import Foundation
import RealmSwift
class MockRealms {
static var config: Realm.Configuration {
    MockRealms.previewRealm.configuration
}

static var previewRealm: Realm = {
     var realm: Realm
     let identifier = "previewRealm"
     let config = Realm.Configuration(inMemoryIdentifier: identifier)
     do {
        realm = try Realm(configuration: config)
        try realm.write {

            for index in 0...5 {
                let item = Item()
                item.summary = "toto \(index)"
                realm.add(item)
            }
        }

        return realm
     } catch let error {
        fatalError("Error: \(error.localizedDescription)")
     }

}()
}`
and then add configuration in the preview
`import SwiftUI
import RealmSwift
struct ItemList: View {
@ObservedResults(Item.self) var items
var body: some View {
    VStack {
        List {
            ForEach(items) { item in
                ItemRow(item: item)
            }
        }
    }
    .navigationBarTitle("Items", displayMode: .inline)
}

}
struct ItemList_Previews: PreviewProvider {
static var previews: some View {
ItemList()
.environment(.realmConfiguration, MockRealms.config)
}
}`


Ensure that BigtableIO closes the stream after reading

Make sure to close the reader, (and therefore the underlying stream) when finishing a read in BigtableIO. See the issue here: https://github.com/apache/beam/issues/31477.

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[x] Update CHANGES.md with noteworthy changes.
[x] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI or the workflows README to see a list of phrases to trigger workflows.

Run Java_Examples_Dataflow Precommit

retest this please


feat: Threading integration

Fix #114
cc @mmerickel

Codecov Report

Merging #258 into master will decrease coverage by 14.07%.
The diff coverage is 95.12%.

@@             Coverage Diff             @@
##           master     #258       +/-   ##
===========================================
- Coverage   81.74%   67.67%   -14.08%
===========================================
  Files          32       30        -2
  Lines        2750     2487      -263
  Branches      444      409       -35
===========================================
- Hits         2248     1683      -565
- Misses        340      667      +327
+ Partials      162      137       -25

Impacted Files
Coverage Δ

sentry_sdk/integrations/__init__.py
88.23% <100%> (+0.23%)
:arrow_up:

sentry_sdk/integrations/threading.py
94.87% <94.87%> (ø)

sentry_sdk/integrations/celery.py
0% <0%> (-90.33%)
:arrow_down:

sentry_sdk/integrations/pyramid.py
0% <0%> (-85.57%)
:arrow_down:

sentry_sdk/integrations/rq.py
0% <0%> (-80%)
:arrow_down:

sentry_sdk/integrations/flask.py
0% <0%> (-77.89%)
:arrow_down:

sentry_sdk/_compat.py
53.33% <0%> (-26.67%)
:arrow_down:

sentry_sdk/integrations/aws_lambda.py
0% <0%> (-19.63%)
:arrow_down:

sentry_sdk/integrations/_wsgi_common.py
70% <0%> (-12.86%)
:arrow_down:

sentry_sdk/integrations/dedupe.py
89.47% <0%> (-10.53%)
:arrow_down:

... and 21 more

Continue to review full report at Codecov.

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


Create a dead letter queue on api/github/webhook-subscription

There seem to be certain instances where we are "losing" messages from the push request from pub/sub. I have looked into this here where I can see all the updates except for one. We did not create or update the checkruns for a certain sha. Updating the PR caused it to update and create the new checkRuns. I could not track the message in pubsub.
The hope is that if we are seeing undeliverable messages in the push that they show up in the dlq.

Will not deliver.


properly handle characters for JSON parsing (runtime)

modify this code line that can provoke JSON parsing error
var decodedData = $('').html(JSON.stringify(jsonContent.data)).text(); // MBG : find a better method

Thanks Abir, it is indeed a better method

We need to ensure that HTML entities within the json data are properly decoded (for rendering HTML elements and function calls) and  also to ensure handling properly characters for JSON parsing (prevents JSON parsing errors)

Thanks Abir, all other issue fixed


Improve support and documentation of multi-valued RDNs (containing sets of AVAs) for X509 Distinguished Names

Add/harmonize multi-valued RDN support and respective documentation for the ca, cmp, req, storeutl, and x509 apps
Fix #12765 by clearly documenting the semantics of X509_NAME_cmp(), referencing relevant RFCs
Restrict normal return values of X509_NAME_cmp() to {-1,0,1} to avoid confusion with -2 used for indicating errors
Fix output of X509_NAME_oneline() for multi-valued RDNs, escaping '/' and '+' in values
Re-format long lines in X509_NAME_print_ex.pod to fit within the 80 chars limit

@t8m, very pleased that you reviewed this immediately!
I've just handled all comments.

I'm actually amazed that effort is spent on updating X509_NAME_oneline() and X509_NAME_print(), considering that they are old, clunky, and discouraged to use:

NOTES
The functions X509_NAME_oneline() and X509_NAME_print() produce a non
standard output form, they don't handle multi character fields and have
various quirks and inconsistencies.  Their use is strongly discouraged
in new applications and they could be deprecated in a future release.

The proper move would be to actually deprecate them.

I'm amazed that effort is spent on updating X509_NAME_oneline() and X509_NAME_print(), considering that they are old, clunky, and discouraged to use:

I notice that after I had already spent the effort of improving X509_NAME_oneline().
So one should better use X509_NAME_print_ex() or X509_NAME_print_ex_fp() instead?
These have the disadvantage that they cannot be used (directly) for printing into a string buffer.
This is what is done a lot, e.g., in cmp_vfy.c,
It is also still used incrypto/x509 and by several apps.

Is this PR fine now?
Then it could still make it into the beta..

BTW, I found in the OpenSSL repository only two test certs that include multi-valued RDNs:
test/v3-cert1.pem test/certs/bad-pc6-cert.pem:
        Serial Number: 832970823 (0x31a62047)
        Issuer: C = US, O = National Aeronautics and Space Administration
         Subject: C = US, O = National Aeronautics and Space Administration, serialNumber = 16 + CN = Steve Schoch

and
test/certs/bad-pc6-cert.pem:
Certificate:
        Serial Number: 2 (0x2)
        Issuer: CN = server.example, CN = proxy 1
        Subject: CN = server.example, CN = proxy 1 + CN = proxy 6

and for both of them it looks like nothing specific is tested regarding multi-valued RDNs.

I would approve this, but it needs Changes entry because we are changing the behavior of some apps.

I would approve this, but it needs Changes entry because we are changing the behavior of some apps.

Good point that this change should be mentioned in CHANGES.md  - done.

@t8m, this PR should also be ready for approval now :)

24 hours has passed since 'approval: done' was set, but this PR has failing CI tests.  Once the tests pass it will get moved to 'approval: ready to merge' automatically, alternatively please review and set the label manually.

Merged - thanks


Empty cell in tabular data results in wrong slice length

Description
When reading tabular data if a cell value is missing under the last header, the string slice is one less the rest.

Steps to reproduce the issue:

Create a simple xlsx file with the following

col1
col2
col3
col4

a
b
c
d

b
c
d

a

c
d

a
b

d

a
b
c

Open file and read rows

package main

import (
    "fmt"

    "github.com/xuri/excelize/v2"
)

func main() {
    f, err := excelize.OpenFile("Book1.xlsx")
    if err != nil {
        fmt.Println(err)
        return
    }
    defer func() {
        // Close the spreadsheet.
        if err := f.Close(); err != nil {
            fmt.Println(err)
        }
    }()

    // Get all the rows in the Sheet1.
    rows, err := f.GetRows("Sheet1")
    if err != nil {
        fmt.Println(err)
        return
    }
    for _, row := range rows {
        fmt.Printf("%v, %v\n", row, len(row))
    }
}

Describe the results you received:
If you run the above code you will get the following output which lead to validation errors
[col1 col2 col3 col4], 4
[a b c d], 4
[ b c d], 4
[a  c d], 4
[a b  d], 4
[a b c], 3 // VALIDATION errors

Describe the results you expected:
I expect the slices to be the same length
Output of go version:
1.17.5 linux/amd64

Excelize version or commit ID:
v2.5.0

Environment details (OS, Microsoft Excel™ version, physical, etc.):
Linux Ubuntu WSL2.0
** My workaround -- not the best but maybe can help you
var headerLen int

firstRow := true
for _, row := range rows{
  if firstRow{
    headerLen = len(row)
    firstRow = false
  }

  // validate here
  for {
    if len(row) != headerLen{
      row = append(row, "")
      continue
    }
   break
  }
}

Thanks for your issue, as the documentation of the GetRows function says, the tail continuously empty cell in each row will be skipped.

Hi @duysqubix, I have made made a figure in issue #1245 to explain what kind of cells will be skipped for your reference, and I closed this issue. If you have any questions, please let me know to reopen this anytime.

Why still exist the issue in v2.8.0

This is not an issue, that by design. I intentionally made the GetRows function return cells on each as is, would not fill empty cell on the tail of each row. I already explained what kind of cells will be skipped in issue #1245.

ok, thanks.


Feature: relevant metrics in dashboard mode.

Hello, it would be great to have some relevant metrics exposed running netfetch in dashboard mode.

Hello @riuvshyn - thanks for the suggestion!
Can you explain a bit more in depth what you mean?
What kind of metrics were you thinking of?

Hello @deggja, basically I wanted pretty much similar info that dashboard exposes to be exposed in prometheus metrics format, so using it people can create alerts for pods reported as not covered by net pols.

Hello @deggja, basically I wanted pretty much similar info that dashboard exposes to be exposed in prometheus metrics format, so using it people can create alerts for pods reported as not covered by net pols.

Got it - thanks.
I believe this ties nicely into the existing issue on adding a prometheus endpoint here #127

Closing this issue. Work related to relevant metrics aka a prometheus endpoint will be linked and referenced in #127


Show text in input

Hi all
I have a input box, that makes a suggestion to the user, as soon as user type something inside.

It works as expected.
In addition, I want that the text Kalkulationswerk appears inside the input box but not a part of input value. The input value should be only 3840.
Is there anyway to do that?
Thanks

Yes and no (as in: it's not in 1.42). OpenUI5 1.44 introduces a textFormatMode property. If you take the beta version, you can already try it out:
https://openui5beta.hana.ondemand.com/explored.html#/sample/sap.m.sample.InputKeyValue/preview
The official 1.44 release isn't too far out either.

Yes to much.


erlang: highlight is_map and map_size as BIFs

This adds syntax highlighting support for the new-ish map functions
is_map/1 and map_size/1.

@hcs42, it looks like you're the current maintaining of the Erlang runtime files?

Codecov Report

Merging #1903 into master will increase coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1903      +/-   ##
==========================================
+ Coverage   75.05%   75.07%   +0.02%
==========================================
  Files          76       76
  Lines      125303   125263      -40
==========================================
  Hits        94045    94045
+ Misses      31258    31218      -40

Impacted Files
Coverage Δ

src/if_py_both.h
75.31% <0%> (-0.71%)
:arrow_down:

src/os_unix.c
57.05% <0%> (-0.05%)
:arrow_down:

src/channel.c
83.64% <0%> (+0.04%)
:arrow_up:

src/libvterm/src/screen.c
74.62% <0%> (+0.15%)
:arrow_up:

src/term.c
52.93% <0%> (+0.17%)
:arrow_up:

src/message.c
68.35% <0%> (+0.25%)
:arrow_up:

src/window.c
81.29% <0%> (+0.49%)
:arrow_up:

src/if_xcmdsrv.c
83.88% <0%> (+0.55%)
:arrow_up:

src/version.c
80.3% <0%> (+1.01%)
:arrow_up:

src/gui_beval.c
44.89% <0%> (+4.95%)
:arrow_up:

Continue to review full report at Codecov.

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

Yes, I'm the maintainer of the Erlang runtime files.
However, the development process for runtime files is not to create PRs here but for the maintainer to mail it to @brammool, who will eventually include it in a runtime file update (see e.g. https://github.com/vim/vim/pull/1756).
The Erlang runtime files are developed here: https://github.com/vim-erlang/vim-erlang-runtime Could you create a PR there?

okay, guess you'll take care then. Closing.

Moved to vim-erlang/vim-erlang-runtime#39.


Notifications do not render

Notifying from a controller like so:
use Krucas\Notification\Facades\Notification;

class SomeController
{
    protected function notify()
    {
        Notification::success(trans('auth.notification.login'));
        return redirect()->intended('/');
    }
}

...and attempting to render them in my view:
@yield('alerts', Notification::count() ? '
' . Notification::showAll() . '
' : '')

...results in no notifications ever visible.  DebugBar shows that the notifications are available in my session:
array:1 [
  "default" => array:1 [
    0 => Krucas\Notification\Message {#265
      #message: "Welcome!"
      #format: "
:message
"
      #type: "success"
      #flash: true
      #position: null
    }
  ]
]

...and even Notification::count() shows 0.  I have followed the installation instructions exactly, as far as I can tell, and instant notifications do work as expected.
Notification version 5.1.0, Laravel version 5.1.26

Disregard.  I had the middleware applied to kernel.php but it was commented out. :no_mouth:


Add le petit renard and modified README.fr.md

Added LePetitRenard as a contributor
Modified README.fr.md to better fit its original english meaning and corrected some spelling mistakes

Hey @LePetitRenard: Do you wanna reopen this pull request so that I can merge it to this project?


Dogstatsd mixer metrics adapter

This PR adds a datadog adapter that sends metrics using the dogstatsd flavor of statsd. I modeled this largely using the statsd and prometheus adapters since dogstatsd "tags" are similar to prometheus "labels" applied to statsd metric names.
I have this adapted currently running in a staging environment of mine and can confirm it is working as intended. I've only implemented statsd type metrics with tags from dimensions. There is also the potential to emit checks/events to datadog using istio telemetry but that's out of scope for what I wanted to build for an initial adapter.
Please let me know how this looks or if I've missed anything important.

Hi @awwithro. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

I signed it!

/ok-to-test

@awwithro: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
7916fde0c90ca5db38fd635d7d5ba8d239080708
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
7916fde0c90ca5db38fd635d7d5ba8d239080708
link
/test istio-unit-tests

prow/istio-presubmit.sh
7916fde0c90ca5db38fd635d7d5ba8d239080708
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-presubmit.sh
7916fde0c90ca5db38fd635d7d5ba8d239080708
link
/test istio-presubmit

prow/istio-unit-tests.sh
d6a4dbe10895737ac580c634ec7ed58b8775fc8b
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
d6a4dbe10895737ac580c634ec7ed58b8775fc8b
link
/test istio-unit-tests

prow/istio-presubmit.sh
d6a4dbe10895737ac580c634ec7ed58b8775fc8b
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
d6a4dbe10895737ac580c634ec7ed58b8775fc8b
link
/test istio-unit-tests

prow/istio-presubmit.sh
13060ac479541fa6ce99338bc5c1dcbedde52645
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-presubmit.sh
13060ac479541fa6ce99338bc5c1dcbedde52645
link
/test istio-presubmit

prow/istio-unit-tests.sh
13060ac479541fa6ce99338bc5c1dcbedde52645
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-presubmit.sh
13060ac479541fa6ce99338bc5c1dcbedde52645
link
/test istio-presubmit

prow/istio-unit-tests.sh
ed705e63480ce5c570d500123c4d16fe21e4bc83
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
ed705e63480ce5c570d500123c4d16fe21e4bc83
link
/test istio-unit-tests

prow/istio-presubmit.sh
ed705e63480ce5c570d500123c4d16fe21e4bc83
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

PTAL, I've incorporated changes around docs/validation config. I think that covers the primary asks other than the string formatting which I can add when the stringifier is merged

It's a self-consistent model: SetMetricTypes is passed all metrics that
could be sent to the handler, and HandleMetric is only called for metrics
that were introduced with SetMetricTypes.
This lets you do all static validation in Validate, and the only errors
that emerge from HandleXXX methods are the usual runtime errors.
On Tue, Feb 13, 2018 at 2:01 PM, Alex Withrow<EMAIL_ADDRESS>wrote:

@awwithro commented on this pull request.
In mixer/adapter/dogstatsd/dogstatsd.go
https://github.com/istio/istio/pull/3368#discussion_r168015739:

if ac.BufferLength > 0 {

client, err = statsd.NewBuffered(ac.Address, int(ac.BufferLength))

} else {

client, err = statsd.New(ac.Address)

}
if err != nil {

env.Logger().Errorf("Unable to create dogstatsd client: %v", err)

return nil, err

}
client.Namespace = ac.Prefix
client.Tags = flattenTags(ac.GlobalTags)

// Generate a warning for metrics that the Mixer emits but aren't handled by the adapter
for mname := range b.metricTypes {

if _, found := ac.Metrics[mname]; !found {

	env.Logger().Warningf("%s is a valid metric but is not configured to be handled byt the datadog adapter", mname)

Stepping back a bit. When SetMetricsType gets called on the builder, are
the metrics that are passed in all of the metric templates that the mixer
knows about or just the metrics that have rules that map them to the
adapter? My first thought was that it was all metrics and it made sense to
me to log and continue in that case.
If SetMetricsType is only passing specific metrics to the handler and the
handler doesn't have the corresponding config then, yes a validation error
makes sense there.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/3368#discussion_r168015739, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AVucHQxi5Pk99JGGc0Daca2KZxqWcd-3ks5tUgYzgaJpZM4SAZKy
.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-presubmit.sh
ed705e63480ce5c570d500123c4d16fe21e4bc83
link
/test istio-presubmit

prow/istio-unit-tests.sh
11314c21b232ce86cddcbc5640c5d619beb230a8
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
11314c21b232ce86cddcbc5640c5d619beb230a8
link
/test istio-unit-tests

prow/istio-presubmit.sh
11314c21b232ce86cddcbc5640c5d619beb230a8
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-presubmit.sh
11314c21b232ce86cddcbc5640c5d619beb230a8
link
/test istio-presubmit

prow/istio-unit-tests.sh
ce309bd83a60af21e4f8f78e3f9c3af53b1e4466
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
ce309bd83a60af21e4f8f78e3f9c3af53b1e4466
link
/test istio-unit-tests

prow/istio-presubmit.sh
ce309bd83a60af21e4f8f78e3f9c3af53b1e4466
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/lgtm

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-presubmit.sh
ce309bd83a60af21e4f8f78e3f9c3af53b1e4466
link
/test istio-presubmit

prow/istio-unit-tests.sh
07aa8f3e0d61dc6e2a8feda610424f76262fd87c
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
07aa8f3e0d61dc6e2a8feda610424f76262fd87c
link
/test istio-unit-tests

prow/istio-presubmit.sh
07aa8f3e0d61dc6e2a8feda610424f76262fd87c
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
07aa8f3e0d61dc6e2a8feda610424f76262fd87c
link
/test istio-unit-tests

prow/istio-presubmit.sh
285c3796aa5c8a9c754fb22d59262948fd09b5d0
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-presubmit.sh
285c3796aa5c8a9c754fb22d59262948fd09b5d0
link
/test istio-presubmit

prow/istio-unit-tests.sh
285c3796aa5c8a9c754fb22d59262948fd09b5d0
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-presubmit.sh
285c3796aa5c8a9c754fb22d59262948fd09b5d0
link
/test istio-presubmit

prow/istio-unit-tests.sh
bff22fc8fa7359874baa98440bbae0a9970973a0
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@awwithro: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
bff22fc8fa7359874baa98440bbae0a9970973a0
link
/test istio-unit-tests

prow/istio-pilot-e2e.sh
bff22fc8fa7359874baa98440bbae0a9970973a0
link
/test istio-pilot-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test istio-pilot-e2e

PTAL, I think this is ready to go

/lgtm

sigh, Gopkg.lock changed in master just as you approved @guptasu :/
rebased and rebuilding now. Either way thanks a ton for the feedback and help!

/lgtm

@awwithro: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-pilot-e2e.sh
ea957c2e0762d43a297908975d91ceda80bd1999
link
/test istio-pilot-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@awwithro I think I also don't have permission. The rerun is grayed out for me. Let's do /test all and if it does not work, we can ask @geeknoid to force push, since this PR was full green some before rebase.

/test all

hmm yeah the retest flag doesn't kick off the circleci tests

@awwithro Are you logged in into circle-ci when looking at the details ? If you are logged in, you should be able to see Rerun job with SSH

I've pointed out the flakey test to the oncall. If they're fine with it,
I'll force merge this change. Hold tight...
On Fri, Feb 16, 2018 at 9:24 AM Sunny Gupta<EMAIL_ADDRESS>wrote:

@awwithro https://github.com/awwithro Are you logged in into circle-ci
when looking at the details ? If you are logged in, you should be able to
see Rerun job with SSH
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/3368#issuecomment-366301303, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AVucHYk5GdXi5QtRNqf_Qq8-zdU6otCBks5tVbnGgaJpZM4SAZKy
.

Please:
a) rebase the PR
b) delete your old vendor/ directory
c) type make submodule-sync
d) make sure git status shows no conflict or other issue
e) dep ensure
f) make a PR from vendor
https://github.com/istio/istio/wiki/Vendor-FAQ

Thanks a lot for your patience and being the first to go through the new vendor process btw !

@ldemailly PTAL I think this is all set

@awwithro: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-pilot-e2e.sh
6f0f88d69c464119bdc1a9bae7465ab60535674c
link
/test istio-pilot-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Thanks again for the help and getting this added to the code base. Biggest feedback would be to consolidate the vendor faq with the contribution repo. I liked the makefile approach for setting up the submodules and extending that to validate/warn the local dev env would be a good thing.
The other thing is that I used the statsd/prometheus adapters as a reference but it looks like they predate much of code improvement/docs of later adapters. It'd be good to have some open issues to increase their quality. The label:"community/good first issue" would be a good fit for them.

there are lint failures on master
mixer/adapter/dogstatsd/dogstatsd.go:150:2:error: should write info := h.metrics[mname] instead of info, _ := h.metrics[mname] (S1005) (megacheck)
mixer/adapter/dogstatsd/dogstatsd.go:51:2:error: this value of client is never used (SA4006) (megacheck)
mixer/adapter/dogstatsd/dogstatsd.go:101:14:error: error return value not checked (ce.Appendf("metricName", "%s is a valid metric but is not configured to be handled by the datadog adapter", mname)) (errcheck)
mixer/adapter/dogstatsd/dogstatsd_test.go:225:12:error: this value of err is never used (SA4006) (megacheck)

Hmm, not sure how those slipped in.
https://github.com/istio/istio/pull/3591


Hardware ID and Release Counter (Resolved Merge Conflicts, Cleaner Code and Tests)

Purpose of the PR:
This is new PR that reflects changes from a previous PR for Hardware ID and Release Counter.
Includes code that implements hardware IDs and Release Counters for ECUs and implemented 3 attacks:
Image_rollback_attack : A compromised director attempting to install an image with an outdated release counter.
Confused_bundle_attack : A compromised director attempting to install an image with mismatching release counters.
Sneaky_director_attack : A compromised director attempting to install an image with mismatching hardware IDs. Basically, intending to install an image on an ECU which it was not meant for through leveraging the ECU Serial.

All these attacks can be called in the script through the following, please see the function definitions for more advanced function calls:
The names correspond with the usual demos.
image_rollback_attack
di.image_rollback_attack("Attack1.img")
dd.image_rollback_attack("Attack1.img")
dp.update_cycle()
ds.update_cycle()
confused_bundle_attack
di.confused_bundle_attack("Attack2.img")
dd.confused_bundle_attack("Attack2.img")
dp.update_cycle()
ds.update_cycle()
sneaky_director_attack
di.sneaky_director_attack("Attack3.img")
dd.sneaky_director_attack("Attack3.img")
dp.update_cycle()
Summary of Changes:

Refactored and cleaner code
Solved merge conflicts
Tests

Further Requirements:
More Testing
Greetings,
I have implemented release counters and hardwareIDs in all the relevant Uptane modules, including errors and exceptions linked to it.

For previous comments, see #117, which I'm now closing.


chore: update binary dep wasm-pack

Updates runtime installed binary deps wasm-pack and cargo-generate.
Manually tested these are downloaded properly and function as expected.

running 2 tests
test it_generates_with_arguments ... FAILED
test it_generates_with_defaults ... FAILED

failures:

---- it_generates_with_arguments stdout ----
thread 'it_generates_with_arguments' panicked at 'Unexpected failure.
code-1
stderr=```"Error: C:\\Users\\runneradmin\\AppData\\Local\\.wrangler\\cargo-generate-0.7.2\\cargo-generate.exe binary does not exist\n"```
command=`"D:\\a\\wrangler\\wrangler\\target\\debug\\wrangler.exe" "generate" "example" "https://github.com/cloudflare/rustwasm-worker-template" "--type" "webpack"`

Looks like this broke something - maybe you need to enable a feature flag for cargo-generate or something?

going to leave cargo-generate out of this and merge with wasm-pack update alone. can open up another PR for testing windows issues.


Updated german translations

The German translation is a bit German but most of it is Dutch.
I used the official datatables.net translations as a base.
http://cdn.datatables.net/plug-ins/1.10.15/i18n/German.json

Thanks, weird how it got in there like that!


fix(ipfs): Adding build script for IPFS

:tada: This PR is included in version 1.0.9 :tada:
Your semantic-release bot :package::rocket:


Error: Cannot find module '.prisma/client/index'

Bug description
I am using smarterasp.net for deploying my next application. I have to zip entire app(including node_modules) and extract it.
I referred following official guide-
link
I tried deploying my NextJs application, locally its working fine however when I deploy it, it shows follwing error-
Error: Cannot find module '.prisma/client/index'
Require stack:

<EMAIL_ADDRESS>h:\root\home[dir]\www\site1.next\server\app\page.js
h:\root\home[dir]\www\site1\node_modules\next\dist\server\require.js
h:\root\home[dir]\www\site1\node_modules\next\dist\server\load-components.js

How to reproduce

Expected behavior
i should render the page/
Prisma information

datasource db {
  provider = "mysql"
  url      = env("DATABASE_URL")
}

generator client {
  provider = "prisma-client-js"
}

model admins {
  id        Int      @id @default(autoincrement())
  email     String   @unique
  pass      String
  createdAt DateTime @default(now())
}

import { PrismaClient } from "@prisma/client";

const prismaClientSingleton = () => {
	return new PrismaClient();
};

const globalForPrisma = {
	prisma: undefined,
};

const prisma = globalForPrisma.prisma ?? prismaClientSingleton();

export default prisma;

if (process.env.NODE_ENV !== "production") globalForPrisma.prisma = prisma;

Environment & setup

OS: windows
Database: MySQL 8..
Node.js version: 18.17.1

Prisma Version
5.3.1

Ensure that the Node.js version you are using locally for development matches the Node.js version on the server. Some packages might be sensitive to the Node.js version, and using different versions can lead to compatibility issues.
Verify that you are correctly zipping your entire application, including the node_modules folder, as you mentioned.
Make sure that the versions of your dependencies, including Prisma and Next.js, are consistent between your local environment and the deployment environment.


deps: upgrade to ibc-go/v7 and bump ibctest go mod

Summary

Bump ibc-go to v7 from https://github.com/cosmos/ibc-go/pull/3014
Bump ibctest go mod to v7

I'm unsure how these changes are effecting the CI tests

Hmm looks like this could have been some sort of resource contention around the blocksdb in some of the example test cases.
failed to track blocks: migrate sqlite database /home/strangelove/.ibctest/databases/block.db; deleting file recommended: upsert schema_version with git sha unknown: database is locked (5) (SQLITE_BUSY)

I'll re-run the CI jobs but it may be better to just drop all occurrences of
BlockDatabaseFile: ibctest.DefaultBlockDatabaseFilepath()

in the examples directory. I'm not sure I see the benefit of keeping these in the tests anyways since it just consumes physical resources.


[FEATURE] Update Great Expectations Airflow Operator to work with the V3 Batch Request API

This PR updates the Great Expectations Airflow Operator to support the V3 Batch Request API. In doing so, it relies more heavily on core Great Expectations machinery and configurations, which obviates the need for a separate BigQuery Operator. This PR also removes support for the Great Expectations V2 Batch Kwargs API, as well as support for Airflow version < 2.

@talagluck Hey there.  This is great.  I added a couple of comments.  One is super minor, but the second one seems important :).  I have family coming into town today, so probably won't be able to get back to the PR until Monday, but the rest of it looks good to me at first glance.
BTW, I can probably build a local package and test it in our system next week, if that sounds helpful.  Have a great weekend!

Thanks, @jeffkpayne! I don't see the comments - is there a review to submit?

Thanks, @jeffkpayne! I don't see the comments - is there a review to submit?

Gah. Yep. Doing that now...

@talagluck I still owe you a test of the changes in this PR against a typical BigQuery use case in our system.  We already spiked into using the V3 API and have a working data context, expectations, and checkpoint against a BigQuery resource.
My plan is to:

Create a test DAG that uses our V3 config
Ensure that the checkpoint_kwargs being templated, along with the standard environment variable based approach gives us enough flexibility wrt run-time parameterization of things like GCP credentials and BQ tables/queries, etc

Worst case, we wouldn't be able to do it until our next sprint, the first week of January, but I should have time to start on this over the next week.

@talagluck I still owe you a test of the changes in this PR against a typical BigQuery use case in our system. We already spiked into using the V3 API and have a working data context, expectations, and checkpoint against a BigQuery resource.
My plan is to:
1. Create a test DAG that uses our V3 config

2. Ensure that the `checkpoint_kwargs` being templated, along with the standard _environment variable_ based approach gives us enough flexibility wrt run-time parameterization of things like GCP credentials and BQ tables/queries, etc

Worst case, we wouldn't be able to do it until our next sprint, the first week of January, but I should have time to start on this over the next week.

Sounds good! We can always make further updates to this down the road.

@talagluck I still owe you a test of the changes in this PR against a typical BigQuery use case in our system. We already spiked into using the V3 API and have a working data context, expectations, and checkpoint against a BigQuery resource.
My plan is to:
1. Create a test DAG that uses our V3 config

2. Ensure that the `checkpoint_kwargs` being templated, along with the standard _environment variable_ based approach gives us enough flexibility wrt run-time parameterization of things like GCP credentials and BQ tables/queries, etc

Worst case, we wouldn't be able to do it until our next sprint, the first week of January, but I should have time to start on this over the next week.

Sounds good! We can always make further updates to this down the road.

I also have an old BigQuery <-> Great Expectations DAG using the old operator, but it's a full test pipeline, so I'll do a test with that pipeline and the new operator and see how it works. Hoping to make versions for Snowflake and Redshift, too.

I agree. LGTM. I just can't see how to approve the PR from the app 🤣


Imported directive not defined (with TypeScript)

Describe the bug
Working with directives and TypeScript doesn't seem to be playing well together.
When importing a directive from a file, I get the error:
ReferenceError: <name> is not defined

I came across this issue: https://github.com/solidjs/solid/issues/569
Adding my Vite plugin as:
solidPlugin({ typescript: { onlyRemoveTypeImports: true } }),

then causes another issue: The requested module '/node_modules/.vite/deps/solid-js.js?v=dacde466' does not provide an export named 'Component'
Your Example Website or App
https://stackblitz.com/edit/solid-vite-sv6hn7?file=src/index.tsx
Steps to Reproduce the Bug or Issue

Make a file for your directive.
Import it and attach it.
Open the console to see the error.

Expected behavior
The directive is recognised.
Screenshots or Videos
No response
Platform

OS: macOs
Browser: Chrome
Version: 101.0.4951.64

Additional context
TypeScript also complains about:
'useFoo' is declared but its value is never read. ts(6133)

Duplicate of https://github.com/solidjs/solid/issues/569

See also this section of the TypeScript guide.

I think using the directive inside the components body will save it from getting tree shaken:
function Counter() {
  useFoo;
  return <button use:useFoo>Hello!</button>;
}

Would it be better to improve directives syntax instead?
Some time ago solid supported className field. It means that it's possible to make a solid field called use={[directivesArrayHere]}. IMO this would be more straightforward and obvious. Moreover it will eliminate issue with typescript (actually, these typescript guides for using directives sound like a hack)

I agree with that. I'm really liking working with directives but it does feel a bit hacky having to declare the variables randomly.

Yeah it's super unfortunate. But if you ignore TS the current syntax makes a lot of sense and is "better". I went into detail about this in some older issue when we first introduced this. These same suggestions came up at the time although it wasn't for this tree shaking problem. I'd be all for some solution to do this with compilation. Like some ability to change the file before TS gets it, but I don't want to change the existing syntax if possible.

Unfortunately, it's quite difficult to "ignore" TS because the majority of projects uses typescript.

Unfortunately, it's quite difficult to "ignore" TS because the majority of projects uses typescript.

It was not meant that we would like to actually ignore TS, but rather, "if it were not for this TS issue". We still use a lot of time and resources to improve the type definitions and documentation. Unfortunately, TS either forces us to ignore this TS issue or change our API to a less sensible one, something that we want to avoid.

Closing as stale.

Discussion is ongoing in https://github.com/solidjs/solid/discussions/805


Add folders for imagens and styles

Leave images and styles in the same directory can disrupt the minification of the CSS file.

I believe the current build procedure works fine, so I do not see how minification can be a problem. Using the less variable should be more than enough for anyone how needs customization.
Could you please clarify how having images and styles in the same folder can be an issue? I am very reluctant to merge such a huge change, that will potentially break a lot of setups without hard evidence that there is something very wrong with the current build process.

You right @vakata. I just thought it would be better this approach.


enhanced ReadMe to explain how to add both Java and Android plugins

Thanks for the PR!
The readme is also updated with #71.
I hope that makes everything a little bit clearer and we don't need to show examples for both extensions...

@StefMa I think this PR here is better. I miss javaArtifact not beeing mentioned in the README.md

There is a whole new section about the extension:
https://github.com/StefMa/AndroidArtifacts#extension-name

nobody reads the text. I prefer two short samples.
java module -> do this
android module -> do this


Grammar

"without having to worry managing clusters"

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

ID: 65331fde-51d0-365e-e182-2c3b01de8f99
Version Independent ID: 79b4f02b-27a5-019a-1b36-4e80a04f539f
Content: Quickstart: Get started analyzing with Spark - Azure Synapse Analytics
Content Source: articles/synapse-analytics/get-started-analyze-spark.md
Service: synapse-analytics
Sub-service: spark
GitHub Login: @saveenr
Microsoft Alias: saveenr

Hi @aaron-baron ,
Thanks for sharing this observation. We will investigate and get this rectified.

Hi @saveenr,
Could you please look into this grammar check at link https://learn.microsoft.com/en-us/azure/synapse-analytics/get-started-analyze-spark

@aaron-baron I submitted a fix above. The change will go live in a couple of days.

#please-close

#reassign:@SnehGunda

#assign:@SnehaGunda

#reassign:@SnehaGunda


Improve DescribeMethod cop

Tiny refactor.

Slightly strengthens the regex that checks for #/. prefixed method
names.
Uses the convenient str_type? method.

You updated the regex which is good. We could also actually just do one(second_arg.children).start_with?('.', '#') which is nice. Thoughts?

You updated the regex which is good. We could also actually just do one(second_arg.children).start_with?('.', '#') which is nice. Thoughts?

I think it's probably better to leave as is because this way we at least guarantee there's a method name involved of some kind. So #s would be valid, but # would not be. I could also change it to just . instead of .+ but I thought the + might make the intention a bit clearer.

Heh I didn't think of the case where someone might write describe Foo, '#'... alright!


M3-1886 Add subject and user agent to "Provide Feedback" mailto link

Description
The subject added is "Cloud Manager User Feedback".
The user agent is accessed directly from window.navigator.
Type of Change

Non breaking change ('update', 'change')

Note to Reviewers
Click the "Provide Feedback" link in the footer. Try different browsers and manually manipulating your user agent string with Chrome Dev Tools.

Coverage increased (+0.03%) to 33.016% when pulling 8ac79b7bd4b02b11aa3b6432d57e4adb5c7e156f on johnwcallahan:M3-1886-feedback-mailto into 779806ebe32c9080fb0aeff71b6eb8fef04fcdb6 on linode:develop.


Firmware Update Binary Sensor - 401 status

Hi Travis,
it's been some time since we've been in contact, hope you are fine. :)
the integration is working very well, I just noticed a small issue: the attributes of this specific sensor (binary_sensor.opnsense_firmware_updates_available) are empty and as you can see from the screenshot below, I notice a 401 error (unauthorized). Can you reproduce it in your test system?

Going to do some maintenance on these plugins for the next couple days and I’ll look into this. Did you update your password to be the api key instead of password though?

I thought I already did at the time, but I wanted to be sure: I deleted the integration and readded it, restarted HA and now I have this error that is stopping the integration:

I'm on HA 2022.6.7 and OPNsense 22.1.9_1-amd64.

My gosh...we already had this conversation: https://github.com/travisghansen/hass-opnsense/issues/23#issuecomment-1005004878
Sorry, my fault. I set user=API key and password=API secret changing the core.config_entries file and now everything's working perfectly, attributes included.
We should update the configuration instructions of the readme.

Yeah I’ll update the docs and the form to show api key/secret on this next update. Also note that sensor will go away now that hass supports firmware updates in a fancy way.

I'm doing a PR for the readme.
So you're implementing the new fancy stuff of HA 6? :)

My intent is to implement native firmware updates. I don’t recall exactly what release the feature came with and I haven’t looked at the integration docs yet for how make it happen but l will.

I think it was 2022.6, but I'm not sure. Anyway, great to see a tighter integration leveraging all new features.

This? https://developers.home-assistant.io/docs/device_registry_index?_highlight=firmware#device-properties

It was 2022.4: https://www.home-assistant.io/blog/2022/04/06/release-20224/#introducing-update-entities

Just published an update with the new entity. Give it a try..

Seems to be working fine, good job. Nothing else to check other than the new update sensor?

Not really atm no. On the pfSense integration I’ve added new services to execute arbitrary commands or php snippets on the fw but didn’t add those on this one.

No big deal. Thanks a lot for this one.

I just updated to 22.1.10 using it without issue :)

So cool...I upgraded and everything was ok. :)

Awesome! It will reboot the system if reboot is required so beware (or it's supposed to anyway). I'll be testing this functionality later this month with 22.7 is released.

The internet connection went down for 2m, don't know if it rebooted or just reset the interfaces.

Yeah, that likely would have occurred if you had performed the update from the opnsense UI as well (that's my guess anyway).

You should be able to check the uptime on the dashboard (or use the hass entity :) )

Correct. It didn't reboot...:)

Sorry to revive this old issue: I noticed only today that the Updates sensor is not working (unavailable). I checked HA history/logbook, and it's been 3-4 weeks in that state.
I didn't change anything on the user/API key/permissions: XMLrpc Library and System: firmware privileges are set.
I also tried adding the user to the admin group, just as a quick test, then reloaded the integration, but it's still unavailable. No entries/errors in the log.
How can I debug it?

I noticed only today that the Updates sensor is not working (unavailable)

I've just come across this project and installed it. Working well otherwise, with the exception of this same issue as @alexdelprete. The update sensor has been unavailable since install. Happy to help out debugging as needed.

Sorry team, I won’t be able to look at this for another few weeks probably :(

Sorry team, I won’t be able to look at this for another few weeks probably :(

Don't worry, nothing urgent. We can live without a sensor. :)

Issue solved in v0.1.7. Please upgrade.
Closing this.

Fixed

https://github.com/travisghansen/hass-opnsense/commit/096f9ebaaba006657056406bcfc7e5d2ff34107e
https://github.com/travisghansen/hass-opnsense/commit/d91b362e530b6c1ffeca92cb2874b08293b8958d


Configuration changes don't reach the server

Configuration changes made in Ansible do not seem to be propagated to an installed server. I installed a test server with training-server.yml, and afterwards set

---
  omero_dbpassword: "kukkuu"

and ran the playbook again. The change shows up in a config file, but not in "omero config"
(omego)[omero@omero ~]$ cat config/omero-base.config
config set omero.db.host localhost
config set omero.db.user omero
config set omero.db.name omero
config set omero.db.pass kukkuu
config set omero.data.dir /OMERO

# Additional custom options
(omego)[omero@omero ~]$ omero config list
omero.data.dir=/OMERO
omero.db.host=localhost
omero.db.name=omero
omero.db.pass=omero
omero.db.user=omero

Looking at roles/omero-server/tasks/main.yml, it seems that only omego install and omego upgrade use this configuration. Maybe there could also be a handler to run omero config set when omero-base.config or omero-additional.config are changed?

Hi @hajaalin, that's like a good suggestion. One reason I didn't originally do that is because omero-server and omero-web are using the same config, and I didn't want to restart the server (can take several minutes) for a web-only config change (should be quick), but now that there's some work on decoupling the omero.web installation this change should be fine. I'll open a PR later.

Following up #119
There's a few issues to think about such as

Load the config, or delete the old config and load
Wether to restart OMERO.server and/or OMERO.web

Hi @manics, I'm now working on LDAP setup, and after those config changes it seems necessary to restart the server. I added a handler to do this using "service" module. I also added a handler to reset the old config, but I'm not sure how safe this is. If something goes wrong in the next handler that sets the new config, the server might be left without db connection settings for example.
Also related to LDAP, I added an option to set up trust store. This also needs a server restart to take effect.

This should be handled in https://galaxy.ansible.com/openmicroscopy/omero-server/


Update snapshot generated clientset, informers and listers

Signed-off-by: prateekpandey14<EMAIL_ADDRESS>

Hi @prateekpandey14 , Thanks for the PR. We're going to upgrade client-go version to client-go-10 at the places where we've packages in this repo as a dependency then we'll merge this change.

Cool, no problem . take your time.


Bug: Reload option sometimes triggers TypeError: not all arguments converted during string formatting

Describe the bug
I am not sure what really causes this error. My wild guess is that it is somehow related to the fact that I'm using structlog that was configured per official instructions described here: https://faststream.airt.ai/latest/getting-started/logging/?h=structlog#structlog-example. Error does not happen all the time but quite frequently during development.
How to reproduce
# logger.py
import sys

import structlog

from faststream import context

def merge_contextvars(
    logger: structlog.types.WrappedLogger,
    method_name: str,
    event_dict: structlog.types.EventDict,
) -> structlog.types.EventDict:
    event_dict["extra"] = event_dict.get(
        "extra",
        context.get("log_context", {}),
    )
    return event_dict

shared_processors = [
    merge_contextvars,
    structlog.processors.add_log_level,
    structlog.processors.StackInfoRenderer(),
    structlog.dev.set_exc_info,
    structlog.processors.TimeStamper(fmt="iso"),
]

if sys.stderr.isatty():
    processors = shared_processors + [structlog.dev.ConsoleRenderer()]
else:
    processors = shared_processors + [
        structlog.processors.dict_tracebacks,
        structlog.processors.JSONRenderer(),
    ]

structlog.configure(
    processors=processors,
    logger_factory=structlog.PrintLoggerFactory(),
    cache_logger_on_first_use=False,
)
logger = structlog.get_logger()

integration with an app:
# serve.py
import logging

from faststream import FastStream
from faststream.nats import NatsBroker

from logger import logger

broker = NatsBroker(
    "nats://localhost:4222",
    logger=logger,
    log_level=logging.DEBUG,
    description="IO-bound service",
)
broker.include_router(router)
app = FastStream(broker, logger=logger)
...

And/Or steps to reproduce the behavior:

Integrate structlog per documentation
Run the app with --reload option faststream run serve:app --reload

Expected behavior
No TypeError on reload.
Observed behavior
2024-04-11T16:55:56.073888Z [info     ] FastStream app started successfully! To exit, press CTRL+C extra={}
Traceback (most recent call last):

  File "/Users/Silver/.pyenv/versions/3.12.1/envs/jetstream/bin/faststream", line 8, in <module>
    sys.exit(cli())
             ^^^^^

  File "/Users/Silver/.pyenv/versions/3.12.1/envs/jetstream/lib/python3.12/site-packages/faststream/cli/main.py", line 137, in run
    ).run()
      ^^^^^

  File "/Users/Silver/.pyenv/versions/3.12.1/envs/jetstream/lib/python3.12/site-packages/faststream/cli/supervisors/basereload.py", line 88, in run
    if self.should_restart():  # pragma: no branch
       ^^^^^^^^^^^^^^^^^^^^^

  File "/Users/Silver/.pyenv/versions/3.12.1/envs/jetstream/lib/python3.12/site-packages/faststream/cli/supervisors/watchfiles.py", line 89, in should_restart
    logger.info(message % tuple(unique_paths))
                ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~

TypeError: not all arguments converted during string formatting

Environment
Running FastStream 0.4.6 with CPython 3.12.1 on Darwin

It doesn't related to structlog.
The problem is in the following code:
Seems like Path() object can't be casted to str in your case. I'll try to fix it by manual casting, but not sure. I am just can't reproduce your case, sorry


Add faststart to ffmpeg command line

The -movflags +faststart option to ffmpeg creates the mp4 file such that the file's movie ("MOOV") atom, the bit of metadata that  describes the movie's data, appears at the beginning of the file instead of the end. This allows playback to begin once sufficient frame data is downloaded instead of until the entire mp4 file is downloaded, as the MOOV atom is usually placed at the end because it contains data that is known only once the entire movie is encoded.

Hi Dale, I didn't know about this option. Thanks for providing an explanation about how it works.


supress printing of backbround

I have v1.2 and am upgrading to v2.0. How do I supress printing the background image when someone prints the page?

This isn't working.  Anyone have any other ideas?


auto-increment badges number when receiving push notifications

how to set auto increment badges number when receiving push notifications
this is my code :

I run app frist times it's fine, but next times this.badge it not set, push.setApplicationIconBadgeNumber() only get badge from data ! Thanks

Sorry to be a jerk but I'm now closing issues that don't follow the issue submission guidelines. This plugin takes a lot of work to maintain and I can't afford the time required to solicit the required info from everyone.
I'm closing this issue but please feel free to re-open the issue if you provide the requested details from the new issue submission guidelines.
https://github.com/phonegap/phonegap-plugin-push/blob/master/.github/ISSUE_TEMPLATE.md

i'm sorry my bad @macdonst


Add Mean Average Precision (mAP) metric

The main metric for object detection tasks is the Mean Average Precision, implemented in PyTorch, and computed on GPU.
It would be nice to add it to the collection of the metrics.
The example implementation using numpy:
https://github.com/ternaus/iglovikov_helper_functions/blob/master/iglovikov_helper_functions/metrics/map.py

@Borda I can give this a go.
But I am wondering what input format would be the most consistent with the rest of the package ...
Most of the stuff that it implemented in the package takes directly tensors of shape [N,C, ...] ... and what scope would you like for it ...
So directly ...

Should it support only pre-aligned inputs?

(preds =  [N,C] , targets =  [N,C] )

Should it support bounding boxes ? if so in what format (xxyy, xyxy, xwyh, xyhw ...)? Should each update be for a single "group" (each image for instance) or should it take a grouping argument?

(preds: float =  [N1,C] , targets: long/bool =  [N2,C] ,  pred_boxes = [x,x,y,y], target_boxes = [x,x,y,y], pred_grouping: long = [N1], target_grouping: long = [N2], iou_cutoff = 0.5);  where the values in the grouping are in the range [0, NUM_GROUPS] so only boxes in the same group are compared with each other.

Should it support masks?

Option 1: (preds: float =  [N,C] , targets: long/bool =  [N,C] ,  pred_masks = [N,H,W], target_masks = [N,H,W], grouping = [N], iou_cutoff = 0.5, mask_threshold = 0.5)
Option 2: (preds: float = [N1,C,H,W] , targets: long/bool = [N2,C,H,W], pred_grouping: long = [N1], target_grouping: long = [N2], iou_cutoff = 0.5, mask_threshold = 0.5)

On the other hand ... the COCO implementation has for each image a set of positive and negative labels in each image and ignores the rest ... should that be supported?
lmk what you think
Kindest wishes,
Sebastian

mAP was added to PL some months ago and is now part of the torchmetrics package.

added with 60c0eec4954b8a9a44f437d312fd0698a75f3630

reopening as the current implementation in torchmetrics is for information retrieval and here is being asked for an implementation for object detection.

Just FYI, I have been working in a implementation over here https://github.com/jspaezp/metrics/tree/feature-spatial-average-precision but it is not quite ready for a PR.
Right now it needs ... (this is more a personal checklist before I send the PR)

[ ] DDP testing
[ ] Documentation (it is there, just has some argument updating and moving it up the classes and be more user friendly)
[ ] "Translating" tests to be consistent with the rest of the testing suite (RN it is more to do some quick and dirty TDD and not really for production consistency)
[ ] A fair amount of code cleanup/reorganization so the code order makes logical sense.

If you have any suggestion before I send the PR it would be great but not expected.
Kindest wishes,
Sebastian

@jspaezp if you are going to send a PR, please also take a look at this PR https://github.com/PyTorchLightning/pytorch-lightning/pull/4564 (it got closed after we moved from lightning to torchmetrics)
It basically was a nearly finished PR with working map implementation, but just need a bit more work on the testing aspects.

@SkafteNicki thanks for letting me know! I feel like that implementation would be really hard to convert to a class metric due to how "monolitic" it is but I can definitely work on it.
Best,
Sebastian
(btw: it would have been nice to have that PR referenced in this issue before this time)

@jspaezp I am fine with only having a functional interface (atleast to begin with).
Sorry about not referencing this before, some work got forgotten in the transfer.

hello everyone! What is the status on this PR, is someone actively working on this?
From the prior PR in PyTorchLightning/pytorch-lightning#4564 it doesn't seem that would work for DDP, which seems to be the main challenge when implementing this as a metric.
Has anyone tried first implementing this metric as a subclass of torchmetrics.Metric? - our team is currently working on this

As discussed in #190 , Perhaps adding a wrapper of pycocotools is also an option?

Perhaps adding a wrapper of pycocotools is also an option?

yep, that sounds good to me :rabbit:
cc: @SkafteNicki @maximsch2

I have a draft for a pycocotools wrapper laying around. If you want, we can use this as a basis for a PR to discuss?

@tkupek sounds good. Feel free to send a PR :]

@tkupek have you had time to take a look at this?

Sorry, not yet. Will have a look at it in my vacation in two weeks.

Hello, I was also looking for a way to evaluate my object detector in PyTorch Lightning. In the end I implemented some simple logic to make predictions in validation_step(), gather them in validation_epoch_end(), write them to a temp file and run pycocotools. This probably won't work with multi-GPU training.
I tried implementing this as a torchmetrics.Metric subclass before but was not successful, I was not sure why. I can try again.
Just a note on technical details of Metric. Can a metric state be a list of lists, where each is a list of Tensors? The documentation seems to imply that a metric state can only be a torch.Tensor or a list of torch.Tensor.
Also, is it safe to move tensor to CPU inside the compute() method?

Hi @gau-nernst ,
I've also written a torchmetrics.Metric wrapper of pycocotools here, it can be used with the lightning-assembly, but there is still a lack of numerical and multi-GPU unit-tests.

The main problem with your approach (moving to CPU, writing to file) will be performance and the lack of multi GPU training.

Hey @zhiqwang,
Awesome work. I see it's based on torchvision/detectron2 evaluation code. From what I understand from your code, it requires a COCO ground truth annotations file. I think if we add object detection mAP to torchmetrics, it should be agnostic to dataset format, and can be computed based on a set of ground truth and predicted boxes only.
@tkupek Yes these are the obvious problems with my approach. If we want performance, the logic should be implemented in torch and not used pycocotools. Some people have done this I believe. But the problem is whether the torch implementation will be accurate and consistent with pycocotools.
For multi-GPU training, if torchmetrics synchronizes target and predicted boxes accross GPUs, it should be okay to transfer the results to CPU to calculate mAP using pycocotools?

I see it's based on torchvision/detectron2 evaluation code. From what I understand from your code, it requires a COCO ground truth annotations file. I think if we add object detection mAP to torchmetrics, it should be agnostic to dataset format, and can be computed based on a set of ground truth and predicted boxes only.

Yep, I agree with you , the design and functionality of this module still requires some deliberation here.

For multi-GPU training, if torchmetrics synchronizes target and predicted boxes accross GPUs, it should be okay to transfer the results to CPU to calculate mAP using pycocotools?

I guess it is possiable, and seems that pytorch 1.9 provides a better interface supply to support the arbitrary picklable data synchronizes for multi-GPUs mode https://github.com/pytorch/vision/pull/3857

It is clearly that you all are more experts than me on this specific metric, but let me get this straight:
Do we need from torchmetrics side to support gathering of arbitrarily objects if we want this metric to work or is there some trivial way around it?

@gau-nernst I have an approach where I bypassed the need for a temp file and initialize the CocoEval class with the detections and targets directly.
To the best of my knowledge, this works with the current torchmetrics functionality.
Let me upload my rough draft in the evening, to discuss the approach together. If we agree, we can improve the code to make it acceptable for the torchmetrics package.

So this is my approach:
https://github.com/tkupek/pytorchlightning-metrics/blob/mean-average-precision/torchmetrics/image/map.py
It takes the preds and targets and converts them into COCO format in memory, then initializes the COCOeval class and runs the evaluation.
In my company this works smoothly with only a minor performance impact and even for multi GPU training.
Incomplete TODO list:

check if pycocoeval can handle tensors to avoid .cpu() calls
standardize MAPMetricResults to have all evaluation results in there
refactor some code parts (e.g. join get_coco_target and get_coco_preds methods)
add unittests and documentation in torchmetrics format

@zhiqwang @gau-nernst @SkafteNicki if you agree with this approach I can try to finalize the draft in the next week (or we can work on this together).

@tkupek Looks great to me. Please send a PR to us with what you have, then we can begin to review/comment/add to the your code.

If anyone has any opinion on the input format that preds and target should have in this metric, please comment on #467

I had a look how tensorflow is handling this and it seems like a dict is most common:
https://github.com/tensorflow/models/blob/master/research/object_detection/metrics/coco_evaluation.py
They use this for the groundtruth (target):
groundtruth_dict = {
  "groundtruth_boxes": [ymin, xmin, ymax, xmax],
  "groundtruth_classes": [num_boxes]
}

and this for predictions (preds):
detections_dict = {
  "detection_boxes": [ymin, xmin, ymax, xmax],
  "detection_scores": [num_boxes],
  "detection_classes": [num_boxes]
}

I find this intuitive and would go the same way. One could discuss if we want different dict keys for groundtruth and detections.
The CocoEval class needs a list of values anyways, but I guess it would be more consistent for the torchmetrics API to expect fiels of type Tensor?

I'd like to add, that this would be beneficial for object detection and segmentation as well

PyTorch Lightning Bolts includes two object detection models. They take a list of dictionaries containing:

"boxes": [num_boxes, 4] the ground truth boxes in (x1, y1, x2, y2) format
"labels": [num_boxes] the class label for each ground truth box

The detections contain:

"boxes": [num_boxes, 4] predicted boxes in (x1, y1, x2, y2) format
"scores": [num_boxes] detection confidences
"labels": [num_boxes] the predicted class label for each box

Torchvision ops, for example NMS, take "boxes" and "scores" consistently in the same format:
It would be convenient to standardize the keys and use the same keys as what the models use. (We can also change the models to use "classes" instead of "labels" if that's better.) Most importantly, I would prefer to use the same format for the boxes (x1, y1, x2, y2). @tkupek why do you think (y1, x1, y2, x2) is intuitive? I haven't seen this format being used before? Also note that torchvision.ops.box_convert() supports formats "xyxy" and "xywh", but not "yxyx"

@senarvi Thank you for your comment.
I think this is reasonable and fixed the dict keys to your suggestion (boxes, scores, labels).
The (y1, x1, y2, x2) format was an error in the docstring, we actually do use (x1, y1, x2, y2). Fixed that, too.
@SkafteNicki @Borda where are we on the issues with DDP and adjusting the test. Any time to look at this yet? I'm happy to help but I need some hints.

I'm considering converting the COCOeval class to pytorch in order to make the mAP, mAR calculation a bit faster.
Is this a good idea? Would love to get some feedback.

I'm considering converting the COCOeval class to pytorch in order to make the mAP, mAR calculation a bit faster and to enable calculation on GPU. Would love to get some feedback.

Using the COCOeval based metric is slow. I haven't checked if it's the the GPU-CPU transfer or if the operation is just so slow. If you can make it faster, that would be great, but I have a feeling that it's going take some effort to utilize the GPU efficiently and still keep the implementation correct.

I'm considering converting the COCOeval class to pytorch in order to make the mAP, mAR calculation a bit faster and to enable calculation on GPU. Would love to get some feedback.

I agree with @senarvi, it would be great but is probably not trivial. Feel free to give it a try based on the existing PR and let us know what you learned 🙂


[FR] Documentation for Image option in notifications

With the latest v8.6.0, the option to send images in notifications has been added. The existing reference document has not been updated.
Would be great if the documentation could be updated. If this will takes time then do mention how this would work here for the time being as sending an image URL with the option image does not seem to be attaching an image to the notification.

Option name is imageUrl.
https://github.com/firebase/firebase-admin-node/blob/4ae950d895c69442561990195566a90882f24890/src/index.d.ts#L4176-L4179
Our docs are frozen at the moment, so expect the updates to be published in a week or so.

@hiranya911 thanks for the quick response. I have tried with the option imageUrl and still don't seem to be getting an image in my notification on my device. This is my notification payload:
"notification": {
  "title": "Notification Testing",
  "body": "Hello! This is a test message",
  "imageUrl": "https://lh3.googleusercontent.com/17Yiswf2USMLEi8au4qTVThQrIIZ3dozKvn5B67IE78HMJr03VSe3O1CoiU9hEI2Vw"
}

I have checked that the image is a PNG and is less than 1 MB as per the requirements present in the API documentation. Could you help me out with what could be a possible reason for why the image is not getting attached.

Can you share a complete code snippet? With the full message and the send API call.

Can you also log the message to the console and share the output?
console.log(message);

Feel free to redact any sensitive parts. @lahirumaramba did some testing where he verified the imageUrl is being correctly sent to the FCM service. So this might be a backend issue.

Sure. Here is the message object that we send to FCM:
{
    name: 'APP_NOTIFICATION_TEST',
    notification: {
        title: 'Testing App Notification',
        body: 'Hi User, Welcome to ****! This is a test message.',
        imageUrl: 'https://lh3.googleusercontent.com/17Yiswf2USMLEi8au4qTVThQrIIZ3dozKvn5B67IE78HMJr03VSe3O1CoiU9hEI2Vw'
    },
    data: {},
    android: {
        priority: 'NORMAL',
        ttl: 86400000,
        fcm_options: {
            analytics_label: 'APP_NOTIFICATION_TEST'
        }
    },
    token: '***FIREBASE_TOKEN***'
}

I just verified again, that the SDK is sending the right message to the backend:
{"message":{"notification":{"title":"Testing App Notification","body":"Hi User, Welcome to ****! This is a test message.","image":"https://lh3.googleusercontent.com/17Yiswf2USMLEi8au4qTVThQrIIZ3dozKvn5B67IE78HMJr03VSe3O1CoiU9hEI2Vw"},"data":{},"android":{"priority":"NORMAL","ttl":"86400s","fcm_options":{"analytics_label":"APP_NOTIFICATION_TEST"}},"topic":"foo"}}

That looks good. @rohitjmathew please verify you're indeed using v8.6.0 of the Admin SDK. Older versions will silently drop the imageUrl parameter altogether.
@chong-shao @lahirumaramba can you folks take a look and see what's going on? (we might need to move this thread to a support request or an internal bug)

Yes, I have checked that I'm using v8.6.0 and have also deleted node_modules and tried again.
Also attaching the firebase-admin dependency from package.json for my service :
"firebase-admin": "^8.6.0",

Hi Rohit, to investigate the issue on our backend, I would suggest filing a support ticket to Firebase. From there you can share the information including the token and message id necessary for the debugging. Thanks!

i receive image when using image in the payload not imageUrl documentation is total mess.

If you're using the Node.js SDK, the field is called imageUrl: https://github.com/firebase/firebase-admin-node/blob/6bcffa2fdca8ee9b9fb49a0109ddc72f4f6d4c2e/src/messaging/index.ts#L99-L102
If you're using the REST API, the field is called image: https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#Notification

i am using firebase admin sdk and yes in docs and js property is called imageUrl
but no image is displayed only when using image instead of imageUrl.
const payload = {
        notification: {
            title: pushTitle,
            body: pushBodyMsg,
            mutableContent:"true",
            contentAvailable:"true",
            image:pushImgUrl,

        },

    };
firebaseAdminSdk.messaging().sendToTopic(topicName,payload);

This issue is about the new v1 API. You're using the legacy API. In the legacy API there's no documented image or imageUrl property. But the chances are the backend REST API accepts an image property just like the v1 REST API.
https://firebase.google.com/docs/reference/admin/node/admin.messaging.NotificationMessagePayload


Call javascript code as part of render

I might be missing something, but I didn't find a way to call javascript directly as part of the render process.
It seems like the Widget idea was at some point the solution for this, if you wanted to delegate control of some part of the DOM, but this is no longer the case? Or, the widgets have to be expressed in terms of Prop which has no escape hatch.
It would be really useful to have, for example, properties like "unsafeBeforeAttach" and "unsafeAfterAttach" with signature Element -> Effect Unit. Often the lifecycle of this code and the rendering goes together.

see this and this

I'm aware of ref, I was but it's a bit unsightly as it makes part of the rendering "disjoint" in the sense that you have to trigger it separately and outside of the render function. The function to get a ref also returns Maybe, which is kind of awkward.
But I guess the point is, since the whole render process is functions mutating elements under the hood, what's the reason that there's no API to do that except via workarounds?

There's no direct mechanism to perform effects during rendering, no. It might be possible to do some stuff by dropping down into the purescript-halogen-vdom layer rather than stuff that Halogen provides itself, but I don't think even then there are hook-like mechanisms that you could rely on. Is that accurate @natefaubion?
Even if we were to include something that did allow effects during rendering it would be a bit weird, since it'd be constrained to Effect, as that's where purescript-halogen-vdom operates, rather than the m used for effects within a Component / Halogen app in general.

Re: Widget, they're just there as a general purpose extension to the VDom tree: https://github.com/slamdata/purescript-halogen-vdom/blob/34c032aa5f72b600d69ab970e2737ca533c6c118/src/Halogen/VDom/Types.purs#L26-L31
Halogen uses the Widget constructor for the component slot entries in the VDom tree and for thunking for memoized HTML subtrees: https://github.com/slamdata/purescript-halogen/blob/dd301747260620946956048a86e07e9efe1b6380/src/Halogen/Component.purs#L195-L197
These are then handled in Halogen's VDom driver: https://github.com/slamdata/purescript-halogen/blob/dd301747260620946956048a86e07e9efe1b6380/src/Halogen/VDom/Driver.purs#L73-L118
So the "widget" concept isn't specifically related to JS or anything, it's just a way of extending VDom with additional stuff that can be handled at render time. We'd need another widget type thing in the Halogen layer too to be able to leverage that in a Component's HTML.

I think you would want to expose what Halogen uses internally for ref.
https://pursuit.purescript.org/packages/purescript-halogen-vdom/6.1.0/docs/Halogen.VDom.DOM.Prop#v:Ref
Halogen uses this to insert and remove named refs, but there's no reason it can't be evented.
https://github.com/slamdata/purescript-halogen/blob/dd301747260620946956048a86e07e9efe1b6380/src/Halogen/HTML/Properties.purs#L133-L137
https://github.com/slamdata/purescript-halogen/blob/7bb46c742c51b9cb32a6e798bf3e1336e4f3b463/src/Halogen/Query/Input.purs#L15-L17
https://github.com/slamdata/purescript-halogen/blob/ac67fd77053733d6745349b671a09db7b6a003fd/src/Halogen/Aff/Driver/Eval.purs#L52-L57
You just need an alternative to ref that uses the Action constructor instead of RefUpdate.

Ah, so this CAN already be done :)
import Prelude
import Data.Maybe
import Halogen.Query.Input (Input(..))
import Halogen.VDom.DOM.Prop (ElemRef)
import Web.DOM.Element (Element)
import Halogen.HTML.Properties as HP
import Halogen.HTML.Core as Core

manage :: forall r i. (ElemRef Element -> i) -> HP.IProp r i
manage act = HP.IProp $ Core.Ref $ Just <<< Action <<< act

Then you can specify an action which will get run with Created el, Destroyed el etc.

Thanks, I'll close this then.


Rename $layout to __layout, etc

Closes #1149.

[x] disallow files/directories with leading __, so that we can add more special files in future without breakage
[x] error on $layout etc
[ ] create a utility for renaming files? npx @sveltejs/kit-rename-files or something?

Before submitting the PR, please make sure you do the following

[x] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[x] This message body should clearly illustrate what problems it solves.
[x] Ideally, include a test that fails without this PR but passes with it.

Tests

[x] Run the tests with pnpm test and lint the project with pnpm lint

Changesets

[x] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpx changeset and following the prompts

whoops
AFK for a bit, will fix later if no-one beats me to it

This change makes working with Go a nightmare because of this: https://github.com/golang/go/issues/43854.
Can we add a config option for this, @Rich-Harris?

@Rich-Harris any updates on the config option?

The all: path prefix for go:embed has also been recently merged in Go (https://go-review.googlesource.com/c/go/+/359413/)
cmd/go: add //go:embed all:pattern

[...]

After long discussions on #42328 and #43854, we decided to keep
the behavior of excluding . and _ files by default, but to allow the pattern
prefix 'all:' to override this default. This CL implements that change.

Note that paths like .git and com1 are still excluded, as they must be,
since they will never be packed into a module.

@rohfle I think it will be available from 1.18, right?

@frederikhors the all: path prefix is merged in 1.18beta1


Revisit post-i18n preinstall script

Following on from #6070 and the discussion here we need to consider whether it's the correct approach to have so many dependencies installed via the preinstall script.
The existing preinstall script has already lead to some interesting install issues, and I'd like to make installing Ghost easier rather than trickier :)
Additionally, as these errors are output to the console, not in the UI, I think it's safe to leave them untranslated. In future we can ensure that the error codes and error messages lead to translated docs and troubleshooting guides.

After looking into this I agree that, if the goal is to reduce the number of initial dependencies, i18n in the startup check is a no go. The i18n module depends on lodash (in multiple lines), chalk (one call) and completely on intl and intl-messageformat. While chalk can potentially be removed we're still left with the other three dependencies. I'm going to create a PR that reverts the i18n changes to the startup check and the preinstall hook (and remove the strings with it).

I also agree with the point @kevinkucharczyk has raised in the discussion - debugging translated errors from the command line will become difficult - especially once we support some less often encountered languages. Here I definitely see the need to have clear error codes that can be looked up in the docs.


"./vendor/bin/phpunit: no such file or directory" when multiple project folders are opened

When there are multiple project folders opened and the first one doesn't contain "vendor/bin/phpunit", we get error mentioned in the issue title.
One solution would be to set cwd to the path of project folder that contains file that we have opened and are running the commands from. This, however, means that we would have to run commands from that opened file and running 'run-suite' when there is no opened file would result in the same error.
I personaly find that approach more usable since I run tests from an opened file anyway. If you agree, I'll make a pull request.

@nikazooz That sounds good to me! Maybe if there isn't an open file, we could loop over the projects and use the first one where ./vendor/bin/phpunit exists? Then if none of the projects has ./vendor/bin/phpunit, we can display an error notification telling the user that no projects contain phpunit.

I wanted to chip in since there is a proper solution available that most package authors miss that I only know of because I've encountered the same issue: persist the path to the PHPUnit binary in project settings. With package settings, there is no way to properly cater towards users that have different setups across different projects: some projects might require a globally installed PHPUnit, others may have it in vendor/bin, still others might configure their own vendor path via Composer, some may not use Composer at all, etc.
You can achieve this by plugging into the service provided by the atom-project-manager plugin, which luckily also appears to be the most popular project manager package (it is unfortunate that Atom does not provide this functionality out of the box). You could still leave the setting in the package settings intact for users that do not wish to use such a project management package.
If you're looking for an example, I've done the same for the base package of PHP Integrator (see Main.coffee as well as ProjectManager.coffee), which creates an looks for a php → php_integrator key in the project settings, you could do the same for php → phpunit or similar.
So far my attempt to get more packages to use project-specific settings rather than global settings :-).

Thanks for the pull request @nikazooz! I'll review it ASAP!
@Gert-dev That sounds like a good way of handling that. I'll have a play with it as soon as I can =]

The original pull request is now in v1.3.0!

@Synapse791 Thanks for the work on the plugin, it's looking great! :)

Excellent! Glad it's working for you


README instructions are broken

Following the README leads to an error on the docker build step.
Step 4 : ADD jetty /var/lib/jetty
INFO[0000] jetty: no such file or directory
./buildimage.sh worked

The README has been replaced by the merge of the jetty93 branch.
There is now no buildimage.sh script and all images are built via maven


TS support? getting Property 'update' does not exist on type 'Action<HTMLElement, undefined, Record<never, any>>'.ts(2339)

Hello, thank you for building this!
I've got it implemented and the functionality is working in development, but I'm getting this TypeScript warning in VSCode.
Property 'update' does not exist on type 'Action<HTMLElement, undefined, Record<never, any>>'.ts(2339)

I also set ts-ignore on the import (I think) but still see the above warning. I noticed you added TS definitions (thank you!) but I think you'll need to extend the type to include the update method? I'm far from a professional though so this may just be user error.
Thanks again!

Thanks for the feedback @jstjoe, you're absolutely right.
I think we could use @types/autosize and integrate those definitions here.
Happy to accept a pull request on this, or I'll get around to it sometime soon hopefully.

@jstjoe it took a few iterations but I think it's working quite well now with v1.1.5. Let me know how it goes and thanks for creating the issue!


use scrape new listings in start app

Pull Request Test Coverage Report for Build<PHONE_NUMBER>0
Details

0 of 2 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.008%) to 18.602%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

internal/app/service/scraper/service.go
0
2
0.0%

Totals

Change from base Build<PHONE_NUMBER>6:
0.008%

Covered Lines:
447

Relevant Lines:
2403

💛  - Coveralls


[texture] how to display webcam images?

Hi,
I have a video stream from a webcam and need to draw it on a box on the screen. So, there are other parts such as gui and 3d drawings and I need to add a small box that display a live stream of the image.
What would be the best way to do this job?
I have tried the image loading example but I have no idea how to deal with the update of the texture.

I found a solution. UpdateTexture works well.

Mind sharing your experience?

Can you share your solution?


No Delete Query?

Hi, your library seem to have a comprehensive structure of queries. I noticed that the DeleteStatement is lacking though.

Yes, that's correct! We developed this parser for a project that primarily cares about CREATE TABLE, INSERT and SELECT queries.
There is no reason (other than time and resources on our end) for the parser no to support DELETE though! The implementation would be a much simpler version of the parse rules for SELECT, I think.

I'm guessing PRs here would be welcome if you have some time to spare @ivanceras! :)

@jonhoo I would definitely want to pull a PR on this on the next few days. I have almost completed the PR for https://github.com/ms705/nom-sql/issues/4

Resolved by #9.


vectorious neural network example!

based on this https://iamtrask.github.io/2015/07/12/basic-python-network/

Awesome dude, will check it out in a sec!

super cool.

hehe :D

#45


Update met-cyclone app to support new RI CTC statistics

Describe the New Feature
The upcoming MET 11.1.0 release creates contingency table statistics for TC rapid intensification that can be stored in the existing METplus MySQL database (thanks MET team!). The met-cyclone app now needs to be updated to support these statistics.
Acceptance Testing
Automated tests should pass while plotting new RI CTC plots.
Time Estimate
3-5 business days.
Relevant Deadlines
HFIP season is upon us so this should be done as quickly as possible.

Molly will email Shan to see if they need it this year.

I'll add this in with the slate of METexpress updates I'm currently doing.

This is fully done now.


policy: Fix transient policy deny during agent restart

Please see commit msg
Fixes: #15878
Fix transient policy deny during agent restart

test-me-please

How did you find and validate this? Was it enough to restart Cilium with chatty pods and policies in place? If so, why did we miss those issues in CI?

Hi @pchaigno, my test setup to reproduce is like the following: enforce ingress policy (that allows access from clientpod) on serverpod on node1, and create a chatty clientpod (nc -zw1 $serverip $port every 5ms) on another node, then restart cilium-agent on node1.
With the above setup, the policy flush issue should be easy to reproduce, and the probability to reproduce the ipcache missing issue might depend on the number of entries in ipcache map(over 55000 in the above setup). I haven't read the CI code, but I guess it might depend on the scale of CI setup and how chatty the client is, hope this helps.

ci-awscni

ci-aks

ci-eks

ci-gke

The only failing test is on EKS with IPsec and L7 policies; it therefore corresponds to https://github.com/cilium/cilium/issues/17139, a known broken test. Review requests are covered. I'm marking ready to merge.

test-me-please

https://github.com/cilium/cilium/issues/15878#issuecomment-897444123  @yorg1st @chaosbox  should be able to do it next week.
But ideally, cilium pipeline should have a regression test :smiley:

I did some (very brief) triage of the failing tests. If we click through the "Details" links and scan through, we find:
Kind:

https://github.com/cilium/cilium/runs/3309030987?check_suite_focus=true

:x: to-entities-world/pod-to-world/http-to-jenkins-cilium-1: cilium-test/client2-666976c95b-t5lgs (<IP_ADDRESS>) -> jenkins-cilium-io-http (jenkins.cilium.io:80)

AKS:

https://github.com/cilium/cilium/runs/3313537647?check_suite_focus=true

:x: to-entities-world/pod-to-world/http-to-cilium-io-0: cilium-test/client2-666976c95b-fltfr (<IP_ADDRESS>) -> cilium-io-http (cilium.io:80)

EKS:

https://github.com/cilium/cilium/runs/3313559788?check_suite_focus=true

:x: client-egress-l7/pod-to-pod/curl-3: cilium-test/client2-666976c95b-lbhg4 (<IP_ADDRESS>) -> cilium-test/echo-same-node-7967996674-lcjpz (<IP_ADDRESS>:8080)
:x: echo-ingress-l7/pod-to-pod/curl-3: cilium-test/client2-666976c95b-lbhg4 (<IP_ADDRESS>) -> cilium-test/echo-same-node-7967996674-lcjpz (<IP_ADDRESS>:8080)

However, I would not expect this PR to have an effect on the tests. This PR adjusts the "endpoint restore" logic which is run when Cilium restarts with active workloads. As far as I know, the tests never restart Cilium and will only start pods after Cilium started and stop them before it shuts down. So I don't think they're related to the code being changed.
I have opened a thread in Slack #testing channel to see whether anyone knows anything about such failures.
I didn't yet search the GitHub issues to see whether there are similar reports; that would be another good next step, try to correlate with other reports and see whether there was a regression introduced into the tree recently.

Thanks for the investigation! Rebased

test-me-please

test-me-please
Job 'Cilium-PR-K8s-1.16-net-next' failed and has not been observed before, so may be related to your PR:
Click to show.
Test Name
K8sServicesTest Checks service across nodes Tests NodePort BPF Tests with direct routing Tests LoadBalancer Connectivity to endpoint via LB

Failure Output
FAIL: Can not connect to service "http://<IP_ADDRESS>" from outside cluster (1/10)

If it is a flake, comment /mlh new-flake Cilium-PR-K8s-1.16-net-next so I can create a new GitHub issue to track it.

I guess this is https://github.com/cilium/cilium/issues/16399 ?

I guess this is #16399 ?

Yes. So only failing test is a known flake and review requests are covered. Marking ready to merge.

Nice :sun_with_face: , will it be backported to 1.9 or only 1.10 ?

We'll backport to both.

1.9 backport for this commit isn't straightforward, see this thread - https://github.com/cilium/cilium/pull/17328#discussion_r703175928.

That's what @yorg1st told me when he was trying to deploy on our cluster with the fix.
Up to you but it's probably safer to backport only for 1.10.


Resolver with a simple remote ref model doesn't work

This scenario:
definitions:
  MyModel:
    $ref: 'http://path/to/model/MyModelBase.yaml'

Doesn't work, even if the MyModelBase exists

This has been fixed