Problem with using dynamic ID and CurrentPage

Angular 2 version: v2.4.8
ng2-pagination version: v2.0.1
Description of issue:
I'm using ng2-paginate in a table component, there are multiple table components per page (so multiple pagers). The ID and currentPage config options need to be dynamic.
Steps to reproduce:
1st attempt to solve:
The pipe: <tr *ngFor="let object of objects | paginate: { id: idVar, itemsPerPage: 10, currentPage: p }">
And the component: <pagination-controls id="idVar" (pageChange)="p = $event">
This fails because the id expects a string
2nd attempt:
The pipe: <tr *ngFor="let object of objects | paginate: pagerConfig">
The component: <pagination-controls id="{{pagerConfig.id}}" (pageChange)="pagerOnChangeEv">
My table component:
pagerConfig: Object = {
      id: `pager-${this.tableName}`,
      itemsPerPage: 10,
      currentPage: `${this.tableName}-p`
    }
pagerOnChangeEv: string = `${this.tableName}-p = $event`;

This fails for reasons that escape me. The 'objects' data loads, but the *ngFor doesn't display it, the pager displays the correct number of pages.
Expected result:
Possible to use a dynamic id and currentPage variable.
Demo:
Plunkr of my 2nd attempt: http://plnkr.co/edit/1zArFnEy81czjVwfduN3?p=preview
All the best
Edward

Hi,
Your first approach is closest to the mark. To me it seems that the issue there is this bit: id="idVar" - here you are setting the id to be the literal string "idVar". To bind to the value of idVar, you would write: [id]="idVar" (note the square brackets).
However, since you are binding the currentPage to the variable p, you would need to ensure that all the other pagination instances bind the currentPage to a different variable, otherwise paging one instance will change the currentPage for all the instances.
The second attempt has a couple of weird things going on:

"currentPage: ${this.tableName}-p" - currentPage has the type number, but you are setting it to a string. The pipe will not know what to do with this!
(pageChange)="pagerOnChangeEv" - when you bind to an event with parentheses, Angular expects either a method or an expression. Here you are trying to bind to a string containing an expression. I am pretty sure this is invalid.

Here is a working version of your plunker demo.

Thanks for coming back so quickly Michael - I misunderstood a few things, thanks for clearing it all up.
It's all working now with two tables on the page and pagination working for each.
Great module, highly recommended!

Cool, glad you got it sorted! 👍


[Skype Calling] TypeError: Cannot read property 'id' of undefined"?

Bot Info

App ID: 61dc1f31-db23-4ee6-bc5f-a278614c868e
SDK Platform: Node 8.9.0
SDK Version: 3.12.0
Active Channels: Skype
Deployment Environment: Heroku

Issue Description
Getting a "TypeError: Cannot read property 'id' of undefined" Exception when in the call response dialog.
TypeError: Cannot read property 'id' of undefined
at /app/node_modules/botbuilder/lib/bots/UniversalBot.js:144:51
at /app/node_modules/botbuilder/lib/bots/UniversalBot.js:427:53
at UniversalBot.tryCatch (/app/node_modules/botbuilder/lib/bots/UniversalBot.js:516:13)
at next (/app/node_modules/botbuilder/lib/bots/UniversalBot.js:427:23)
at UniversalBot.eventMiddleware (/app/node_modules/botbuilder/lib/bots/UniversalBot.js:430:9)
at /app/node_modules/botbuilder/lib/bots/UniversalBot.js:141:23
at /app/node_modules/botbuilder/lib/bots/UniversalBot.js:472:53
at UniversalBot.tryCatch (/app/node_modules/botbuilder/lib/bots/UniversalBot.js:516:13)
at /app/node_modules/botbuilder/lib/bots/UniversalBot.js:472:23
at UniversalBot.tryCatch (/app/node_modules/botbuilder/lib/bots/UniversalBot.js:516:13)
at UniversalBot.lookupUser (/app/node_modules/botbuilder/lib/bots/UniversalBot.js:459:14)
at /app/node_modules/botbuilder/lib/bots/UniversalBot.js:136:19
at /app/node_modules/async/lib/async.js:181:20
at replenish (/app/node_modules/async/lib/async.js:319:21)
at /app/node_modules/async/lib/async.js:330:15
at Object.async.forEachLimit.async.eachLimit (/app/node_modules/async/lib/async.js:220:35)
at UniversalBot.receive (/app/node_modules/botbuilder/lib/bots/UniversalBot.js:133:15)
at ChatConnector.onEventHandler (/app/node_modules/botbuilder/lib/bots/UniversalBot.js:88:60)
at ChatConnector.onDispatchEvents (/app/node_modules/botbuilder/lib/bots/ChatConnector.js:438:22)
at ChatConnector.dispatch (/app/node_modules/botbuilder/lib/bots/ChatConnector.js:447:18)
at /app/node_modules/botbuilder/lib/bots/ChatConnector.js:137:27
at /app/node_modules/botbuilder/lib/bots/OpenIdMetadata.js:21:17
at Request._callback (/app/node_modules/botbuilder/lib/bots/OpenIdMetadata.js:58:21)
at Request.self.callback (/app/node_modules/request/request.js:188:22)
at emitTwo (events.js:126:13)
at Request.emit (events.js:214:7)
at Request. (/app/node_modules/request/request.js:1171:10)
at emitOne (events.js:116:13)","time":"2017-11-29T15:18:04.581Z","v":0}
Code Example
var builder = require('botbuilder');

var chatConnector = new builder.ChatConnector({
    appId: appId,
    appPassword: appPassword
});

var chatBot = new builder.UniversalBot(chatConnector)

let greeting = "hi there";
chatBot.dialog('/', [
    (session) => {
        session.send(greeting);
    }]
);
router.route('/botframework_call/' + name)
.post( chatConnector.listen() );

Reproduction Steps

Start Server
Call

Expected Behavior
Hear the message
Actual Results
Exception as above

Hi @whoisstan - I am unable to reproduce the error with the provided code snippet.  For example the variable router is used, but not defined. Can you post your complete bot code?
You can also try deploying this known working Skype Calling bot sample:
https://github.com/nwhitmont/botframework-skype-calling-example-bot
Let me know if it works with the sample app.
Another thing to note about Skype Calling bot is you need to turn on the "calling" feature in the Skype channel configuration page, and it can sometimes take time for the feature to become available in Skype.

Hi @whoisstan  - Were you able to get the calling bot working using the example app?

reopen if you are still having issues


A company can create job offers

A company is a user that can create new job offers.
Those new job offers are put for review until an admin approves it.

same as #6 . closing it.


Starrypy timing out my server?

i got it up and running for my server and its working great but after while it seems it causes my section to stop accepting connections and my server no longer responds.
This is a screenshow of starbound.exe
the 167.114 ip is what i set up the starrypy server on.
http://prntscr.com/85iv8j
This is a screenshot of the starrypy console.
http://prntscr.com/85ivbl
The 37.187 IP is the starboundserver list pinging for player counts.

http://prntscr.com/85w4bf
this is spamming console and prevents connections to the server.  It doesnt happen with starrypy running.  Any help is apprecaited

Hm, sorry, all of us run starrypy on linux, not windows... your milage may vary. We'll accept any patches for windows-related fixes though.


How to drain a job

Hello, great project thanks for sharing ! My company currently uses GCP dataflow, we're considering  migrating to another platform. Demo in local is working fine. I'm very new to flink so I may have missed some basic stuff.
I see it is possible in flink to drain with flink stop --drain.
Is it be possible to perform a pipeline "drain" operation in the ververica system?
I see there their is the state CANCELED for a Deployment but it's not clear to me if it would stop with or without draining.
For flink job, I see the upgrade strategy can be stateless or stateful.
In my case, I would like to have a flink job being stateful, for instance to easily update the parallelism.
Then when doing a change that will make the new job not compatible with the current checkpoints, I would like to drain the current running flink job, and perform a new deployment.

Hi @cyrilou242,
thanks for opening this ticket and trying out Ververica Platform.
"Draining" is currently possible by setting the following annotation on your Deployment.
metadata:
  annotations:
    com.dataartisans.appmanager.controller.deployment.stop-with-drain: 'true'

This feature is currently undocumented and will finds it way into a proper Upgrade Strategy soon.
In your case, you would set/unset this annotation before performing an upgrade depending on the desired behavior.
Hope this helps and looking forward to more feedback,
Konstantin

Thanks a lot I'll have a try!


Update "Resource Not Using Tags" query for Terraform (AWS)

Platform
Terraform
Provider
AWS
Description
The "Resource Not Using Tags" query is returning a false-positive when tags are being set to a variable
Example #1
Resource Not Using Tags, Severity: INFO, Results: 17
Description: AWS services resource tags are an essential part of managing components
Platform: Terraform

	[1]: lambda-pipeline/2-sub-modules/codepipeline/main.tf:120

		119:   force_destroy = true
		120:   tags          = var.tags
		121: }

