fix broken symlink support

See explanation of similar PR @ https://github.com/AUTOMATIC1111/stable-diffusion-webui/pull/7535
Same concept as there applies here, wildcards under a symlink show ui the WebUI's "Wildcards Manager" tab but can't actually be used in prompts because this check was using the wrong method. This one change seems sufficient to get it working in a quick test.

Actually this doesn't work, since absolute doesn't resolve symlinks at all...

(It does indeed do the right thing, I tested and verified) (Refer to further explanation in the linked other PR if confused)


AAU, on the CLI, when I import labels by giving a folder path, I see a success

A few modifications in addition to importing labels by giving a folder path:

test project member in another test file
I put as many options and arguments as possible in common_args.py
when importing asset with files, file names are now without extension type (".jpeg", ".mp4", etc)
I added a check to see if asset external id exists when importing labels

I let @theodu review before merging


Default console show method

It seems the the default show method used to display console output has changed a while ago. Now, the compact format show is used. This is not ideal, as it differs from the standard julia console print (which shows the ::MIME"text/plain" by default). This is annoying, in particular with @benchmark as the full output is inaccessible.

I vaguely remember there being some reason for using the two-argument show, but not what it was. As such, I'd be fine with changing this default.
That said, I can't reproduce this with regard to @benchmark:

Hmmm I only get the Trial(...) text, both when ctrl-enter evaluating a line and in the console.

Just had a look again -- on master we use show(IOContext(io, limit = true), MIME"text/plain"(), x) since https://github.com/JunoLab/Juno.jl/commit/15f540154aa04e422974f18e0072417b725ef367. Therefore this will be fixed with the next release of Juno. :)


Upgrade OpenRewrite Templating 1.11.1 -> 1.11.2

This PR contains the following updates:

Package
Type
Update
Change

OpenRewrite Templating

patch
1.11.1 -> 1.11.2

OpenRewrite Templating
compile
patch
1.11.1 -> 1.11.2

Release Notes

openrewrite/rewrite-templating (OpenRewrite Templating)
v1.11.2: 1.11.2
Compare Source
Full Changelog: https://github.com/openrewrite/rewrite-templating/compare/v1.10.0...v1.11.2

[ ] If you want to rebase/retry this PR, check this box

Suggested commit message:
Upgrade OpenRewrite Templating 1.11.1 -> 1.11.2

See:
- https://github.com/openrewrite/rewrite-templating/releases/tag/v1.11.2
- https://github.com/openrewrite/rewrite-templating/compare/v1.11.1...v1.11.2


Deploy of cert-manager-webhook/cainjector:v1.9.1 got permission error

Describe the bug:
kubectl logs cert-manager-webhook-6466bc8f4-mjg6z
I1016 09:26:37.185758       1 feature_gate.go:245] feature gates: &{map[]}
W1016 09:26:37.185821       1 client_config.go:617] Neither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
W1016 09:26:37.185836       1 client_config.go:622] error creating inClusterConfig, falling back to default config: open /var/run/secrets/kubernetes.io/serviceaccount/token: permission denied
E1016 09:26:37.185979       1 webhook.go:122] cert-manager "msg"="Failed initialising server" "error"="open /var/run/secrets/kubernetes.io/serviceaccount/token: permission denied"

kubectl logs cert-manager-cainjector-666db4777-mftwt
I1016 09:28:13.106875       1 start.go:126] "starting" version="v1.9.1" revision="4486c01f726f17d2790a8a563ae6bc6e98465505"
E1016 09:28:13.107046       1 logr.go:270] cert-manager/controller-runtime/client/config "msg"="unable to get kubeconfig" "error"="open /var/run/secrets/kubernetes.io/serviceaccount/token: permission denied"

Expected behaviour:
Got sufficient access to serviceAccount token, and deployed pod run ok.
Steps to reproduce the bug:
Deploy based the official doc:
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.9.1/cert-manager.yaml

Anything else we need to know?:
My K8s version:
Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.0", GitCommit:"cb303e613a121a29364f75cc67d3d580833a7479", GitTreeState:"clean", BuildDate:"2021-04-08T16:31:21Z", GoVersion:"go1.16.1", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.0", GitCommit:"cb303e613a121a29364f75cc67d3d580833a7479", GitTreeState:"clean", BuildDate:"2021-04-08T16:25:06Z", GoVersion:"go1.16.1", Compiler:"gc", Platform:"linux/amd64"}

/kind bug

@astraw99 ,  any details on the cloud providers? Is it EKS?
This looks like a kubernetes issue. Please download the manifest file from https://github.com/cert-manager/cert-manager/releases/download/v1.9.1/cert-manager.yaml,  make the following change to manifest and do kubectl apply -f on the modified file.
In the webhook and cainjector deployments, add the field spec.template.spec.securityContext.fsGroup and set it to value 65534. Please check if this works!

Yes, resolved by add securityContext.fsGroup = 65534. Thanks.
But what is the reason?

The default user group used by the pod doesn't have enough permissions to read the file /var/run/secrets/kubernetes.io/serviceaccount/token. Setting securityContext.fsGroup = 65534 provides more privilege as 65534 is a nobody user.
I am not a k8s expert. But, it looks like this issue has something to do with how the k8s cluster is configured!

Please deploy a busybox in the k8s cluster using this manifest.
Attach a shell : kubectl exec --stdin --tty busybox -- /bin/sh
And run: ls /var/run/secrets/kubernetes.io/serviceaccount/token -lrt
This will give the privileges that your default pod security context has.

@sathyanarays
This is the output:
# ls /var/run/secrets/kubernetes.io/serviceaccount/token -lrt
lrwxrwxrwx    1 root     root            12 Oct 17 13:15 /var/run/secrets/kubernetes.io/serviceaccount/token -> ..data/token

@astraw99 - could you provide any more details about the environment? Is it just a standard EKS cluster version 1.21?
Do you not see the same issue on the controller deployment? Only webhook and ca-injector?
I've not seen this on kind or my GKE environments. The dockerfile has the user 1000 for the controller and the default install sets runAsNonRoot: true. As far as I know that token should be accessible by the pod at runtime.
For reference, with the helm install you can set the fsGroup for those components in a values files such as:
cainjector:
  securityContext:
    fsGroup: 65534
webhook:
  securityContext:
    fsGroup: 65534

@sathyanarays - I'm curious to know why that fsGroup ID seems to be the solution here? Is this something EKS specific?

@hawksight  Maybe it is the Dockerfile base image lead this, as showed in https://github.com/kubernetes-sigs/kubebuilder/issues/3028#issuecomment-1283369478
Where can I see the cert-manager, webhook and ca-injector Dockerfile?
Not see the issue in cert-manager. My cluster is self-hosted and installed by kubeadm.

Tested the pod works well in K8s v1.25 without the securityContext.fsGroup = 65534, but it got this issue on K8s v1.21 if not set securityContext.fsGroup = 65534.
Seems it is a permission bug which have been fixed in higher K8s verison. Or maybe there is some other reason?

Yes. It could be related to the k8s setup!

Yes, check this comment to see the K8s related issues and PRs https://github.com/kubernetes-sigs/kubebuilder/issues/3028#issuecomment-1288114462.


cigien: Watch scrumlotus.com

cigien requests the watch of the watch_keyword scrumlotus\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

scrumlotus\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Spevacus in Charcoal HQ


Error -		$exception	{"unable to parse 'myMeasurementName1,CompCompressionRatio=10.7164216741704,CompPower=262.909591692646<PHONE_NUMBER>605040600': invalid field format"}	Vibrant.InfluxDB.Client.InfluxException

Hello.
I'm trying to store to influx. I do use C#. I've writted the code based in your example that works properly with the same db.
Visual studio returns:
| Name | Value | Type
-- | -- | -- | --
◢ | $exception | {"unable to parse 'myMeasurementName1,CompCompressionRatio=10.7164216741704,CompPower=262.909591692646<PHONE_NUMBER>605040600': invalid field format"} | Vibrant.InfluxDB.Client.InfluxException
Any of you know what is the exact issue?. Data seems to be ok.
Thanks.

My Wrong.
I did mess up between InfluxField and InfluxTag definition


Location of collections.tsv, queries.train.small.tsv files

Where can I find the collections.tsv and the queries.train.small.tsv files? They aren't on the MS MARCO Passage Ranking page.

You might have to download a tar.gz file called collectionandqueries, or something like that.
Let me know if you can't find it.

wget https://msmarco.blob.core.windows.net/msmarcoranking/collectionandqueries.tar.gz
This should work.
That said, you might find the Jupyter notebook on the new_api code easier to work with. It contains a model checkpoint for ColBERTv2 also.

Hi Okhat, I ran into the same issue. In the link you sent, there are queries.dev.small.tsv and queries.eval.small.tsv but no queries.train.small.tsv file. Should queries.train.tsv be used instead of queries.train.small.tsv then?


Y dropdown added

@chilarai I've added dropdown for Y (languages) please merge my PR

Dropdown Z also added @chilarai Please merge my PR


Added contributing guidelines and Code of Conduct

Not incrementing the version number because nothing that gets packaged with the library changed.


Fix unhandled promise rejection

Fixes #133.
How to validate

create the following function, e.g. /tmp/joy_division.js:

module.exports = (x) => {
        if (x === 0) {
                throw new Error('Division by zero');
        }
        return 100 / x;
}

or even /tmp/async_joy_division.js:
module.exports = async (x) => {
        if (x === 0) {
                throw new Error('Division by zero');
        }
        return 100 / x;
}

point the node invoker to the PR branch
build (make) and run the adapter

FUNCTION_URI=/tmp/joy_division.js NODE_DEBUG='riff' ./streaming-http-adapter npm --prefix ~/workspace/node-function-invoker start

send a failing request

curl http://localhost:8080 -H'Content-Type:application/json' -d'0' -H'Accept:text/plain' -v

The request should not hang and a 500 response should be received.

Now rebased

Now rebased.

I actually found a simpler way to solve the problem.
Request-reply functions error were handled via MappingTransform#_handleError.
What _handleErrordoes is to emit an error on the MappingTransform stream.
So far so good. But not enough.
Emitting an error when there are no listeners attached triggers a throw. And that's the case here: no listeners, hence _handleError throws, which leaves the promise in a rejected state. Given there are no further rejection handler, we end up with the warning described in #133.
The real problem is that the error is emitted but it is not intercepted anywhere.
What the solution does now consists in propagating the error back the unmarshaller so that the streaming pipeline can then go as usual, i.e. cancel the invocation.


Add support for port forwarding

Reusing k8s existing implementation. This could be re-written
to do port-forwarding natively rather than relying on socat/nsenter.
Signed-off-by: Mrunal Patel<EMAIL_ADDRESS>

LGTM

A couple of comments for future improvements, not gating this one from being merged:

We may want to add the socat process to the container cgroups. I can see use cases where you could make the socat process go beyond the container's limits.
I think this will not work with Clear Containers, but that's our (Intel) problem to fix.

@sameo That's a good point about the cgroups. I'll fix that in a later PR.

LGTM


AWS kops example

it would be great to have an aws mongodb example

Fair call. There isn't really too much difference except you'll want to create your own StorageClass for AWS... I'll add on of those to the /example/StatefulSet directory.

https://github.com/cvallance/mongo-k8s-sidecar/pull/63


Option to select preferred branch update strategy

