connection: add MAIL and RCPT to results

stores all sender and recipient attempts in results_store
move rcpt incrementing into rcpt_incr, which also saves to results

replaces 10 of these:
this.transaction.rcpt_count[action]++;
this.rcpt_count[action]++;

with 10 of this:
this.rcpt_incr('accept');  // or 'reject' or 'tempfail'

This change drains some impetus for #945
Side effects

don't print useless msg=""
only output msg when action != accept
permits disabling display of code=XXXX display using results.ini
permits disabling of redundant sender logging in recipient line

Before RCPT
VALID
[core] recipient<EMAIL_ADDRESS>code=CONT msg=""<EMAIL_ADDRESS>[core] recipient<EMAIL_ADDRESS>code=CONT msg=""<EMAIL_ADDRESS>[core] recipient<EMAIL_ADDRESS>code=CONT msg=""<EMAIL_ADDRESS>[core] recipient<EMAIL_ADDRESS>code=CONT msg=""<EMAIL_ADDRESS>
INVALID
[core] recipient<EMAIL_ADDRESS>code=CONT msg=""<EMAIL_ADDRESS>[core] recipient<EMAIL_ADDRESS>code=CONT msg=""<EMAIL_ADDRESS>[core] recipient<EMAIL_ADDRESS>code=CONT msg=""<EMAIL_ADDRESS>[core] recipient<EMAIL_ADDRESS>code=CONT msg=""<EMAIL_ADDRESS>[core] recipient<EMAIL_ADDRESS>denied code=DENY<EMAIL_ADDRESS>That recipient is not allowed"<EMAIL_ADDRESS>[core] recipient<EMAIL_ADDRESS>denied code=DENY<EMAIL_ADDRESS>That recipient is not allowed"<EMAIL_ADDRESS>
After RCPT
[rcpt_to] reject<EMAIL_ADDRESS>[rcpt_to] accept<EMAIL_ADDRESS>[rcpt_to] accept<EMAIL_ADDRESS>code=CONT
[rcpt_to] accept<EMAIL_ADDRESS>code=CONT, accept<EMAIL_ADDRESS>code=CONT
[rcpt_to] accept<EMAIL_ADDRESS><EMAIL_ADDRESS>
Before Mail From
[core] sender<EMAIL_ADDRESS>code=DENY msg="No MX for your FROM address"
[core] sender<EMAIL_ADDRESS>code=DENY msg="No MX for your FROM address"
[core] sender<EMAIL_ADDRESS>code=DENY msg="MX without A records"
[core] sender<EMAIL_ADDRESS>code=DENY msg="No MX for your FROM address"
[core] sender <> code=CONT msg=""
[core] sender<EMAIL_ADDRESS>code=CONT msg=""

After Mail From
[mail_from] accept sender<EMAIL_ADDRESS>code=CONT
[mail_from] accept sender <>, code=CONT
[mail_from] reject sender<EMAIL_ADDRESS>msg=MX without A records
[mail_from] accept sender <>

Sorry - I don't like this.
If you're scraping logs or using something like Splunk (probably Logstash too), then having a log format this is the same for every instance of that log line is desirable and this changes it completely depending on conditions.
Quite often I do things like this:
$ grep ' recipient ' /var/log/maillog | grep -Po 'code=\S+' | sort | uniq -c | sort -rn
   7359 code=DENY
   4682 code=OK
   1027 code=CONT
    303 code=DENYSOFT
     42 code=DENYSOFTDISCONNECT

That becomes impossible after these changes.
I also don't like it logging under [mail_from] and [rcpt_to] .vs. [core].  Currently you can grep your logs for only core output easily and discard the plugin output and this change will break any existing parsers.
You're also not quoting strings so; msg=MX without an A record is going to be far harder to capture than msg="MX without an A record" e.g. via msg="([^"]+)"
You appear to have found a bug somewhere as   1027 code=CONT should be impossible on my install and indeed looking at the logs; somehow the code returned by core was CONT when in actual fact the plugin returned OK - I'm looking in to why now.
Logging changes should be treated like API changes and things that fundamentally change the format should only be done on a major version bump, documented and warned about accordingly.
Adding a new disposition=[accepted|tempfailed[+drop]|rejected[+drop]] field on the end of the existing sender, recipient and message log lines would be a fine compromise though to make it clearer for those that don't understand what the code=constant means whilst retaining the existing format and functionality.

My main concern is getting the data into ResultStore so that it ends up in Elasticsearch. Perhaps another solution is to leave the existing lognotice lines in place and turn off the emit: true options to result_store.

As long as the logging remains as it is and we still have the existing counters; then I've got no problem at all with adding this stuff to ResultStore as it seems like a pretty sensible thing to do.
I've found the cause of the code=CONT being logged incorrectly; it's because hook_rcpt returned OK at which point the log output is generated by rcpt_ok_respond() instead, so in this case if hook_rcpt_ok returns CONT; it should actually be logged as OK instead.

Is removing the empty msg="" strings okay?

No - sorry.

Log message affecting changes have been removed.


Add watchOS deployment to PodSpec build script

Motivation:
We support watchOS 6+ with SwiftNIO Transport Services; as such we should
include watchOS as a deployment target for our CocoaPods.
Modifications:

Add a watchOS deployment target to build_podspecs.sh

Result:
Users can deploy to watchOS 6+ with CocoaPods.

@swift-nio-bot test this please


Makefile: more *BSD-friendly, got rid of mandatory gcc

In FreeBSD, there's no gcc in the base system while the default ${CC} (clang) compiles fiche just fine.
Additionally, I added the clean target.

Thank you!

:+1:


NO-ISSUE: Install additional packages in base image for CI

Due to the way CI is setup, the Dockerfile.tools file must be updated with new packages installed before those packages can be used in CI. ie. if adding tools to ci-job test that require additional packages, the Dockerfile.tools update must be merged first.

/lgtm
/approve


Badge not updating in GitHub