Example #2224
	[7]: lambda/2-sub-modules/s3/main.tf:5

		004:
		005:   tags = merge(
		006:     var.tags,

I've even went and manually checked the resources to make sure that the tags are being applied as expected, and they are
Thanks!

looks like maybe a duplicate of issue 4833

Hello, @codymaust!
Thank you so much for contacting us!
Can you give us more details, please? Can you show us how the tags are defined? And show us the payload, please?
It would help to understand what is happening (KICS supports Terraform vars, so maybe we are missing some edge case)

Hi @rafaela-soares, I think I'll be able to assist with replicating the issue as I stumbled on the same thing.
let's say this is your terraform file:

`data "aws_ami" "ubuntu" {
most_recent = true
filter {
name   = "name"
values = ["ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-*"]
}
filter {
name   = "virtualization-type"
values = ["hvm"]
}
owners = ["099720109477"] # Canonical
}
variable "additional_tags" {
default     = {}
description = "Additional resource tags"
type        = map(string)
}
resource "aws_instance" "web" {
ami           = data.aws_ami.ubuntu.id
instance_type = "t3.micro"
tags = merge(
var.additional_tags,
{
Name = "blabla"
},
)
}`

I'm getting on this:Resource Not Using Tags, Severity: INFO, Results: 1
Description: AWS services resource tags are an essential part of managing components
Platform: Terraform
[1]: ../../path/ec2-lior.tf:26

	025:   instance_type = "t3.micro"
	026:   tags = merge(
	027:     var.additional_tags,

when clearly I have configured tags, I just merged 2 maps

Hello, @liorj-orca!
Thank you so much for your input on this issue!
In your example, it is returning a result because there are no tags defined other than 'Name' [KICS query source code]. If you create the JSON report, you can see the expected value and the actual value (by adding -o results to your scan, for example):

If you add another tag other than "Name", the query will not return a result:
data "aws_ami" "ubuntu" {
most_recent = true

filter {
name = "name"
values = ["ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-*"]
}

filter {
name = "virtualization-type"
values = ["hvm"]
}

owners = ["099720109477"] # Canonical
}

variable "additional_tags" {
default = {}
description = "Additional resource tags"
type = map(string)
}

resource "aws_instance" "web" {
ami = data.aws_ami.ubuntu.id
instance_type = "t3.micro"
tags = merge(
var.additional_tags,
{
Name = "blabla",
Project = "my-proj",
},
)
}

We definitely should improve the query description to avoid misunderstandings and also the actual value of this policy.
Once again, thank you so much!

@codymaust, can you confirm if your case is related to the above, please?

@rafaela-soares When creating TF modules, did the team considered the use case when tags are propagated via provider? e.g.
provider "aws" {
  region = "us-east-1"
  default_tags {
    tags = ...
  }
}

@rafaela-soares When creating TF modules, did the team considered the use case when tags are propagated via provider? e.g.
provider "aws" {
  region = "us-east-1"
  default_tags {
    tags = ...
  }
}

We're getting false-positives in the above case as well: all of our tags except "Name" are set via the aws provider's default_tags{} block.

@rafaela-soares When creating TF modules, did the team considered the use case when tags are propagated via provider? e.g.
provider "aws" {
  region = "us-east-1"
  default_tags {
    tags = ...
  }
}

We're getting false-positives in the above case as well: all of our tags except "Name" are set via the aws provider's default_tags {} block.

What is the query use speak about ?
The Name isn't check in the Resource Not Using Tags from the terraform provider and the default_tags is considered by the rule assets/queries/terraform/aws/resource_not_using_tags
https://github.com/Checkmarx/kics/blob/065c1326afd25fa22f2b059a34f713332ae25502/assets/queries/terraform/aws/resource_not_using_tags/query.rego#L47-L53

I think I have another use-case where Kics gets it wrong. Our Terraform uses the following quite a bit:
In servers/main.tf:
module "something" {
  source = "../modules/something"
  ...
  tags = {
    Purpose = "something"
    TFCreator = "servers"
    BillingCode = "123456"
  }
}

...then in the 'something' module, resources might be defined such as:
resource "aws_s3_bucket" "something" {
  bucket = "somethingBucket"
  tags = merge(var.tags, {
    Name = "somethingbucket",
    Purpose = "storage"
  }
}

In the above case, we find that Kics falsely highlights just about every single resource using tags as "the field 'tags' should have additional tags defined other than 'Name'" - which of course they are. This is a shame, because we end up having to put a # kics-scan ignore-block on every single tags specification (or we could just globally ignore the query, I suppose).

@coofercat The ressources creates by a terraform modules aren't visible for KICS.
You can run the following command to extract the json representation of your terraform code analyzed by KICS.
docker run -v $PWD:/srv -w /srv -it checkmarx/kics:latest scan -p . -d input.json

However, there's a trick : https://docs.kics.io/latest/platforms/#terraform_plan


spasticity due to spinal cord injury or multiple sclerosis

Preferred term label: spasticity due to spinal cord injury or multiple sclerosis
Synonyms
Definition: uncontrolled tightening or contracting of the muscles due to spinal cord injury or multiple sclerosis
Parent term (use OLS, or your favorite ontology browser): nervous system disorder
Children terms (if applicable) Should any existing terms that should be moved underneath this new proposed term?
Your nano-attribution (ORCID): 0000-0001-7151-1615
If you don't have an ORCID, you can sign up for one here

"spasticity" is a phenotype or a symptom, and not a disease. Therefore, it should not been added in Mondo.
@OOPD-LJF, please let me know if you disagree.

I agree - the diseases are spinal cord injury and MS - the spasticity is a phenotype/symptom of those diseases.

Thank you! This issue can be closed.


WIP: Add cmd unittest

Based on the work done by @carolynvs at #2049 this PR add unit tests for get and describe commands.

@carolynvs I don't think I can set a reviewer to this, but could you take a look whenever you have some time?

Thanks a lot for your review @carolynvs, hopefully all issues are addressed with latest commit. Let me know if you think it should be improved some other way.

oops! I forgot that you need a rebase before we can merge, now that #2049 has been merged. I'll put a LGTM on this once that's in.

FYI, @artmello can set reviewers with /cc command and approvers with /assign.
I want to say this works throughout kubernetes-org repos, but it's hit or miss depending on what's been enabled. I think those two are pretty default commands available.

LGTM, and this time I mean it! 😊


Support import of plot_ly objects in DashR

One pipeline for importing a figure produced by the plotly package looks like:
library(plotly)
p <- plot_ly(data = iris, x = ~Sepal.Length, y = ~Petal.Length)
plotly_figure <- plotly_build(p)$x

We should allow DashR app developers to seamlessly include figures produced using plot_ly into their apps. The logical place to do this is inside of dashR:::to_JSON, since this is the common entry point for callbacks and layout rendering.

After this issue is closed, we will need to consider how to address #60.


ActivityIndicator Vnext replaces ActivityIndicatorView throughout FluentUI, gets SwiftUI support.

Platforms Impacted

[x] iOS
[ ] macOS

Description of changes
This changes prepares the ActivityIndicator Vnext to be merged to main:

Replaces all usages of the current ActivityIndicatorView with the Vnext MSFActivityIndicator
-- SearchBar
-- HUD
-- ActivityCell
New SwiftUI modifiers for the ActivityIndicator
Created SwiftUI Demo Controller

Verification

Light
Dark

https://user-images.githubusercontent.com/68076145/130008551-2f927c84-c2c7-4554-bca5-ba23a84589f2.mov
Pull request checklist
This PR has considered:

[x] Light and Dark appearances
[ ] VoiceOver and Keyboard Accessibility
[ ] Internationalization and Right to Left layouts
[ ] Different resolutions (1x, 2x, 3x)
[x] Size classes and window sizes (iPhone vs iPad, notched devices, multitasking, different window sizes, etc)

Microsoft Reviewers: Open in CodeFlow

Plan is to update in vnext branch and then merge to main?

Correct!


remove hack class from dotcom in Subhead

@simurai may I get a review since the PR is merged? :)

@manuelpuyol - @simurai is OOO this week, and https://github.com/github/github/pull/151975 was reverted 😬

@simurai is OOO this week, and github/github#151975 was reverted 😬

Back.. 👋  Started a draft PR to fix the 2 bugs.. but accidentally found a 3rd: https://github.com/github/github/pull/152828#issuecomment-674938791 So it might be safer to first migrate all use cases to Primer::SubheadComponent before we can merge this PR.


TextEntry on_mouse_press (minor change)

Made it so when you click elsewhere on the window it deactivates the TextEntry. This prevents the weird effect of two TextEntry  being active at the same time (for instance: clicking a TextEntry while another is active allowing you to write in both at the same time).

Thanks, looks good!


Added a hook to execute a set of hooks

create: hooks.combine(hook1, hook2, ...) // same as [hook1, hook2, ...]
return hooks.combine(hook1, hook2, ...).call(this, currentHook)
.then(hook => { ... });
renamed doHooks to combine
refactored tests
documented combine in /* */
closes feathersjs/feathers-hooks#68

👍


Branch resource name failed validation

currently I made a mistask when I push a local branch. I create a remote that url is without the dbname,like "dolt remote add test http://xx.xx.xx.xx:50051/organization_name". After i commit change, i entered a wrong remote branch name to push it. the cmd is like "dolt push testdb feature-test:/testdb/feature-test". the cmd run without any output. But when i open the website, it showed

I can't do anything to this db. How could i fix the db? And why an invalid branch name could be set?If have any information, please let me know. Thanks

@zhengjikai I've attempted the steps you've outlined above, but have been unable to reproduce the error.
I'm currently testing with a Dolt client v0.52.20 against DoltLab v0.7.4.
Steps I tried:

clone an existing database locally. dolt clone http://xxx.xx.xx.xx:50051/admin/some-db
create new branch alt with new table and data. add and commit change to alt.
add remote with missing database name dolt remote add test http://xxx.xx.xx.xx:50051/admin
attempt to push to incorrect remote:

dolt push test alt:/test/alt
failed to get remote db; the remote: test 'http://xxx.xx.xx.xx:50051/admin' could not be accessed; could not access dolt url 'http://xxx.xx.xx.xx:50051/admin': rpc error: code = Internal desc = runtime error: invalid memory address or nil pointer dereference

Can you let me know what version of Dolt and DoltLab you are using, and if the steps above look correct to you?

@zhengjikai thanks for the bug! I was able to reproduce by using the following syntax with dolt push, but it only works against valid remotes (not remotes that are missing the database name):
dolt push origin some-branch:/origin/some-branch

DoltHub and DoltLab do not parse the additional / character correctly resulting in the branch name error.
@zhengjikai you can fix your DoltLab instance by deleting the remote branch with:
dolt push :/testdb/feature-test


[AutoPR machinelearningcompute/resource-manager] chore: jsonfmt machinelearningcompute

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/6139

(message created by the CI based on PR content)

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/5579


graphicalReservation enum

Suggestion to change in 3.4
x-extensible-enum ''WITHOUT_FEE', 'WITH_FEE', 'NO'
replace with
x-extensible-enum ''YES', 'YES_WITH_FEE', 'NO'
Since the normal case is probably 'YES' or 'NO'

@Linus-Turnit This is breaking so provided the tech. group agrees, it can be done in 4.0 and not sooner.


Check this solution

It works better with a clean code

Solution is another approach. Often I want to keep step by step solution for easy tasks.
Thank you for your contribution, but I will keep original solution.


Remove accent outline on more details panel

Proposed feature or solution
When clicking the vertical ellipsis next to a saved project, there is a border that matches the accent colour.
(dropdown after clicking more details)

(existing design)

Alternatives
To closer align with the rest of the project's design, this could be changed to a greyscale colour instead.
Unfortunately the exact design won't work because the background colour is different and they would match, but perhaps one of the other defined grey colours?
Additional information
No response

I'd like to work on this!

@tdib Hello, this would be an interesting task for me, I would like to work on it.


LineageOS?

Did you include the changes into LineageOS?
Or - in general - is LineageOS more open than CM?

From #40 and #36, the non-free component left in LineageOS are

Gello
Unrar
TimeService

More info regarding LineageOS in those threads.

@nvllsvm @mar-v-in what about a new release for CM14/LineageOS?

@kehugter It will be updated in a day or two. :)

Gello: It has been removed from LineageOS in favor of Jello. :)
unrar: The full source code is available for auditing. While the license is not ideal, we can at least guarantee it's not violating our privacy. I don't see the point in removing this if we are keeping proprietary firmware and drivers.
TimeService: Not clear on what this does. Since it seems related to firmware, I'd be hesitant to remove it.
tl;dr - I see no reason for this project to exist anymore. :)