Feature Description
We added the ability to update a PR via rebase in #16125
What's still missing is the ability to chose the default update strategy. At least being able to disable Update branch by merge similar to #18710 would be nice as this causes all kinds of problems if the default merge strategy later on is e.g Rebase then create merge commit
Screenshots
No response

Any updates on this?


Find solution for handling metadata of cells

For reference there is a column in cells for location. The initial though was that new cells with the same name could be created and the location changed to account for cells that are being incubated in the lab and moved somewhere else. It would be useful to track these movements. There is only a half baked solution that has issues (see #36).
I was thinking of maybe having another table that keeps track of events that happen such as water and location changes. For location, you would be able to query the most recent location change. Then I guess there would be some sort of identifier to the event that we would define so that each of the same events share an attribute?
The other thing that I was thinking was to have a column that stores json of attributes so that it is variable. The problem is you would not be able to query the attributes and it could end up with a mess as more people define different attributes. Aka less standardized.

location data


Added detailed example of puppetdb_query() usage

Based on a conversation in Slack, i've added a more detailed example of how to use puppetdb_query() so new users understand that the plan function just returns the raw query results and needs to transform them into Targets to use them in run_*() functions.

CLA signed by all contributors.

I'll wait for @K8med to approve before merging.

Update: @nmaludy mentioned wanting to adjust the example, so waiting on that.

@lucywyman @K8med i've updated the documentation with another detailed example of using the resolve_references() function. I put these into a new section called "Practical Usage" in that same document. Thoughts on this?


Is there a way to access the meta title from the component

Is there a way to set the Meta title/ page tile from the component?

use the MetaService from '@ngx-meta/core';
import { MetaService } from '@ngx-meta/core';


When mas_updateConstraints show some errors

I create a view ,centerX is a label's centerX.   when I tap it ,it will change the centerX.
But when I use the mas_updateConstraints ,log shows"
Try this:
(1) look at each constraint and try to figure out which you don't expect;
(2) find the code that added the unwanted constraint or constraints and fix it.
(
"<MASLayoutConstraint:0x140a11070 UILabel:0x140a0e090.centerX == SpaceOrderHeaderView:0x140a0ceb0.centerX - 93>",
"<MASLayoutConstraint:0x140a11370 UILabel:0x140a0f280.centerX == SpaceOrderHeaderView:0x140a0ceb0.centerX + 94>",
"<MASLayoutConstraint:0x140a11aa0 UIView:0x140a10240.centerX == UILabel:0x140a0e090.centerX>",
"<MASLayoutConstraint:0x1409e6fb0 UIView:0x140a10240.centerX == UILabel:0x140a0f280.centerX>"
)
Will attempt to recover by breaking constraint
<MASLayoutConstraint:0x140a11370 UILabel:0x140a0f280.centerX == SpaceOrderHeaderView:0x140a0ceb0.centerX + 94>
"
and the position of the label changed,but the view not change the position.

Sorry,  I donot know why the log not display. here is the log message.

Try this:
(1) look at each constraint and try to figure out which you don't expect;
(2) find the code that added the unwanted constraint or constraints and fix it
<MASLayoutConstraint:0x15ed42920 UILabel:0x15ed89740.centerX == SpaceOrderHeaderView:0x15ed99350.centerX - 93>,
<MASLayoutConstraint:0x15ed29520 UILabel:0x15d5fbb10.centerX == SpaceOrderHeaderView:0x15ed99350.centerX + 94>,
<MASLayoutConstraint:0x15d530b80 UIView:0x15e9b4500.centerX == UILabel:0x15ed89740.centerX>,
<MASLayoutConstraint:0x15d7486a0 UIView:0x15e9b4500.centerX == UILabel:0x15d5fbb10.centerX>

Will attempt to recover by breaking constraint
<MASLayoutConstraint:0x15ed29520 UILabel:0x15d5fbb10.centerX == SpaceOrderHeaderView:0x15ed99350.centerX + 94>

Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.

@XiangNanLi can you post your constraints code, also try mas_remakeConstraints rather than update constraints.

Thanks , Sir.
[_lblTitle mas_makeConstraints:^(MASConstraintMaker *make) {         make.centerX.equalTo(weakself.mas_centerX);         make.top.equalTo(weakself.mas_top).offset(viewHeight(20));     }];     [_lblInitTitle mas_makeConstraints:^(MASConstraintMaker *make) {         make.centerX.equalTo(weakself.mas_centerX).offset(viewWidth(-85));         make.top.equalTo(weakself.lblTitle.mas_bottom).offset(viewHeight(20));     }];     [_lblFinishTitle mas_makeConstraints:^(MASConstraintMaker *make) {         make.centerX.equalTo(weakself.mas_centerX).offset(viewWidth(85));         make.top.equalTo(weakself.lblTitle.mas_bottom).offset(viewHeight(20));     }];     [_viewFlag mas_makeConstraints:^(MASConstraintMaker *make) {         make.width.equalTo(weakself.lblInitTitle.mas_width).offset(viewWidth(-10));         make.height.equalTo(@2);         make.centerX.equalTo(weakself.lblInitTitle.mas_centerX);         make.top.equalTo(weakself.lblInitTitle.mas_bottom).offset(viewHeight(8));         make.bottom.equalTo(weakself.mas_bottom).offset(viewHeight(-8));     }];
when I tap the lblFinishTitle , the viewFlag 's centerX will equal to the lblFinishTitle's centerX. Also when tap the lblinitTitle ,if the viewFlag's centerX not equal to the lblInitTitle ,the viewFlag's centerX will change to equal to the lblInitTitle's centerx

the mas_updateConstraints is
[_viewFlag mas_updateConstraints:^(MASConstraintMaker *make) {             make.centerX.equalTo(tapView.mas_centerX);         }]; [_viewFlag layoutIfNeeded];

@XiangNanLi you'll want to use mas_remakeConstraints instead. You can only use mas_updateConstraints to update the constant value otherwise it creates additional constraints and hence why it's breaking.

OK , Thanks Sir.
I see.


[feat] Dynamic Controller Loader

What this PR does / why we need it:

adds a controller which can automatically load new controllers when supported APIs become available (e.g. knative)
fixes the errors as reported in https://github.com/Kong/kubernetes-ingress-controller/issues/1466

Which issue this PR fixes
Fixes https://github.com/Kong/kubernetes-ingress-controller/issues/1466
PR Readiness Checklist:
Complete these before marking the PR as ready to review:

[x] the CHANGELOG.md release notes have been updated to reflect any significant (and particularly user-facing) changes introduced by this PR

@mflendrich just wanted to check: did you see in the code that we were already dynamically loading the knative controller? This PR simply changes how we do it.

@mflendrich just wanted to check: did you see in the code that we were already dynamically loading the knative controller? This PR simply changes how we do it.

Yes, and both the current (in next) and the proposed implementation is at odds with the semantics of EnablementStatus:
https://github.com/Kong/kubernetes-ingress-controller/blob/3c67f123aa66eafcd9673a79a778a12e02788303/pkg/util/enablementstatus.go#L5-L16
EnablementStatus currently has 3 possible values: Enabled (under all circumstances load the controller), Disabled (under all circumstances do not load the controller) and Auto (have a specialized function that decides on Enabled or Disabled on startup).
I believe that the existing implementation (which loads the controller if and only if the CRD is present) should be implemented as a handler of the Auto setting. The fact that this has been done in a different fashion is not compatible with the existing semantics of EnablementStatus, and this PR proposes a solution that goes further in that direction.

@mflendrich just wanted to check: did you see in the code that we were already dynamically loading the knative controller? This PR simply changes how we do it.

Yes, and both the current (in next) and the proposed implementation is at odds with the semantics of EnablementStatus:
https://github.com/Kong/kubernetes-ingress-controller/blob/3c67f123aa66eafcd9673a79a778a12e02788303/pkg/util/enablementstatus.go#L5-L16
EnablementStatus currently has 3 possible values: Enabled (under all circumstances load the controller), Disabled (under all circumstances do not load the controller) and Auto (have a specialized function that decides on Enabled or Disabled on startup).
I believe that the existing implementation (which loads the controller if and only if the CRD is present) should be implemented as a handler of the Auto setting. The fact that this has been done in a different fashion is not compatible with the existing semantics of EnablementStatus, and this PR proposes a solution that goes further in that direction.

The proposed implementation actually listens to the "Auto" setting where the previous does not: it will try to dynamically load the controller under the "auto" case. Have I missed something?

Why is knative treated specially here? ... maybe we should do this for all CRDs that KIC operates on?

We currently (as of #1458) have 3 resources we treat specially:

We check for Knative availability because it's often not installed, and attempting to load it when it's not available makes controller go :boom:
We check for KongClusterPlugin availability because we had users remove it to disable KCP handling in 1.x, and want to preserve that.
We check for which API version of Ingress is available and start the controller for the latest one only.

The first two cases are arguably specific to their resources, and I don't think we'd want to handle all resources the same way.
The third applies to everything (CRDs and stock resources): we will presumably add new API versions of our CRDs in the future and K8S will introduce new API versions of stock resources. We'll eventually need to negotiate resources for any resource where we support multiple API versions, and should make that code generic. We can furthermore make auto-disable an additional case for negotiation, i.e. negotiation either loads the newest available controller for a resource or no controller if there's no API version of that resource available.
We don't do that currently since the goal was just parity with 1.x, and the not-DRY implementation was simpler to add. Addition of Gateway APIs is probably a good candidate for making a generic DRY version.

EnablementStatus currently has 3 possible values: Enabled (under all circumstances load the controller), Disabled (under all circumstances do not load the controller) and Auto (have a specialized function that decides on Enabled or Disabled on startup).

I question whether we need the third status. We don't use EnablementStatusAuto for anything currrently and it's not clear to me why we would. We either:

Never load the controller, regardless of whether its resource exists (Disabled).
We load the controller if its resource exists (Enabled).

I don't see a reason to distinguish Auto and Enabled: if we did, it seems like Auto should be the case where we load if exists, and Enabled would be a new behavior, where we load the controller even if the resource is absent. There's no use for that version of Enabled though--doing that just breaks things.
The https://github.com/Kong/kubernetes-ingress-controller/issues/1449 version of this (furthermore check for resource availability continuously and enable the controller if it becomes available after start) still seems a bit odd to me. I suppose it doesn't harm anything, but new resources/API versions seems an infrequent enough event that we can reasonably say "just restart the controller when you do that", especially since many will probably be accompanied by code updates and require a restart anyway.

I've discussed this with @mflendrich in zoom this morning and I think we're going to hold off on this implementation for now, as we've taken some time to discover some misconceptions regarding how 1.x handled this problem and also decided we want more time to think about how enablementstatus should work for the beta.1 release.


Fixes Template issues

Description
Corrects template path to extend during bake and fixed readme path

Is this ready to go?

Yep, I broke down my changes into little bits to make it easier.


Provide operator-pending keybindings

Thanks for your hard work on this great plugin...
I notice that in the README you list out some normal-mode remaps that "cheat" by pre-selecting a visual area and then running :Sort on them.
nnoremap <silent> go" vi"<Esc><Cmd>Sort<CR>
nnoremap <silent> go' vi'<Esc><Cmd>Sort<CR>
nnoremap <silent> go( vi(<Esc><Cmd>Sort<CR>
nnoremap <silent> go[ vi[<Esc><Cmd>Sort<CR>
nnoremap <silent> gop vip<Esc><Cmd>Sort<CR>
nnoremap <silent> go{ vi{<Esc><Cmd>Sort<CR>

This is great, but I think what would be even more fantastic is if sort.nvim provided a Vim/NeoVim-native operator-pending mode so that the user could type (following the example above) go<any text object> and have it commented out. Theoretically, they can type v<any text object><Esc><Cmd>Sort<CR> today, but that's a bit clumsy. The keybindings as listed above are a bit restrictive, as they limit the user to only those text objects that a binding already exists for.
Compare this with the vimscript-based https://github.com/christoomey/vim-sort-motion, which I've used for a long time, which provides this capability as its "default" approach (although it does also provide a keybinding in visual mode).
(More information on how this works/how to implement it here: https://www.vikasraj.dev/blog/vim-dot-repeat).

Fair enough. Suggest if you are willing you keep this issue open, if I find some free time to do some NeoVim hacking I might have a go at it myself :)


502 bad gateway on remote server

Hello !
I'm trying to install the bot on a debian remote server.
I followed the instructions (reverse with nginx and certbot) but i got a 502 bad gateway when i try to go on my sub.domain.tld.
Gekko is installed in /home/gekko
Here is my nginx default file :
server {
    listen 80;
    listen [::]:80;
    server_name sub.domain.tld;
    return 301 https://$server_name$request_uri;
}

upstream websocket {
    server localhost:3000; // i tried <IP_ADDRESS> too
}

server {
    listen 443 ssl;
    listen [::]:443 ssl;
    root /home/gekko; // i tried /var/www/html ; /home/gekko ; /home/gekko/web ; /home/gekko/web/vue

    ssl_certificate     /etc/letsencrypt/live/sub.domain.tld/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/sub.domain.tld/privkey.pem;
    add_header          Strict-Transport-Security "max-age=31536000";

    location / {
            proxy_buffers 8 32k;
            proxy_buffer_size 64k;

            proxy_pass http://websocket;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $http_host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-NginX-Proxy true;

            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";

            proxy_read_timeout 86400s;
            proxy_send_timeout 86400s;

            auth_basic "Restricted Content";
            auth_basic_user_file /etc/nginx/.htpasswd;
    }
}

Here is my UIconfig.js :
const CONFIG = {
  headless: true,
  api: {
    host: '<IP_ADDRESS>',
    port: 3000,
  },
  ui: {
    ssl: true,
    host: 'x.x.x.x', // my server public IP address
    port: 443,
    path: '/'
  },
  adapter: 'sqlite'
}

Does somebody have any idea ?
Thanks!

Bad gateway indicates that nginx was unable to upstream the connection (to the gekko UI). Could you make sure the UI is running on the server? After it's running, can you try to access it from within the same server by doing something like:
curl http://localhost:3000/

Is there a way to run node gekko --ui as a daemon? pm2 is popular with node application, I am unsure how the pipeline would fit in though.

@adamjv90  you would just run it once as
pm2 start gekko.js --name gekko -- --ui

Then if an error occurs or it exits for any reason, then pm2 will just restart.

@askmike When i run node gekko --ui, i got this error :
TAlib is disabled
/home/gekko/web/server.js:81
server.listen(config.api.port, config.api.host, '::', () => {
                        ^

TypeError: Cannot read property 'port' of undefined
    at Object.<anonymous> (/home/gekko/web/server.js:81:25)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/home/gekko/gekko.js:43:10)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.runMain (module.js:604:10)
    at run (bootstrap_node.js:389:7)

Does it help ?

Ok, i have resolved the first problem adding back this part in the UIconfig.js :
if(typeof window === 'undefined')
  module.exports = CONFIG;
else
  window.CONFIG = CONFIG;

But now, i got this popup :

I had a similar error, 502 gateway error.
I was running on cent os 7 on google cloud.
Here's the fix: https://unix.stackexchange.com/questions/196907/proxy-nginx-shows-a-bad-gateway-error

@holeyness thank you 👍
setsebool -P httpd_can_network_connect true solved my problem


unique in special axis

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow):
no
OS Platform and Distribution (e.g., Linux Ubuntu 16.04):
Linux Ubuntu 14.04
TensorFlow installed from (source or binary):
binary
TensorFlow version (use command below):
1.2
Python version:
3.6
Bazel version (if compiling from source):
CUDA/cuDNN version:
cuDNN v5.1
GPU model and memory:
pascal titan x
Exact command to reproduce:
None

Feature Request
For getting unique row, we can use numpy's unique by specifying the axis. However, in tensorflow, unique only support 1D tensor, which is not convenient.

@aselle WDYT?

@aselle I think this would be useful, at the moment I have to do this:
assert_max = tf.Assert(tf.reduce_all(indices < 256), [indices])
with tf.control_dependencies([assert_max]):
  indices = tf.identity(indices)
indices = tf.cast(indices, tf.uint8)

# find unique indices, because SparseTensor needs this
indices_pad = tf.pad(indices,[[0,0],[0,1]])  # shape to (N, 4)
assert(indices_pad.get_shape()[1].value == 4)
indices_bc  = tf.bitcast(indices_pad, tf.int32)
unique32, _ = tf.unique(indices_bc)
indices = tf.cast(tf.bitcast(unique32, tf.uint8)[:,:3],tf.int64)

Added a PR #12952 for the support of axis for tf.unique.

This feature is still not supported (at least in the Python API). An easy workaround is described in this answer: https://stackoverflow.com/a/60046022/3924118.

See #15644, this is currently not a feature in tf 2.2

@zaqqwerty  - one workaround (no gradients available) -
x.shape  # (100, 2)
unique_results = tf.raw_ops.UniqueV2(x=not_unique, axis=0).y
unique_results.shape  # (89, 2)

See here:
https://www.tensorflow.org/api_docs/python/tf/raw_ops
https://www.tensorflow.org/api_docs/python/tf/raw_ops/UniqueV2


Couldn't able to run the basic demo.

These were the last lines before termination.

Process image 0,5864 boxes
F0122 10:44:21.139531 31764 roi_pooling_layer.cpp:70] Check failed: roi_end_w < width_ (150 vs. 149)
*** Check failure stack trace: ***
Aborted (core dumped)

Command I am using for execution : python ./tools/demo.py --demo 1
Need suggestions to resolve this issue.

Have you tried using this command instead (it's in the README)?
python ./tools/demo.py --demo 0 --frame 0 --numboxes 5
Sincerely,
Weicheng Kuo
Graduate Student Researcher,
University of California, Berkeley
On Thu, Jan 21, 2016 at 9:17 PM, tharunkalwa<EMAIL_ADDRESS>wrote:

These were the last lines before termination
Process image 0,5864 boxes
F0122 10:44:21139531 31764 roi_pooling_layercpp:70] Check failed:
roi_end_w < width_ (150 vs 149)
*** Check failure stack trace: ***
Aborted (core dumped)
Command I am using for execution : python /tools/demopy --demo 1
Need suggestions to resolve this issue
—
Reply to this email directly or view it on GitHub
https://github.com/weichengkuo/DeepBox/issues/3.

Hi,
I have another error message if i run the demo:
aron@aron-GA:~/DeepBox$ python ./tools/demo.py  --demo 0 --frame 0 --numboxes 5 Traceback (most recent call last):   File "./tools/demo.py", line 22, in <module>     import fast_dbox_test   File "/home/aron/DeepBox/src/fast_dbox_test.py", line 19, in <module>     import caffe   File "/home/aron/DeepBox/caffe-fast-rcnn/python/caffe/__init__.py", line 1, in <module>     from .pycaffe import Net, SGDSolver   File "/home/aron/DeepBox/caffe-fast-rcnn/python/caffe/pycaffe.py", line 14, in <module>     import caffe.io   File "/home/aron/DeepBox/caffe-fast-rcnn/python/caffe/io.py", line 8, in <module>     from caffe.proto import caffe_pb2   File "/home/aron/DeepBox/caffe-fast-rcnn/python/caffe/proto/caffe_pb2.py", line 23, in <module>     hold\x18\x37 \x01(\x02:\x03\x30.5\x12\x1d\n\x0f\x64\x65t_fg_fraction\x18\x38 \x01(\x02:\x04\x30.25\x12\x1a\n\x0f\x64\x65t_context_pad\x18: \x01(\r:\x01\x30\x12\x1b\n\rdet_crop_mode\x18; \x01(\t:\x04warp\x12\x12\n\x07new_num\x18< \x01(\x05:\x01\x30\x12\x17\n\x0cnew_channels\x18= \x01(\x05:\x01\x30\x12\x15\n\nnew_height\x18> \x01(\x05:\x01\x30\x12\x14\n\tnew_width\x18? \x01(\x05:\x01\x30\x12\x1d\n\x0eshuffle_images\x18@ \x01(\x08:\x05\x66\x61lse\x12\x15\n\nconcat_dim\x18\x41 \x01(\r:\x01\x31\x12\x36\n\x11hdf5_output_param\x18\xe9\x07 \x01(\x0b\x32\x1a.caffe.HDF5OutputParameter\".\n\nPoolMethod\x12\x07\n\x03MAX\x10\x00\x12\x07\n\x03\x41VE\x10\x01\x12\x0e\n\nSTOCHASTIC\x10\x02\"W\n\x0ePReLUParameter\x12&\n\x06\x66iller\x18\x01 \x01(\x0b\x32\x16.caffe.FillerParameter\x12\x1d\n\x0e\x63hannel_shared\x18\x02 \x01(\x08:\x05\x66\x61lse*\x1c\n\x05Phase\x12\t\n\x05TRAIN\x10\x00\x12\x08\n\x04TEST\x10\x01') TypeError: __init__() got an unexpected keyword argument 'syntax'


Pangenome alignment

Is strobealign a good basis for the following application:
We would align against a pangenome FASTA. So we might have 100 genomes in this system. Downstream we project the alignments into a graph for processing with a very cheap approach.
This would benefit from fast indexing and from an absence of assumptions about the number of genome copies we have. Thoughts?

The scenario you are mentioning is likely a suitable scenario for strobealign. We had a benchmark on a toy repetitive dataset related to your description in the paper. On this dataset, strobealign had one of its best performances relative to other aligners in accuracy and runtime (see attached figure; the stats are for v0.7.1). Version 0.8.0 may be a bit faster, and a tad  more accurate on 50nt-100nt reads. Also, as you said, indexing is typically fast as well.
Characteristics of the REPEATS dataset (described in supplementary note A): We simulated a string of 100,000nt by choosing letters A, C, G, and T at random. We produced 500 copies of this string but introduced a 5% SNP frequency and deleted segments of length between 1nt and 1000nt with probability 0.0001 on each copy. This roughly represents 500 copies of length 90-100kbp at a rough 90% identity between copies with some deletions of various sizes and locations. We furthermore simulated reads from a related genome to the above repetitive genome using mason variator with the parameters–sv-indel-rate 0.00005 –snp-rate 0.005 –small-indel-rate 0.0005 –max-small-indel-size 50.
We would be very happy to get feedback if you decide to test strobealign for your scenario.

Would that be a FASTA file with 100 concatenated genomes or something smaller with removed redundancies such as the nodes of a variation graph?
Some considerations, not sure if these play a role in your scenario: strobealign uses lots of RAM, roughly 6 times as much as the size of the input FASTA. Indexing speed is about 20 Mbp/s (on my relatively slow machine). We can parallelize some of this, so that can get faster if needed.
How would you want the output to be for reads mapping to multiple locations, do you need all locations?

I would be interested in something similar to this, but with 2 haplotypes per patient (where it would consider the best hapotype for each read, or both if they map equally well).


Cannot add a new client

A user needs to be able to add a client to the system. This will allow the user to eventually generate invoices for that client.
The Client class should look like:

Property
Type

Client ID
GUID

Client Name
string

Contact Name
string

Contact email
string (email)

Client Address
string

The user will need to add these fields to a New Client view or form. The Client ID field should not be present on the form as this will be auto generated when saving.
All fields on the form should be validated using the following rules:

Field name
Validation

Client Name
cannot be empty

Contact Name
cannot be empty

Contact email
cannot be empty and must be an email

Client Address
cannot be empty

The above validations could all be handled by Validation Attributes, they should also be handled in the database.
You should be able to use something like this to validate email addresses:
// Warning, this may not compile as it is pseudo-code
using System.Components.DataAnnotations;

public class ClientDetails
{
  [Required(AllowEmptyStrings=false)]
  public string ClientName { get; set; }

  [Required(AllowEmptyStrings=false)]
  [EmailAddress]
  public string ClientEmail { get; set; }

  /// foo <- fail
  //<EMAIL_ADDRESS><- pass
  //<EMAIL_ADDRESS><- pass
  //<EMAIL_ADDRESS><- pass
}

This was closed in down stream PR number 3: https://github.com/Adam-Wilcock/invoice-generator/pull/3


footer enhancment

This PR:
Resolves #559
1.    Changed "Follow Us" to "Connect"
2.    Added LinkedIn icon and link to https://www.linkedin.com/company/code-pdx/
Screenshots:

@timbot1789 are we now taking code updates from people who have not gone through any code pdx info?

@xscottxbrownx there you go, I've done the changes. I'm sorry but I don't have much experience with github pull request and issues.

@timbot1789 are we now taking code updates from people who have not gone through any code pdx info?

I've never had a strong opinion about what qualifies as a proper source for a PR. That's something to discuss with Flo and @htharker42.
A lot of other open source projects allow people to submit PRs in the way @Heun11 has done here (some require it), so I haven't felt the need to enforce something. Git also doesn't make a distinction between a PR from a repo "fork" and a PR from any other branch. That's a distinction we've created for ourselves/ is provided by Github.

@timbot1789 are we now taking code updates from people who have not gone through any code pdx info?

I've never had a strong opinion about what qualifies as a proper source for a PR. That's something to discuss with Flo and @htharker42.
A lot of other open source projects allow people to submit PRs in the way @Heun11 has done here (some require it), so I haven't felt the need to enforce something. Git also doesn't make a distinction between a PR from a repo "fork" and a PR from any other branch. That's a distinction we've created for ourselves/ is provided by Github.

It was my understanding this was already a direction coming straight from Flo, and I was wondering if I had missed an update about it.
I personally believe we should allow anybody to work on the codebase and merge if it's a good change and approve, but that wasn't what Flo wanted as far as I know. Last I heard, they wanted individuals to go through the steps outlined for contributing to Code PDX.

@xscottxbrownx there you go, I've done the changes. I'm sorry but I don't have much experience with github pull request and issues.

No need to apologize! The only way to gain experience is to do it.
I've got one more change I'd like to see on this PR which doesn't technically have to do with your changes, but just noticed something that isn't necessary in this file.
Lines 75-86:

You'll see we are mapping over the socialLinks array of objects to create a <Link> with each icon...
There are hardcoded values for both the rel and target, so we actually don't need those key-value pairs in the objects of the socialLinks array. They aren't being used at all technically.
We can delete each target and rel of each object in that array, so lines 33, 34, 40, 41, 47, 48, 54, 55.


How to disable completion only?

The docs on g:conjure#completion#omnifunc say

No omnicompletion will be provided if you set this to nil

but when I do this in my .vimrc I get error saying NVim cannot understand nil (I guess it's a Lua-ism?). What exactly should I set this to in vimscript to disable completion only? When I disabled conjure as a source in CoC it silenced it completely, including diagnostics.

I think that's v:null in VimL? Or possibly v:false in this case, I'm sorry
I can't quite remember off the top of my head but one of those.
On Thu, 11 Nov 2021, 15:15 Daniel Kvasnička, @.***>
wrote:

The docs on g:conjure#completion#omnifunc say
No omnicompletion will be provided if you set this to nil
but when I do this in my .vimrc I get error saying NVim cannot understand
nil (I guess it's a Lua-ism?). What exactly should I set this to in
vimscript to disable completion only? When I disabled conjure as a
source in CoC it silenced it completely, including diagnostics.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Olical/conjure/issues/266, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACM6XN66VTHRFBPDL5KJBDULPMZVANCNFSM5H2WJXCQ
.

Looks like v:false did the thick, thanks!


Deal with big sample sizes and the slow down they produce in the page

When particularly fast functions are benchmarked for long, the sample size gets too large and plotly.js basically crashes or takes VERY LONG to render.
Current work arounds:

reduce :time to indirectly reduce sample size
remove the individual graphs from the resulting HTML by hand (they are most of the cause of this happening) and maybe also the box plot (is also fed raw run times)

Proposed solutions (might go into separate issues)

print a warning when sample sizes exceed a certain threshold (like say 100_000)
provide the option to split the individual graphs into separate files and then link to them
render the box plot giving manually calculated quadrilles on the elixir side see this thread

Splitting of files for individual benchmarks is implemented in 0.2.0


Youtube: Add broadcast start time (if it was a live stream)

Signed-off-by: Jon Doron<EMAIL_ADDRESS>Please follow the guide below

You will be asked some questions, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your pull request (like that [x])
Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

[x] Searched the bugtracker for similar pull requests
[ ] Read adding new extractor tutorial
[x] Read youtube-dl coding conventions and adjusted the code to meet them
[x] Covered the code with tests (note that PRs without tests will be REJECTED)
[x] Checked the code with flake8

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Bug fix
[x] Improvement
[ ] New extractor
[ ] New feature

Description of your pull request and other information
Explanation of your pull request in arbitrary form goes here. Please make sure the description explains the purpose and effect of your pull request and is worded well enough to be understood. Provide as much context and examples as possible.
Add to the youtube JSON the broadcast start time in case if it was a live stream upload.

To be honest it would probably always be the same as upload_date but the thing I needed to have the exact time of day for the start in order to synchronize this later with the chat items.
And from what I saw upload_date is being set after being transformed via unified_strdate, which removes the full time and date information leaving you only with the YYYYMMDD.
So in order not to break the API I figured it will be better to introduce a new field which has the date in full form of RFC3399

Or did you mean to simply rename the field to "timestamp" from "broadcast_start_timestamp"? and convert the RFC3399 to unix time?

Absolutely. If an extractor returns a timestamp but no upload_date, the core processing creates an upload_date; but not the other way round. You're quite safe to use timestamp as an epoch (UNIX) time. The unified_timestamp() utility routine can be used, if needed, to convert the value.
The existing API uses names ending in _date for YYYYMMDD strings and timestamp for UNIX time values.

I recommend using release_timestamp instead, since upload_date and timestamp are supposed to point to the same data.
(This is how yt-dlp handles it, so I may be biased 😛)

Heh ok renamed to release_timestamp and set it to be UNIX time


6dof

The output 6dof contains 7 floating point numbers, what do they mean?

As per the documentation of https://www.visuallocalization.net/datasets/

For each query image for which your method has estimated a pose, use a single line. This line should store the
result as name.jpg qw qx qy qz tx ty tz.  Here,  name corresponds to the filename of the image, without any directory names. qw qx qy qz represents the rotation from world to camera coordinates as a
unit quaternion. tx ty tz is the camera translation (not the camera position).

Thank you so much!
How to get the pycolmap.Reconstruction type from the saved path for the sfm model reconstructed with pycolmap.incremental_mapping？

Hi, Is tx ty tz the translation of the camera with respect to the world coordinate ?

translation = position of the world origin in camera coordinates.


change port bind and add a unittest

resolves https://github.com/dbt-labs/dbt-core/issues/10209

Problem

Solution

Checklist

[ ] I have read the contributing guide and understand what's expected of me
[ ] I have run this code in development and it appears to resolve the stated issue
[ ] This PR includes tests, or tests are not required/relevant for this PR
[ ] This PR has no interface changes (e.g. macros, cli, logs, json artifacts, config files, adapter interface, etc) or this PR has already received feedback and approval from Product or DX
[ ] This PR includes type annotations for new and modified functions

@MichelleArk While I understand the sanity of having <IP_ADDRESS> as the default bind address, this broke our k8s deployment because the readiness check cannot pass and I cannot override the bind address because it's hard coded.
Can we add a cli/env flag to override this?

Ach, sorry about that! I think an override sounds completely reasonable here, perhaps something like dbt docs serve --host.
cc @jtcohen6


Unexpected behaviour on Boot

Hey. I was trying to setup the editor on my local and when it starts, the logs say, compiled successfully but its not displaying the editor properly.

any help would be appreciated. Thanks

Yeah that is weird.
Do you see any output in the terminal or in the console in the devtools that could be of help?


Theme and test project

I'm gonna merge this anyway, but this is for future refrence. It's worth looking at this commit by commit (there's one commit which is just adding material design, and one which is adding the console test project)


(iOS) Peripheral delegate does not seem to unset

Steps to reproduce:

Connect to a device
Notice log messages
Disconnect from device
Reconnect to same device
Notice log messages now x2

Note: This doesn't happen if a difference device is connected to

This is due to a bug in example/main.dart where discoverServices is being called multiple times


Simpler hex

I couldn't think of better function names -.-

Fixnship.  Want to regen the protobuf python or is it not necessary

I won't get to this soon
On Fri, Jul 22, 2016, 16:24 Anthony Sottile<EMAIL_ADDRESS>wrote:

Fixnship. Want to regen the protobuf python or is it not necessary
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/asottile/PokemonGo-Map/pull/5#issuecomment-234680290,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAnFSNsfx5L8cbshYS46E4ALP8ZmLLttks5qYVEOgaJpZM4JTNWN
.

Continued in #16


fixcast floating point type to bigint for bit functions

Proposed changes
pick from master https://github.com/apache/doris/pull/26598

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


[stable/traefik] Use chart helper to support SemVer2

Signed-off-by: Kevin Houdebert<EMAIL_ADDRESS>What this PR does / why we need it:
This PR sets traefik.chart variable in _helpers.tpl. This allow using SemVer2 versioning on forks with the + sign.
Which issue this PR fixes
When deploying using a SemVer2 version, an error arise.
$ grep version Chart.yaml
version: 1.68.1+abcdef
$ helm install .
Error: release flailing-pug failed: ConfigMap "flailing-pug-traefik" is invalid: metadata.labels: Invalid value: "traefik-1.68.1+abcdef": a valid label must be an empty string or consist of alphanumeric characters, '-', '_' or '.', and must start and end with an alphanumeric character (e.g. 'MyValue',  or 'my_value',  or '12345', regex used for validation is '(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?')

As recommended in https://helm.sh/docs/chart_best_practices/#version-numbers, this PR replaces the + character with _.
$ grep version Chart.yaml
version: 1.68.1+abcdef
$ helm install .
LAST DEPLOYED: Fri May 10 21:50:37 2019
NAMESPACE: default
STATUS: DEPLOYED
[...]
$ helm ls
NAME            REVISION        UPDATED                         STATUS          CHART                   NAMESPACE
washed-whale    1               Fri May 10 21:50:37 2019        DEPLOYED        traefik-1.68.1+abcdef   default
$ helm template . | grep chart -B2
  labels:
    app: traefik
    chart: traefik-1.68.1_abcdef
[...]

Special notes for your reviewer:
Inspired by fluentd chart https://github.com/helm/charts/blob/master/stable/fluentd/templates/_helpers.tpl#L27-L32
Passes lint.
$ helm lint
==> Linting .
Lint OK

1 chart(s) linted, no failures

Checklist

[X] DCO signed
[X] Chart Version bumped
[X] Variables are documented in the README.md (no new public variable)
[X] title of the PR contains starts with chart name e.g. [stable/chart]

/assign @geraldcroes

/assign @dtomcej

/ok-to-test

/lgtm


SP4 Signal: add ScaleY property

Hello I tried to implement #2642, I don't know if you need it, I just give it a try and I will appreciate a feedback
Thanks you.

Hi @Guillaume-Deville, thank you so much for this PR! It took me longer than typical to get to, but I'm reviewing it now and it's fantastic. I look forward to merging it in and including it in the next release 🚀


Integration Test - Release - 2019/02/28 14:51:25

Auto create for integration test. IssueCommandFlow

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


Projected members need to be added to the api member surface

Projected members need to be added to the api member surface for affected types.

We are working on this issue.

The issue has been resolved--protected members are showing up. Here's an example:
https://docs.microsoft.com/en-us/uwp/api/windows.foundation.collections.propertyset


Define extraction strategy schema typings

Currently, the extraction strategies schemas are type Dict[str, Any] which requires devs to look at the source code of the extraction strategy to see which values are expected and then try to figure out what they do. The documentation on this is still lacking and does not even mention everything that JsonCssExtrationStrategy can do for example..
I've generated the following types to help with my use of JsonCssExtractionStrategy and I would like to see types be used to convey expected input.
from dataclasses import dataclass, field
from enum import Enum
from typing import Any, Callable, Dict, Generic, List, Optional, Pattern, TypeVar, Union

class SelectorType(str, Enum):
    TEXT = "text"
    LIST = "list"
    NESTED = "nested"
    NESTED_LIST = "nested_list"
    ATTRIBUTE = "attribute"
    HTML = "html"
    REGEX = "regex"
    COMPUTED = "computed"

class Transform(str, Enum):
    LOWERCASE = "lowercase"
    UPPERCASE = "uppercase"
    STRIP = "strip"

@dataclass(kw_only=True)
class BaseField:
    name: str
    type: SelectorType = field(init=False)

    default: Optional[Any] = None
    selector: Optional[str] = None
    transform: Optional[Transform] = None

@dataclass(kw_only=True)
class TextField(BaseField):
    def __post_init__(self):
        self.type = SelectorType.TEXT

@dataclass(kw_only=True)
class HtmlField(BaseField):
    def __post_init__(self):
        self.type = SelectorType.HTML

@dataclass(kw_only=True)
class AttributeField(BaseField):
    attribute: str

    def __post_init__(self):
        self.type = SelectorType.ATTRIBUTE

@dataclass(kw_only=True)
class RegexField(BaseField):
    pattern: Union[str, Pattern]

    def __post_init__(self):
        self.type = SelectorType.REGEX

@dataclass(kw_only=True)
class ComputedField(BaseField):
    expression: Optional[str] = None
    function: Optional[Callable[[Dict[str, Any]], Any]] = None

    def __post_init__(self):
        self.type = SelectorType.COMPUTED
        if not (self.expression or self.function):
            raise ValueError("ComputedField must have either expression or function")

T = TypeVar("T", bound=BaseField)

@dataclass(kw_only=True)
class ListField(BaseField, Generic[T]):
    fields: List[T]

    def __post_init__(self):
        self.type = SelectorType.LIST

@dataclass(kw_only=True)
class NestedField(BaseField, Generic[T]):
    fields: List[T]

    def __post_init__(self):
        self.type = SelectorType.NESTED

@dataclass(kw_only=True)
class NestedListField(BaseField, Generic[T]):
    fields: List[T]

    def __post_init__(self):
        self.type = SelectorType.NESTED_LIST

@dataclass(kw_only=True)
class Schema:
    name: str
    baseSelector: str
    fields: List[
        Union[
            TextField,
            HtmlField,
            AttributeField,
            RegexField,
            ComputedField,
            ListField[Any],
            NestedField[Any],
            NestedListField[Any],
        ]
    ]

    def to_dict(self) -> Dict[str, Any]:
        """Convert Schema to dictionary format for JsonCssExtractionStrategy"""

        def field_to_dict(field: BaseField) -> Dict[str, Any]:
            result: Dict[str, Any] = {"name": field.name, "type": field.type.value}

            if field.selector:
                result["selector"] = field.selector

            if field.transform:
                result["transform"] = field.transform.value

            if field.default is not None:
                result["default"] = field.default

            if isinstance(field, AttributeField):
                result["attribute"] = field.attribute

            if isinstance(field, RegexField):
                result["pattern"] = field.pattern

            if isinstance(field, ComputedField):
                if field.expression:
                    result["expression"] = field.expression
                if field.function:
                    result["function"] = field.function

            if isinstance(field, (ListField, NestedField, NestedListField)):
                result["fields"] = [field_to_dict(f) for f in field.fields]

            return result

        return {
            "name": self.name,
            "baseSelector": self.baseSelector,
            "fields": [field_to_dict(f) for f in self.fields],
        }

Example usage:
schema = Schema(
    name="Example",
    baseSelector="#detail",
    fields=[
        NestedField(
            name="contact",
            selector="#detail-right",
            fields=[
                TextField(name="agency", selector="h3:first-of-type"),
                TextField(name="agent", selector="h3:last-of-type"),
                TextField(name="phone", selector="ul li:first-child"),
                TextField(name="city", selector="ul li:nth-child(2)"),
                TextField(name="address", selector=".address"),
            ],
        ),
        ListField(
            name="images",
            selector=".detail-ad-info-photos ol li a",
            fields=[AttributeField(name="url", attribute="href")],
        ),
    ],
)

extraction_strategy = JsonCssExtractionStrategy(schema.to_dict())

@arnm To be honest, this is very beautiful. I agree with you - tbh even myself I have to check the code to remember. Would you like to create a pull request for the current version and we can continue the discussion there? I really like what you've done here. Also, feel free to join our Discord channels if you'd like - just send me your email address and we can continue the conversation, test this and potentially add it to the next release.
I actually have a plan to create two things for this extraction strategy. One is to automate schema generation using a language model that analyzes web pages based on what you're looking for (e.g. I want all agencies contact details). This would make the process automated, and pain-less! Another plan in the roadmap is a Chrome extension that lets users choose what they want and get the schema on the fly. Perhaps thats is one of the reason why I didn't invest more time on current version.
If you're interested, you can join and help handle this. Let me know.


New version: Wagnardsoft.DisplayDriverUninstaller version <IP_ADDRESS>

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

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

Microsoft Reviewers: Open in CodeFlow

@microsoft-github-policy-service agree

Works fine on two of my PCs, one running Windows 10 and Windows 11. Might be a github server issue? Wagnard soft bans GitHub IPs from accessing their site, can that be the issue?

Hello @cloudedaim,
The package manager bot determined there was an issue with some of the URLs included in the manifest file. Please check the pull request for more details and make sure the urls are correct.
Template: msftbot/validationError/urls/smartScreen

The URLs are fine, and these URLs have been used in previous versions of the software as well. Checking the repo for  older versions of DDU reveals they're the same link, it's a problem with the testing bot.

Once again, it seems like an issue from the side of WagnardSoft. Checking the link shows it valid, are they blocking databases?

Automatic Validation ended with:

11/1/2023 3:49:34 AM
Installer Verification Analysis Context Information:
Error occurred while downloading installer from https://wagnardsoft.com/DDU/download/DDU v<IP_ADDRESS>_setup.exe. Forbidden (403). (0x80190193).
Error information:
Http Response: Forbidden
Http Reason Phrase: Forbidden

Once again, it seems like an issue from the side of WagnardSoft. Checking the link shows it valid, are they blocking databases?

Unfortunately, this appears to be the case.

I have sent a support request to Wagnard, will comment back here with reply.

Hello,
I'm the owner of Wagnardsoft, it's hosted behind cloudflare, maybe it's considered by them as a bot or something like that.
Maybe I could whitelist the IP to help.

/AzurePipelines run

@wingetbot waivers Add Validation-No-Executables


[feat] use toml to manage dependency config

I won't frequently alter the dependency.
Thus, it is possible to generate a script for the dependency only when submitting modifications.


Date/time variable examples in Azure Pipeline

Provided four different methods for adding date/time variables using detailed explanation for each method. These provided examples can be modified and used in different scenario as per requirement.

@mahi072
Thank you for your contribution. Would you take a moment to sign the Contributor License Agreement (CLA)? After the CLA is signed, someone can review your pull request. Thanks!
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@microsoft-github-policy-service agree [company="{}"]
I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.

@microsoft-github-policy-service agree

@shashban
Can you review the proposed changes? IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.

Hi @shashban, please review the proposed changes.

#assign juliakm
#assign ramimsft
This looks like it might be good to be added in variables (@juliakm), but in this PR it looks like it is in the context of a release (@ramiMSFT) Rami could you review this PR?

@mahi072 Thanks for your contribution! However this content is out of place. Can you start a PR to the following article instead: Define variables
GitHub: https://github.com/MicrosoftDocs/azure-devops-docs/blob/main/docs/pipelines/process/variables.md


Fix Install Issues with docutils = 0.21.post1 and exclude 3.12 from supported python dependencies

Currently, when users try to install using poetry with python3.12, they run into the following error:
  - Installing numpy (1.24.4): Failed

  ChefBuildError

  Backend 'setuptools.build_meta:__legacy__' is not available.

  Cannot import 'setuptools.build_meta'

  at venv/lib/python3.12/site-packages/poetry/installation/chef.py:164 in _prepare
      160│
      161│                 error = ChefBuildError("\n\n".join(message_parts))
      162│
      163│             if error is not None:
    → 164│                 raise error from None
      165│
      166│             return path
      167│
      168│     def _prepare_sdist(self, archive: Path, destination: Path | None = None) -> Path:

Note: This error originates from the build backend, and is likely not a problem with poetry but with numpy (1.24.4) not supporting PEP 517 builds. You can verify this by running 'pip wheel --no-cache-dir --use-pep517 "numpy (==1.24.4)"'.

The proposed solution excludes 3.12 from the supported versions in the dependencies, so that poetry will attempt to find a compatible python version to install the dependencies instead.
The currently activated Python version 3.12.4 is not supported by the project (>=3.8, <3.12, !=3.9.7).
Trying to find and use a compatible version.
Using python3.8 (3.8.19)

The proposed solution excludes 3.12 from the supported versions in the dependencies

Do we not support 3.12 at all?
https://github.com/apache/iceberg-python/blob/9e27d59e51e80049d39e72586a932cd561cdd092/pyproject.toml#L26-L33

@kevinjqliu Officially not since we don't run it in CI yet. In CI we run all the integration tests against the different platform, and I believe Ray was not on 3.12 yet. cc @MehulBatra

@Fokko @kevinjqliu @ndrluis
Do you folks think this needs to be pulled into 0.7.1 with a new RC?
We do have a section about not supporting 3.12 yet in Verify a Release section, but I think it's more straight forward to remove it from the dependencies as we did in this PR.

I think we don't need this in the new RC. I believe it would make sense to push this to the RC only if we stopped supporting version 3.12 in this specific release.


Repeatedly print telemetry rate.

Fixes #526

This has fixed the issue. Thanks!
For what it's worth the .README does not go over the "step" for updating the client-side Docker image. It is a simple one-liner based on the provided bash script (just changing run to pull), but would probably be nice to have explicitly stated in the .README for newer users.


Create adminUser without a User

Description
Fixes intermittently failing server test: TestAuthorizeUnknownUserAdminLogsIn.
Reviewer Notes
It turned out that the issue was that we were creating 2 Users, one in MakeAdminUser and one in authorizeUnknownUser.  Therefore, GetUserEmail was fetching two records and using the first one which did not have the session on it, so the session was ''.
Setup
To replicate locally, run go test -count=10 ./pkg/auth/authentication --testify.m "TestAuthorizeUnknownUserAdminLogsIn"
Code Review Verification Steps

[ ] Request review from a member of a different team.
[ ] Have the Jira acceptance criteria been met for this change?

References

Jira story for this change

Warnings

:warning:
Please add the JIRA issue key to the PR title (e.g. MB-123)

  Generated by :no_entry_sign: dangerJS against cb74a03c3b4349726b696c8b7154e31c5ca61102

Great work @kimallen and @abbyoung!


Movement

Here's another change we made. It just adds a button to allow users to move the keyboard around.

This is great, and something I'd definitely like to add to the script. Thanks!
The main issue with it is that it doesn't account for the page scroll distance. If the viewport hasn't been scrolled at all, it works fine. But if the page has been scrolled down, then the positioning is off.
As well, as a "safety" measure, the movement event listener should also be removed from the document when the keyboard is closed for any reason. So something should be added in this.VKI_close.

I'll get started adding those

Ok, just pushed what should fix those issues, I think. You were right about the one function call being unnecessary. I think I fixed the issue with fixed too, but I'm not sure if I did that right, or understood it all the way.

This is looking good, and I can find no further issues with it. If everything's all ship-shape with you, I can merge this.
Thanks!

Sounds good to me!


Support precognition

See: https://github.com/laravel/framework/pull/44339
See: https://laravel.com/docs/11.x/precognition#main-content
The idea is to support precognition as a first-class citizen of the form util.

Hello @innocenzi
Have there been any developments or implementations based on the idea?

Unfortunately, I haven't had the use for precognition myself yet, so I didn't work on it. I would think the implementation would be pretty similar to the first-party Inertia one.

Hi!
I have solved precognition in Hybridly - quick and not very elegantly - via a composable.
https://gist.github.com/dspangenberg/8ef65e639b499656417f7a4610f4e342


The ingress rule only works in kubernetes with nginx ingress controller

The annotation nginx.ingress.kubernetes.io/rewrite-target is used in ingress rule of Harbor.
Target rewriting is not supported by all ingress controllers(such as GCE), and for the controllers that support it the annotation is different: nginx is using nginx.ingress.kubernetes.io/rewrite-target but F5 GIG-IP is using virtual-server.f5.com/rewrite-target-url.

Listen the UI on /v2 instead /registryproxy/v2 isn't a option? It would be reduce the complexity from
Kubernetes side.

It is potentially an option, and we will revisit it.
Current goal is to make helm work with a released version and ensure it passes all the test cases in our jenkins.

Didn't know that a current needed feature. Since we are not using a nginx controller I would hit this problem now.
An other solution would be to create a separate nginx to container that logic. This can be optional and I would create a pull request for it if its an acceptable solution for you.

@jkroepke
I'd prefer not to introduce extra component, what's your LB?

HAProxy from Openshift. Technically HAProxy support rewrite / redirect but Openshift has no option to define such properties.

As you write above there exists a lot of LBs that doesn't support rewriting. There a 2 options:
You implement the rewriting into the UI component which requires a new release or you add a optional component that handle the special rewrite handling.
Helm supports optional dependencies. Standard kubernetes users wouldn't need to use the extra component.

@jkroepke Thanks for the analysis, I think you can try to add an optional component to fix your problem and after that, submit a PR if you would like.

Hopefully its good enough to get upstream ;)

The rewrite-target isn't needed anymore, closing the issue.


Update third_party/pybind11

Update pybind11 to v2.9.0
Don't tag broken llvm-project image as main when merging

Signed-off-by: Gong Su<EMAIL_ADDRESS>

No problem. The update was pretty trivial. The fix for tagging broken image as 'main' is not related to pybind11. It was a bug that was causing publishing llvm-project image failure on s390x.

Jenkins Linux s390x Build #3552 [push] - Update pybind11 to v2.... started at 21:50

Jenkins Linux ppc64le Build #2667 [push] - Update pybind11 to v2.... started at 21:57

Jenkins Linux amd64 Build #3560 [push] - Update pybind11 to v2.... started at 20:50

Jenkins Linux s390x Build #3552 [push] - Update pybind11 to v2.... passed after 39 min

Jenkins Linux ppc64le Build #2667 [push] - Update pybind11 to v2.... passed after 51 min

Jenkins Linux amd64 Build #3560 [push] - Update pybind11 to v2.... passed after 53 min


'$' issues when use javascriptobfuscator_unpacker

Description
Orignal code:
var a = {
    a: '1',
    b: 2,
    currencySymbol: '$',
    c: 3
};

Input
code after obfuscated
var _0xbe98 = ["\x63\x75\x72\x72\x65\x6e\x63\x79\x53\x79\x6d\x62\x6f\x6c", "\x24"];
var a = {};
a['\x61'] = '\x31';
a['\x62'] = 0x2;
a[_0xbe98[0]] = _0xbe98[1];
a['\x63'] = 0x3;

Expected Output
Expecting result as below after unpack
var a = {};
a['\x61'] = '\x31';
a['\x62'] = 0x2;
a['currencySymbol'] = '$';
a['\x63'] = 0x3;

Actual Output
var a = {};
a['\x61'] = '\x31';
a['\x62'] = 0x2;
a['currencySymbol'] = '; //missing $'
a['\x63'] = 0x3;;
a['\x63'] = 0x3; // where is this line come from?

Steps to Reproduce
JavascriptObfuscator.unpack(code)
Reason
The symbol $ is treated as a capture when replace string using RegExp, standalone $ sign should be escaped for this scenario.

Can I take up this issue

Hi, @bitwiseman  is this issue still open?

Yes, it is still open.

is this issue still open ?


Font question

Hej!
In you examples, you don't seem to use the default font. And it looks good. So I wonder how you did that?
I've been trying to use a few different fonts, but there isn't enough space allocated for the labels.
I have the same version of the native Graphviz installed on my system, and the output differs only when it comes to the dimension of boxes etc. The fonts are all installed on my system, and I've pointed the fontpath attribute to them as well.

BTW I have a set of 165 dot files, and generating SVGs for all of them is 40x faster with V8 compared to Nashorn (counting the total time for my files, including init)!

Hej hej
Thanks for the feedback.
To be honest, I didn't do anything with fonts and I don't know how it works.
But I also observed the boxes to be rather too small for the text.
I'm going to have a look at it, maybe I find something...
Thanks for the performance number. It's amazing how fast V8 is.

It's been a looooong time.
Font rendering has changed lately, is this still an issue?


Curve

Hello,
First to tell you thanks for your great library.
Just yesterday I made similar thing in a project of mine, but yours is almost complete.
As I saw you will like to include directions (down,left,up and right) which is great.
I think the library will be great if there is also a curve expanding/collapsing involved.
I would like to contribute and make an PR with this functionality.
So my question is this:
Do you thing this is good idea to add to the library? (I don't want to waste my time)

Feel free to send a PR with you feature :) We will take a look once the code be ready.


Refactor migration controller

Use only one loop with informers for pods, to back the loop.

Net loss of tests. What happened to the tests from test_job.go?

They were testing stuff, which we don't need anymore, now that we only have one controller loop. I will add more tests, which test error scenarios, which were not tested before ...

This needs a  rebase.  Changes seem to be minor, but non-trivial.

@admiyo rebased. All tests pass locally


Upgrade to Hawkular Metrics 0.19.0.Final

Please do not merge until PR #60 is merged.

PR #60 bumps metrics 0.19.0.Final and Alerting 1.1.3.Final.
So, I guess we can close this one once #60 is merged.
Sorry, it was more easy to update a srcdeps in the pom.xml than merge #60 and rebase this.


Bump rake version

What was the end-user problem that led to this PR?
We are working to effectively deprecate rubyforge_project in RubyGems and remove other extraneous references to the attribute. This caused tests tied to bundler to fail.
What was your diagnosis of the problem?
Ultimately the failure can be found here: https://travis-ci.org/rubygems/rubygems/jobs/442597902
Due to a reference in the rake gem to rubyforge_project, and the spec treating a deprecation notice as an error and a failure.
What is your fix for the problem, implemented in this PR?
The rake gem removed the last of its references to rubyforge_project by December 2016, so this update points the development dependency to the nearest minor upgrade to rake after those changes.
Why did you choose this fix out of the possible options?
I am not absolutely certain that this is the exact final wrinkle needed to fix this bug and pass this test, but it made the most sense to me. In the stacktrace the 10.x rake version was referenced, which matched with the development dependency, which would cause this failure. Look forward to thoughts and feedback. :)

We can't upgrade to the latest version of Rake because we're still testing changes against Ruby 1.8.7. But we're close to releasing Bundler 2 that will remove 1.8.7. We can leave this open until then.

@colby-swandale thanks for the information! I referenced this issue over in rubygems and what I think I'll do is keep from 'officially' executing deprecate on rubyforge_project until Bundler 2.0 is out like you say.
Then once we have 2.0 release, this merged, I'll put that PR forward and hopefully we'll be all square. Thanks!

@colby-swandale would this be a candidate for merging into the 2-0-stable branch?

This will eventually be merged into in a stable branch when we decide to release it.


Increased zhmcclient to 1.0.0

No review needed.

Coverage remained the same at 36.692% when pulling febdfeff0ff43c8556965a5c2caba190365a3606 on andy/use-zhmcclient-1.0.0 into 665686b1faa4610fe9b60ca48ed12f1449ef89e0 on master.


added storage key to captcha contract

This is what Hernando advised doing to make sure the contract storage is always pointing to the same location irrelevant of the contract. This works fine, I've tested it, but there are additional hurdles to jump when migrating contract storage as I've put in slack


Prettier bug in config.yml

Have you checked that your issue isn't already filed?

[X] I read through FAQ and searched through the past issues, none of which addressed my issue.
[X] Yes, I have checked that this issue isn't already filed.

Bug description
Pettier issues in config.yml
How to reproduce the bug
change baseurl: to blank
Error messages and logs
baseurl: to blank gives incorrect type. Expected "string".
line 194 gives error that property Defaults are not allowed.

What operating system are you using?
Windows
Where are you seeing the problem on?
Running locally without Docker, Deployed site
More info
No response

If you are starting fresh, check our video tutorial

Works fine for me, but I am not using it locally


'Cold' not documented as an available StandardBlobTier

Type of issue
Missing information
Description
As in title, the 'Cold' option for StandardBlobTier (https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/storage/azure-storage-blob/azure/storage/blob/_models.py) isn't included in the documentation.
Page URL
https://learn.microsoft.com/en-us/python/api/azure-storage-blob/azure.storage.blob.models.standardblobtier?view=azure-python-previous
Content source URL
https://github.com/MicrosoftDocs/azure-docs-sdk-python/blob/main/previous/docs-ref-autogen/azure-storage-blob/azure.storage.blob.models.StandardBlobTier.yml
Document Version Independent Id
1b4a5e56-4f25-f2a2-0f69-f2e229fa73f6
Article author
@VSC-Service-Account
Metadata

ID: 06de2651-2302-78b1-64f0-90f1a49ef510

Hi @nbut1er Nick, the documentation you linked above is actually the legacy documentation (Track 1).

Here is the correct, up-to-date documentation.
For reference, here is the a link to the up to date documentation landing page:
https://learn.microsoft.com/en-us/python/api/overview/azure/storage?view=azure-python
With that being said, I will continue with the closure of this issue.
Thanks!


0.3.4: pytest is failing because missing node_modules/y-websocket/package.json file

I'm packaging your module as an rpm package so I'm using the typical PEP517 based build, install and test cycle used on building packages from non-root account.

python3 -sBm build -w --no-isolation
because I'm calling build with --no-isolation I'm using during all processes only locally installed modules
install .whl file in </install/prefix>
run pytest with $PYTHONPATH pointing to sitearch and sitelib inside </install/prefix>
build is performed in env which is cut off from access to the public network (pytest is executed with -m "not network")

On first look looks like some files are missing in git repo.
Here is pytest output:

+ PYTHONPATH=/home/tkloczko/rpmbuild/BUILDROOT/python-jupyter-ydoc-0.3.4-2.fc35.x86_64/usr/lib64/python3.8/site-packages:/home/tkloczko/rpmbuild/BUILDROOT/python-jupyter-ydoc-0.3.4-2.fc35.x86_64/usr/lib/python3.8/site-packages
+ /usr/bin/pytest -ra -m 'not network'
ImportError while loading conftest '/home/tkloczko/rpmbuild/BUILD/jupyter_ydoc-0.3.4/tests/conftest.py'.
tests/conftest.py:26: in <module>
    update_json_file(here.parent / "node_modules/y-websocket/package.json", d)
tests/conftest.py:17: in update_json_file
    with open(path, "rb") as f:
E   FileNotFoundError: [Errno 2] No such file or directory: '/home/tkloczko/rpmbuild/BUILD/jupyter_ydoc-0.3.4/node_modules/y-websocket/package.json'

Here is list of installed modules in build env

Package                       Version
----------------------------- -----------------
aiofiles                      23.1.0
alabaster                     0.7.13
attrs                         22.2.0
Babel                         2.12.1
build                         0.10.0
charset-normalizer            3.1.0
distro                        1.8.0
docutils                      0.19
editables                     0.3
exceptiongroup                1.0.0
gpg                           1.18.0-unknown
hatchling                     1.13.0
idna                          3.4
imagesize                     1.4.1
importlib-metadata            6.1.0
iniconfig                     2.0.0
Jinja2                        3.1.2
libcomps                      0.1.19
markdown-it-py                2.2.0
MarkupSafe                    2.1.2
mdit-py-plugins               0.3.5
mdurl                         0.1.2
myst-parser                   1.0.0
packaging                     23.0
pathspec                      0.11.0
pip                           23.0.1
pluggy                        1.0.0
Pygments                      2.14.0
pyproject_hooks               1.0.0
pytest                        7.2.2
python-dateutil               2.8.2
pytz                          2023.2
PyYAML                        6.0
requests                      2.28.2
rpm                           4.17.0
six                           1.16.0
snowballstemmer               2.2.0
Sphinx                        6.1.3
sphinxcontrib-applehelp       1.0.4
sphinxcontrib-devhelp         1.0.2.dev20230202
sphinxcontrib-htmlhelp        2.0.0
sphinxcontrib-jsmath          1.0.1.dev20230128
sphinxcontrib-qthelp          1.0.3.dev20230128
sphinxcontrib-serializinghtml 1.1.5
tomli                         2.0.1
typing_extensions             4.5.0
urllib3                       1.26.15
websockets                    10.4
wheel                         0.38.4
y-py                          0.6.1
ypy-websocket                 0.8.4
zipp                          3.15.0

Did you install the node modules?

So why all necessary steps are not part of the begin of the pytest session and some steps are coded outside pytest framework? 🤔

BTW line
https://github.com/jupyter-server/jupyter_ydoc/blob/eea205847a0b1fbd97dd6bdc55a4be6724c27a66/.github/workflows/test.yml#L88
is wring.
It was many times told by pytest told by pytest developers to not use pytest by python -m pytest because if python is executed by python -m foo it adds current directory to sys.path whcih usually mesess test suite.
This is why pytest provides pytest script wrapper.

Just tested 1.0.0 and looks like on generate documentation is jet another issue
+ /usr/bin/sphinx-build -n -T -b man docs/source build/sphinx/man
Running Sphinx v6.1.3
making output directory... done
npm ERR! code EUNSUPPORTEDPROTOCOL
npm ERR! Unsupported URL Type "workspace:": workspace:javascript

npm ERR!

Exception occurred:
  File "/usr/lib64/python3.8/subprocess.py", line 364, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['npm', 'install']' returned non-zero exit status 1.
The full traceback has been saved in /tmp/sphinx-err-3sxomjlk.log, if you want to report the issue to the developers.
Please also report this if it was a user error, so that a better error message can be provided next time.
A bug report can be filed in the tracker at <https://github.com/sphinx-doc/sphinx/issues>. Thanks!
Building jupyterlab API docs

So why all necessary steps are not part of the begin of the pytest session and some steps are coded outside pytest framework?

That would be a nice improvement. Do you want to open a PR?
At the same time, I don't think that asking pytest to run yarn to install node modules would solve your issue, since you work in an environment cut off from access to the public network, right?

Most of the time I'm spending on packaging.
I'm not bred and butter python develoer however in may jupyter modules already are implemrntd callibg yarn.
Just checked my spec fiels:
[tkloczko@pers-jacek SPECS]$ grep yarn python-*
python-ipyleaflet.spec:BuildRequires:   yarnpkg
python-jupyterlab.spec:BuildRequires:   yarnpkg

But how would you get the node modules without access to the Internet?

I've tested that currently even with opened access to the public network nothing tries to download sometbing.
Generally it is alway possible to provide necessaty nodejs mdules installed locally.

Currently you have to invoke yarn just like in the CI.


[BUG] SAS does not work for Table Storage

Library name and version
Azure.Data.Tables
Describe the bug
SAS Generated for Table Storage does not work. It gives following error.
Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.
Please check attached code sample.
Expected behavior
Generated SAS should be accepted and it should return entities from the Table Storage.
Actual behavior
Following error is thrown.
Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.
RequestId:76394065-8002-00f4-5668-190393000000
Time:2022-02-04T01:45:12.7943495Z
Status: 403 (Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.)
ErrorCode: AuthenticationFailed
Content:
{"odata.error":{"code":"AuthenticationFailed","message":{"lang":"en-US","value":"Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.\nRequestId:76394065-8002-00f4-5668-190393000000\nTime:2022-02-04T01:45:12.7943495Z"}}}
Headers:
Server: Microsoft-HTTPAPI/2.0
x-ms-request-id: 76394065-8002-00f4-5668-190393000000
x-ms-error-code: REDACTED
Date: Fri, 04 Feb 2022 01:45:12 GMT
Content-Length: 299
Content-Type: application/json
Reproduction Steps
Please run code below. It's a .Net 6 console app.
Use your table storage account and keys.
// See https://aka.ms/new-console-template for more information
using Azure.Data.Tables;
using Azure.Data.Tables.Sas;

Console.WriteLine("Hello, World!");

//This is legacy Azure Table Storage account and NOT CosmosDb Table account
// I am trying to migrate from deprecated WindowsAzure.Storage SDK
string accountName = "table-storage-account-name";
Uri endPointUri = new Uri("https://table-storage-account-name.table.core.windows.net");
string accountKey = "ACCESS KEY FOR ACCOUNT";
string tableName = "MyTableName";

var credential = new TableSharedKeyCredential(accountName, accountKey);

var tableClient = new TableClient(endPointUri, tableName, credential);

var tableSasBuilder = tableClient.GetSasBuilder(TableSasPermissions.Read | TableSasPermissions.Update | TableSasPermissions.Add | TableSasPermissions.Delete,
                                                DateTime.UtcNow.AddMinutes(30));
tableSasBuilder.PartitionKeyStart = "MyPartitionKey";
tableSasBuilder.PartitionKeyEnd = "MyPartitionKey";

var tableSasUri = tableClient.GenerateSasUri(tableSasBuilder);

var tableClientWithSas = new TableClient(tableSasUri);

var items = tableClientWithSas.Query<TableEntity>();

foreach (var item in items)
{
    System.Diagnostics.Debug.WriteLine(item.PartitionKey);
}

Environment
Visual Studio 2022

Thank you for your feedback.  Tagging and routing to the team member best able to assist.

Hi @vinodshinde - The problem here seems to be with the casing of the table name. If you change your tableName to "tablename" the query will succeed. Although the service [treats table names as case-insensitive] (https://docs.microsoft.com/en-us/rest/api/storageservices/understanding-the-table-service-data-model#table-names) I believe any representation of the name in the SAS creation must be lower case. I'll look into a proper fix, but in the meantime, using lowercase table names should allow you to work around the problem.

Hello @christothes - Changing the table name to lower case resolved the issue. Thanks for your help.


attach_stacktrace is broken in master

I misunderstood what the option meant. Do not release for now. gtg

Fixed with https://github.com/getsentry/sentry-python/commit/e0c075a1e0657f4569cf640e9ceb8d576c3275cb


Create Fluent Query API for AssetIndex etc.

This is an improvement of the current Criterion that is used to submit queries.
Problem statement
The main problem with the Criterion API is that the user has to supply valid operators and operands. Valid as in "valid in the database's dialect". So the query syntax is dependent on the DB implementation.
For example, submitting an "IN"-query to an SQL-style DB would require the right-hand operand to be a valid list of values complete with brackets and commas, resulting in someValue IN ('value1', 'value2', ...'valueN').
In addition, the user needs to know the data type of the left-hand operand, because that influences, whether the single quotation marks are necessary or not.
Proposition
In order to improve on that I propose an explicit query API with the following properties:

offers a small but specific set of operands (e.g. equals, in, gt, lt, geq, leq)
type safety: the type of the left-hand operand is known either through a schema or through a parameter, thus we can validate the operator and the right-hand operator
fluent
extensible: there is a possibility to supply "raw" queries, that are not checked and that is tunneled through to the data store more or less directly.
serializable: makes it possible to transmit a query easily over the wire

Examples
String Equals
var query = QueryBuilder.newQuery()
                         .where("someProp").havingType(String.class)
                         .eq("someValue").build();

String in
var query = QueryBuilder.newQuery()
                         .where("someProp").havingType(String.class)
                         .in("value1", "value2", "value3")
                         .build();

Greater-Than with Schema
org.eclipse.dataspaceconnector.spi.types.domain.schema.Schema schema = ...; //obtain Schema, e.g. from JSON Schema
var query = QueryBuilder.newQuery()
                         .where("someProp").havingSchema(schema)
                         .gt(420)
                         .build();

Nice and succinct +1


ci: Backstop AOT tests

This PR backstops AOT tests in CI. Not all the AOT test pass or get
skipped yet. Rather than wait for it to happen and then add in CI,
let's just add a subset in CI now to prevent any more backsliding.
We've already had quite a few regressions due to the codepaths
not being exercised in CI.
Checklist

[ ] Language changes are updated in man/adoc/bpftrace.adoc
[ ] User-visible and non-trivial changes updated in CHANGELOG.md
[ ] The new behaviour is covered by tests

Side note: In terms of test output, should we just show the number of tests skipped at the end instead of re-listing them all?

Side note: In terms of test output, should we just show the number of tests skipped at the end instead of re-listing them all?

My personal preference would be to keep it as-is. I find the summary helpful - esp for when I build the skiplist which was just copy paste


macosx compile error

Hi,
I get an error when compiling Torque3D.
log: https://travis-ci.org/andijh92/Torque3D/jobs/249886769
I'm using:
xcode 7.3
OS X 10.11
commit: 8943c673fb876a50dc87d2ba862d31eb202ce6da (branch development Jun 19, 2017)
Regards, Andy

oddball... looks to be compiling this end:
http://imgur.com/a/m4Wgz

I used the commands:
ADDITIONAL_CMAKE_ARGS="-DTORQUE_TESTING=on -DTORQUE_PHYSICS_BULLET=on"
pushd My\ Projects/Torque3D/
cmake ../../ -DTORQUE_APP_NAME=Torque3D $ADDITIONAL_CMAKE_ARGS
cmake --build . --target install
I also tried with ADDITIONAL_CMAKE_ARGS=""  and I got the same error.
Can you try compiling with those commands? I don't have a mac machine. If the error persists I'll borrow a one or download a vm.

Give
https://pastebin.com/3PrkuXGx
A shot since that's what it seems to be complaining about your end...

Checking this out further (i'll keep the story short), shouldn't need any source code changes, just chuck in compiler: clang for osx in your .travis.yml config file and it should hopefully compile ok. Using gcc (although it is clang) makes it point to the old gcc 4.2.1 headers

I'm using clang now, but the error persists. See https://travis-ci.org/andijh92/Torque3D/jobs/254354259

If I set CXXFLAGS="fgnu-inline-asm -fasm-blocks" it fixes the error.
But now there's the next error: The build ignores sdl and shared libraries are turned off. See https://travis-ci.org/andijh92/Torque3D/jobs/275370712

resolved


Site support request - tv.vera.com.uy

[x] I've verified and I assure that I'm running youtube-dl 2019.01.16
[x] At least skimmed through the README, most notably the FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones
[x] Checked that provided video/audio/playlist URLs (if any) are alive and playable in a browser

What is the purpose of your issue?

[ ] Bug report (encountered problems with youtube-dl)
[x] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

➜ youtube-dl -v http://tv.vera.com.uy/video/38565
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-v', u'http://tv.vera.com.uy/video/38565']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.01.16
[debug] Python version 2.7.15+ (CPython) - Linux-4.18.0-10-generic-x86_64-with-Ubuntu-18.10-cosmic
[debug] exe versions: ffmpeg 4.0.2-2, ffprobe 4.0.2-2, phantomjs 5, rtmpdump 2.4
[debug] Proxy map: {}
[generic] 38565: Requesting header
WARNING: Falling back on generic information extractor.
[generic] 38565: Downloading webpage
[generic] 38565: Extracting information
ERROR: Unsupported URL: http://tv.vera.com.uy/video/38565
Traceback (most recent call last):
  File "/home/pante/.local/lib/python2.7/site-packages/youtube_dl/extractor/generic.py", line 2337, in _real_extract
    doc = compat_etree_fromstring(webpage.encode('utf-8'))
  File "/home/pante/.local/lib/python2.7/site-packages/youtube_dl/compat.py", line 2542, in compat_etree_fromstring
    doc = _XML(text, parser=etree.XMLParser(target=_TreeBuilder(element_factory=_element_factory)))
  File "/home/pante/.local/lib/python2.7/site-packages/youtube_dl/compat.py", line 2531, in _XML
    parser.feed(text)
  File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 1659, in feed
    self._raiseerror(v)
  File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 1523, in _raiseerror
    raise err
ParseError: mismatched tag: line 96, column 2
Traceback (most recent call last):
  File "/home/pante/.local/lib/python2.7/site-packages/youtube_dl/YoutubeDL.py", line 793, in extract_info
    ie_result = ie.extract(url)
  File "/home/pante/.local/lib/python2.7/site-packages/youtube_dl/extractor/common.py", line 508, in extract
    ie_result = self._real_extract(url)
  File "/home/pante/.local/lib/python2.7/site-packages/youtube_dl/extractor/generic.py", line 3320, in _real_extract
    raise UnsupportedError(url)
UnsupportedError: Unsupported URL: http://tv.vera.com.uy/video/38565

Single video: http://tv.vera.com.uy/video/38565
Shorter single video: http://tv.vera.com.uy/video/38435
Playlist: http://tv.vera.com.uy/series/101/949

-

Single video on its second domain: http://veramas.com.uy/veramas/vod/38586/949
Playlist on its second domain: http://veramas.com.uy/veramas/serie/949

Note that youtube-dl does not support sites dedicated to copyright infringement. In order for site support request to be accepted all provided example URLs should not violate any copyrights.

Description of your issue, suggested solution and other information
I tried to do it by myself but I have little/no-deep python knowledge, so ended up being realistic...
The site is tv.vera.com.uy - but has a second domain, veramas.com.uy - It's the same portal, some of their videos are accessible by the two domains, other videos are not and available on only one (that's why I put those two domains).
The site is the author of the content or/its authorized to show it. It's legal, state service.

I keep trying, I'm stuck with this: gist - vera.py
I test directly, check:
youtube-dl  vera 
➜ python -m youtube_dl http://tv.vera.com.uy/video/38478 --verbose
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'http://tv.vera.com.uy/video/38478', u'--verbose']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.01.16
[debug] Git HEAD: bfc8eeea5
[debug] Python version 2.7.15+ (CPython) - Linux-4.18.0-10-generic-x86_64-with-Ubuntu-18.10-cosmic
[debug] exe versions: ffmpeg 4.0.2-2, ffprobe 4.0.2-2, phantomjs 5, rtmpdump 2.4
[debug] Proxy map: {}
[Vera] 38478: Downloading webpage
===========
http://tv.vera.com.uy/video/38478
Trailer 4
"Todos detrás de Momo", una serie del Programa SeriesUy. Mirala por vera+, TNU y TV Ciudad.
mp4
38478
===========
[debug] Default format spec: bestvideo+bestaudio/best
[debug] Invoking downloader on u'http://tv.vera.com.uy/video/38478'
[download] Destination: Trailer 4-38478.mp4
[download] 100% of 40.02KiB in 00:00

As you can see, the result is saved as Trailer 4-38478.mp4, which its the HTML of that url in a pseudo mp4 file.
How I can get the video (m3u8) saved as mp4/mkv/whatever?
How can I extract it? I can see the m3u8 file inside an <iframe> with id iframePlayerContent, then inside of that, in javascript, the function embedPlayer → source → hls

In video page HTML, there is:
buildPlayer = function(){
  $("#player_content").html('').append('<iframe class="iframeclass content-watch" id="iframePlayerContent" frameborder="0" scrolling="no" src="" webkitallowfullscreen="true" mozallowfullscreen="true" allowFullScreen="true"></iframe>');
  $('#iframePlayerContent').attr('src', 'http://tv.vera.com.uy/syndication/index.php/sindicacion/play/ANTEL-PLAYER/38478?extras=eyJ3aWR0aCI6IjEwMCUiLCJoZWlnaHQiOiIxMDAlIiwiaWZyYW1lZCI6MSwic2VjdXJpdHlfdG9rZW4iOiJaakl6WkRabU1UYzNNak0zTmpBd1pXSmtaV0kwWVdSbFltVmhNekJqWWpRNU5ERmlOak0yWmc9PSIsIndzX3Rva2VuIjoie1wid3NfdG9rZW5cIjpcImV5SjFjMlZ5WDJsa0lqcG1ZV3h6WlN3aWFYTmZjbTl2ZENJNlptRnNjMlVzSW1sd0lqb2lNVFkzTGpVM0xqY3dMalF6SWl3aWJHOW5aMlZrSWpvd0xDSjBlV01pT21aaGJITmxMQ0pqYjI1MFpXNTBYMmxrSWpvaU16ZzBOemdpTENKa2FYSjBJam9pTVRVME9EazVNamN5TlRnNE1UY2lMQ0p6YVdkdUlqb2lPR1l3T1RrMVpUUTNaR0l4WlRCak56RXhZVFExTWpjMVpqTm1ZMlUwT1dGalpqTmtZbVpsWVdFNU0yWTBNV1UwWXpKak5qa3hNV015TVdVMU5HUmlaaUo5XCJ9In0=');
}

Then inside that src there, you find this ↓
function embedPlayer(){
  var conf = {
  "key":"a488d68f-aedf-4be7-b687-23403ecb4520",
  "playback":{"autoplay": true,"muted": false},
  "style": {"ux":true,"width": "100%","height": "100%"},
  "source":{"hls": "http://vxvod3.cdn.antel.net.uy/auth_38478,vxttoken=cGF0aFVSST0lMkZhdXRoXzM4NDc4JTJGdnhmbXQlM0RobHMlMkYlMkEmZXhwaXJ5PTE1NDkwMDg0OTUmcmFuZG9tPXU3a0NmVFIzcXgmYy1pcD0xNjcuNTcuNzAuNDMsYzk2YTY3ZjMxYmNjMjc1M2E3YTE0Zjc0MmM5OWZkZDc0NzBhNWM5NDhlMDYzNzQ2OWExNGE0MzkwNDNkMWUxMg==/vxfmt=hls/playlist.m3u8",
    "tracks": [{"file":"http://veratvimgs.cdn.antel.net.uy/dynamic/content_images/38478/96/preview_thumbs.vtt","kind":"thumbnails"}]
  }
};

So how I continue with this? I have no clue

I finally could. In a way I think is really gross(?, but it does work: gist
How can I clean it? I know there is redundant code.
As can see there, it does this:

First get the URL and download it
Convert it to plain HTML
Search for links that does have specific word that I saw there for the iframe
It loads that second URL
Searches for ".m3u8" link inside that second loaded page (iframe)
Assign that source to video_url

This is supporting two domains from the same service, but the secondary domain has different html so I have to do some sort of ifs that I'm not sure how to do, but, I'll see...
Suggestions?
I'm talking alone, I don't care have a nice day xD