I have a public repo with a go report card badge
https://github.com/hermannolafs/smokesignal
It still says B, which was the rating when I added the badge.
Since then I have fixed it to be be A+
https://goreportcard.com/report/github.com/hermannolafs/smokesignal
I have removed the badge and re-added it and it still says B on my repo :(
Does it take a while?
Is this some caching issue on GitHubs side?

The report card has now updated.
This is just takes a while.


Remove default value from basebackup_interval_hours

Doc says that basebackup_interval_hours has no default value.

Actually I'd prefer if we changed the documentation instead of the actual code.
24 hours is a pretty reasonable default and setting it to null would mean that every user would effectively need to set it to some value in their config file in order to be able to back up anything.
I'll close this PR and you can open up a new one if/when you have the README default value changes.


Relax Rails dependency to support Rails 7.1

Can we get this merged soon?

It looks like CI is broken. I'm not sure this project is really maintained these days.


problem with xdomain

Hi there, first thanks for your module upload-file.
I must to use xdomain.js for other operation, but when click "upload" button the error had shown:
angular.js:11655 Error: Failed to execute 'setRequestHeader' on 'XMLHttpRequest': 'function (xhr) {
if (!xhr) return;
config.__XHR = xhr;
if (config.xhrFn) config.xhrFn(xhr);
xhr.upload.addEventListener('progress', function (e) {
e.config = config;
notifyProgress(getNotifyEvent(e));
}, false);
//fix for firefox not firing upload progress end, also IE8-9
xhr.upload.addEventListener('load', function (e) {
if (e.lengthComputable) {
e.config = config;
notifyProgress(getNotifyEvent(e));
}
}, false);
}' is not a valid HTTP header field value.
at Error (native)
at send (http://localhost:8282/xdomain.js:375:13)
at process (http://localhost:8282/xdomain.js:386:16)
I see it conflict with xdomain and I cannot resolve it. Please help
This is jsfiddle : link
On jsfiddle, the error is different a little bit :
angular.js:11655 SyntaxError: Unexpected token p
at Object.parse (native)
at fromJson (https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.3.15/angular.js:1072:14)
at defaultHttpResponseTransform (https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.3.15/angular.js:8618:16)
at https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.3.15/angular.js:8703:12

There are similar issues with xdomain and workarounds available. Search for xdomain in the issues.


Karpenter is not launching the smallest instance possible

Version

Karpenter Version: v0.25.0

Kubernetes Version: v1.21.0
Expected Behavior
Karpenter should launch the smallest instance possible
Actual Behavior
since upgrading from version 0.24 to 0.25 we saw that our smallest instances have "grown" in size. Using the same pods definitions - Kaprenter 0.25 launches an instances with more cores compared to karpenter 0.24
Steps to Reproduce the Problem

install karpenter 0.24
create a test provisioner
create a test deployment. in my test my deployment including daemonsets my total cpu requests for all pods was 1340m and total memory request was 1754Mi
kubectl apply the test deployment - see the instance launched has 2 cores
upgrade karpenter to version 0.25
delete the first instance   see karpenter now launched instance with 4 cores for the same spec of pods

Resource Specs and Logs
my test provsioner and deployment (not including daemonsets)
apiVersion: karpenter.sh/v1alpha5
kind: Provisioner
metadata:
  name: test-provisioner
spec:
  consolidation:
    enabled: true
  kubeletConfiguration:
    containerRuntime: containerd
  labels:
    Application: test
  providerRef:
    name: default-node-template
  requirements:
  - key: karpenter.k8s.aws/instance-family
    operator: In
    values:
    - c6i
  - key: karpenter.sh/capacity-type
    operator: In
    values:
    - on-demand
  - key: karpenter.k8s.aws/instance-generation
    operator: Gt
    values:
    - "4"
  - key: karpenter.k8s.aws/instance-generation
    operator: Lt
    values:
    - "7"
  - key: karpenter.k8s.aws/instance-cpu
    operator: Lt
    values:
    - "20"
  - key: kubernetes.io/arch
    operator: In
    values:
    - amd64
  - key: kubernetes.io/os
    operator: In
    values:
    - linux
  taints:
  - effect: NoSchedule
    key: Application
    value: test
---
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: nginx
  name: test-nginx-deployment
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    spec:
      affinity:
        nodeAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
            nodeSelectorTerms:
              - matchExpressions:
                  - key: karpenter.k8s.aws/instance-cpu
                    operator: Lt
                    values:
                      - '5'
      containers:
      - image: nginx:latest
        imagePullPolicy: IfNotPresent
        name: nginx
        ports:
        - containerPort: 80
          protocol: TCP
        resources:
          requests:
            cpu: 610m
            memory: 1025Mi
          limits:
            cpu: 1
            memory: 1025Mi
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
      dnsPolicy: ClusterFirst
      nodeSelector:
        Application: test
      tolerations:
        - key: Application
          operator: Equal
          value: test
      terminationGracePeriodSeconds: 30

logs 0.25:
{"level":"INFO","time":"2023-03-19T15:36:36.247Z","logger":"controller.provisioner.cloudprovider","message":"launched new instance","commit":"beb0a64-dirty","provisioner":"test-provisioner","id":"i-xxxxxxx","hostname":"ip-xxx-xx-xxx-xxx.ec2.internal","instance-type":"c6i.xlarge","zone":"us-east-1b","capacity-type":"on-demand"}
logs 0.24:
{"level":"INFO","time":"2023-03-19T16:10:22.365Z","logger":"controller.provisioner.cloudprovider","message":"launched new instance","commit":"8c27519-dirty","provisioner":"spot-c6i-test","id":"i-xxxxx","hostname":"ip-xxx-xx-xxx-xxx.ec2.internal","instance-type":"c6i.large","zone":"us-east-1a","capacity-type":"on-demand"}
we saw this happens in multiple nodes sizes. and it made karpenter launch largest (more expensive ) instances
Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

I just checked the change-log between v0.24.0 and v0.25.0 and nothing changed in Karpenter's instance type bin-packing that I can find.
Another possibility is that c6i.large were out-of-capacity at the time of the request (although unlikely).
Can you provide more logs around that time? There's a log line that will show the aggregate resources required when determining the node to launch which includes the daemonsets in the calculation. There also may be a log showing that the c6i.large was excluded due to a previous insufficient capacity error.
It also looks like the log you provided for v0.24.0 is using a different provisioner than the one you posted above. Is it possible that the spot-c6i-test provisioner is excluding the c6i.large?

hi @bwagner5  thanks for taking a look.
I did get copy the wrong 0.24 log in my first comment by I'm still able to replicate this issue.
logs from 0.24:
{"level":"INFO","time":"2023-03-19T21:03:00.447Z","logger":"controller.provisioner","message":"found provisionable pod(s)","commit":"8c27519-dirty","pods":6}
{"level":"INFO","time":"2023-03-19T21:03:00.447Z","logger":"controller.provisioner","message":"computed new node(s) to fit pod(s)","commit":"8c27519-dirty","nodes":2,"pods":2}
{"level":"INFO","time":"2023-03-19T21:03:00.447Z","logger":"controller.provisioner","message":"computed 2 unready node(s) will fit 4 pod(s)","commit":"8c27519-dirty"}
{"level":"INFO","time":"2023-03-19T21:03:00.447Z","logger":"controller.provisioner","message":"launching machine with 1 pods requesting {\"cpu\":\"6130m\",\"ephemeral-storage\":\"4G\",\"memory\":\"8805282304\",\"pods\":\"10\"} from types c5n.4xlarge, c6i.4xlarge, c5.2xlarge, c6i.2xlarge, c5n.2xlarge and 7 other(s)","commit":"8c27519-dirty","provisioner":"spot-c"}
{"level":"INFO","time":"2023-03-19T21:03:00.447Z","logger":"controller.provisioner","message":"launching machine with 1 pods requesting {\"cpu\":\"1640m\",\"memory\":\"1754Mi\",\"pods\":\"10\"} from types c6i.large, c6i.xlarge","commit":"8c27519-dirty","provisioner":"test-provisioner"}
{"level":"DEBUG","time":"2023-03-19T21:03:00.898Z","logger":"controller.provisioner.cloudprovider","message":"created launch template","commit":"8c27519-dirty","provisioner":"test-provisioner","launch-template-name":"Karpenter-main2-3066138166182415306","launch-template-id":"lt-0401f6d786083817a"}
{"level":"INFO","time":"2023-03-19T21:03:03.234Z","logger":"controller.provisioner.cloudprovider","message":"launched new instance","commit":"8c27519-dirty","provisioner":"test-provisioner","id":"i-0f162b614c06b667c","hostname":"ip-172-xx-xx-45.ec2.internal","instance-type":"c6i.large","zone":"us-east-1b","capacity-type":"on-demand"}

logs from 0.25
{"level":"INFO","time":"2023-03-19T21:10:08.033Z","logger":"controller.provisioner","message":"found provisionable pod(s)","commit":"beb0a64-dirty","pods":6}
{"level":"INFO","time":"2023-03-19T21:10:08.033Z","logger":"controller.provisioner","message":"computed new node(s) to fit pod(s)","commit":"beb0a64-dirty","nodes":2,"pods":2}
{"level":"INFO","time":"2023-03-19T21:10:08.033Z","logger":"controller.provisioner","message":"computed 2 unready node(s) will fit 4 pod(s)","commit":"beb0a64-dirty"}
{"level":"INFO","time":"2023-03-19T21:10:08.033Z","logger":"controller.provisioner","message":"launching machine with 1 pods requesting {\"cpu\":\"6880m\",\"ephemeral-storage\":\"4G\",\"memory\":\"8805282304\",\"pods\":\"12\"} from types c5n.2xlarge, c6i.4xlarge, c5n.4xlarge, c5.4xlarge, c6i.2xlarge and 7 other(s)","commit":"beb0a64-dirty","provisioner":"spot-c"}
{"level":"INFO","time":"2023-03-19T21:10:08.033Z","logger":"controller.provisioner","message":"launching machine with 1 pods requesting {\"cpu\":\"2390m\",\"memory\":\"1754Mi\",\"pods\":\"12\"} from types c6i.xlarge","commit":"beb0a64-dirty","provisioner":"test-provisioner"}
{"level":"INFO","time":"2023-03-19T21:10:10.014Z","logger":"controller.provisioner.cloudprovider","message":"launched new instance","commit":"beb0a64-dirty","provisioner":"test-provisioner","id":"i-0748b9a1be10cc435","hostname":"ip-172-xx-xx-15.ec2.internal","instance-type":"c6i.xlarge","zone":"us-east-1c","capacity-type":"on-demand"}

I did this test just now within a couple of minutes from each deployment and the capacity-type is on-demand so i think capacity issues is unlikely
maybe something changed regrading resources that are "system reserved" ?

The v0.24.0 log indicates there are only 10 pods and 1640m of CPU requested, but the v0.25.0 log indicates there are 12 pods and 2390m of cpu (although the same memory).
There doesn't seem to be anything changed within Karpenter in-terms of the system-reserved calculation or exposed CPU. The docs here are auto-gen'd and use the same code as the Karpenter controller for bin-packing:
https://karpenter.sh/v0.24.0/concepts/instance-types/#c6ilarge
https://karpenter.sh/v0.25.0/concepts/instance-types/#c6ilarge


PitchShift augmentation PR, round 3

Currently I'm resampling first, time stretching second. Pretty sure librosa does it the other way. Maybe I should try that?

Have you tried this? The hope is that it could help fix the distortion issue that adds high-frequency harmonics :)

I haven't had the chance to, no! I'll do it whenever I'm able to find the time 🙃

I can still hear the distortion 😅 If you want to generate and listen to the same example yourself, you can run the demo script after merging this:
https://github.com/KentoNishi/torch-audiomentations/pull/4

what's interesting is that the clips i have tried on my own while developing the library sound perfectly acceptable... i wonder what's causing the issue
https://user-images.githubusercontent.com/38841491/128308069-3323b5d5-6e3a-47c8-983e-a38e4815ade0.mp4

perfect alley sounds really distorted, can confirm

https://user-images.githubusercontent.com/38841491/128314630-b2030edd-d82e-49ea-9d2c-03ac56d60e63.mp4
@iver56 how's this?

lmaoooooooooooooooo

shifted_ratio_10-9.mp4
@iver56 how's this?

That definitely sounds less distorted! What did you do?

That definitely sounds less distorted! What did you do?

i added a hop_length argument that is calculated using the sample_rate by default :D
is speed an issue here? this is still much faster than cpu-based transforms, but significantly slower than the earlier lower-quality transform unfortunately

Hmm, having a hop length = n_fft // 32 seems quite extreme indeed. I often have it set to n_fft // 4 when I apply STFT myself
How large can be the hop length be before the quality issue gets too severe? n_fft // 16?

n_fft // 16
https://user-images.githubusercontent.com/38841491/128319441-803bd45f-a8de-4dc9-9c7e-817c05014dcf.mp4

Hmm, yeah, that does add the buzz.  Does librosa do this too?

https://github.com/librosa/librosa/blob/1468db6d95b276f426935966102f05b86fcc499c/librosa/core/spectrum.py#L1220-L1221
seems like they do n_fft // 4. granted, their n_fft = 2 * (D.shape[0] - 1)... maybe i should try that idk

i can't get it to sound good using the params that the librosa source appears to use... i have to head off to sleep now (and im also very very busy thanks to college applications unfortunately) so i'd appreciate if you could try playing around with it as well. good night!

Thanks for your effort! Good night 💤

uhhhhhh did it get force pushed again?


Add link to site in README and link to Github on the site

Halfway done; still need to add Github link to the website.


Cant change ERC20 Rune to Native Rune

Hi Everyone,
Today when i tried to change erc20 to native, i received an error and tried many times.
I have enough ETH in my wallet too and here is the address : 0x9fe00cf0856ad3f08e8b88c0a8f3397478b4a71a
What i realized that, if you use floating number like 6.3 Rune to change it to native rune, it will give an issue. But if you use direct number like 6 , transcation is getting complete.
Can you please have a look at the issue? Thanks in advance

one update:  if you write down the number manually , it is fine but the bar you swipe it to right to choose %100 , it gives an error.

@onurocalan Could you share some more details, pls?
(1) Which version of ASGARDEX are you using?
(2) Where did you tried to switch Rune ERC20 -> Rune Native? ASGARDEX desktop does not support it.

@onurocalan As mentioned before, ASGARDEX desktop currently does not support switch Rune ERC20 -> Rune Native. And still waiting for your feedback... Closing this issue for now.


Option to leave stream open after writing

Hello @nietras and thanks for this library!
It appears there is no option to leave a stream open after writing to it with SepWriter, would it be feasible to add one?
My use case: I am processing a file, applying some transformations to certain column values, which will then be sent off to another API. So I am writing into a MemoryStream which will be attached to the API call as file content.
Without an option to leave the stream open, my options are to either not Dispose the SepWriter (which I assume may leave some internal objects undisposed), or create a new copy of the MemoryStream that I can then re-use (which involves copying the whole file over in memory again).

If you create a StreamWriter over MemoryStream yourself and set leaveOpen to true, then I would think this works for you. Correct?
It very well may be that there should be easier support for this with an overload, but it can quickly end up in overload hell. 😅

Ahh thanks for the suggestion, that actually does work! I had just assumed that the writer on the Sep end must have been doing something to close the stream, so I didn't realise I could circumvent the behaviour like this :)

Added convenience overloads with leaveOpen for this in the future in #123


[EPROD-849] Direct ICRC token transfer instead of spender canister

Issue ticket
Issue ticket link:
https://infinityswap.atlassian.net/browse/EPROD-849
Checklist before requesting a review
Code conventions

[X] I have performed a self-review of my code
[X] Every new function is documented
[X] Object names are auto explicative
[X] The PR follows the project conventions
[X] The code follows the style guidelines of the project
[X] The code follows the project security best practices

Security

[X] The PR does not break APIs backward compatibility
[X] The PR does not break the stable storage backward compatibility

Testing

[X] Every function is properly unit tested
[X] I have added integration tests that prove my fix is effective or that my feature works
[X] New and existing unit tests pass locally with my changes
[X] IC endpoints are always tested through the canister_call! macro

Add integration test with broken ICRC token.


Sniffer hp test

This test adds about 3% more coverage to unit tests.

This test proves itself to be ineffective.


Keyboard control

Would it be possible to add keyboard control? Picked up one of the simple android set top boxes. The remote just has arrows, ok, and the home, menu, back button. I also tested with a usb keyboard that seemed to do nothing in the app.
In th UI use the  arrows to move around and the ok the select.
Then when playing use that arrows like mythtv does with skipping. Then the ok to pause/unpause. Maybe menu do some thing.

Seems like it wouldn't be too difficult. I use mythling all the time on Fire TV, but I don't have any other Android STBs to test with.  There's code in the app that tests whether the device is for TV and tries to honor the remote buttons.  If you're interested in submitting a pull request, take a look at the dispatchKeyEvent() method in VideoPlayerActivity.java.


Add Storage FIO testcases

This PR contains generic FIO testcase addition. Based on runbook params, FIO will be launched for storage perf test. We can pass list of params to cover more than one scenario. If nothing is passed, testcase will launch default testcases mentioned in json file

@smit-gardhariya please check perf_premium_datadisks_4k, whether they are duplicated, if not, you can refer this case with different parameters of fio.

@microsoft-github-policy-service agree [company="Microsoft"]

As discussed with Lili, i have created new PR for better commit traceability. Closing this PR.
New PR : #2325

It doesn't need to create another PR to merge commits. The new PR lost all comments, it's hard to track changes.


graceful shutdown of ingesters

What this PR does:
https://cortexmetrics.io/docs/api/#shutdown says that /ingester/shutdown should be called before sending SIGTERM to an ingester. This PR adds a preStop hook to do that. This gives the ingester an opportunity to safely flush blocks from memory before being terminated.
Reference:

https://cortexmetrics.io/docs/api/#shutdown
https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.20/#lifecycle-v1-core

Checklist

[x] CHANGELOG.md updated - the order of entries should be [CHANGE], [FEATURE], [ENHANCEMENT], [BUGFIX]

The docs says that if you send the /ingester/shutdown api call, it is expected user also send the the ingester a SIGTERM as that is not done automatically.
It does not say that you must send the /ingester/shutdown call before a SIGTERM, as the ingester will automatically do a graceful shutdown.
In some cases like if you run the Ingesters with WAL enabled, you may not want to call the shutdown api call to flush data to storage, since Ingesters with WAL will write in-memory data to the WAL on shutdown and read that data from the WAL on startup.

It does not say that you must send the /ingester/shutdown call before a SIGTERM, as the ingester will automatically do a graceful shutdown.

It's here under step 1: https://cortexmetrics.io/docs/guides/ingesters-scaling-up-and-down/#blocks-storage

ok, you are right if you are doing a scale down where you want to reduce the number of Ingesters.
Does this change only apply to scale downs, or would this trigger a flush to storage on every shutdown during a rolling restart of the ingesters during upgrades etc?

Does this change only apply to scale downs, or would this trigger a flush to storage on every shutdown during a rolling restart of the ingesters during upgrades etc?

This applies to everything -- Kubernetes doesn't differentiate.
What will happen in Cortex if this runs on every pod shutdown? Does the compactor know how to handle duplicate data that has been flushed to a block already, but also exists in WAL?

I am unsure about the duplication, but I am also considering how much longer rolling restarts would take, and query performance as the metrics needs to be downloaded from storage again.
In my use case we rarely need to scale down Ingesters, it is more important to scale up, and scale downs can be done manually if needed. Because of this I am wondering if we could put a toggle flag on this so users of the chart can choose if they want to flush on shutdown or not?

I am unsure about the duplication, but I am also considering how much longer rolling restarts would take, and query performance as the metrics needs to be downloaded from storage again.

In my testing with ingesters sized to 4GB, pod termination with flushing took about 17 seconds longer.

In my use case we rarely need to scale down Ingesters, it is more important to scale up, and scale downs can be done manually if needed. Because of this I am wondering if we could put a toggle flag on this so users of the chart can choose if they want to flush on shutdown or not?

It's not something we do often, but if we do want to scale down ingesters, we want it to happen gracefully and you can't modify the lifecycle hooks of an already-running pod so it has to be there to start with.
I can make it configurable...

Nice just as a quick reminder

The Pod's termination grace period countdown begins before the PreStop hook is executed, so regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period

Its a cool feature, but it might be pretty difficult to get it right. Per default we allow the termination grace period to be 240s. So the end user must ensure that the pod actually has enough time to flush, otherwise we might risk running into problems when the pod eventually is forcibly terminated


Support pgvector

pgvector : https://github.com/pgvector/pgvector is open-source vector similarity search for Postgres
which means you should implement a vectorstore in langchaingo https://github.com/tmc/langchaingo/blob/main/vectorstores/vectorstores.go#L12
You can host code under kubeagi/arcadia pkg/vectorstores/pgvector

@zqq454224016

ok

@Abirdcfly  Please fully integrate pg in arcadia aftet this pr https://github.com/tmc/langchaingo/pull/377 got merged.
Chorma-go doesn't seem to be matained very well.

Merged!

Merged!

@tmc Cool! This gonna help us a lot! 🚀

@Abirdcfly  Since this pr got merged, please try to figure out how to integrate this into our project. And  we can do more contributions to help https://github.com/tmc/langchaingo/tree/main/vectorstores/pgvector much better.

[ ] #490


Consider changing private set in properties to protected set in model classes

For Identity there are properties that have private set on the generic model classes. When sub classed the private set is no longer available causing the property to be read only in case of reflection while on the base class it is read-write. This is causing non uniform behavior in modules that use reflection, for example, EF
Need to make a pass and make them protected

Done, reviewed, no more


gray border around images in image gallery in Chrome

This is related to #514 and #517. When I switch between images in the image gallery in Chrome I sometimes see a gray vertical line extending from the side of the image. This does not seem to happen in Firefox. Probably just needs some more fiddling with the CSS!

Do you see this while the animation is in progress? The slideshow doesn't get stuck between images, right?
I'm not currently seeing this issue in Chrome, but maybe it's because it moves too fast for me to notice...

No, it doesn't get stuck but I can notice it sometimes if I look closely when I'm switching between images.

Ok, thanks for finding this. 👍 I'm not too worried about it. But if you find a fix, you're welcome to submit it.


GitHub App: supporting check_suite event

If we configure GitHub app and if the user pipelinerun fails, on the github checks page
we get option to

re-run failed jobs (emits a check_run event) and
re-run all jobs (emits a check_suite event)

we are currently supporting check_run event but not check_suite
because
check_suite event (rerequested action) is also emited when we push a new commit to a pull request
so we need to filter out the check_run event which is coming from clicking the button and not pushing commits

nope.. I don't remember this exactly but
when Re-run all checks is clicked, check_suite event is generated which is not currently supported, we filter it out
this is nice to have, lets keep in backlog.. I need to check this once
but the UI is already there we just need to configure it properly in PAC


make acceptance fails helm missing key managed-by

I have once again tried to run the test build, however it ran into an issue in make acceptance that i do not know how to solve.
To be more exact, it fails on the first helm test.
This is the end of the log:
acceptance/deploy.sh
secret/controller-manager created
Release "actions-runner-controller" does not exist. Installing it now.
W0408 15:51:19.802895  112939 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
W0408 15:51:20.074617  112939 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
W0408 15:51:20.536468  112939 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
W0408 15:51:21.164185  112939 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
W0408 15:51:23.495008  112939 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
W0408 15:51:23.535357  112939 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
W0408 15:51:23.802274  112939 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
W0408 15:51:24.077606  112939 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
Error: rendered manifests contain a resource that already exists. Unable to continue with install: Secret "controller-manager" in namespace "actions-runner-system" exists and cannot be imported into the current release: invalid ownership metadata; label validation error: missing key "app.kubernetes.io/managed-by": must be set to "Helm"; annotation validation error: missing key "meta.helm.sh/release-name": must be set to "actions-runner-controller"; annotation validation error: missing key "meta.helm.sh/release-namespace": must be set to "actions-runner-system"
make[1]: *** [Makefile:152: acceptance/tests] Error 1
make[1]: Leaving directory '/home/theodor/Documents/actions-runner-controller'
make: *** [Makefile:132: acceptance] Error 2

I assume this has to be somehow set in acceptance/deploy.sh when the secret is created, however after some googling i can't figure out how to do that.

Thanks, that solved it.

@ToMe25 Great! Thanks for confirming. I'm closing this as resolved now 👍

@mumoshu i intentionally didn't close it because it's not fixed in the repo yet.


Not working in Windows 10: TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received type undefined

Issue: I''m not able to load any .env/.js file using env-cmd
How to reproduce:

install npm install -g env-cmd
create new folder and create .env file and paste below content (taken from example repo)

TEST_NAME=Default File Path Test
NODE_ENV=env-file
ENVVAR=exists
ENV_PATH=./.env

Run command env-cmd in that folder
This throws error which is mentioned below:

PS C:\Users\1gour\OneDrive\Documents\old\Github\new> env-cmd
TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received type undefined
    at validateString (internal/validators.js:112:11)
    at Object.normalize (path.js:266:5)
    at parseNonShell (C:\Users\1gour\AppData\Roaming\nvm\v12.15.0\node_modules\env-cmd\node_modules\cross-spawn\lib\parse.js:49:31)
    at parse (C:\Users\1gour\AppData\Roaming\nvm\v12.15.0\node_modules\env-cmd\node_modules\cross-spawn\lib\parse.js:88:37)
    at Object.spawn (C:\Users\1gour\AppData\Roaming\nvm\v12.15.0\node_modules\env-cmd\node_modules\cross-spawn\index.js:9:20)
    at Object.EnvCmd (C:\Users\1gour\AppData\Roaming\nvm\v12.15.0\node_modules\env-cmd\dist\env-cmd.js:59:26)
    at async Object.CLI (C:\Users\1gour\AppData\Roaming\nvm\v12.15.0\node_modules\env-cmd\dist\env-cmd.js:19:16) {
  code: 'ERR_INVALID_ARG_TYPE'
}

I tried to install it locally instead of globally but still same issue.
Also, If I rename .env to anything else like .env.dev it denies its existence:
PS C:\Users\1gour\OneDrive\Documents\old\Github\new> env-cmd -f .env.dev
Error: Failed to find .env file at default paths: [./.env,./.env.js,./.env.json]
    at getEnvFile (C:\Users\1gour\AppData\Roaming\nvm\v12.15.0\node_modules\env-cmd\dist\get-env-vars.js:58:11)

I've also tried using async file i.e. async-env.js but still same issue Failed to find .env file
I've tried uninstalling installing again but doesn't work. I'm not sure if somebody tested this package in Windows or not but I can't make it work!
Platform: Windows 10
Teminal: Powershell core 6.2.3 (also tried with cmd but same error)
"env-cmd": "^10.1.0",

same problem

For me -f/--file is also throwing an error:
env-cmd -f .env.development

TypeError [ERR_INVALID_ARG_TYPE]: The "file" argument must be of type string. Received undefined

macOS Catalina
Running on Node v14.0.0 with<EMAIL_ADDRESS>The file exists in the same directory.

@bastiankoetsier
I have same error when I do not specify the executable file.
env-cmd -f .env.development throwing an error, but env-cmd -f .env.development node sample.js work ok
macOS Catalina, Node v14.5.0<EMAIL_ADDRESS>

Yeah, same here.  Looks like Catalina upgrade broke it.   Will have to dump env-cmd from the project now :-( was great while it lasted
macOS Catalina, Node v10.18.1<EMAIL_ADDRESS>

Yep same, after spending about an hour setting up my project, can confirm that i am on macOS Catalina 10.15.7 Node 14.7.0

Did anyone find a fix for this?

when you use env-cmd commands, you have to run env-cmd just before your app launch with your command.
For windows (trying to run build:dev):

command line : npm run build:dev

my error was this code :
"scripts": {
    "start": "react-scripts start",
    "build": "set \"INLINE_RUNTIME_CHUNK=false\" && react-scripts build",
    "build:dev": "env-cmd -f \".env.development\" && set \"INLINE_RUNTIME_CHUNK=false\" &&  react-scripts build",
  }

solution :
package.json
"scripts": {
    "start": "react-scripts start",
    "build": "set \"INLINE_RUNTIME_CHUNK=false\" && react-scripts build",
    "build:dev": "set \"INLINE_RUNTIME_CHUNK=false\" && env-cmd -f \".env.development\" react-scripts build",
  }

(ignore on what does INLINE_RUNTIME_CHUNK that's just for the example)
.env.development
API_URL=http://something.com
.env
API_URL=http://otherthing.com
Now in your app you can do :
const apiUrl = process.env.API_URL

So if you call npm run build -> apiUrl will equal "http://otherthing.com" in your app
and if you call npm run build:dev -> apiUrl will equal "http://something.com" in your app

when you use env-cmd commands, you have to run env-cmd just before your app launch with your command.
For windows (trying to run build:dev):

command line : npm run build:dev

my error was this code :
"scripts": {
    "start": "react-scripts start",
    "build": "set \"INLINE_RUNTIME_CHUNK=false\" && react-scripts build",
    "build:dev": "env-cmd -f \".env.development\" && set \"INLINE_RUNTIME_CHUNK=false\" &&  react-scripts build",
  }

solution :
package.json
"scripts": {
    "start": "react-scripts start",
    "build": "set \"INLINE_RUNTIME_CHUNK=false\" && react-scripts build",
    "build:dev": "set \"INLINE_RUNTIME_CHUNK=false\" && env-cmd -f \".env.development\" react-scripts build",
  }

(ignore on what does INLINE_RUNTIME_CHUNK that's just for the example)
.env.development
API_URL=http://something.com
.env
API_URL=http://otherthing.com
Now in your app you can do :
const apiUrl = process.env.API_URL

So if you call npm run build -> apiUrl will equal "http://otherthing.com" in your app
and if you call npm run build:dev -> apiUrl will equal "http://something.com" in your app

I'm having the same issue, I've tried running on both MacOS Catalina 10.15.7 and Ubuntu 20.04. I've tried multiple different versions, including all versions from 9.0.0-10.1.0, with the same result:
TypeError [ERR_INVALID_ARG_TYPE]: The "file" argument must be of type string. Received undefined
    at validateString (internal/validators.js:121:11)
    at normalizeSpawnArguments (child_process.js:411:3)
    at Object.spawn (child_process.js:551:13)
    at Object.spawn (/root/development/labnetic/node_modules/env-cmd/node_modules/cross-spawn/index.js:12:24)
    at Object.<anonymous> (/root/development/labnetic/node_modules/env-cmd/dist/env-cmd.js:57:30)
    at Generator.next (<anonymous>)
    at fulfilled (/root/development/labnetic/node_modules/env-cmd/dist/env-cmd.js:4:58) {
  code: 'ERR_INVALID_ARG_TYPE'
}

Has this been looked into?

Yeah can't get this working on Big Sur at all 🤷♂

I just wanted to chime in that in my case it was due to my use of end of line comments when documenting the purpose of the variables:
Bad:
# MY_VAR=foo # development
MY_VAR=bar # production

Good:
### development environment
# MY_VAR=foo
### production environment
MY_VAR=bar

Guess I expected env-cmd to parse like a shell.
Maybe others have invisibles or something trailing the variable values or CRLF is not supported? (I'm on OSX 11.6)
¯\(ツ)/¯

I just did that without '&&' on macOS Monterey and it works fine for me:
"scripts": {
    "start": "env-cmd -f .env react-scripts start",
    "start:dev": "env-cmd -f .env-development react-scripts start",
    "build:staging": "sass src/styles/scss:src/styles/css && env-cmd -f .env-staging react-scripts build",
    "build:production": "sass src/styles/scss:src/styles/css && env-cmd -f .env-production react-scripts build",
    "test": "react-scripts test",
}

Also notice if you need to use '&&' try to use it before env-cmd command.

I can confirm this does not work env-cmd -f .env.test
.env.test exist still get error.
I also tried full path instead of realtive still does not work

without '&&' is working fine on Windows 11

@leqnam, @danielcn and @barder60 have the solution. env-cmd requires a command. You can't just run it on its own. If you do, you get the error in the title of this issue... "The "path" argument must be of type string. Received type undefined".


Question: No way to only allow subdomains under a domain using --domain-filter?

Tested with 0.5.0-alpha.0 (and 0.4.8), using AWS provider.
This is my use case: I want external-dns to only attempt to create records under the domain dev.example.com, e.g.:

foo.dev.example.com should be created
foo-dev.example.com should not be created
bar.example.com should not be created

Using the argument--domain-filter dev.example.com. will prevent bar.example.com from being created, but will still try to create foo-dev.example.com. Using --domain-filter .dev.example.com., somewhat surprisingly, won't allow any of the domains above to be created.
In my use case I have an nginx ingress like this:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: foo
spec:
  rules:
  - host: foo.dev.example.com # I want this record to be created
  - host: foo-dev.example.com # I don't want this to be created
    http:
      paths:
      - path: /
        backend:
          serviceName: foo
          servicePort: http
…

I don't want external-dns to create foo-dev.example.com, it's in a hosted zone it doesn't have permissons in, but I want nginx to register it's server name. However I want external-dns to create foo.dev.example.com, and I use the work around above mentioned in #402. (foo-dev.example.com is actually a CNAME to foo.dev.example.com, because I only have wildcard TLS cert for *.example.com, I want foo-dev. to be used and not foo.dev.)
My issue is that when external-dns fails to create foo-dev.example.com it will also fail to create foo.dev.example.com. I've tried the new --zone-id-filter with the zone ID for dev.example.com, but it makes no difference, external-dns still tries to create foo-dev.example.com.

Seems like a bug to me. Maybe @ideahitme has some quick idea what's going on?
@gustav-b Please also paste your ExternalDNS manifest and the list of your hosted zones.

My external-dns Deployment manifest:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: external-dns
  namespace: external-dns
spec:
  strategy:
    type: Recreate
  template:
    metadata:
      labels:
        app: external-dns
    spec:
      serviceAccountName: external-dns
      containers:
      - name: external-dns
        image: registry.opensource.zalan.do/teapot/external-dns:v0.5.0-alpha.0
        args:
        - --source=service
        - --source=ingress
        - --domain-filter=dev.example.com.
        - --provider=aws
        - --policy=upsert-only
        - --registry=txt

There is one hosted zone at AWS Route53 accessible by external-dns: dev.example.com.
Logs from external-dns:
time="2018-02-22T15:25:39Z" level=info msg="Desired change: CREATE foo.dev.example.com A"
time="2018-02-22T15:25:39Z" level=info msg="Desired change: CREATE foo-dev.example.com A"
time="2018-02-22T15:25:39Z" level=info msg="Desired change: CREATE foo.dev.example.com TXT"
time="2018-02-22T15:25:39Z" level=info msg="Desired change: CREATE foo-dev.example.com TXT"
time="2018-02-22T15:25:39Z" level=error msg="InvalidChangeBatch: RRSet with DNS name foo-dev.example.com. is not permitted in zone dev.example.com.\n\tstatus code: 400, request id: a318215e-17e4-11e8-8ea9-0fff67e7b286"

Ok, this case is a bad cornercase of the simple suffix match. Can you also paste the output when you use --domain-filter=.dev.example.com.. Please also include the lines that say something like Considering zone ....

Scratch that, in that case it won't find your dev.example.com hosted zone in the first place becuase it doesn't include the precending dot, great.
I remember we discussed something like this. Let's hear if @ideahitme has some good way of solving this.

Thanks, I just saw #446 and it looks like it's the same issue. The solution proposed in that issue seems sane (not that I'm familiar with the code)…

Possible fix: https://github.com/kubernetes-incubator/external-dns/pull/478

We merged #478 but this is still an issue, see https://github.com/kubernetes-incubator/external-dns/pull/478#issuecomment-368825241.


Enhance DTS yaml support to handle device being on different bus types

Currently we have sensors that can be connected over either I2C or SPI.  To handle this we have different compatible names like ("st,lsm6dsl-spi" & "st,lsm6dsl").  We really should only have a single compatible for the device ("st,lsm6dsl").

I'm surprised by this request.
Node for spi bus slave or i2c bus slave will have different properties, how can we make map this to single compatible ? (which  mean a single driver will have to be able to handle both)

I'm surprised by this request.
Node for spi bus slave or i2c bus slave will have different properties, how can we make map this to single compatible ? (which mean a single driver will have to be able to handle both)

All of the properties that aren't bus specific should be identical for the same sensor like st,lsm6dsl.  I assume that if a sensor supports connecting over I2C or SPI that everything else is the same.

Ok, so then, they can share a common "phy", but I don't how we can have common bus slaves.
So 2 bus slaves variants that share the same sensor phy node?


React-Native Accessibility Focus Order Issues

Hi, I am implemented the accessibility in one of react native application. I am facing the issue related to setting the focus order of screen components. I had done a lot of R & D on this but I didn't found any solution for this.
I am facing the following problems:

The focus order is not chronological.
when ever the date & time picker appears in app, it is not focusable.
If any alert / modal appears then after closing of that alert / modal the focus should one the same component from which the popup was initiated.

Although according to my R & D, I have found:

for focusing the components in chronological order, the view hierarchy should be render in the same order, but due to existing & legacy project that's not possible for now.
I have found one solution by setting the reactTag of elements & then calling the AccessibilityInfo.setAccessibilityFocus(reactTag) that's again creating a lots of issues, the focus gone to other screen elements randomly.

I have reported this on [stack-overflow](well: https://stackoverflow.com/questions/63534817/how-can-i-alter-or-maintain-the-focus-order-of-views-in-react-native-accessibil)
React Native Environment Info:
System:
OS: macOS 10.15.3
CPU: (4) x64 Intel(R) Core(TM) i5-5350U CPU @ 1.80GHz
Memory: 28.02 MB / 8.00 GB
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 8.13.0 - /usr/local/bin/node
Yarn: 1.12.3 - /usr/local/bin/yarn
npm: 6.4.1 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
iOS SDK:
Platforms: iOS 13.2, DriverKit 19.0, macOS 10.15, tvOS 13.2, watchOS 6.1
Android SDK:
API Levels: 23, 25, 26, 27, 28, 29
Build Tools: 26.0.2, 26.0.3, 27.0.1, 27.0.3, 28.0.2, 28.0.3, 29.0.2
System Images: android-26 | Google APIs Intel x86 Atom, android-28 | Google APIs Intel x86 Atom
IDEs:
Android Studio: 3.5 AI-191.8<IP_ADDRESS>10548
Xcode: 11.3.1/11C504 - /usr/bin/xcodebuild
npmPackages:
react: 16.8.6 => 16.8.6
react-native: 0.59.5 => 0.59.5
npmGlobalPackages:
react-native-cli: 2.0.1

Hi there, I am facing the same problem. According to this issue we tried to use AccessibilityInfo.setAccessibilityFocus several times but it leads to the mess where we have to call for focus for 4+ times. I don't think it's a good solution. I wish that guys from FB paid their attention to this problem

Hi everyone, was this issue addressed? I'm working on a big app that provides medical services. This question is causes a lot of pain.

I can share my react-native info as well if it helps somehow. We are still facing this issue and will be very happy if the solution appears
System:
    OS: macOS 11.6
    CPU: (16) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
    Memory: 88.02 MB / 32.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 16.4.2 - /usr/local/bin/node
    Yarn: Not Found
    npm: 8.1.3 - /usr/local/bin/npm
    Watchman: 2<IP_ADDRESS> - /usr/local/bin/watchman
  Managers:
    CocoaPods: 1.10.1 - /usr/local/bin/pod
  SDKs:
    iOS SDK:
      Platforms: DriverKit 21.2, iOS 15.2, macOS 12.1, tvOS 15.2, watchOS 8.3
    Android SDK:
      API Levels: 23, 28, 29, 30
      Build Tools: 28.0.3, 29.0.0, 29.0.2, 30.0.2, 30.0.3
      System Images: android-29 | Intel x86 Atom_64, android-29 | Google APIs Intel x86 Atom_64, android-30 | Google APIs Intel x86 Atom, android-30 | Google APIs Intel x86 Atom_64, android-30 | Google Play Intel x86 Atom
      Android NDK: Not Found
  IDEs:
    Android Studio: 4.2 AI-202.76<IP_ADDRESS>86908
    Xcode: 13.2.1/13C100 - /usr/bin/xcodebuild
  Languages:
    Java: 11.0.11 - /usr/bin/javac
  npmPackages:
    @react-native-community/cli: Not Found
    react: 17.0.2 => 17.0.2
    react-native: 0.66.0 => 0.66.0
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

Does anyone have a code example of this problem? It could be caused by a number of different factors, and it'll be hard to narrow down without a reproducible case. Thanks!


Node6.10 is deprecated at AWS lambda

As of June 30, 2019 AWS deprecated and shut down nodejs version 6.10
ServerlessError: An error occurred: WarmUpPluginLambdaFunction - The runtime parameter of nodejs6.10 is no longer supported for creating or updating AWS Lambda functions. We recommend you use the new runtime (nodejs8.10) while creating or updating functions.

https://docs.aws.amazon.com/lambda/latest/dg/runtime-support-policy.html

This plugin uses node 8.10 since version 4.0.0.
Please update your dependency.

My bad, somehow I missed the wrong version I had, apologies.....
BTW in the README.md in one example it shows node6.10, I know that is just an example, but would be nice if it would be updated to 8.10.

This issue was useful to me as it explained why some of our lambdas stopped deploying.


fix: handling '-' in the event

issue caused by incorrect handling of syslog header, removed "-" from rfc5424 + refactoring
previously it was:
(?:(\d{4}[-]\d{2}[-]\d{2}[T]\d{2}[:]\d{2}[:]\d{2}(?:\.\d{1,6})?(?:[+-]\d{2}[:]\d{2}|Z)?)|-)\s(?:([\w][\w\d\.@-]*)|-)\s(.*)$
now it is:
(?:(\d{4}[-]\d{2}[-]\d{2}[T]\d{2}[:]\d{2}[:]\d{2}(?:\.\d{1,6})?(?:[+-]\d{2}[:]\d{2}|Z)?))\s(?:([\w][\w\d\.@-]*)|-)\s(.*)$
it's hot fix, in long term we should have more universal solution

:tada: This PR is included in version 4.1.1 :tada:
The release is available on:

v4.1.1
GitHub release

Your semantic-release bot :package::rocket:


Custom Fonts for Toast notification

Hello,
Could u add a non require parameter Font or FontSize to Instance ToastConfig() ?
I can barelly see the text in it.
Thank you.

Read the readme!!!  I don't take feature requests or issues for the repo.  Don't abuse PRs like this as it's just plain rude


Are pre-built playbooks worth building?

Might be handy for some of the targets with limited or specific functionality (e.g. dropbox, redirector, phish server)

I think I'm going to work this functionality into the management shell. Closing for now.


npm install missing some packages

On my local dev box (OSX):
$ npm install --ignore-scripts
npm notice created a lockfile as package-lock.json. You should commit this file.
added 683 packages in 22.471s

On Ubuntu 16.04 box used for app:
$ npm install --ignore-scripts
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>- 4.x but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>|| ^3 || ^4 but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>|| ^4.0.0 but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>|| ^4.3.0 but none was installed.

added 174 packages in 5.037s

Both are using npm 5.3.0

The above package has this config:
  "dependencies": {
    "babel-eslint": "7.2.3",
    "babel-jest": "20.0.3",
    "eslint-config-airbnb": "15.0.2",
    "eslint-plugin-flowtype": "2.35.0",
    "eslint-plugin-import": "2.7.0",
    "eslint-plugin-jest": "20.0.3",
    "eslint-plugin-jsx-a11y": "5.1.1",
    "eslint-plugin-react": "7.1.0",
    "eslint-plugin-security": "1.4.0"
  },
  "devDependencies": {
    "all-contributors-cli": "4.3.0",
    "commitizen": "2.9.6",
    "cz-conventional-changelog": "2.0.0",
    "eslint": "3.19.0",
    "husky": "0.14.3",
    "is_js": "0.9.0",
    "jest": "20.0.4",
    "lint-staged": "4.0.2",
    "nps": "5.6.0",
    "nps-utils": "1.2.0",
    "opt-cli": "1.5.1",
    "prettier": "1.5.3",
    "validate-commit-msg": "2.13.1"
  },
  "peerDependencies": {
    "eslint": "3.19.0"
  },

On production app box:
$ ls node_modules | grep eslint
babel-eslint
eslint-config-airbnb
eslint-config-airbnb-base
eslint-import-resolver-node
eslint-module-utils
eslint-plugin-flowtype
eslint-plugin-import
eslint-plugin-jest
eslint-plugin-jsx-a11y
eslint-plugin-react
eslint-plugin-security
eslint-restricted-globals

On my dev box:
$ ls node_modules | grep eslint
babel-eslint
eslint
eslint-config-airbnb
eslint-config-airbnb-base
eslint-import-resolver-node
eslint-module-utils
eslint-plugin-flowtype
eslint-plugin-import
eslint-plugin-jest
eslint-plugin-jsx-a11y
eslint-plugin-react
eslint-plugin-security
eslint-restricted-globals

So... npm is installing/locking eslint version if it's in cache?

Cc @luftywiranda13

This is starting to drive me crazy.

if I npm cache clean --force on my dev machine, and then re-run npm install, I still get eslint installed. So that's implying that this is not a cache thing.
if I run yarn against the same package.json on either dev or production then in both cases eslint is installed

i.e. eslint is installed:

On both dev and production using yarn
In dev only using npm

OK, I figured it out. production server has NODE_ENV=production and that is influencing the package-lock.json that's being generated.
What's interesting is that eslint is not being installed due to its peerDependencies listing, it's actually installed because some of the other eslint-* packages list it as a devDependency.

@rarkins yeah I think everything looks good now. thank you so much Rhys! I really appreciate your kindness


Vboxapi module not found

Hi
Last week, I have installed  pyvbox on my ubuntu machine. Whenever import the virtualbox module, throws an error vboxapi module not found. I tried to intsall the package using pip(pip install vboxapi).
"Could not find a version that satisfies the requirement vboxapi (from versions)"
Please let me know, How can i install the vboxapi package using pip.

Try downloading the VirtualBox SDK from the website. That's where the vboxapi module is distributed from.


After the display plug-in is unchecked, objects displayed in the 3D area still exist.

Describe your issue here and explain how to reproduce it.
My scenario goes like this: I construct a PointStamped data and send it at 30 Hz to the rviz for display. When the PointStamped plug-in is checked and unchecked several times, the following phenomenon occurs occasionally: The plug-in is unchecked, but objects are still displayed in the 3D area. This phenomenon seems to occur only in the noetic version, as I cannot reproduce it in the melodic.

The PointStamped data I constructed is as follows:
header:
seq: 341
stamp:
secs:<PHONE_NUMBER>
nsecs: 777035282
frame_id: "map"
point:
x: 1.2
y: 2.2
z: 3.2
Your environment

OS Version: Ubuntu 20.04

ROS Distro: Noetic

RViz, Qt, OGRE, OpenGl version as printed by rviz:
[ INFO] [1659950216.627252300]: rviz version 1.14.14
[ INFO] [1659950216.627324600]: compiled against Qt version 5.12.8
[ INFO] [1659950216.627357300]: compiled against OGRE version 1.9.0 (Ghadamon)
[ INFO] [1659950216.637553100]: Forcing OpenGl version 0.
[ INFO] [1659950216.798892800]: Stereo is NOT SUPPORTED
[ INFO] [1659950216.798973800]: OpenGL device: llvmpipe (LLVM 12.0.0, 256 bits)
[ INFO] [1659950216.799027900]: OpenGl version: 3.1 (GLSL 1.4).

System locale, i.e. the output of echo "$LANG $LC_NUMERIC": zh_CN.UTF-8

It might be possible that there was a message pending in the ROS callback queue, when you disabled the display.
This message would be processed after the display was disabled and thus show anyway. This should occur very rarely only, right?
I couldn't reproduce the issue on Noetic.

Could you please verify whether #1765 fixes your issue?

There is a low probability that this problem occurs. It occurs 2 to 3 times every 100 times checked and unchecked operation.
I tried this  #1765  and it did work, the problem did not recur.
I think not only PointStamped but also other plug-ins have the same problem. So I think this modification #1765 should be placed in the base class MessageFilterDisplay, perhaps the processTypeErasedMessage function?

You are right. I shifted the check to the base class.

I tried new modifications #1765 and found the problem reappeared. It seems that putting modifications in the incomingMessage function does not work. I tried putting the modifications in the processTypeErasedMessage function and the problem was fixed.

Thanks for this hint. I merged a different version to Noetic.


Saving dataframe as plink?

Any plans to include output as well as input functionality?

Would that be very useful for many people? I would implement that only if that is the case...

Yes, this would be useful for me too!

Will try to implement it tomorrow.

Implemented: https://pandas-plink.readthedocs.io/en/latest/api/pandas_plink.write_plink1_bin.html
It will be released in a moment (as version 2.2.0).


Use /usr/bin/tini-static for tini if available

Some distributions (e.g. Debian) ship a packaged version of tini in /usr/bin/tini-static, so use it if it's available.

Thank you very much!


XCode build error: -fobjc-weak is not supported on the current deployment target

React Native 0.50.4
I try to build and run simple-fcm-client but fail.
After 'pod install' success:
Analyzing dependencies
Downloading dependencies
Installing Firebase (4.7.0)
Installing FirebaseAnalytics (4.0.5)
Installing FirebaseCore (4.0.12)
Installing FirebaseInstanceID (2.0.7)
Installing FirebaseMessaging (2.0.7)
Installing GoogleToolboxForMac (2.1.3)
Installing Protobuf (3.5.0)
Installing nanopb (0.3.8)
Generating Pods project
Integrating client project
Sending stats
Pod installation complete! There is 1 dependency from the Podfile and 8 total pods installed.

[!] Automatically assigning platform `ios` with version `8.0` on target `SimpleFcmClient` because no platform was specified. Please specify a platform for this target in your Podfile. See `https://guides.cocoapods.org/syntax/podfile.html#platform`.

Then press build and run button in XCode, I got this error:

It works great on Android btw.

Hey,
i just ran into the same problem. i fixed it for me by increasing the ios deployment target of the nanopb target to iOS 8.0 (its 4.3 per default).
Pods Project -> target: nanopb -> iOS Deployment Target: iOS 8.0
Hope this helps

I got the same error. It fixed by your comment. Thank you @l1v3

Thank you @l1v3 , it works

How can I add this fix to version control ?

#https://github.com/tnantoka/nanopb-podspec/commit/1ed8f56651ec6c1901996aab48f7dd7fd5ca7592

Change Pods -> TARGETS -> nanopb -> iOS Development Target to iOS8.0

Please change Pods -> TARGETS -> nanopb -> iOS Development Target to iOS8.0
Default value is 4.3

Thank you @l1v3  , you are amazing!

Thanks it works.


Update to angular 2.0.0-rc.5 and material 2.0.0-alpha.7

This repository's issues are reserved for feature requests and bug reports.
Do you want to request a feature or report a bug?
Feature Request
Update covalent to angular 2.0.0-rc.5 and material 2.0.0-alpha.7 and modify code to use new ngModules.
Also, need to add new material components to docs.
What is the motivation / use case for changing the behavior?

bootstrap will be deprecated in favor of ngModules.
Material directives will soon be deprecated in favor of ngModules.
Need for new material components (menu, tooltip, button-toggle).
Use new forms API for ngModules.
Breaking changes on testing setup.

Other information
https://github.com/angular/angular/blob/master/CHANGELOG.md#200-rc5-2016-08-09
https://github.com/angular/material2/releases/tag/2.0.0-alpha.7

Yisss

I would also like to note that the following line:
moduleId: module.id
Located in most Component decorators causes errors with WebPack builds as the compiler now expects moduleId to be a string, and not a number. The quick solution is to omit these, and it does not seem to cause any consequences, however it may cause hierarchical issues with systemjs environments.

Making the upgrade all the way to rc6 and alpha-8.1 material

Closed with https://github.com/Teradata/covalent/pull/37. Still lots of things to do, but its the baseline for the upgrade.


NavigationView with Material Style has no Settings Button

Current behavior
Using NavigationView with Material theme results in no Settings Button

Expected behavior
There should be a settings button unless IsSettingsVisible is false

How to reproduce it (as minimally and precisely as possible)
Create new application using unoapp dotnet new template
Add NavigationView
Run - this will show the settings button
Add project reference to material package
Add Material resources in app.xaml.
Run - navigation view will not have a settings button
Environment

Nuget Package:
Package Version(s):
Affected platform(s):

[ ] iOS
[ ] Android
[ ] WebAssembly
[ ] UWP
[ ] MacOS

Anything else we need to know?

Also missing FooterItems

Maybe fixed, will need to check.

This seems fixed, but NavigationView when open causes a blackish rectangle for some reason that collapses it when clicked. This happens with all themes.

This seems to be a problem with SplitView's LightDismissLayer. When the width is resized, that layer goes away. I couldn't investigate further, but the dismiss layer should not be showing up on NavigationView.


Lecture Video

Hi,
When the video lecture will be released?

Hi, @khursani8!
We plan to start publishing new lectures in English in the next academic year (September 2021 year)

@khursani8 This is a great resource! Looking forward to the lecture videos of this coming session. It would be great if you could share the lecture videos of 2020 until then.


Question: why does ormolu config not have the --stdin-input-file, like fourmolu has?

(define-format-all-formatter fourmolu
  (:executable "fourmolu")
  (:install "stack install fourmolu")
  (:languages "Haskell" "Literate Haskell")
  (:features)
  (:format (format-all--buffer-easy executable "--stdin-input-file" (buffer-file-name))))

But ormolu doesn't have the --stdin-input-file configuration (I think it needs it; see tweag/ormolu/issues/942#issuecomment-1328113066)

why does ormolu config not have the --stdin-input-file, like fourmolu has?

The formatter definitions were probably sent by different people, and we just forgot to add the flag to ormolu. Can you add it, test that it works, and if it does, send a PR?

PR: lassik/emacs-format-all-the-code/pull/217


Extend namedCodesToUnicode to allow own HTML character references

This would be an enhancement to #236 to allow chars like ' to be replaced as well.
I'm happy to submit a PR if you think this is a valid request.

This is definitely something I'm open to adding if you'd like to make an RFC or open a PR!


chore(docs): revision election dApp tutorial

There were many small errors, like spelling, grammar, broken sentences, copy-paste errors, etc. that needed to be fixed to make the tutorial more professional.

please check why vercel deployment is failed. @sstraatemans or @webpro can help with vercel debugging info


feat: styled navbar and hero

Description
UI change

Basic styling for the navigation and Hero

Code Changes
src/assets/scss/base/_button.scss Update button styling
src/assets/scss/base/_color.scss  Increased and changed dynamic colors
src/assets/scss/base/_font.scss Changed font to the IBM Plex Sans family
src/components/Header.astro Changed the styling for the navbar
src/components/Hero.astro Reworked the Hero and Temporally removed the image
src/components/Navigation.astro Changed the logo

Approved ✅


Feature/10 simplify supervisor tree

Describe your changes
Refactor to make more readable.
Supervisor is now called Port.
Issue ticket number and link
Closes #10
Checklist before requesting a review

[x] Does mix test work?

Will test with physical GPS before merging


Adding plugin for Cronos ZKEVM

Relates to:
ZKSYNC integration PR
Risks
Low
Main implementation risk is that the Plugin doesn't work correctly.
Background
Cronos zkEVM is a  L2 zk chain network by CronosLabs and based on the zksync stack framework. This PR implements a plugin for agents to be able to interact with Cronos ZKEVM.
In this first version, only the transfer function is supported. Further work will extend this functionality.
What does this PR do?
Features (non-breaking change which adds functionality)
What kind of change is this?
Features (non-breaking change which adds functionality)
Why are we doing this? Any context or related work?
We're seeing a huge proliferation of AI agents being able to manage value on-chain. This is similar conceptually to these plugins (e.g. plugin-solana and others)
Documentation changes needed?
This plugin follows the standards set by other crypto integrations, including things like the SEND_TOKENS action. Changes to the overall project documentation don't seem to be required.
Testing
Where should a reviewer start?
Most of the changes are in plugin-cronoszkevm
Detailed testing steps
In .env you should set the value for CRONOSZKEVM_ADDRESS (this is the public address for the agent account) and CRONOSZKEVM_PRIVATE_KEY (private key for the same account).
To test the transfer function properly, this address needs tokens. Crypto.com can be used to send ZKCRO directly to an address on Cronos zkEVM
Run the agent and prompt it with: "send 0.5 ZKCRO to " - e.g. "send 1 ZKCRO to 0xee0c40F86544a8b0616BC827728f714a8B4cEeE7"
Assuming you had 1 ZKCRP to send, the agent will confirm and respond with the tx hash, e.g. Transfer completed successfully! "tx: 0x45759cf3e76d26610154a094c87572fbd7f5ef909f62c4ea13f7defb0d87cf0b"
The tx hash can be checked on the Cronos zkEVM explorer (https://explorer.zkevm.cronos.org/)

@thomas-nguy I noticed some conflicts in your branch. I’ve resolved a few and raised a new PR to address them. I’ll be closing this PR for now. Let me know if you have any questions Happy to help and thanks again for your contribution !
https://github.com/elizaOS/eliza/pull/1464


Added footer-white-13 and made it responsive

Two issues solved:

Added footer white-13
Made footer-white-13 responsive

Screenshots attached below:
When viewed on large screens:

When viewed on mobile screens:

Looks amazing @Dibyendu303


NIFI-13126: Add Impala DB Adapter

Summary
NIFI-13126
Tracking
Please complete the following tracking steps prior to pull request creation.
Issue Tracking

[x] Apache NiFi Jira issue created

Pull Request Tracking

[x] Pull Request title starts with Apache NiFi Jira issue number, such as NIFI-00000
[x] Pull Request commit message starts with Apache NiFi Jira issue number, as such NIFI-00000

Pull Request Formatting

[x] Pull Request based on current revision of the main branch
[x] Pull Request refers to a feature branch with one commit containing changes

Verification
Please indicate the verification steps performed prior to pull request creation.
Build

[x] Build completed using mvn clean install -P contrib-check

[x] JDK 21

UI Contributions

[x] NiFi is modernizing its UI. Any contributions that update the current UI also need to be implemented in the new UI.

Licensing

[x] New dependencies are compatible with the Apache License 2.0 according to the License Policy
[x] New dependencies are documented in applicable LICENSE and NOTICE files

Documentation

[x] Documentation formatting appears as expected in rendered files

I am thinking we want to be careful about including this in the standard bundle.  Though I notice this doesn't have any apparent relationship to a particular binary/jdbc driver.  It does offer a SPI mechanism to find providers.  Does that mean we can have this in its own nar which could be optionally included?  My concern is how many people in the community will be able to participate/actively engage in maintaining this component.

Without Impala dependencies I don't see why it can't go into the standard NAR, especially since PhoenixDatabaseAdapter is a precedent. I think there are a number of people in the community (including myself) that can maintain this. Thoughts?

@mattyb149 , @joewitt
How about doing some refactor for 2.x, and extracting these DB adapters as controller services?
For 1.x line we could keep the current behavior for compatibility, and add an option to use controller service instead. Eg. the dropdown could have an option like 'Use Controller Service', and when that's selected the user can pick one.
Thoughts?

I didn't make them controller services at the time because they just didn't feel like controller services to me, they shouldn't need to be configured separately and just represent specific dialects of SQL. Having said that I'm not opposed to the idea if it makes sense going forward.

@mattyb149 @joewitt
I have created a PoC / PR implementing the concept of having controller services instead of fixed lists of supported SQL dialects.
If we accept this solution, then Impala dialect is not necessarily needed to be included & maintained in the NiFi repository.
Please have a look:
https://github.com/apache/nifi/pull/8892

Thanks for putting forward the new Controller Service approach in #8892. I'm closing this pull request in favor of those changes, and will look to follow up there. If there turns out to be some blocker in the course of that review, this PR could be revisited.


Analyse and decide what we can import from forks

There are some GitHub good devs that have forked SDWebImage and due to our lack of responsiveness have maintained their forks. We need to assess those import at least some of the fixes into the main repo.
Here's a list:

https://github.com/mattjgalloway/SDWebImage
https://github.com/harishkashyap/SDWebImage
https://github.com/donholly/SDWebImage
https://github.com/liyong03/SDWebImage
https://github.com/rromanchuk/SDWebImage
https://github.com/flovilmart/SDWebImage
https://github.com/timkoma/SDWebImage

Use http://forked.yannick.io/ to see which forks were updated in the past year and which have more stargazers.

See the list converted to git remotes:
donholly		git@github.com:donholly/SDWebImage.git (fetch)
donholly		git@github.com:donholly/SDWebImage.git (push)
flovilmart		git@github.com:flovilmart/SDWebImage.git (push)
flovilmart		git@github.com:flovilmart/SDWebImage.git (fetch)
harishkashyap	git@github.com:harishkashyap/SDWebImage.git (fetch)
harishkashyap	git@github.com:harishkashyap/SDWebImage.git (push)
liyong03		git@github.com:liyong03/SDWebImage.git (push)
liyong03		git@github.com:liyong03/SDWebImage.git (fetch)
mattjgalloway	git@github.com:mattjgalloway/SDWebImage.git (fetch)
mattjgalloway	git@github.com:mattjgalloway/SDWebImage.git (push)
origin			git@github.com:rs/SDWebImage.git (fetch)
origin			git@github.com:rs/SDWebImage.git (push)
rromanchuk		git@github.com:rromanchuk/SDWebImage.git (push)
rromanchuk		git@github.com:rromanchuk/SDWebImage.git (fetch)
timkoma			git@github.com:timkoma/SDWebImage.git (fetch)
timkoma			git@github.com:timkoma/SDWebImage.git (push)

@bpoplauschi check the last 5 commits here
i have added the following:
fixes #391  -> option to cache only on Disk
fixes #343  -> iCloud backup Option
fixes #371  -> CGBitmapContextCreate: unsupported parameter combination
fixes #576  -> scale set to screen scale
fixes #1035 -> progress queue with dispatch_async
new feature -> activity indicator using auto layout
if any of the above are of any interest let me know

For certainly, the fixes are most welcome. I'll need to check the feature because we have rejected features that are not 100% on track with the library core until now, as we want to keep it maintainable.
You should create PR's from those branches

@bpoplauschi  all the above are on my master branch. Do you want me to send you a pull request so you can pick what you want?

The activity indicator feature will replace https://github.com/rs/SDWebImage/pull/131

And the fix for #391 will replace https://github.com/rs/SDWebImage/pull/1130

I created a PR from your master branch: https://github.com/rs/SDWebImage/pull/1217

About future directions, I want to look at the other forks I listed in the other issue and see what other good fixes we can get. Then refactor the dispatch sync to async.
I replaced the GIF solution with FLAnimatedImage on the 4.0 branch, the only issue is that branch is not ready for release, as it has a bunch of warning and nobody there seems to take care of that. We will see how that goes.
Another thread will be adding AFNetworking and replacing our network component, so we will be able to allow NSURLSession, requested by some of our users.

I reduced the list to 5 forks, one of which is yours. Here are the fixes I identified we should look at:

from @mattjgalloway: #883
from @donholly: #906
from @harishkashyap: #999
from @timkoma: #1031 #1044 #1063

👍
I would love it if you could incorporate that PR from my fork. The fix is pretty important. Let me know if I can help out in any way.

@bpoplauschi let me know what you need from my end.

About #999, it seems a big chunk from that was merged via #996. I am looking at the remaining code and see if we want to add it as well.
@harishkashyap  I can see the remaining patch is actually a merge request into your fork: https://github.com/harishkashyap/SDWebImage/pull/1. What about this code? I see some good stuff here, but the way NSMutableOrderedSet *prefetchURLs and NSMutableDictionary *unfinishedOperations are used doesn't look too solid. Those are non-thread safe classes and most of the time they are accessed without a sync mechanism which makes it vulnerable to crashes. Any feedback here?

@bpoplauschi There are a other changes committed by other developers. However, this commit (https://github.com/harishkashyap/SDWebImage/commit/cbc34337df46840927f9014db113c1b882d7e633) modifies the prefetching logic. It changes the logic from recursion to a loop and so will help remove overflows. I would recommend that this be merged in. You can take a look at it.

@harishkashyap thanks for the details. Could you and @mythodeia please review #1221, I've started a branch from your fork's master + reordered the methods in SDWebImagePrefetcher.m as they were before so the diff is easier to read and added some synchronization on the 2 non-thread safe collections prefetchURLs and unfinishedOperations.

@bpoplauschi my time will be limited for the next couple of weeks as my wife just gave birth to my son and i want to spend as much time as possible. But i will do my best :+1:

@mythodeia great news. Congrats and all the best to your wife and son. Get back when you can, I will keep going with 4.0 in the meantime.

@bpoplauschi will take a look at it soon. Congrats to @mythodeia

@bpoplauschi, these three can be cherry picked and reviewed. https://github.com/rs/SDWebImage/commit/ed64e00d4c0fda4344a3c08acb71eaedde85a5cb,
https://github.com/rs/SDWebImage/commit/ded305fb28ad55fdc1f39bc3c138ce386f221102
https://github.com/rs/SDWebImage/commit/cbc34337df46840927f9014db113c1b882d7e633

@harishkashyap I have create a branch with all your fixes plus some extra thread-safety. See #1221

By importing #883 in favour of #1069, this closes the items on this ticket. Closing


We should be using the function form of "use strict"

Ideally, we should be using the function form of "use strict". Currently I'm overriding JSHint to ignore this.

Won't fix because we don't need to do this for ES6 modules because they are always in strict mode. Furthermore, even if we wanted to do this, they break ES6 modules because exports and imports always need to be at the top level.


ABS and TC

Hi ! congratulations and thanks for this project.
I am building a real car simulator, with Arduino, 4 motors, lots of leds, etc :) and developing a VB.Net project that connects AC to Arduino and vice-versa. Everything has benn going very well, except that I dont understand what going on with Physical.ABS and Physical.TC, wich are floats that dont ever never change their values. Is this a bug on AC? Or?... Do you know what were this floats supposed to mean?
(I noticed that on AC 1.11.3 when I press Ctrl+T (traction control) AC allways shows «not available», even on cars that have TC implemented)
Thans a lot again,
Claudio Vidal

Unfortunately I'm not actively working on this project anymore as I've not played any racing sims in the last few years so I'm not currently able to help you


Question: How to show row total over split column

Hi all
I'm facing quite often the problem, that I would like to show the row total over the currently displayed split columns .
The following example is showing some values for some employees for some months (split columns). I would like to also show a total for each employee (yellow).

Does anyone can help me with this? Seems to be quite an easy task, but so far I was not able to find the solution.
Thanks a lot.

Hi,
To do that, you add a "computed column", and in "Formula", you put sumSplitCols()
You can view all available methods in "Formula" here:
https://github.com/fbaligand/kibana-enhanced-table/#available-functions

Hi,
Thanks a lot for your support.
With your proposed solution I'm able to achieve a total over split column like this:

Unfortunately, I'm no longer able to format the cells, as I cannot used computed columns for the split columns and a total computed column the same time...or this it at least what I found out.

In order to use computed columns in the split columns I need to enable the option "Computed/Hidden cols per split col". That way the computed column for the total is now also calculated for each month and no longer as a total of all months.

I've tried to use "Custom column position = 1" for the total computed columns. But this is getting some strange result:

Do you have a solution for this? Or is it just not possible?
As I'm using quite often the split column feature and almost always a total would be important, a solution to this would help me a lot. It is also always necessary to format the columns (number format, color, formula), therefore I need to be able to use the computed column for the split columns.
Thanks a lot for your support.

Hi,
Unfortunately, it is not possible to have both "computed columns per split col" and "computed columns for all cols".
There is a feature request for this: https://github.com/fbaligand/kibana-enhanced-table/issues/54
You can "+1" it to give it more priority.
That said, given your specific use case, maybe you could try with this setting enabled: "Show metrics for every bucket/level".
It should add "total" column.


Node.js AWS SDK V3 credential issue when using "profile" in up.json

Prerequisites

[X] I am running the latest version. (up upgrade)
[X] I searched to see if the issue already exists.
[X] I inspected the verbose debug output with the -v, --verbose flag.
[x] Are you an Up Pro subscriber?

Description
AWS_PROFILE environment variable is interfering with AWS SDK V3 credentials
Describe the bug or feature.
When migrating from V2 to V3 AWS SDK i discovered that AWS_PROFILE is persisted in the lambda execution environment variables.
The only location that I defined this was in the "profile" section of up.json, the new AWS SDK version fails to load because of this.
Steps to Reproduce
I created a sample app and published the repo to demonstrate this issue:
https://github.com/benkauffman/apex-up-aws-sdk-v3-bug-example
Describe the steps required to reproduce the issue if applicable.
you can either run the ./run.test.sh or follow the outlined steps in the project README.md
Slack
Join us on Slack https://chat.apex.sh/

Thanks for raise this issue, saved my life. after delete profile in up.json everything works!


psycopg2 2.8 compatibility

sequence index must be integer, not 'slice'

We ran into this same issue and it looks like it was fixed in this commit here: https://github.com/django/django/commit/5efaf078f7609a8c95045bcfdab0ba256b5449bf
The issue was in this line: https://github.com/django/django/commit/5efaf078f7609a8c95045bcfdab0ba256b5449bf#diff-7f14932a08ce1dbba14da7433e47f9fcL80
I don't the linked fix was for this specific issue, so I wonder if this is actually more to do with a specific python version. Specifically it's the unpacking and slicing of line which causes this error - *line[0:6] in return [FieldInfo(*line[0:6], *field_map[line.name]) for line in cursor.description]
If I change this to [*line][0:6] then I no longer get the error - return [FieldInfo([*line][0:6], *field_map[line.name]) for line in cursor.description].
Running Python 3.6.5 for reference.

Upgrading django to 2.2.1 fixed this issue for me

Closing based on the above.


Allow entity type instance to implement/inherit from type in model

Allow interfaces or base types to be mapped by specifying the type to use when materializing an instance of the interface or base class. For example, something like this:
public interface IBlog
{
    int Id { get; set; }
    ICollection<IPost> Posts { get; set; }
}

public interface IPost
{
    int Id { get; set; }
    IBlog Blog { get; set; }
}

public class Blog : IBlog
{
    public int Id { get; set; }
    public ICollection<IPost> Posts { get; set; }
}

public class Post : IPost
{
    public int Id { get; set; }
    public IBlog Blog { get; set; }
}

Currently this can be mapped like this:
public class BloggingContext : DbContext
{
    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Blog>()
            .HasMany(e => (ICollection<Post>) e.Posts)
            .WithOne(e => (Blog) e.Blog);
    }
}

Instead, this would be mapped using something like this:

public class BloggingContext : DbContext
{
    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<IBlog>().ImplementedBy<Blog>();
        modelBuilder.Entity<IPost>().ImplementedBy<Post>();
    }
}

Note that there is significant overlap here with #10789. For example, it should be possible to use a factory method for creating the implementation instance, in which case the factory rather than the explicit implementation types would be in the model.
This issue is also related to #757, except that here each interface/base type is constrained to only have one implementation type at runtime.

I experienced a challenge that might be addressed by this enhancement. However I view it from a slightly different perspective.
Let's first talk about base classes rather than interfaces. When considering a base class, since EF already has a database implementation for inheritance, the question is really about how to execute queries from the base class. Specifically if there is a navigation relationship that specifies the base class as the dependent type, then how should we execute a query (such as Include) based on that navigation? To me it seems clear that we should find the table implementing the class hierarchy and load all entities derived from that navigation type, resulting in a list of heterogeneous type (but all derived from the base type). This would be consistent with normal object design concepts. Finding the table should be pretty easy if the base class was included in the model (either explicitly or implicitly). If the base class was not included in the model then, for the query to be meaningful there must be some class that was included in the model and that is derived from the base class. What one might be able to do is, whenever a class is included in the model take note of all of its base classes. Then when a navigation type occurs we can identify the set of classes in the model which are derived from that navigation type. These will all be in one table (due to table per hierarchy). Just execute the query on that table and select the ones that are derived from the navigation type.
The comment by @ajcvickers mentions both base classes and interfaces, and the example is for interfaces. Extending the comments above, suppose that whenever a class is included in the model, we take note of all the interfaces that it implements, in addition to all the base classes. The difference is that when a navigation type is an interface, there could be multiple tables containing entities that implement that interface. Actually even within one table representing a type hierarchy there could be distinct classes that implement the interface. There are a couple of ways you could go with this. You could throw an error if there are multiple entities in the model that implement the interface. You could require configuration such as what @ajcvickers described -- in this case I would suggest that it be optional unless it is necessary to eliminate the ambiguity of multiple entities implementing the interface. Or you could query all the entity types that implement the interface.
One thing I wouldn't agree with would be if only one entity type could implement the interface type or be derived from the base type. That would sharply limit the use. After all, one of the main reasons for having base types or interfaces is that there can be multiple implementations or derived classes; one encapsulates re-usable functionality in the base class, or a re-usable design in the interface. This would be disabled in the entity model if there could only be one derived or implementing class.
sjb
P.S. Caveat emptor: I really don't know how EF works on the inside!

This would be a very welcome feature!
Been fighting with trying to get interfaces to work to correct some serious architectural issues caused by EF Core workarounds. The casting example during configuration is extremely helpful for the time being.

@ajcvickers How is this proposed to work with DbSet? The use of model interfaces would also imply we can use said interfaces in a DbContext compatible interface as well. Which would allow for the DbSet to be defined in said interface, using the interfaces of the models. ie:
public interface IAppDbContext
{
    public DbSet<IBlog> Blogs {get; set;}
    public DbSet<IPost> Blogs {get; set;}
}

Without that, model interfaces aren't as useful as they could be. Especially in DDD where the concrete implementations have moved up a layer, effectively breaking the onion/clean architecture if a DbContext contact can't be defined as a contract in the core layer via interfaces...
If that isn't supported, is there an issue tracking that? Or is there a method for letting EF know what the the concrete type is for that DbSet? ie. DbSet<IBlog, Blog>?

@douglasg14b An implementation of this feature would allow public DbSet<IBlog> Blogs {get; set;}. However, EF would still need to be configured with a factory or some other mechanism to create a concrete instance.

@ajcvickers  Thanks for the info!
Are those factories something that EF can handle internally? Ie. in a configuration of some sort telling EF that IBlog is implemented as Blog? Or is it some external code?
If it's external code, is that something I can read up on right now to gain a deeper understanding of how EF interfaces with factories?

@douglasg14b Hard to be sure what this will look like without designing/implementing it. We don't have any design specs around this.

Ah, I see.
If I was to do some leg work on that over the next few weeks/months, would a design proposal be something that should be put into a separate issue to be discussed and picked at?
I'm not necessarily making a commitment, but if my free time every clears up it's something I'm relatively passionate about, and would like to know how you/your team would prefer a spec/design/proposal.

@douglasg14b Yes, a proposal we can discuss would be great! However, to be transparent, we won't be able to take the PR for 3.0, and it's looking like management is only going to allow bug fixes in 3.1, so I expect the next time we will be able to release something (that is more than a preview) with new features will likely be over a year from now. 🤷♂

Sounds like that's giving me lots of time then! Definitely a shame that it will be a year or so, but it's understandable.
I have a hell of a lot of EF source to read through anyways...


upgrade CRD to v1 and k8s lib to v0.21.0-rc.0

upgrade CRD to v1
upgrade k8s lib to v0.21.0-rc.0
upgrade kubebuilder to 1.19.2

Signed-off-by: Zhiwei Yin<EMAIL_ADDRESS>

/retest

/assign @qiujian16

/retest

/retest

/retest


Publish permission for @nodejs/node-core-utils

We should add everyone on @nodejs/node-core-utils as maintainers on npm, so everyone can publish. Please share your npm username here :)

I'm richardlau on npm.

@richardlau I added you

Mine is priyankp though I don't think I need access :)

I see that everyone is listed in https://www.npmjs.com/package/node-core-utils, so closing.


Missing recipe from exotic industries

Problem Description
Exotic industries just added a new building, an excavator, that only mines stone with no ability to select a recipe. There are already a couple other buildings like that, stone quarries, but this new one doesn't show up in the list of possibilities when choosing where stone comes from within factory planner.
Here is where the new prototype file was committed
Reproduction

Install exotic industries 0.5.7
Open factory planner and create a new factory to produce stone, any amount
Choose how to produce stone. Make sure hidden recipes and unresearched recipes are enabled.
There are three recipes producing stone primarily that show up, and three that produce stone as a byproduct. The production using  an excavator is missing.

Hello, thanks for the report. With 2.0 around the corner, I'll wait until I can test it there and see if it's still an issue.

I had a look at this, seems like EI uses some scripting for this entity, which I currently can't support in Factory Planner. I'll consider this issue closed then.


可以支持delphi吗

I don't use Delphi at the moment, so I cannot port it to Delphi right now. However it should be doable, but I will need to address a few obstacles first:

Macros: Delphi does not support macros. Therefore certain optimizations, such as computed goto, won't be easily implementable without duplicating a significant amount of code.
Strings: From my limited knowledge of Delphi, strings are by default represented as UnicodeString, while the script engine is written with Ansi / UTF-8 strings in mind.


Improvements after building a concrete implementation

I recently created a Datadog tracer in swift and used this repo as the basis. I made a few changes that I think made it easier to implement and I don't think goes against the spec.
The primary change was using Codable instead of Any for some of the protocols since in the end I think they will have to be casted to be serialized or deserialized anyway.
Other changes made were removing some of the project files that weren't necessary for my flow and that were made before I knew if I was going to be doing a pull request, so those are certainly debatable. But in the end it supports Swift Package Manager still, which is becoming more the norm in Swift libraries anyway.

I try to avoid checking in Xcode project files. Is this something you feel strongly about?
Why make the date required for finish? If not passed in, shouldn’t the span finish with the current date time?
using codable instead of any is fine with me.

None are checked in, the change is actually adding xcodeproj files/folders to the gitignore :)
It's been a bit since I made this change, but I also changed the extension to finish at the current date, so the functionality remains the same while removing the need for date to be optional.

finish at the current date

ah yeah i see that. so i think the reason why i made chose to pass a nil instead of the current date is that a lot of bigger apps will choose to use their own ntp clocks rather than the system clock but still want the ergonomics of being able to finish a span without specifying the time.
On the other hand, adding a clock interface to the opentracing interfaces seemed very heavy handed.
If you can think of a way to keep the time being required while also accommodating users who want to use ntp clocks, want the ergonomics of finish(), and without adding a clock interface, we can certainly make that change.

You removed quite a few files related to the toolchain (e.g. python script to choose a simulator, makefile, etc.) - can you explain what the new process would be for building this, releasing this, including it in an xcode project, etc?

Since the finish() is in a protocol extension any implementer can re-implement it in whatever conforms to that protocol and that version will be used instead.
On the other misc files... I had removed them before I planned on doing a pull request, but I'll re-introduce some of them at least.
What I think makes sense is to change the make file to use swift build instead of xcodebuild so that its platform agnostic.  Which would mean dropping at least the use of the python script if not leaving the script out completely. I also wonder if we shouldn't either drop cocoapods support or add carthage to be more consistent. Thoughts?

Great, we can keep Date non-optional, and let's add carthage support?

If you want to break out the swift logic changes so we can land that now you can do that too. I don't want to remove the existing build stuff- especially the podspecs- without adding carthage support.

I was thinking the same, I'll split the PR.

Thanks!

Released in v0.1.0