Pretty much agreed. Still, thanks for your work on this! =)
You might want to provide some info about the status of the project and the reasons for stopping development on the project page.

I was flashing mainly to avoid CyanogenSetupWizard pimping for a google account. Is that part of the setup gone too?


Merging release into master and dev

Is there a way to merge the changes from release to master and dev vs release -> master -> dev. The issue being if there is a merge conflict, we don't want to update with dev code that isn't ready to be in master.

tl;dr: I'm not sure if I understood the reason why you need this. Anyway, I don't think its possible right now. Maybe in a future version, but the design is still uncertain.

First of all, why do you need this? Can you clarify this merge conflict situation? Perhaps with an example? Please note that merge conflicts will block the PR and will not auto-merge, even with the config auto-merge off.
Anyway, one possibility would be to have multiple targets. This would require the master config attribute to be split into target master (coming from the release branch) and source master (to the dev branch). This target attribute would also need to accept an array in order to support multiple targets. Something like this:
release: release # default
master-target: [master, dev]
master-source: master # default
dev: dev # default

It's worth noting that some other changes regarding this configuration was also requested. See #18, #9 and #6. Perhaps a solution could be formulated to fix all those four requests.
Another way to solve your problem would be to have zero (null) source and targets. Then you could have three steps in the same action. Something like this:
steps:
- uses<EMAIL_ADDRESS># from master to dev
  with:
    github-token: ${{ secrets.GITHUB_TOKEN }}
    release: null
- uses<EMAIL_ADDRESS># from release to master
  with:
    github-token: ${{ secrets.GITHUB_TOKEN }}
    dev: null
- uses<EMAIL_ADDRESS># from release to dev
  with:
    github-token: ${{ secrets.GITHUB_TOKEN }}
    master: dev
    dev: null

I think the same behavior might be achievable with only two steps, but couldn't think of a solution right now.
Either way, both possible solutions would be stuck with the following problem: merging from release to master would trigger to action to merge from master to dev, which already happens today and it's what you're fighting against. Even when supporting merging from release to master directly, this would happen, thus you'd have two merges from release to dev, one of them directly and the other one passing through master in the middle of the way.
To solve this, the action would need to ignore merges coming from itself, which is harder to design.
Nevertheless, I'm open to ideas and pull requests.

Let me see if I can rephrase.
Today: release/* merges into master which then creates a PR to merge master to dev
Request: release/* merges into master and release/* merges into dev
Why: Dev is being work on and changes are being made, maybe some hotfix or something is going with master. Whatever the reason, trying to merge master into dev fails because there is a merge conflict. To resolve this merge conflict, you need to pull dev into master which now create a dirty copy of master and no longer reflects what is actually in release.
tl;dr: Have release/* create a PR for dev to handle merge conflicts instead of having master pull in dev changes.

But what would you do when a bugfix gets merged into master? A PR merging from master to dev is also opened and the merge conflict will also exist. How do you currently solve this case?


Update router-instance.md (zh-cn)

Docs update: added missing params for 'router.push' and 'router.replace'

Thanks!


can't opt back in to subsystem for android insider after previously having opted out!

I had previously opted in then out of the subsystem for android insider track (there was an issue I couldn't resolve), and unfortunately now that I want to opt in again (I found the solution to that issue), it looks like the previous opt out is overriding the new opt in request.
Is there any way to remove the opt out?

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

ID: 9e611135-e472-e8a7-a048-7dd38e0f7a6a
Version Independent ID: 9e611135-e472-e8a7-a048-7dd38e0f7a6a
Content: Windows Subsystem for Android™ Preview Program
Content Source: hub/android/wsa/preview-program.md
Product: dev-environment
Technology: windows-android
GitHub Login: @hamza-usmani
Microsoft Alias: mousma

Unfortunately, Microsoft is ending support for the Windows Subsystem for Android program. See the announcement in the doc here: https://learn.microsoft.com/windows/android/wsa/


Invert query-mutation refetching

Currently there's a very tight coupling between mutations and queries:
useMutation(someMutation, {
  onSuccess() {
    queryCache.refetchQueries('foo');
  },
});

your mutation must be aware of all queries that depend on it. In a large-scale application this can cause issues as your mutations have to be aware of seemingly unrelated queries. And if you have a mutation that's part of a 3rd party library, it's impossible to tie the queries to the mutation.
What I'm suggesting is to come up with a way for a query to specify which mutations should trigger it to refetch. This would really open up new ways to structure a react-query-based application.
I don't have an exact solution in mind, perhaps a subscribing system. I'd just like to start a discussion on the possible options. It's really the only stumbling block we have adopting react-query throughout our codebase

I'm working on this right now, actually. Moving this to a discussion for more ideas.


add kafka

@pascalgrimaud Probably you already see it, we have currently issues with the Travis pipeline to install chrome: https://travis-ci.org/jhipster/jhipster/jobs/584232626#L593

@DanielFran : yes, we need to apply the same patch we did in generator-jhipster -> https://github.com/jhipster/generator-jhipster/commits/master/.travis.yml

I'm changing the label, we can merge this after the next release
I need to do more tests with this

The build failed but it's normal as the generator-jhipster master need to contain https://github.com/jhipster/generator-jhipster/pull/10379
So I'm merging as I just tested it !


Re-enable link checking on www.ecmwf.int

📚 Documentation

#5088 temporarily disabled link checking for www.ecmwf.int, since this was blocking CI and there seemed to be no problem with humans clicking the link. We should remove this exception in future and see if the CI passes.
https://github.com/SciTools/iris/blob/7e1588264dbe528f374b702439940f04e65927eb/docs/src/conf.py#L367-L368

Try HTTPS


Polish concat

Polish concat
a. Add ConcatRunner to wrap a concat operator.
b. Impl row-based concat.
c. Polish the readers, only the concat can have multiply dataframe.

Polish some error info.

Codecov Report

Merging #359 (ba20151) into main (f22f897) will increase coverage by 0.28%.
The diff coverage is 86.04%.

:exclamation: Current head ba20151 differs from pull request most recent head 3fc21b4. Consider uploading reports for the commit 3fc21b4 to get more accurate results

@@            Coverage Diff             @@
##             main     #359      +/-   ##
==========================================
+ Coverage   69.17%   69.45%   +0.28%
==========================================
  Files         212      216       +4
  Lines        7837     7887      +50
  Branches     1063     1058       -5
==========================================
+ Hits         5421     5478      +57
+ Misses       2156     2152       -4
+ Partials      260      257       -3

Impacted Files
Coverage Δ

...tests/engine/operator_runner/test_filter_runner.py
100.00% <ø> (ø)

...ts/engine/operator_runner/test_generator_runner.py
100.00% <ø> (ø)

...ee/tests/engine/operator_runner/test_map_runner.py
100.00% <ø> (ø)

...hee/tests/engine/test_thread_pool_task_executor.py
98.55% <ø> (ø)

towhee/hub/file_manager.py
69.14% <16.66%> (+0.16%)
:arrow_up:

towhee/__init__.py
95.34% <50.00%> (ø)

towhee/engine/operator_runner/__init__.py
88.88% <66.66%> (+2.22%)
:arrow_up:

towhee/engine/operator_runner/concat_runner.py
78.57% <78.57%> (ø)

towhee/engine/operator_io/reader.py
77.33% <78.78%> (-6.14%)
:arrow_down:

towhee/operator/concat_operator.py
81.25% <81.25%> (ø)

... and 22 more

Continue to review full report at Codecov.

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

/approve
/lgtm


first commit for iosmsgs app

Description
First commit for iosmsg app
Copilot

🤖 Generated by Copilot at 5551575
Summary
📱📩🛠

This pull request adds a new app called IOS Messages, which shows a notification for a message from a specific sender on the Tidbyt device. It includes the main code file iosmessages.star that defines the app logic and UI, and the manifest file manifest.yaml that provides the app metadata.

IOS Messages
Shows sender's notification
A winter surprise

Walkthrough

Create and register the IOS Messages app, which displays a notification for a message sent from a specified sender (link, link)

Add the main code in iosmessages.star that uses the base64, render, and schema modules to load the message icon, create the UI elements, and define the app configuration fields (link)
Define the main function that takes the config object and returns a list of render objects, the do_render function that creates the notification layout, the get_schema function that returns the schema object, and the display_failure function that shows an error message (link)
Add the manifest file in manifest.yaml that contains the metadata for the app, such as the id, name, summary, description, author, file name, and package name (link)

I have read the CLA Document and I hereby sign the CLA

I realized Apple does not allow users to auto-run message notifications... closing this pull requests. :(


Draw overlaps of timers as triangles.

Especially GPU timers can overlap (due to the pipeline nature).
This change ensures that the text of such timers does not overlap
and that it is clearly visible to the user that these timers do
overlap.
To do so, the overlapping area is drawn as two triangles. Further,
the coloring is slightly adjusted, such that overlapping timers
do not have the same color, and the triangles can be seen.
Test: Need to be done on the feature/vulkan_layer branch.

@beckerhe I added you basically for the anonymous namespace, so feel free to drop a complete review.

@beckerhe I added you basically for the anonymous namespace, so feel free to drop a complete review.

Here is a test capture, in case you want to try it on your own:
http://go/orbit-overlapping-timers-example

Thanks for you reviews so far. Very valuable feedback. I just restructured the change completely to be aligned with the suggestions. Now we are drawing timers always as two rectangles. Also the shading is preserved, for which I added a AddShadedTriangle method. Please have another look.

Hi Florian, have you considered something like this:

It seems like it would simplify a lot of the logic and leave more room for text.

Interesting idea. However, I don't see a clear benefit of this solution compared to the current one. especially, the code would look pretty much the same. I'd suggest to keep it as it is now, and if it comes up again, rethink.

Merging this now. Let me know if we have any follow ups.


feat(dio): Allow ResponseDecoder to return a Future<String?>

New Pull Request Checklist

[x] I have read the Documentation
[x] I have searched for a similar pull request in the project and found none
[x] I have updated this branch with the latest main branch to avoid conflicts (via merge from master or rebase)
[ ] I have added the required tests to prove the fix/feature I'm adding
[ ] I have updated the documentation (if necessary)
[x] I have run the tests without failures
[ ] I have updated the CHANGELOG.md in the corresponding package

Additional context and info (if any)
Gives more flexibility to the developer if they want to do some async work in the response decoder. I don't think tests are needed for this. I don't think this is a breaking change as the return type of ResponseDecoder is now FutureOr<String?>.

Could we address ResponseEncoder too? If so, https://github.com/cfug/dio/issues/1709 should be resolved.

Sorry, I mean the RequestEncoder. :)

EDIT 2: I can allow RequestEncoder to return a Future in this PR, or I can open another one. Up to you guys.

@Reprevise Please continue with this PR if possible, thanks.

@AlexV525 RequestEncoder has been updated to return a FutureOr<List>

You seem to be using a conflicted main branch, which merges your changes unexpectedly.

Should be fixed now.

Changelog has been updated


Remove precondition check.

Allow blind removals to generate empty states and have no effect: precondition is an artifact of sloppy quorums in Riak.

@cmeiklejohn Should this also be done for state_awset and state_awset_ps?

@vitorenesduarte Yeah, it should.  I don't think we need it.

I'm on it.

@junghunyoo Can you check this commit df965e9885ca60e6f89cff967e2f17c0ebe3d3e8?

@junghunyoo Can you confirm that the changes to the provenance semiring based set look good?

@vitorenesduarte , @cmeiklejohn The state_awset_ps change looks good.


Support Markdown Fenced Code Block Grammar

I'd love to have syntax highlighting inside markdown code blocks:
```elixir
IO.puts("some output")
```

There is an Example Repo I found in Microsoft/vscode#34891, but I just started using VSCode and don't feel confident enough (yet) to open up a PR and give it a try on my own.

Has this been fixed? I still don't see syntax highlight in Elixir code blocks in Markdown files. I took a brief look at the commit and I'm not sure if the plantuml references are accidental.


I think you could create phone and postcode fields with using RegexValidator just like we discussed on Discord

Reviewleriniz için teşekkürler. :)
https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail
Virüs
bulunmuyor. www.avast.com
https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail
<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
Melih @.***>, 4 Ara 2021 Cmt, 00:45 tarihinde şunu
yazdı:

@.**** approved this pull request.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/upy/bootcamp/pull/42#pullrequestreview-823142523, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AWAT5Q4QAM5YJTBK4RZQN4DUPE257ANCNFSM5JI5FMXQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Geri dönüşleriniz için teşekkür ederim hocam. Yarın sabaha düzeltmiş olurum.
Esenlikler dilerim.
5 Ara 2021 Paz 01:20 tarihinde M. Caner Cakici @.***>
şunu yazdı:

@.**** requested changes on this pull request.
migration dosyalarini goremedim, ayrica yeni eklenen modellerin
adminlerinde arama yaptirabilir miyiz? bazilarinda hata alacagiz gibi
duruyor.
In ecommerce/customers/models.py
https://github.com/upy/bootcamp/pull/42#discussion_r761910982:

@@ -67,3 +68,43 @@ def get_short_name(self):
def email_user(self, subject, message, from_email=None, **kwargs):
"""Send an email to this user."""
send_mail(subject, message, from_email, [self.email], **kwargs)

cok fazla bosluk vermisiz.
In ecommerce/customers/models.py
https://github.com/upy/bootcamp/pull/42#discussion_r761911201:

   verbose_name = _("country")

   verbose_name_plural = _("countries")

def str(self):

   return f"{self.name}"

+class City(BaseAbstractModel):

name = models.CharField(max_length=255, verbose_name=_("City"))
fullname = models.ForeignKey(Country, verbose_name=_("Fullname"),

                              on_delete=models.PROTECT)

class Meta:

   verbose_name = _("adress")

   verbose_name_plural = _("adresses")

def str(self):

   return f"{self.name}"

+class Adress(BaseAbstractModel):
Address olabilir mi?
In .gitignore
https://github.com/upy/bootcamp/pull/42#discussion_r762471507:

@@ -6,6 +6,9 @@ pycache/

C extensions
bu dosyada yapilan degisikligi anlamadim.
In ecommerce/.env.dist
https://github.com/upy/bootcamp/pull/42#discussion_r762471532:

@@ -1,5 +1,5 @@
DEBUG=True
-SECRET_KEY=secret_key
@._ip:server_port/db_name
-ALLOWED_HOSTS=<IP_ADDRESS>,<IP_ADDRESS>
@.hm6e*9ivmy+cavdhq)4tm5-&!c&u2_xn6@)o$rn-h$9

bu bilgiler burada bulunmamali sanki?
In ecommerce/baskets/enums.py
https://github.com/upy/bootcamp/pull/42#discussion_r762471563:

@@ -0,0 +1,8 @@
+from django.db import models
+from django.utils.translation import gettext_lazy as _

+class Status(models.TextChoices):
BasketStatus dersek, olabilecek diger statuslarla karismasini engellemis
oluruz.
In ecommerce/baskets/models.py
https://github.com/upy/bootcamp/pull/42#discussion_r762471612:

+from django.db import models
+from django.utils.translation import gettext_lazy as _
+from customers.models import Customer
+from products.models import Product
+from core.models import BaseAbstractModel
+from baskets import enums

+class Basket(BaseAbstractModel):

customer = models.ForeignKey(Customer, verbose_name=_("customer"),

                              on_delete=models.PROTECT, null=True)

status = models.CharField(choices=enums.Status.choices, verbose_name=_("customer"), max_length=30 )
class Meta:

   verbose_name = _("basket")

   verbose_name_plural = _("basket")

def str(self):

   return f"{self.customer} - {self.Status}"

customer null olabileceginden buraya self.id de eklersek ayirt etmemizde
bize yardimci olur.
In ecommerce/baskets/models.py
https://github.com/upy/bootcamp/pull/42#discussion_r762471638:

   verbose_name_plural = _("basket")

def str(self):

   return f"{self.customer} - {self.Status}"

+class BasketItem(BaseAbstractModel):

basket = models.ForeignKey(Basket, verbose_name=_("basket"),

                              on_delete=models.PROTECT)

product= models.ForeignKey(Product, verbose_name=_("basket"),

                              on_delete=models.PROTECT)

quantity = models.DecimalField(verbose_name=_("Quantity"),

                            max_digits=4, decimal_places=1)

price = models.DecimalField(verbose_name=_("Price"),

                              max_digits=10, decimal_places=2)

class Meta:

   verbose_name = _("basketItem")

basket item seklinde bosluk biraksak daha iyi olur sanki?
In ecommerce/customers/admin.py
https://github.com/upy/bootcamp/pull/42#discussion_r762471701:

@@ -36,3 +36,17 @@ class CustomerAdmin(UserAdmin):
list_display = ("email", "first_name", "last_name", "is_staff")
search_fields = ("first_name", "last_name", "email")
ordering = ("email",)

@.***(Adress)
+class AdressAdmin(admin.ModelAdmin):

list_display = ("name", "line1", "line2")

search field ekleyebilir miyiz?
In ecommerce/customers/admin.py
https://github.com/upy/bootcamp/pull/42#discussion_r762471704:

@@ -36,3 +36,17 @@ class CustomerAdmin(UserAdmin):
list_display = ("email", "first_name", "last_name", "is_staff")
search_fields = ("first_name", "last_name", "email")
ordering = ("email",)

@.***(Adress)
+class AdressAdmin(admin.ModelAdmin):

list_display = ("name", "line1", "line2")

@.***(City)
+class CityAdmin(admin.ModelAdmin):

list_display = ("name", )

search field ekleyebilir miyiz?
In ecommerce/customers/admin.py
https://github.com/upy/bootcamp/pull/42#discussion_r762471708:

@@ -36,3 +36,17 @@ class CustomerAdmin(UserAdmin):
list_display = ("email", "first_name", "last_name", "is_staff")
search_fields = ("first_name", "last_name", "email")
ordering = ("email",)

@.***(Adress)
+class AdressAdmin(admin.ModelAdmin):

list_display = ("name", "line1", "line2")

@.***(City)
+class CityAdmin(admin.ModelAdmin):

list_display = ("name", )

@.***(Country)
+class CountryAdmin(admin.ModelAdmin):

list_display = ("name", )

search field ekleyebilir miyiz?
In ecommerce/customers/models.py
https://github.com/upy/bootcamp/pull/42#discussion_r762471756:

class Meta:

   verbose_name = _("adress")

   verbose_name_plural = _("adresses")

def str(self):

   return f"{self.name}"

+class Adress(BaseAbstractModel):

name = models.CharField(max_length=255, verbose_name=_("Name"))
fullname = models.CharField(max_length=255, verbose_name=_("Full Name"))
line1= models.CharField(max_length=255, verbose_name=_("Lime 1"))
line2 = models.CharField(max_length=255, verbose_name=_("Line 2"))
phone = models.CharField(max_length=255, verbose_name=_("Phone Number"))
district = models.CharField(max_length=255, verbose_name=_("District"))
postcode = models.PositiveIntegerField(verbose_name=_("PostCode"))
city = models.ForeignKey(City, verbose_name=_("City"),

                        on_delete=models.PROTECT)

customer'i da FK olarak baglayabilir miyiz? odevde bahsetmeyi unutmusum.
In ecommerce/orders/models.py
https://github.com/upy/bootcamp/pull/42#discussion_r762471848:

phone = models.CharField(max_length=255, verbose_name=_("Phone Number"))

district = models.CharField(max_length=255, verbose_name=_("District"))
postcode = models.PositiveIntegerField(verbose_name=_("PostCode"))
city = models.ForeignKey(City, verbose_name=_("City"),

                        on_delete=models.PROTECT)

class Meta:

   verbose_name = _("invoiceadress")

   verbose_name_plural = _("invoiceadresses")

def str(self):

   return self.fullname

+class Order(BaseAbstractModel):

customer = models.ForeignKey(Customer, verbose_name=_("Customer"),

                        on_delete=models.CASCADE)

basket = models.ForeignKey(Basket, verbose_name=_("Basket"),

                            on_delete=models.CASCADE)

billing_address = models.CharField(max_length=255, verbose_name=_("Billing Address"))

bu FK olmasi gerekiyordu
In ecommerce/orders/models.py
https://github.com/upy/bootcamp/pull/42#discussion_r762471990:

+class BillingAddress(BaseAbstractModel):

fullname = models.CharField(max_length=255, verbose_name=_("Full Name"))
line1= models.CharField(max_length=255, verbose_name=_("Lime 1"))
line2 = models.CharField(max_length=255, verbose_name=_("Line 2"))
phone = models.CharField(max_length=255, verbose_name=_("Phone Number"))
district = models.CharField(max_length=255, verbose_name=_("District"))
postcode = models.PositiveIntegerField(verbose_name=_("PostCode"))
city = models.ForeignKey(City, verbose_name=_("City"),

                        on_delete=models.PROTECT)

class Meta:

   verbose_name = _("billingadress")

   verbose_name_plural = _("billingadresses")

def str(self):

   return self.fullname

+class InvoiceAddress(BaseAbstractModel):
odevde typo olmus bunu ShippingAddress olarak degistirebilir miyiz?
In ecommerce/orders/models.py
https://github.com/upy/bootcamp/pull/42#discussion_r762471995:

district = models.CharField(max_length=255, verbose_name=_("District"))

postcode = models.PositiveIntegerField(verbose_name=_("PostCode"))
city = models.ForeignKey(City, verbose_name=_("City"),

                        on_delete=models.PROTECT)

class Meta:

   verbose_name = _("invoiceadress")

   verbose_name_plural = _("invoiceadresses")

def str(self):

   return self.fullname

+class Order(BaseAbstractModel):

customer = models.ForeignKey(Customer, verbose_name=_("Customer"),

                        on_delete=models.CASCADE)

basket = models.ForeignKey(Basket, verbose_name=_("Basket"),

                            on_delete=models.CASCADE)

billing_address = models.CharField(max_length=255, verbose_name=_("Billing Address"))
shipping_address = models.CharField(max_length=255, verbose_name=_("Shipping Address"))

bu FK olmasi gerekiyordu
In ecommerce/orders/models.py
https://github.com/upy/bootcamp/pull/42#discussion_r762472035:

postcode = models.PositiveIntegerField(verbose_name=_("PostCode"))

city = models.ForeignKey(City, verbose_name=_("City"),

                        on_delete=models.PROTECT)

class Meta:

   verbose_name = _("invoiceadress")

   verbose_name_plural = _("invoiceadresses")

def str(self):

   return self.fullname

+class Order(BaseAbstractModel):

customer = models.ForeignKey(Customer, verbose_name=_("Customer"),

                        on_delete=models.CASCADE)

basket = models.ForeignKey(Basket, verbose_name=_("Basket"),

                            on_delete=models.CASCADE)

billing_address = models.CharField(max_length=255, verbose_name=_("Billing Address"))
shipping_address = models.CharField(max_length=255, verbose_name=_("Shipping Address"))
total_price= models.PositiveIntegerField()

finansal degerleri DecimalField kullanmamizda fayda bulunmakta.
In ecommerce/orders/models.py
https://github.com/upy/bootcamp/pull/42#discussion_r762472045:

shipping_address = models.CharField(max_length=255, verbose_name=_("Shipping Address"))

total_price= models.PositiveIntegerField()

class Meta:

   verbose_name = _("Order")

   verbose_name_plural = _("Orders")

def str(self):

   return f"{self.customer - self.basket - self.total_price}"

+class OrderItem(BaseAbstractModel):

order = models.ForeignKey(Order, verbose_name=_("Order"),

                            on_delete=models.CASCADE)

product = models.CharField(max_length=255, verbose_name=_("Product"))
total_price= models.PositiveIntegerField()

finansal degerleri DecimalField kullanmamizda fayda bulunmakta.
In ecommerce/payments/models.py
https://github.com/upy/bootcamp/pull/42#discussion_r762472097:

+from django.db import models
+from django.utils.translation import gettext_lazy as _

+from core.models import BaseAbstractModel
+
+
+class Bank(BaseAbstractModel):

name = models.CharField(max_length=255, verbose_name=_("Bank"))
class Meta:

   verbose_name = _("bank")

   verbose_name_plural = _("banks")

def str(self):

   return f"{self.name}"

+class BankAccount(BaseAbstractModel):

bank = models.ForeignKey(Bank, verbose_name=_("Name"), on_delete=models.CASCADE)

_("Name") yerine _("Bank") olacakti sanirim?
In ecommerce/products/models.py
https://github.com/upy/bootcamp/pull/42#discussion_r762472183:

class Product(BaseAbstractModel):
sku = models.CharField(verbose_name=("SKU"), max_length=100, unique=True)
name = models.CharField(max_length=255, verbose_name=("Name"))
description = models.TextField(max_length=2000, verbose_name=_("Description"))

categories = models.ManyToManyField(Category)

verbose_name tanimi da yapsak daha iyi olurdu.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/upy/bootcamp/pull/42#pullrequestreview-822619047, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AWAT5Q2QF4X6ROMK6RX3LU3UPKH3BANCNFSM5JI5FMXQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


add details about how to overwrite the keybindings

Previous code doesn't allow user to change keybindings without touching the plugin file.
Expose the keybinding settings by using global variables.

This is related to commit: d463f339ce9b12c3c546f9751bbb8dcfd758afb7

Merged as well, thanks!


[Bug]: can't use ESM with external node modules that export commonjs and moduel files

Version
29.0.0
Steps to reproduce

clone my repo - https://github.com/rbnayax/ts-jest-example
run yarn
run yarn test

Expected behavior
test should pass
Actual behavior
 FAIL  lib/fn/fn.spec.ts
  ● Test suite failed to run

    lib/fn/fn.ts:1:21 - error TS7016: Could not find a declaration file for module 'colorette'. '/home/regev/WebstormProjects/ts-jest-example/node_modules/colorette/index.cjs' implicitly has an 'any' type.
      Try `npm i --save-dev @types/colorette` if it exists or add a new declaration (.d.ts) file containing `declare module 'colorette';`

    1 import {green} from "colorette";
                          ~~~~~~~~~~~

Test Suites: 1 failed, 1 total
Tests:       0 total
Snapshots:   0 total
Time:        1.761 s
Ran all test suites.
(node:415750) ExperimentalWarning: VM Modules is an experimental feature. This feature could change at any time
(Use `node --trace-warnings ...` to show where the warning was created)

Debug log
link
Additional context
when removing the reference to 3rd party node module, everything works as expected
Environment
System:
    OS: Linux 5.14 Ubuntu 20.04.5 LTS (Focal Fossa)
    CPU: (8) x64 11th Gen Intel(R) Core(TM) i7-11370H @ 3.30GHz
  Binaries:
    Node: 16.11.1 - ~/.nvm/versions/node/v16.11.1/bin/node
    Yarn: 3.2.1 - ~/.nvm/versions/node/v16.11.1/bin/yarn
    npm: 8.0.0 - ~/.nvm/versions/node/v16.11.1/bin/npm
  npmPackages:
    jest: ^29.0.2 => 29.0.2

Updating to ts-jest 29 breaks import (and all CI goes into infinite loop)
Getting ReferenceError: exports is not defined while it was working fine with ts-jest@28 with jest@28|29.
I've tried moving the config from global to transform.
const config = {
  preset: 'ts-jest/presets/default-esm',
  extensionsToTreatAsEsm: ['.ts'],
  moduleNameMapper: {
    '^(\\.{1,2}/.*)\\.js$': '$1',
    '#(.*)': '$1'
  },
  roots: [
    '<rootDir>/ts'
  ],
  testEnvironment: 'node',
  testMatch: [
    '**/ts/?(*.)+(spec|test|integrate|accept|system|unit).[jt]s?(x)'
  ],
  transform: {
    '^.+.tsx?$': ['ts-jest', { isolatedModules: true, useESM: true }]
  },
  transformIgnorePatterns: [
    // Need to MANUALLY identify each ESM package, one by one
    'node_modules/(?!(assertron|chalk|#ansi-styles)/)'
  ]
}

module.exports = config

The infinite loop in CI is a concern. (e.g. https://github.com/unional/clibuilder/runs/8280815715?check_suite_focus=true)
They are triggered by tools such as renovate.
And there may be 100k+ CI out there all get stuck because of this.

does this happen to next tag?
In v29, we don’t have anything change specifically related to this, how about the combination of Jest 28 and ts-jest 29?

next tag is the same as 29 no?
global doesn't help
I tried it using jest 28 and ts-jest 28 and it doesn't work as well...
jest 28 with ts-jest 29 fails the same way...
I tried using a different node module that has typing in it (but it is not of type module) and it works so the issue must be related to packages that export module and commonjs at the same time (like colorette)
It is important to mention that typesciprt compiles without errors so it must be something to do with the transformation during the Jest run.

@rbnayax please use isolatedModules: true as a workaround. Indeed there is an issue with type checking which is provided by ts-jest

@rbnayax
Have you tried removing preset from your config?
I think setting both preset and transform at once will cause two transformations.

@rbnayax
Have you tried removing preset from your config? I think setting both preset and transform at once will cause two transformations.

I did it does not help

I had the same issue with jest: 29 / ts-jest: 29
downgrading to ts-jest: 28 fixed it

@goums this issue is not related to v28 or v29. This issue already happened to v28 because it's related to TypeScript APIs itself which ts-jest didn't change in that area.

@ahnpnl I'm working on a private repo, so I'm not able to share it unfortunately, but it looks like there are some esm incompatibility issues on ts-jest 29. Maybe you updated some dependency versions or configuration that introduce an incompatibility?
just sharing some command line results, without touching anything in the code:

testing with ts-jest@next ( 29.0.0-next.1 ) is crashing

yarn add ts-jest@next
yarn run test
...
  ● Test suite failed to run

    ReferenceError: exports is not defined

      1 | import { spawn } from "node:child_process";
    > 2 |
        | ^

downgrading to ts-jest@28 fix the issue

yarn add ts-jest@28
yarn run test
...
Test Suites: 2 passed, 2 total
Tests:       2 passed, 2 total
Snapshots:   0 total
Time:        9.693 s

Other versions I'm using:
"typescript": "4.7.4",
"ts-node": "10.9.1",
"jest": "29.0.3",

We only compile ts to js so the error you see is about Jest not giving the file to ts-jest to compile

Feel free to open a PR to adjust the doc:)

One (maybe dumb) question, but couldn't / shouldn't the preset include the useESM: true option?

@rbnayax this issue will be fixed in the next release of colorette. You can check the PR which is linked.


http ^0.13.0 Library upgrade required

Hello,
I upgraded my flutter version to 2.0.0 and I upgraded my firebase libraries. There has been an upgrade on FirebaseStorage, and then this library is blocking me of upgrading my project to use the latest version of firebase.
Because firebase_storage >=8.0.0 depends on firebase_storage_web ^1.0.0 which depends on http ^0.13.0, firebase_storage >=8.0.0 requires http ^0.13.0.
And because global_configuration >=1.6.0 depends on http ^0.12.2, firebase_storage >=8.0.0 is incompatible with global_configuration >=1.6.0.
So, because fitwin depends on both global_configuration ^1.6.0 and firebase_storage ^8.0.0, version solving failed.
pub get failed (1; So, because fitwin depends on both global_configuration ^1.6.0 and firebase_storage ^8.0.0, version solving failed.)

The PR is merged, I will upload version 2.0.0-nullsafety.0 to pub.dev today.


Support naming instances

This PR implements some basic support for names for instances. These names must be tenant unique and will be used for the hostname inside the instance (and thus the DHCP created DNS entry.)

Coverage increased (+0.01%) to 65.955% when pulling 54865b37701eb516d3de9157d5ff07f532287f19 on rbradford:instance-naming into a16660bbedd1aa3479b38a7b05b5812f7ece8114 on 01org:master.

Coverage increased (+0.006%) to 65.894% when pulling 17330412bcf8de8abde997e186c726c1b1ab531f on rbradford:instance-naming into c77f770246f140711ac5fe6eb298016368d046a3 on 01org:master.

Coverage increased (+0.006%) to 65.894% when pulling 96a89f4a449bbb0948720e6c6330fe51fcf50d46 on rbradford:instance-naming into c77f770246f140711ac5fe6eb298016368d046a3 on 01org:master.

@kaccardi Addressed your feedback. Thanks!

LGTM


Fix the max comment length issue

I ran into #730 in a demo I was building, so I threw together a quick fix for the issue. Now it'll generate a minimum comment. It's not super elegant (a bit of code duplication), but I was in a hurry to unblock the demo. I don't mind if the team decides to make some tweaks to make this less duplicative.
Fixes #730

@jhutchings1 can I help get this merged? we're starting to see this happen with dependency-review frequently.

This was enough to unblock my demos, but I would love for the team to take
this across the line if you have cycles. @bteng22, happy for an assist
here!
Justin Hutchings | Senior Director of Product Management | GitHub -
Security |  https://www.github.com/jhutchings1
https://www.linkedin.com/in/hutchingsjustin/
https://www.linkedin.com/in/hutchingsjustin/
On Wed, May 15, 2024 at 11:05 PM Cameron Cooper @.***>
wrote:

@jhutchings1 https://github.com/jhutchings1 can I help get this merged?
we're starting to see this happen with dependency-review frequently.
—
Reply to this email directly, view it on GitHub
https://github.com/actions/dependency-review-action/pull/767#issuecomment-2112938634,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADCCCIYSVZNBWD3OK26B7OLZCOBUTAVCNFSM6AAAAABHIFIIC2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMJSHEZTQNRTGQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

Update

I just pushed a bunch of updates to this PR, mostly code dedup and basic unit tests
I tested using my dev branch with full Action run output and summarized PR comment
...both views look as expected to me, but please do review and call out any concerns 👍
Updated the PR with npm run package ✅

I see a couple merge conflicts that I'm not seeing in my Codespace - will check those out, but otherwise this should be ready for review cc @hmaurer @bteng22 🙇

👍 @bteng22 let me know what you think - I committed your suggestion, if this is looking right to you I can update the dist/ packaging and ping you for a re-stamp?


fix: route resolve loses query parameters

Description
Fixes resolve losing query parameters when passing a route object, tests have also been added to test this behavior. This PR changes resolve to merge the resolved route into the passed route.

Linked Issues
https://github.com/nuxt-modules/i18n/issues/2020
https://github.com/nuxt-modules/i18n/issues/1967
Additional context

@BobbieGoede - This fix will be a live-saver. I hope it gets merged asap. I've been stuck on this bug for quite a while 😔

@kazupon Hello, could you please review and merge this PR? This bug has been bothering me for a long time, and it would be great if it could be fixed. Thanks for your help!

Ah, Sorry
I had missed this issue 😅
Thank you for your mention!


Add a NonDet trait to verification-annotations

The current abstract_value implementation is not safe for types that are not contiguous in memory or where some values are not legal (eg enumerations).
See  smack.rs but, for consistency with existing design, omit verifer_ prefix

Closely related to #8


history

one page use bootstrap-switch , then you click a link and go to another page. when you come back with history button(not a link), you will found bootstrap-switch not work. for example, one checkbox is checked, but when you back with history,bootstrap-switch make it not check.

I found it was chrome's bug. close


Upgrade to buildpack API > 0.6

The upstream Cloud Native Buildpacks project has a proposal to deprecate Buildpack APIs <= 0.6. This buildpack's API version will need to be upgraded so it remains supported by the lifecycle.

Resolved by https://github.com/paketo-buildpacks/node-run-script/pull/101


Integration Test - Release - 2019/04/24 11:49:16

Auto create for integration test. IssueCommandFlow

@PRMergerTest3 : Thanks for your contribution! The author, @v-caxian, has been notified to review your proposed change.


Local Development guide leads to misconfigured environment when using a GPU

Hello,
Going through the steps to set up a local development environment seems to be missing steps and leading people to have misconfigured environments if they want to utilize their GPU.
The main culprit that seems to be causing the greatest amount of trouble is the current step that installs jax to the user's machine is the non CUDA version.
To be able to install the CUDA version of jax, the user has to follow the installation instructions on nvidia's website to install the latest version of the CUDA toolkit, then sign up as an nVidia developer to get access to the cuDNN library, install that, then follow the instructions on the jax github page to get the cuda version of jax. This works on Ubuntu and I'm pretty sure that this is doable on WSL, but not 100% sure on that.
Hopefully this will clear up a lot of issues people are having setting up

Thanks. What version of Ubuntu are you on? I was having issues trying this tonight, and after looking at the cuDNN Support Matrix I’m wondering if it might be because I’m on 22.04.

I can confirm that the installation works on WSL and that it doesn't default back to CPU. However, it crashes like this:
2022-06-16 15:38:36.720344: E external/org_tensorflow/tensorflow/stream_executor/cuda/cuda_asm_compiler.cc:57] cuLinkAddData fails. This is usually caused by stale driver version.
2022-06-16 15:38:36.720473: E external/org_tensorflow/tensorflow/compiler/xla/service/gpu/gpu_compiler.cc:1248] The CUDA linking API did not work. Please use XLA_FLAGS=--xla_gpu_force_compilation_parallelism=1 to bypass it, but expect to get longer compilation time due to the lack of multi-threading.
Traceback (most recent call last):
  File "backend/app.py", line 60, in <module>
    dalle_model = DalleModel(args.model_version)
  File "/home/calops/dalle-playground/backend/dalle_model.py", line 62, in __init__
    dalle_model, revision=DALLE_COMMIT_ID, dtype=dtype, _do_init=False
  File "/home/calops/.local/lib/python3.7/site-packages/dalle_mini/model/utils.py", line 26, in from_pretrained
    pretrained_model_name_or_path, *model_args, **kwargs
  File "/home/calops/.local/lib/python3.7/site-packages/transformers/modeling_flax_utils.py", line 596, in from_pretrained
    model = cls(config, *model_args, _do_init=_do_init, **model_kwargs)
  File "/home/calops/.local/lib/python3.7/site-packages/transformers/models/bart/modeling_flax_bart.py", line 920, in __init__
    super().__init__(config, module, input_shape=input_shape, seed=seed, dtype=dtype, _do_init=_do_init)
  File "/home/calops/.local/lib/python3.7/site-packages/transformers/modeling_flax_utils.py", line 115, in __init__
    self.key = PRNGKey(seed)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/random.py", line 125, in PRNGKey
    key = prng.seed_with_impl(impl, seed)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/prng.py", line 236, in seed_with_impl
    return PRNGKeyArray(impl, impl.seed(seed))
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/prng.py", line 276, in threefry_seed
    lax.shift_right_logical(seed_arr, lax_internal._const(seed_arr, 32)))
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/lax/lax.py", line 444, in shift_right_logical
    return shift_right_logical_p.bind(x, y)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/core.py", line 323, in bind
    return self.bind_with_trace(find_top_trace(args), args, params)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/core.py", line 326, in bind_with_trace
    out = trace.process_primitive(self, map(trace.full_raise, args), params)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/core.py", line 675, in process_primitive
    return primitive.impl(*tracers, **params)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/dispatch.py", line 99, in apply_primitive
    **params)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/util.py", line 219, in wrapper
    return cached(config._trace_context(), *args, **kwargs)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/util.py", line 212, in cached
    return f(*args, **kwargs)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/dispatch.py", line 149, in xla_primitive_callable
    prim.name, donated_invars, False, *arg_specs)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/dispatch.py", line 231, in _xla_callable_uncached
    keep_unused, *arg_specs).compile().unsafe_call
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/dispatch.py", line 705, in compile
    self.name, self._hlo, self._explicit_args, **self.compile_args)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/dispatch.py", line 806, in from_xla_computation
    compiled = compile_or_get_cached(backend, xla_computation, options)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/dispatch.py", line 768, in compile_or_get_cached
    return backend_compile(backend, computation, compile_options)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/profiler.py", line 206, in wrapper
    return func(*args, **kwargs)
  File "/home/calops/.local/lib/python3.7/site-packages/jax/_src/dispatch.py", line 713, in backend_compile
    return backend.compile(built_c, compile_options=options)
jaxlib.xla_extension.XlaRuntimeError: UNKNOWN: no kernel image is available for execution on the device
in external/org_tensorflow/tensorflow/stream_executor/cuda/cuda_asm_compiler.cc(60): 'status'

Had the same issue as @calops, fixed it by following this: https://github.com/google/jax/issues/5723#issuecomment-1132802697
Basically, make sure your CUDA driver version (found in nvidia-smi) and CUDA toolkit version (found with nvcc --version) are the same. This can happen if you're using a technically unsupported OS (like me on Fedora 36, where I'm using the driver from dnf, and the toolkit from nvidia's website).
I think this is unrelated to this issue though.

@u1f98e’s comment seems relevant to other flavors of Linux too, I believe. On Ubuntu 22, I got things working by using the Additional Drivers GUI (built into Ubuntu) to switch go NVIDIA’s official drivers, then installing CUDA Toolkit, cuDNN, and jax.
I found the official cuDNN installation docs to be helpful btw, including the prerequisites. When installing CUDA Toolkit according to the docs, don’t forget the mandatory post-installation actions section. After that, use the instructions from the jax repo to install the particular version you need.
TL;DR - these steps worked for me

Install NVIDIA graphics drivers
Install CUDA Toolkit (don’t for get post-install steps)
Install zlib (prereq for cuDNN)
Download cuDNN and install it
Install jax for CUDA

After this, installing the requirements.txt with pip and running the backend worked for me.


Suggestion: Unread Badge or Number

Hello.  It would be wonderful to have a badge or number that shows if I have unread articles in my Omnivore inbox (or another filter or tag).  I use these unread counts (similar to how Pocket works on mobile apps) to remind me that I have articles I need to read or do something with.

@herrherrmann, my feature suggestion is similar to this one. What I would add is an option to have badge number determined by a filter, with maybe default in:inbox on with a different filter tag in Omnivore.
for example, if we had a badge count filtered on in:inbox label:RSS it would show only RSS items in my inbox.
Below is an image of how my RSS addon handles new badges. Of course, this could be totally option so that some people who don't like notification badges can have it left off :)


[Bug] v1.17.0-beta isn't next

What are you really trying to do?
Use experimental
Describe the bug
Following instructions for trying experimental v1.17.0-beta I did the following but end up getting v1.14.0-alpha.2. I made sure my brew was up to date ( I think ) and still could not switch. See my commands
Minimal Reproduction
dev  % brew info tctl
tctl: stable 1.16.0 (bottled)
Temporal CLI (tctl)
https://temporal.io/
/opt/homebrew/Cellar/tctl/1.16.0 (6 files, 66.3MB) *
  Poured from bottle on 2022-04-11 at 23:08:48
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/tctl.rb
License: MIT
==> Dependencies
Build: go ✘
==> Analytics
install: 481 (30 days), 1,539 (90 days), 3,750 (365 days)
install-on-request: 479 (30 days), 1,535 (90 days), 3,745 (365 days)
build-error: 0 (30 days)
dev  % tctl config set --version next
Incorrect Usage: flag provided but not defined: -version

NAME:
   tctl config set - set property

USAGE:
   tctl config set [arguments...]
dev  % tctl config set version next
version: next
dev  % tctl --version
tctl version 1.14.0-alpha.2

Environment/Versions

OS and processor: M1 Mac
Golang Version: (I'm using go version go1.18 darwin/arm64).

I also compiled this from main and after running make the default version of compiled binary is 1.14.0-alpha.2


Removing transaction symbols from package namespace

Fix #185 . Please review and let me know if I missed something.

Hey @redondo-mk thanks so much for working on this!  I will take a look this weekend 😺

Looks great, thanks @redondo-mk !!
There's a few remaining references hiding out in the examples and docs directories; would you be willing to have a look when you get a chance?

Sorry that I missed that - tests didn't save me there. I belive it should be good now.

jeje no worries.  Thanks @redondo-mk !!  Gonna give this a final once-over, and then it should be ready to merge.

I've tried to update my email address from my first commit in this branch and I've done something wrong. I've created another branch 185_symbols_in_transaction_init2 which has changes relevant to #185. I apologize for inconvenience!


Several "Property not allowed" messages in angular.json

🐞 Bug report
Command (mark with an x)

[ ] new
[ ] build
[ ] serve
[ ] test
[ ] e2e
[ ] generate
[ ] add
[ ] update
[ ] lint
[ ] extract-i18n
[x] config
[ ] run
[ ] help
[ ] version
[ ] doc

Description
My angular.json file contains several properties which are "not allowed". In the screenshot below, every underlined property states that it is not allowed.

🔥 Exception or Error

Property _____ is not allowed.

🌍 Your Environment

Angular Versions
------
Angular CLI: 10.2.1
Node: 12.16.1
OS: darwin x64  **macOS Catalina 10.15.7**

Angular: 10.2.4
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
Ivy Workspace: Yes

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.1001.7
@angular-devkit/build-angular     0.1001.7
@angular-devkit/build-optimizer   0.1001.7
@angular-devkit/build-webpack     0.1001.7
@angular-devkit/core              10.2.1
@angular-devkit/schematics        10.2.1
@angular/cdk                      10.2.7
@angular/cli                      10.2.1
@angular/flex-layout              10.0.0-beta.32
@angular/material                 10.2.7
@ngtools/webpack                  10.2.1
@schematics/angular               10.2.1
@schematics/update                0.1001.7
rxjs                              6.6.3
typescript                        3.9.7
webpack                           4.46.0

Hi,
Those options are intended to be used with the browser builder and not supported by the protractor builder.
See below for more information
https://angular.io/cli/build
https://angular.io/cli/e2e


Replace AsyncSeek trait by AsyncSeekForward for Reader to address #12880

Objective
The primary motivation behind this PR is to (partially?) address the limitations imposed by the recently added AsyncSeek trait bound discussed in issue #12880. While the AsyncSeek trait add some flexibility to the reader, it inadvertently restricts the ability to write asset readers that can truly stream bytes, particularly in scenarios like HTTP requests where backward seeking is not supported. It is also challenging in contexts where assets are stored in compressed formats or require other kinds of transformations.
The logic behind this change is that currently, with AsyncSeek, an asset Reader based on streamed data will either 1) fail silently, 2) return an error, or 3) use a buffer to satisfy the trait constraint. I believe that being able to advance in the file without having to "read" it is a good thing. The only issue here is the ability to seek backward. It is highly likely that in this context, we only need to seek forward in the file because we would have already read an entry table upstream and just want to access one or more resources further in the file. I understand that in some cases, this may not be applicable, but I think it is more beneficial not to constrain Readers that want to stream than to allow "Assets" to read files in a completely arbitrary order.
Solution
Replace the current AsyncSeek trait with AsyncSeekForward on asset Reader
Changelog

Introduced a new custom trait, AsyncSeekForward, for the asset Reader.
Replaced the current AsyncSeek trait with AsyncSeekForward for all asset Reader implementations.

Migration Guide
Replace all instances of AsyncSeek with AsyncSeekForward in your asset reader implementations.

looks like a good compromise in my opinion!


pivpn, iptables and rc.local

Hi,
I need a simple clarification how pivpn works.
In my case I have some iptables rules set in my /etc/rc.local file with which I am satisfied with.
Now I have installed pivpn, rebuted the rapberry pi 2B, and upon reboot, I executed sudo iptables -L to check rules.
I was quite supprised that all chains are now with ACCEPT policies, and with no my rules at all (LOGDROP is my chain):
root@rpi2:/etc# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Chain LOGDROP (0 references)
target     prot opt source               destination

I uninstalled pivpn, and my iptable rules are active again.
I would rather mantain my iptables by myself.
I have following questions:

What rules should I put in my rc.local file for pivpn?
How to prevent pivpn to change iptables by any means?
How unattended security updates work? At one moment pivpn will automatically download and install new version but that will not work until reboot. How I will know that I have to reboot rpi?

Regards.

What rules should I put in my rc.local file for pivpn?

NAT VPN traffic:
iptables -t nat -I POSTROUTING -s <IP_ADDRESS>/24 -o eth0 -j MASQUERADE
Allow incoming traffic on the VPN port:
iptables -I INPUT 1 -i eth0 -p udp --dport 1194 -j ACCEPT
If your FORWARD policy is not ACCEPT:
iptables -I FORWARD 1 -d <IP_ADDRESS>/24 -i eth0 -o tun0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -I FORWARD 2 -s <IP_ADDRESS>/24 -i tun0 -o eth0 -j ACCEPT

How to prevent pivpn to change iptables by any means?

Don't use rc.local. Use iptables-persistent ad pivpn does. Just edit your rules and run iptables-save > /etc/iptables/rules.v4 to save them.

How unattended security updates work? At one moment pivpn will automatically download and install new version but that will not work until reboot. How I will know that I have to reboot rpi?

You have to reboot to apply kernel upgrades. Check if the kernel was upgraded by looking at /var/log/unattended-upgrades/unattended-upgrades.log

Yes, you are right. Now I am using iptables-persistent and everything works well.
Still, I have a question about port forwarding.
On my ISP router, OpenVPN external port is X which is forwarded to my RPI's OpenVPN server port 1194.
During setup of pivpn, as I am using ddns.net, i have set hostname as my.ddns.net.
When I create a new client certificate in the .ovpn file there is:
remote my.ddns.net 1194
, so I have to edit the file and replace 1194 with X, as this is external port.
Everything is OK, and works properly, I am just asking is there a way to change 1194 -> X, just in .ovpn file upon new client certificate creation.
Best regards.

what a chaos @ghuname ...
Whatever port you setup on /etc/openvpn.conf is the port that you have to open and forward on your router,
So openvpn has port 1194  ... Open and forward port 1194 to your raspberry pi.
don't over complicate suff that is simple
if you want to change it ...
Edit /etc/openvpn.conf and change the profile.ovpn files on each client to whatever port you have open facing the internet.


Fix mistake in doc for Custom-iOS (RNCWebView -> RNCWebViewImpl)

There is a mistake in "Setting Client Certificate Authentication Credential" and "Allowing custom CAs"
import of "RNCWebView" doesn't work ("Use of undeclared identifier 'RNCWebView") and only "RNCWebViewImpl" works correctly

Hmm... Circle CI seems unhappy.
Oh damn. It looks like this is likely because you're submitting from Russia. 😞
CircleCI has enacted restrictions against this in accordance with U.S. sanctions: https://support.circleci.com/hc/en-us/articles/360043679453-CircleCI-Terms-of-Service-Violation-Sanctioned-Country

@TheAlmightyBob ohh, what should we do to fix this?


News location

sorry for the noob questions but how do I change the location for news from India?

Check Knowledge.py

You have to change the location from 'IN' to your contry code.

Closing due to inactivity.
Possibly resolved
CC : @raghavpatnecha


Codegen throws error for aspnetcore

Trying the example IMDB movies in .net core and facing multiple issues.
Started with VSIX and installed the application and followed the steps.
Was able to create the movie table. after that

sergen does not identify the connecting string from appsettings.json when run independently
sergen throws error when generating the code at serenity.codegenerator.ProjectFileHelper error.

My Bad. I did not read through the document. I used powershell and everything is works


Can't find SD upscale.

Since custom scripts are written specifically for Webui and Gradio I figured that's why they are not implemented in the plugin;
however if I were to make one suggestion, the one thing that stands in the way of this plugin enabling 100% of my workflow inside Photoshop is the lack of an SD upscale function. (Not the lossy upscalers in Extras)
In particular the way Ultimate SD Upscale script does it. (https://github.com/Coyote-A/ultimate-upscale-for-automatic1111)
If a custom implementation of that is possible at any point in the future, that would be excellent.

Absolutely: https://rentry.org/3dt34, not all of them but brings the point across I think, Ultimate SD upscale requires some more cherrypicking, as it tends to introduce some odd features at higher denoise scales but it also adds details to the image, which the Extra upscalers cannot do, hence why it would be ultra useful in photoshop.
My current workflow is to create a handful of SD upscales, pick the best ones based on singular features, and then blend them together in an image editor. Having that straight within the editor would cut out like 5 steps.
I.e. changing the canvas size in PS and then upscaling a new flattened layer to the new canvas dimensions would be the way to go.

this would be amazing yes please!


added support for digits in OTPService

Now digits can be set when sending OTPs
Msg91::otp()->to($phone)->template($templateId)->digits(6)->send();

This Option is already available in existing implementation.
You can set digits through options

$otp->to(91123123123)
    ->from("SENDER_ID") // sender id
    ->template("AFH") // template id for otps
    ->options(function (\Craftsys\Msg91\OTP\Options $options) {
        $options->digits(6) // set the number of digits in generated otp
          ->message("##OTP## is your verification code") // custom template
          ->expiresInMinutes(60); // set the expiry
    })
	->send() // finally send

Thank you @samiksengupta for your contribution but as @rathodbhavikkqc mentioned, it is already possible to add digits via extending the options method. And if you feel like you need to add the OTP length configuration repeatedly, you should configure the services instance instead.


[bug/crash][iOS][v0.4.9] - Unexpectedly found nil while unwrapping an Optional value

Just updated to 0.4.9 and the library crashes immediately now:
react_native_multiple_image_picker/MultipleImagePicker.swift:92: Fatal error: Unexpectedly found nil while unwrapping an Optional value
2022-01-01 13:22:13.219325+0100 xxx[5162:1976436] react_native_multiple_image_picker/MultipleImagePicker.swift:92: Fatal error: Unexpectedly found nil while unwrapping an Optional value

Haven't got this issue with 0.4.8. Downgrading for now. Guess the latest release regarding those two new textfields are causing this issue

Please check the new version ( The current version is ver.1.0.0 )!


Add support to copy to table

I've found this library quite useful. In order to fully migrate my projects to use this, I'd like to have an equivalent copy_to_table of asyncpg.

Hello! Thank you for your kind words about the library.
We'll make this feature request as soon as possible.

@xiaoxianma Hello again! Could you please describe in what way you use copy_to_table in asyncpg? As I understand it supports different types of source: file, async iterator and etc.
Due to strong typing in rust it will take long to support everything. So i'd rather split this task into different ones than do it in one. And firstly I'll do functionality you are using.

Sure. I use pgpq to serialize pandas dataframe into pg binary data and copy it into pg table. An example below,
import pyarrow.parquet as pq
from pgpq import ArrowToPostgresBinaryEncoder
from io import BytesIO

# load data from file
arrow_table = pq.read_table(file)
encoder = ArrowToPostgresBinaryEncoder(arrow_table.schema)

# prepare buffer
buf = BytesIO()
buf.write(encoder.write_header())
for batch in arrow_table.to_batches():
    buf.write(encoder.write_batch(batch))
buf.write(encoder.finish())
buf.seek(0)

# save to table
await connection.copy_to_table("test_table", source=buf, columns=list(arrow_table.columns), format="binary")

@xiaoxianma Thank you very much! I didn't know about the pgpq library. I'll try to integrate it fully since it's written in Rust too.
I think it'd be more convenient for everyone with your usecase.

Ty. I think pgpq library is unnecessary in order to support copy_to_table function as it is simply a converter from arrow_table to pg copy binary format. Since my data is pandas dataframe, it's convenient to leverage existing lib to do that and encoding is very fast. I had ever done something like this, but the performance was very bad.

Yeap, I understand.
The main reason why I want to fully integrate pgpq because it's rust library and with the new integration you wont need to create BytesIO instance, you could do everything with instance from psqly what, in my opinion, will make performance even better.

@xiaoxianma I've made new release https://github.com/qaspen-python/psqlpy/releases/tag/0.7.3 with new method binary_copy_to_table.
It isn't a generic way that supports all possible ways to execute COPY psql command but covers your case.
I've checked it with test data and it works well. Could you please test it with your code and data?
async def main():
    arrow_table = pq.read_table("./MTcars.parquet")
    encoder = ArrowToPostgresBinaryEncoder(arrow_table.schema)
    buf = BytesIO()
    buf.write(encoder.write_header())
    for batch in arrow_table.to_batches():
        buf.write(encoder.write_batch(batch))
    buf.write(encoder.finish())
    buf.seek(0)

    psql_pool = ConnectionPool()

    conn = await psql_pool.connection()
    res = await conn.binary_copy_to_table(
        table_name="cars",
        py_buffer=buf,
    )
    print(res)

Thanks for the quick action. I'll give it a shot and let u know.

i may hit a separate issue. My postgres server enables SSL.
I got this error when trying to open a connection.
psqlpy.exceptions.BaseConnectionPoolError: Database engine pool exception: Error occurred while creating a new object: db error: FATAL: SSL required
Then I have to add sslmode=require in my connection string. Then ran into another error psqlpy.exceptions.BaseConnectionPoolError: Database engine pool exception: Error occurred while creating a new object: error performing TLS handshake: no TLS implementation configured.
I don't have such error when using psycopg or asyncpg with my connection string (I also don't need to specify ssl anywhere). Do u have any idea?

@xiaoxianma I've checked, and there is really a problem with not allowing users to use self-signed certificates.
I've made a new release https://github.com/qaspen-python/psqlpy/releases/tag/0.7.4 with the fix. I tested locally with SSL mode enabled on PostgreSQL and everything works great.
Waiting for your word that all is good)

Thanks. The opening a new connection is fixed. I've found two more problems.

My table has some special column names. E.g a-b. It got complained by psqlpy.
psqlpy.exceptions.DriverError: Database engine exception: db error: ERROR: syntax error at or near "-".

It seems connection got automatically closed after binary_copy_to_table. However, I want to keep and reuse the same connection if possible to avoid acquiring a new connection.

await conn.binary_copy_to_table(buf1, table_name='cars')
await conn.binary_copy_to_table(buf2, table_name='cars')

@xiaoxianma

About the first problem, I need to see the columns. db error in the error text means that the exception was raised on the database side, not on the psqlpy. There is no custom formating process for columns input, so the final query has exactly the same columns you passed.

About the second, I've done it now, but it doesn't close the connection.
The connection will be closed if you use it in async context manager, like this:

async with pool.acquire() as connection:
    # connection is valid here
    await connection.execute(...)
    # connection is valid here
# connection is INvalid here

But if you retrieve the connection this way:
connection = await pool.connection()

It'll be valid by the end of the scope (function, for example).
In general, I'd like to see the full snippet of code to help u.

@xiaoxianma I think I've understood the first problem.
Since you column looks like a-b, you need to pass it these way:
async def main():
    res = await conn.binary_copy_to_table(
        columns=[
            '"a-b"',
        ],
        ...
    )

I'll change this behavior but not as fast as the last bug with sslmode
If you have some rust experience, it'd be good to have one more contributor!

 We can open a separate issue tracking this. And I hope i'll try to fix it if getting a chance.
I tried both context manager async with pool.acquire as well. Still not working for me. Within the ctxmgr, I could have execute, fetch commands prior to binary_copy_to_table without problem. But after binary_copy_to_table, it seems the connection was automatically closed, i cannot run any even within the ctxmgr.

ok version:
async with pool.acquire() as connection:
    await connection.fetch(...)
    await connection.execute(...)
    await connection.bbinary_copy_to_table()

Problem version:
async with pool.acquire() as connection:
    await connection.bbinary_copy_to_table()
    await connection.fetch(...) # not working due to connection closed.

@xiaoxianma

Yeap, please, open a new issue for this feature.
It seems strange cuz the same works well on my side. I need to dive deeper into the all configuration u are using (PostgreSQL version and configuration if possible, OS system, queries, mb you have some external connection pools like PGBouncer).

You can open an issue for this one too cuz the problem could be not on the psqlpy side and I wanna understand it))
My full test case is this one. I use cars file from this site https://www.tablab.app/datasets/sample/parquet:
arrow_table = pq.read_table("./python/tests/test_data/MTcars.parquet")
encoder = ArrowToPostgresBinaryEncoder(arrow_table.schema)
buf = BytesIO()
buf.write(encoder.write_header())
for batch in arrow_table.to_batches():
    buf.write(encoder.write_batch(batch))
buf.write(encoder.finish())
buf.seek(0)

async with psql_pool.acquire() as connection:
        await connection.binary_copy_to_table(
            table_name="cars",
            source=buf,
        )
        res = await connection.fetch("SELECT COUNT(*) FROM cars")
        print(res.result())  # It returns the result

Thanks. I'll mark this one as DONE. And open separate issues. Thanks for help again.

Thank u for improving the project with finding these bugs!


Collect RX and TX timing statistics

Calculate how long it takes for RX packet from network driver to application. Same for TX packet from application to network driver. Show this information in net-shell for net stats command.
Application needs to enable CONFIG_NET_PKT_RXTIME_STATS=y and CONFIG_NET_PKT_TXTIME_STATS=y to get this information.
If we go with this route, then I will probably remove CONFIG_NET_CONTEXT_TIMESTAMP support as it is conflicting with the CONFIG_NET_PKT_TXTIME_STATS (the code looks a bit ugly because of this).

If we go with this route, then I will probably remove CONFIG_NET_CONTEXT_TIMESTAMP support as it is conflicting with the CONFIG_NET_PKT_TXTIME_STATS (the code looks a bit ugly because of this).

So, is it CONFIG_NET_CONTEXT_TIMESTAMP which risks being removed, or CONFIG_NET_PKT_TXTIME ? (Based on this comment https://github.com/zephyrproject-rtos/zephyr/pull/19690/commits/3e60855d1370a04b8d6e22833ff50eb1f746d9ca#diff-8983724739384d9f38274725cd16e2cfR100 "We do not support combination of TXTIME and TXTIME_STATS as the same variable is shared in net_pkt.h").
As was clarified, this patch provides cumulative (averaged) timing stats, whereas CONFIG_NET_PKT_TXTIME records per-packet timing. Both have their usecase, and I'd say losing CONFIG_NET_PKT_TXTIME would be, well, a loss. OTOH, description of CONFIG_NET_CONTEXT_TIMESTAMP shows quite an adhoc feature ("It is possible to add information when the outgoing network packet should be sent."), no idea how precise that description and how that would be implemented.