proxy.golang.org 403 forbidden (Hetzner Hosting)

What version of Go are you using (go version)?

 golang:1.21.0-alpine3.17

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env

What did you do?
The dockerized golang app was pushed onto a Hetzner Docker CE server which is based in Germany.
On my local env, the container works but it seems like Hetzner's IPS got banned from accessing the packages.
What did you expect to see?
go: downloading github.com/klauspost/compress
What did you see instead?
err: #9 3.349 /go/pkg/mod/github.com/valyala/fasthttp@v1.45.0/compress.go:10:2<EMAIL_ADDRESS>reading<EMAIL_ADDRESS>403 Forbidden
err: #9 3.349 /go/pkg/mod/github.com/valyala/fasthttp@v1.45.0/compress.go:11:2<EMAIL_ADDRESS>reading<EMAIL_ADDRESS>403 Forbidden
err: #9 3.349 /go/pkg/mod/github.com/valyala/fasthttp@v1.45.0/compress.go:12:2<EMAIL_ADDRESS>reading<EMAIL_ADDRESS>403 Forbidden
err: #9 3.349 /go/pkg/mod/go.mongodb.org/mongo-driver@v1.11.4/x/mongo/driver/compression.go:17:2<EMAIL_ADDRESS>reading<EMAIL_ADDRESS>403 Forbidden
err: #9 ERROR: process "/bin/sh -c go build -o app main.go" did not complete successfully: exit code: 1
I was able to fix the issue by using GOPROXY='direct' but this caused just new issues like
err: #10 43.20 go<EMAIL_ADDRESS>unrecognized import path "golang.org/x/sync": reading https://golang.org/x/sync?go-get=1: 403 Forbidden

I could replace them all, but this would be tedious work. Is there a reason why Hetzner is not allowed to access and download all the packages?
If this is not a bug I am sorry for the inconvenience.
Kind regards

I don't think it's all of hetzner, my stuff on there seems fine
can you narrow it down?

@seankhliao It seems to affect this range <IP_ADDRESS> - <IP_ADDRESS>

cc @golang/tools-team

Can you try GOPROXY=https://goproxy.cn,direct?

@dev-zynko What do you see when you try to curl the proxy urls?
curl -v -L -o /dev/null<EMAIL_ADDRESS>curl -v -L -o /dev/null<EMAIL_ADDRESS>
The zip url will return 302 with a signed URL pointing to storage.googleapis.com. Can you check if it is accessible?

@hyangah
$curl -v -L -o /dev/null<EMAIL_ADDRESS>

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying 2a00:1450:4001:82b::2011:443...
* TCP_NODELAY set
* Connected to proxy.golang.org (2a00:1450:4001:82b::2011) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: /etc/ssl/certs
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [15 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [10764 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [78 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN, server accepted to use h2
* Server certificate:
*  subject: CN=misc-sni.google.com
*  start date: Jul 31 08:17:59 2023 GMT
*  expire date: Oct 23 08:17:58 2023 GMT
*  subjectAltName: host "proxy.golang.org" matched cert's "*.golang.org"
*  issuer: C=US; O=Google Trust Services LLC; CN=GTS CA 1C3
*  SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
} [5 bytes data]
* Using Stream ID: 1 (easy handle 0x55ed0d1f2300)
} [5 bytes data]
> GET<EMAIL_ADDRESS>HTTP/2
> Host: proxy.golang.org
> user-agent: curl/7.68.0
> accept: */*
>
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [282 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [282 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
* Connection state changed (MAX_CONCURRENT_STREAMS == 100)!
} [5 bytes data]
< HTTP/2 200
< accept-ranges: bytes
< access-control-allow-origin: *
< content-length: 196
< x-content-type-options: nosniff
< x-frame-options: SAMEORIGIN
< x-xss-protection: 0
< date: Fri, 01 Sep 2023 18:16:40 GMT
< expires: Fri, 01 Sep 2023 21:16:40 GMT
< cache-control: public, max-age=10800
< content-type: application/json
< age: 2816
< alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
<
{ [5 bytes data]
100   196  100   196    0     0   5157      0 --:--:-- --:--:-- --:--:--  5157
* Connection #0 to host proxy.golang.org left intact

$ curl -v -L -o /dev/null<EMAIL_ADDRESS>

 % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying 2a00:1450:4001:82b::2011:443...
* TCP_NODELAY set
* Connected to proxy.golang.org (2a00:1450:4001:82b::2011) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: /etc/ssl/certs
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [15 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [10764 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [79 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN, server accepted to use h2
* Server certificate:
*  subject: CN=misc-sni.google.com
*  start date: Jul 31 08:17:59 2023 GMT
*  expire date: Oct 23 08:17:58 2023 GMT
*  subjectAltName: host "proxy.golang.org" matched cert's "*.golang.org"
*  issuer: C=US; O=Google Trust Services LLC; CN=GTS CA 1C3
*  SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
} [5 bytes data]
* Using Stream ID: 1 (easy handle 0x5620e2cbf300)
} [5 bytes data]
> GET<EMAIL_ADDRESS>HTTP/2
> Host: proxy.golang.org
> user-agent: curl/7.68.0
> accept: */*
>
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [282 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [282 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
* Connection state changed (MAX_CONCURRENT_STREAMS == 100)!
} [5 bytes data]
< HTTP/2 302
< access-control-allow-origin: *
< location: https://storage.googleapis.com/proxy-golang-org-prod/37b3470a7e96ca28-github.com:klauspost:compress-v1.16.4.zip?Expires=1693670696&GoogleAccessId=gcs-urlsigner-prod%40golang-modproxy.iam.gserviceaccount.com&Signature=UXQINUNiU1OFeAaOJOkuFG%2F9w4I9DPzxRrvBbfcULgOMoJLCdetWhYQB%2FDu1OIDnmBG7s1HtCNu2R9vz6okBE%2BmcLXGlkSy993RYlmm8vBwp6dQujgV4tcbyjgKJCYX7vqOkoaGYUFlSvpfY9P0wedIp5uTRWXIHgHnBh621W%2BfxUqX5J%2BiVsHdwRgSyFoha8cqcBzHgOEhTf3M4Qed8eRLk3G6HQXZKoltWLIIyaardVeACXtwpgCuulFzr42tUSCzFNHJhVg6oB84IcH8IJKzz076sn9mr6gp0jpIwBhg%2BAAtLrhPmg5bpZHuG%2BW8BVqWJy%2FZsCAX6oKxbwmHjVw%3D%3D
< x-content-type-options: nosniff
< x-frame-options: SAMEORIGIN
< x-xss-protection: 0
< content-length: 0
< date: Fri, 01 Sep 2023 16:04:56 GMT
< expires: Fri, 01 Sep 2023 19:04:56 GMT
< cache-control: public, max-age=10800
< etag: "89f6d7e01111ef97fdfacde82a0f7e69e0e5b34f93148a9a11f75c68fd869a1b"
< content-type: application/zip
< age: 10776
< alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
<
{ [0 bytes data]
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
* Connection #0 to host proxy.golang.org left intact
* Issue another request to this URL: 'https://storage.googleapis.com/proxy-golang-org-prod/37b3470a7e96ca28-github.com:klauspost:compress-v1.16.4.zip?Expires=1693670696&GoogleAccessId=gcs-urlsigner-prod%40golang-modproxy.iam.gserviceaccount.com&Signature=UXQINUNiU1OFeAaOJOkuFG%2F9w4I9DPzxRrvBbfcULgOMoJLCdetWhYQB%2FDu1OIDnmBG7s1HtCNu2R9vz6okBE%2BmcLXGlkSy993RYlmm8vBwp6dQujgV4tcbyjgKJCYX7vqOkoaGYUFlSvpfY9P0wedIp5uTRWXIHgHnBh621W%2BfxUqX5J%2BiVsHdwRgSyFoha8cqcBzHgOEhTf3M4Qed8eRLk3G6HQXZKoltWLIIyaardVeACXtwpgCuulFzr42tUSCzFNHJhVg6oB84IcH8IJKzz076sn9mr6gp0jpIwBhg%2BAAtLrhPmg5bpZHuG%2BW8BVqWJy%2FZsCAX6oKxbwmHjVw%3D%3D'
*   Trying 2a00:1450:4001:801::2010:443...
* TCP_NODELAY set
* Connected to storage.googleapis.com (2a00:1450:4001:801::2010) port 443 (#1)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: /etc/ssl/certs
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [15 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [4018 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [80 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN, server accepted to use h2
* Server certificate:
*  subject: CN=storage.googleapis.com
*  start date: Jul 31 08:25:19 2023 GMT
*  expire date: Oct 23 08:25:18 2023 GMT
*  subjectAltName: host "storage.googleapis.com" matched cert's "storage.googleapis.com"
*  issuer: C=US; O=Google Trust Services LLC; CN=GTS CA 1C3
*  SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
} [5 bytes data]
* Using Stream ID: 1 (easy handle 0x5620e2cbf300)
} [5 bytes data]
> GET /proxy-golang-org-prod/37b3470a7e96ca28-github.com:klauspost:compress-v1.16.4.zip?Expires=1693670696&GoogleAccessId=gcs-urlsigner-prod%40golang-modproxy.iam.gserviceaccount.com&Signature=UXQINUNiU1OFeAaOJOkuFG%2F9w4I9DPzxRrvBbfcULgOMoJLCdetWhYQB%2FDu1OIDnmBG7s1HtCNu2R9vz6okBE%2BmcLXGlkSy993RYlmm8vBwp6dQujgV4tcbyjgKJCYX7vqOkoaGYUFlSvpfY9P0wedIp5uTRWXIHgHnBh621W%2BfxUqX5J%2BiVsHdwRgSyFoha8cqcBzHgOEhTf3M4Qed8eRLk3G6HQXZKoltWLIIyaardVeACXtwpgCuulFzr42tUSCzFNHJhVg6oB84IcH8IJKzz076sn9mr6gp0jpIwBhg%2BAAtLrhPmg5bpZHuG%2BW8BVqWJy%2FZsCAX6oKxbwmHjVw%3D%3D HTTP/2
> Host: storage.googleapis.com
> user-agent: curl/7.68.0
> accept: */*
>
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [282 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [282 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
* Connection state changed (MAX_CONCURRENT_STREAMS == 100)!
} [5 bytes data]
< HTTP/2 200
< x-guploader-uploadid: ADPycdu4x9_sEgJFl64XeGAn1vqZwfELok8G6-KdCgUB1w4c5kuZ62HfGiDiELHRcQhzKYvYSz18mDkkVo2Fk8dDYlBNANXaqiiw
< date: Fri, 01 Sep 2023 19:04:32 GMT
< cache-control: public,max-age=3600,must-revalidate
< expires: Fri, 01 Sep 2023 20:04:32 GMT
< last-modified: Wed, 05 Apr 2023 10:49:23 GMT
< etag: "5b5fb00757d5c7558d1febd80ec31129"
< x-goog-generation:<PHONE_NUMBER>127712
< x-goog-metageneration: 1
< x-goog-stored-content-encoding: identity
< x-goog-stored-content-length: 38029082
< content-type: application/zip
< content-disposition: attachment; filename="v1.16.4.zip"
< x-goog-hash: crc32c=WIeXVw==
< x-goog-hash: md5=W1+wB1fVx1WNH+vYDsMRKQ==
< x-goog-storage-class: MULTI_REGIONAL
< accept-ranges: bytes
< content-length: 38029082
< server: UploadServer
< alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
<
{ [5 bytes data]
100 36.2M  100 36.2M    0     0  17.5M      0  0:00:02  0:00:02 --:--:-- 27.7M
* Connection #1 to host storage.googleapis.com left intact

Thanks. @dev-zynko Seems like you no longer have an issue with<EMAIL_ADDRESS>And, looking into the original report you had an issue withhttps://golang.org/x/sync?go-get=1 as well back then - that url doesn't involve proxy.golang.org nor sum.golang.org. Maybe some network issues?


Project name disappears in namespace when creating new *.cs file

Could you provide some context?

The version of the extension
The folder structure from the csproj to the created file
The csproj TargetFramework & optional RootNamespace
Your OS (Mac / Windows / Linux)

Could you provide some context?

The version of the extension
The folder structure from the csproj to the created file
The csproj TargetFramework & optional RootNamespace
Your OS (Mac / Windows / Linux)

The version of the vs code:
v1.66.2
The version of the extension:
v1.6.2
The folder structure & csproj TargetFramework:
ServiceCluster-Notification
└ charts
└ src
└ NotificationSystem.Domain
└ (NotificationSystem.Domain.csproj) netstandard2.0
└ NotificationSystem.Application
└ (NotificationSystem.Application.csproj) netstandard2.0
└ test
└ NotificationSystem.UseCase.Test
└ (NotificationSystem.UseCase.Test.csproj) netcoreapp3.1
└ Aggregates
└ Commands
└ DomainEventHandlers
└ IntegrationEvents
My OS:
Apple M1 Max
macOS Monterey 12.2.1
It was working fine yesterday, but today I found the problem.
Now using jchannon's C# Extensions v1.3.1 does not have this problem.

Fixed & released in version 1.6.3


BLD/RLS: update wheels to include GDAL 3.6

This seems to be working nicely! (and with GDAL 3.6, this will also include the arrow support(https://github.com/geopandas/pyogrio/pull/155) in the wheels)

Thanks @jorisvandenbossche !

How do you install wheel?

Hi Matt, you can go to the last CI checks of this PR, and go to the release workflow actions: https://github.com/geopandas/pyogrio/actions/runs/3802778482
At the bottom of that page, you can download the "artifact", and then locally unzip that archive, and then you can do pip install path/to/archive/pyogrio-0.4.2+.....whl (taking the name that matches your OS and python version)
But, note that https://github.com/geopandas/pyogrio/pull/155 is not yet merged, so the wheels after this PR don't yet allow you to test the arrow integration. Will try to get #155 merged shortly!

Thanks for the advice @jorisvandenbossche and the update on #155
I'll wait for that merge before I grab a wheel. Thanks for all your hard work on these projects.

That PR has been merged, and so the wheels on the last build on the main branch can be tested (at the bottom of this page: https://github.com/geopandas/pyogrio/actions/runs/3821445489)
(I still have a follow-up PR to expose the Arrow-based reading also directly with a read_arrow(), for now you can only use read_dataframe(..., use_arrow=True) which also already converts the pyarrow Table to a geopandas.GeoDataFrame)

Thanks for the update Joris. I tested the wheel earlier in the week but was getting this error.
Traceback (most recent call last):
  File "/home/matt/pyogrio_test.py", line 5, in <module>
    read_dataframe(file, use_arrow='True')
  File "/home/matt/miniconda3/envs/geoarrow/lib/python3.11/site-packages/pyogrio/geopandas.py", line 138, in read_dataframe
    meta, index, geometry, field_data = read(
                                        ^^^^^
  File "/home/matt/miniconda3/envs/geoarrow/lib/python3.11/site-packages/pyogrio/raw.py", line 131, in read
    result = func(
             ^^^^^
  File "pyogrio/_io.pyx", line 1064, in pyogrio._io.ogr_read_arrow
RuntimeError: Need GDAL>=3.6 for Arrow support

I'm running this is a conda env and see the GDAL version is 3.6.1 when running gdal-config --version
If it's easier shall I wait for the new 0.5.0 release?
I'm keen to test this out and see if pyorgio will be more efficient than using ogr2ogr in a bash script.
Thanks
Matt

What do you mean with "earlier in the week"? Because to test it, you will have to explicitly install the wheel downloaded from the link I gave above (https://github.com/geopandas/pyogrio/actions/runs/3821445489), so somewhere within the last three days.

I'm running this is a conda env and see the GDAL version is 3.6.1 when running gdal-config --version

When testing a wheel, it actually shouldn't matter which version of GDAL you have in the conda env, since it is the GDAL vendored inside the wheel that matters

So I've created a new conda environment and installed the appropriate wheel for my system.
I'm running this code
import pyogrio as ogr
print(ogr.__gdal_version__)
file = r'/home/matt/Downloads/bdline_gb.gpkg'
ogr.read_dataframe(file, use_arrow='True')

I'm receiving this error though.
(3, 6, 1)
Traceback (most recent call last):
  File "/home/matt/pyogrio_test.py", line 4, in <module>
    ogr.read_dataframe(file, use_arrow='True')
  File "/home/matt/.local/lib/python3.10/site-packages/pyogrio/geopandas.py", line 138, in read_dataframe
    meta, index, geometry, field_data = read(
  File "/home/matt/.local/lib/python3.10/site-packages/pyogrio/raw.py", line 131, in read
    result = func(
  File "pyogrio/_io.pyx", line 1064, in pyogrio._io.ogr_read_arrow
RuntimeError: Need GDAL>=3.6 for Arrow support

Hmm, thanks for testing. It might be we have been accidentally building the wheel thinking it has GDAL 3.5 while we actually included 3.6. But the feature will be skipped with the error you mention when it was compiled with thinking it is 3.5. https://github.com/geopandas/pyogrio/pull/200 might fix that

Yes, I can confirm that I locally get the same error when trying the current wheels. And that this is resolved with the wheels from #200 (https://github.com/geopandas/pyogrio/actions/runs/3877074273)

Thanks. This works for me too.

@mtravis thanks for testing! Hope to release in one of the coming days, then you can use the released wheels.


Reading files with lower precision than Float64

Hi Korbinian, do you know if it's possible to load and work with NIfTI images using MriResearchTools with anything smaller than Float64? This is sometimes an issue on machines with <16 GB memory, especially for multi-echo phase combination steps with a sufficiently large number of echoes and when the magnitude is also available and used.
For some NIfTI images, when I load them using nibabel in Python, nii.header.get_data_dtype().itemsize returns a value such as 8, depending on the image. However, loadmag and loadphase in MriResearchTools consistently return a Float64 Array. I'm not sure if this is an easy thing to update, but wondered if it could be possible. :)

Hi Ashley,
I think that's because NIfTI.jl automatically scales the raw image by the
scaling factor in the nifti Header. This scaling factor is float64, so the
retrieved image is float64.
You can instead access the raw image via:
Ni = Loadmag(filename)
Ni.raw
You can also check the types with
typeof(Ni)
In Julia types are automatically converted when required. I didn't really
take into account that users might want smaller data sizes. So a lot of my
functions probably promote the input to float64. In principle it's not
difficult to keep the data type consistent. So if you encounter other
problems than reading the nifti, I can have a look.
I hope that helps. I'm already at the airport soon flying to OHBM, so this
was written on my phone.
Cheers,
Korbinian
Ashley Stewart @.***> schrieb am Fr., 21. Juni 2024,
08:48:

Hi Korbinian, do you know if it's possible to load and work with NIfTI
images using MriResearchTools with anything smaller than Float64? This is
sometimes an issue on machines with <16 GB memory, especially for
multi-echo phase combination steps with a sufficiently large number of
echoes and when the magnitude is also available and used.
For some NIfTI images, when I load them using nibabel in Python,
nii.header.get_data_dtype().itemsize returns a value such as 8, depending
on the image. However, loadmag and loadphase in MriResearchTools
consistently return a Float64 Array.
—
Reply to this email directly, view it on GitHub
https://github.com/korbinian90/MriResearchTools.jl/issues/28, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJ7HAQSVT3URBMGHYQHKD3ZIPEETAVCNFSM6AAAAABJVJIT7WVHI2DSMVQWIX3LMV43ASLTON2WKOZSGM3DKOBUGQ4TEMQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Hi Korbinian, thanks for the advice! I'll try using what you suggested, and I'll see if I can test and make a pull request to use AbstractFloat without the datatype promotion.


perlPackages.NetAsyncHTTPServer: init at 0.13

Description of changes
This change adds the Net-Async-HTTP-Server CPAN package to nixpkgs. See necessary dependencies for build and runtime in the package's Build.PL file.
Things done
I've tested that the module installs correctly and that I can import it into my local perl project.

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/1702

@ofborg build perl534Packages.NetAsyncHTTPServer


Updated Readme

Are you planning to update Client Side Exploitation ? If yes, please do it, else remove it from ToC.


new maintainer ?

@arthurschreiber @ben-page @pekim
As discussed in this repo's issues and in tedious, this repo isn't being maintained though the functionality is missing from tedious itself.
My company still uses tedious-connection-pool in several projects and we don't wish to rewrite our code to sequelize or mssql.  I would be happy to take over as maintainer for this project and help keep it up to date for its users.

Thanks for the interest. I would be happy for some help. I think many of the tedious projects need help if you are interested.

@ben-page as the discussion over there continues, how about we (I) get this module up to date.

@ben-page @shani117  -- I didn't hear anything back so I've actually had our team migrate us to mssql.  It doesn't seem there is enough commitment to maintain this library - and mssql seems to have some weight behind it.  I'd deprecate this library in mssql's favor.


Cadence Syntax Highlighting

The old documentation site had support for highlighting Cadence code, both for Markdown code blocks and inline-code.
The new developer portal does not properly highlight code blocks, and does not highlight inline-code anymore.
For example, consider https://developers.flow.com/cadence/language/accounts#path-functions:

The code block is not highlighting keywords properly, the fun keyword is not highlighted
The inline code, cadence•fun save<T>(_ value: T, to: StoragePath), should be highlighted as Cadence, but is not. In addition the prefix indicating the programming language is rendered to the user/reader, which is confusing them

The old documentation page had support for both using this plugin, developed by @turbolent: https://github.com/onflow/flow/tree/v0.3.2/docs/plugins/gatsby-remark-vscode-flow

I'm not sure if we can change our syntax highlighter but if we use https://github.com/wooorm/starry-night cadence will be supported (https://github.com/wooorm/starry-night/blob/main/lang/source.cadence.js)

We just need to port the highlighter over to the new one. It uses the same grammar as Starry Night, the TextMate grammar from the VS Code plugin.

@schpet Do you know if there is a way to hook in a markdown AST plugin into the new developer portal?


Export (and other backstage function) gone?

I've been away but looking backstage, I can't find an export function and much other that I was happily using when last here.  Is there a different way to get this done?
/b

Hi Bruce, it's moved. Into the center button of the backstage (left: space, center: tiddlyspace, right: user). All the TiddlyWiki related backstage functionality is now found under the tiddlyspace button.
Does that get you to the right place? If so, please close the ticket.

Thanks for the quick response...but all I see with that button is the "search" and "help" tabs....neither of which includes "export" or the other functions that were previously available..../b

You brucedelagi.tiddlyspace.com space includes the allsaints space. In the allsaints space there is a Backstage tiddler. If you get rid of that and use the default Backstage that is from the tiddlyspace core, things should improve.

Thanks Chris!  I'll check it out...  In the allsaints space there is a Backstage tiddler. If you get rid of that and use the default Backstage that is from the tiddlyspace core, things should improve.

Reply to this email directly or view it on GitHub:
https://github.com/TiddlySpace/tiddlyspace/issues/902#issuecomment-3669976

Removed the Backstage tiddler and all is well....thanks!


global setting - device models are global

add an application setting, device models are global

mentioned in commit f1f32b923584ca05159ab9a67d7ce5e3747ee5ee

marked this issue as related to #27

mentioned in commit 256d6e6c453f9e3d95ccb23074a24c205ee5d703

mentioned in commit abbda7b400d7c06fee5165157d2bf545c00d4bbe

added 1m of time spent


train yout own dataset

hello , i have persian dataset.
can i have train models with this dataset????

Yes, please have a look at https://github.com/k2-fsa/icefall/issues/740
Also, we have a recipe for Arabic. Please see https://github.com/k2-fsa/icefall/tree/master/egs/mgb2/ASR
You can also try the pre-trained models trained with Arabic dataset at
https://huggingface.co/spaces/k2-fsa/automatic-speech-recognition
in your browser without installing anything.


TST: refine Azure fail reports

See upstream discussion and fix; in short, removes Azure susceptibility to reporting success when a SciPy build fails before tests run
https://github.com/numpy/numpy/issues/13452
https://github.com/numpy/numpy/pull/13456

Azure CI should no longer report
success when there are failures
outside of the test suite

Azure CI will still always try
to publish test results, except
when a pipeline is manually cancelled

Ok, approving review from core dev plus the same change was approved in NumPy by two cores dev, one of whom is also on our steering council, so that feels like sufficient justification to self-merge two line change to CI.


Refined Git Backup System and Various Minor Edits

Made edits to content based on suggestions from people in SM discord. Added some optional suggestions for people to sync between computers and to ping commit.bat to taskbar. Integrated git setup with a MUCH easier method.
Please check:
-tooltips/image formatting
-visual guide link works fine (is it fine to use HTML like that in MD? seems fine but just want to verify)
-check the 'Optional: Sync SuperMemo between computers' section. It seems fine to me but I'm not sure if there's something dangerous in the script. I also don't know well enough to explain what the commands do, so if you can add a better explanation of them that would be good.
Only meant to change: credits in root, qs-backup-setup.md, and added images to image folder in contents. Any changes outside of that should be reverted. Not sure why but sometimes my computer decides to mess up other files which has led me to errors like localhost:3000/#/ throwing 404 - Not Found for reasons I can't comprehend

I will proceed to apply some of these changes right now as discussed

PR merged, but some issues are still outstanding (see review)


BUG - Report - Answers Labels on Questions with many answers don't display well

Description: On the live report and PDF, any question that has a quite a few possible answers doesn't show the data is a completely legible way.
Steps to Reproduce:
Open on Edge
Engagements > Action Dropdown [I was looking at Fraser River Tunnel Project]
View Public Report (see it here or) > Export to PDF
Actual Result: Some Answers labels are skipped, which makes it really hard to tally results, report out, especially when we think about the PDF version
Environment: just looked for it in PROD so far
OS: Windows
Device/Model: Lenovo ThinkPad Laptop
Browser (if applicable): Edge
Attachments:

@marieanik + @VineetBala-AOT + @saravanpa-aot - i found a new bug!


Atomic actions for UX and gas

Some actions are dumb that they need to happen one at a time.

move is already unlimited
give - this is only UI problem, contracts support
shoot

consider the dydx Action[] pattern. give the bots max flexibility. makes it slightly more annoying to build the frontend

decided not to implement


Provide nuxt3 support

feat/v3 pushed.
The library works, the docs and demo are just lagging behind, but the routerUI now works in Nuxt3. (The usage is exactly the same, so the v2 docs are fine)
To install it:

npm i "git+https://github.com/richardeschloss/nuxt-router-ui.git#feat/v3"

npm i nuxt-router-ui@next


Checkpoint recovery fails, checkpointing wont save

Resuming from checkpoint pytorch_model
Traceback (most recent call last):
  File "/home/cubeyai/cogvideox-factory/training/cogvideox_text_to_video_lora.py", line 924, in <module>
    main(args)
  File "/home/cubeyai/cogvideox-factory/training/cogvideox_text_to_video_lora.py", line 598, in main
    accelerator.load_state(os.path.join(args.output_dir, path))
  File "/home/cubeyai/cogvideox-factory/vvv/lib/python3.12/site-packages/accelerate/accelerator.py", line 3191, in load_state
    model.load_checkpoint(input_dir, ckpt_id, **load_model_func_kwargs)
  File "/home/cubeyai/cogvideox-factory/vvv/lib/python3.12/site-packages/deepspeed/runtime/engine.py", line 2815, in load_checkpoint
    load_path, client_states = self._load_checkpoint(load_dir,
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/cubeyai/cogvideox-factory/vvv/lib/python3.12/site-packages/deepspeed/runtime/engine.py", line 2865, in _load_checkpoint
    sd_loader = SDLoaderFactory.get_sd_loader(ckpt_list, checkpoint_engine=self.checkpoint_engine)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/cubeyai/cogvideox-factory/vvv/lib/python3.12/site-packages/deepspeed/runtime/state_dict_factory.py", line 43, in get_sd_loader
    return MegatronSDLoader(ckpt_list, version, checkpoint_engine)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/cubeyai/cogvideox-factory/vvv/lib/python3.12/site-packages/deepspeed/runtime/state_dict_factory.py", line 193, in __init__
    super().__init__(ckpt_list, version, checkpoint_engine)
  File "/home/cubeyai/cogvideox-factory/vvv/lib/python3.12/site-packages/deepspeed/runtime/state_dict_factory.py", line 55, in __init__
    self.check_ckpt_list()
  File "/home/cubeyai/cogvideox-factory/vvv/lib/python3.12/site-packages/deepspeed/runtime/state_dict_factory.py", line 168, in check_ckpt_list
    assert len(self.ckpt_list) > 0
           ^^^^^^^^^^^^^^^^^^^^^^^

I had a training I was doing and when I set the checkpointing steps, it seems to fail, giving me only a model_states_00.pt , I tried to --resume_from_checkpoint and was met with this, I did see the note was #potentially but I was hoping to see if there was any hope to save this checkpoint before resorting to starting over.
The original issue with the checkpointing steps;
Steps: 100%|█| 3000/3000 [8:42:31<00:00, 10.17s/it, gradient_norm_after_clip=0, gradient_norm_before_clip=0,[2024-10-13 12:22:42,466] [INFO] [logging.py:96:log_dist] [Rank 0] [Torch] Checkpoint pytorch_model is about to be saved!
[2024-10-13 12:22:47,360] [INFO] [logging.py:96:log_dist] [Rank 0] Saving model checkpoint: ./results3/cogvideox-lora/checkpoint-3000/pytorch_model/mp_rank_00_model_states.pt
[2024-10-13 12:22:47,360] [INFO] [torch_checkpoint_engine.py:21:save] [Torch] Saving ./results3/cogvideox-lora/checkpoint-3000/pytorch_model/mp_rank_00_model_states.pt...
[2024-10-13 12:23:07,579] [INFO] [torch_checkpoint_engine.py:23:save] [Torch] Saved ./results3/cogvideox-lora/checkpoint-3000/pytorch_model/mp_rank_00_model_states.pt.
[2024-10-13 12:23:07,696] [INFO] [torch_checkpoint_engine.py:21:save] [Torch] Saving ./results3/cogvideox-lora/checkpoint-3000/pytorch_model/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt...
[2024-10-13 12:23:08,514] [INFO] [torch_checkpoint_engine.py:23:save] [Torch] Saved ./results3/cogvideox-lora/checkpoint-3000/pytorch_model/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt.
[2024-10-13 12:23:08,524] [INFO] [engine.py:3536:_save_zero_checkpoint] zero checkpoint saved ./results3/cogvideox-lora/checkpoint-3000/pytorch_model/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt
[2024-10-13 12:23:08,524] [INFO] [torch_checkpoint_engine.py:33:commit] [Torch] Checkpoint pytorch_model is ready now!
Traceback (most recent call last):
  File "/home/cubeyai/cogvideox-factory/training/cogvideox_text_to_video_lora.py", line 924, in <module>
    main(args)
  File "/home/cubeyai/cogvideox-factory/training/cogvideox_text_to_video_lora.py", line 755, in main
    accelerator.save_state(save_path)
  File "/home/cubeyai/cogvideox-factory/vvv/lib/python3.12/site-packages/accelerate/accelerator.py", line 3081, in save_state
    hook(self._models, weights, output_dir)
  File "/home/cubeyai/cogvideox-factory/training/cogvideox_text_to_video_lora.py", line 363, in save_model_hook
    raise ValueError(f"unexpected save model: {model.__class__}")
ValueError: unexpected save model: <class 'deepspeed.runtime.engine.DeepSpeedEngine'>

@Cubey42 could you give #38 a try?

Worked great, thank you


Fix export process speed/reliability issues by implementing atomic Solr updates

Export processes are not always fast or reliable and sometimes have issues that have to be fixed or cleaned up later.

Solr item resources have data that comes from two sources: Sierra data, and user-entered data from the inventory app. When each export task to update items runs, the Sierra DB is queried once (so, once per batch of 500 or 1000), and a data structure containing the relevant Sierra items is passed to the export process. That loops through each item and does the following:

Converts the Sierra item record data to Solr item data.
Queries the Solr index (by item ID) to get any existing user-entered inventory app fields from Solr for that item.
Merges the data from these two sources together into a single Solr document, and updates the items in the index.

So whenever an item update runs, it generates an extra Solr query for each item. This causes item updates to run slower than they otherwise could.

The export processes that load multiple types of records at once—like ItemsBibsToSolr and BibsAndAttachedToSolr—are often much slower and can be problematic compared to their counterparts that load one record type (ItemsToSolr and BibsToSolr). In production, the ItemsToSolr process is the one that loads item records, but the BibsAndAttachedToSolr is the one that loads bib records every night. Most of the time there aren’t that many records to sync when the bib record process runs, but whenever someone has done a batch load or a batch record update the previous day, there can be upwards of 100,000 bibs to load. And this can cause problems. It’s also a problem for doing complete reindexes.
More specifically, the problem I’ve seen happen in production is with bib records that have hundreds of attached items, like journals. When the Celery task runs that breaks a larger task out into smaller ones, it’s breaking it up based on the number of base records—so, say, with a BibsAndAttachedToSolr process, the whole batch gets broken into jobs of 1000 bib records. Most bib records are only going to have one or two items attached, so that turns into 2000-3000 records total. But sometimes you’ll get batches of journals that have all been updated since the last record sync, where each individual journal has several hundred items attached. So if you have 1000 bib records, each with 100 items attached, that turns into a single batch of 100,000 records. And when this happens, things break in fun and interesting ways. In one case it completely crashed the Celery worker. (I think the methods used to control scaling go out the window in these instances—there are probably memory issues at play, along with large database queries, which probably cause workers to be killed and timeouts to occur and such.)
The reason this is necessary is because we don’t have a 1-to-1 mapping between Solr docs and Sierra entities—we use some Sierra bib data to derive fields on Solr items and vice versa. For example, on our Solr items we have “parent_title” and “parent_author” fields, which contain the title and author from the parent bib record. (These are there to prevent clients from having to issue an extra request to look them up.) If a bib record is updated but the item record is not updated, then we have to make sure the bib-derived fields on the item record get updated whenever the bib update process runs; the full Solr document has to be rebuilt with each update. This lead to the current implementation, which does a lot of extraneous data loading.

I think that, potentially, all of the above problems could be fixed by using atomic updates in Solr—that is, any given process to update data in Solr would update Solr documents piecemeal instead of rebuilding all related documents every time. If a bib record in Sierra is updated, then the bib document in Solr is updated with the relevant data from that record, and related item documents are updated with the relevant data from the bib record (parent_title, parent_author, etc.). This would prevent it from having to cache all the data from hundreds of related items when updating bib records. Each type of record could be updated independently. (It may require storing some additional data in Solr so that certain operations can be performed at index-time, like determining the correct call number for an item.)
I don't think Haystack or SolrMarc support atomic updates. Issue #2 would remove SolrMarc from our dependencies, and I think we should consider revising export processes to remove reliance on Haystack as well.
Note that pysolr does support issuing atomic Solr updates.

The underlying issues discussed in this ticket no longer apply. PR #44, #45, and #48 have completely fixed the problems. There was no need to implement Solr atomic updates—that was not at all the issue.


lodash: changed _.isEmpty() method

https://lodash.com/docs#isEmpty
https://lodash.com/docs#_ (description of the chainable wrapper)

@chrootsu thanks mate!


Support for PHP7

I know that its a hack, but seems for many peoples it should be helpful to update existing applications to support PHP7

CI2 was discontinued last year, stop using it.


Batched Mode : Issue with Conditional Assignment of Closure With Varying Weight

I might need some help again to actually fix this one.
I've added a test where Ci is set to an emission closure with a varying weight on one side of a conditional, and a uniform weight on the other.  In batched execution with optimization on, this results in corrupted closure pointers.
I've tracked the trigger down to the final case in RuntimeOptimizer::peephole2, which converts from a closure multiplied to a weight to a closure-with-scale constructor.  If I comment out this one optimization, the tests pass, but I don't think the bug is in this function ... as far as I can tell, this optimization is the only way to call the closure-with-scale constructor, so the optimization is probably fine, but something else is failing to handle the closure-with-scale constructor - or the resulting wide closure pointer, where half of it points closures with uniform weights and half points to closures with varying weights?
Checklist:

[x] I have read the contribution guidelines.
[x] I have previously submitted a Contributor License Agreement.
[ ] I have updated the documentation, if applicable.
[x] I have ensured that the change is tested somewhere in the testsuite (adding new test cases if necessary).
[x] My code follows the prevailing code style of this project.

OK, I think I have actually figured out the fix: in batched_llvm_gen, llvm_gen_closure explicitly loops through each lane of the closure pointers, but there didn't seem to be anything to prevent it from running on lanes that aren't part of the mask.  I added a test_mask_lane to the existing branch that checks for null closures, and that was enough to get the test passing ( though definitely make sure that someone who knows this codebase better than I looks at this before merging it ).

Looking at the test example,
if (u > 0.5) {
Ci = u * emission();
} else {
Ci = color(1, 0, 0) * emission();
}
And following the code, I see the underlying I see the underlying  closure_component_allot would get called twice, once for each branch, the resulting wide Ci symbol would have pointers to two different blocks, which I suppose is fine.  Perhaps a bit wasteful, but fine.  Might be worth reviewing who/how that closure memory gets cleaned up/resused.

Excellent find, please add more complex unit tests to more fully exercise complex closure behaviors

I made a very minor correction, replacing rop.ll.constant(lane_index) with merely lane_index as Alex pointed out.
I also tried to understand Alex's comment about checking up on how the memory gets released, and whether having different lanes pointing to different blocks would create issues.  As far as I can tell, closures are just allocated from a SimplePool which never frees any elements, it only has a clear() method to start back at the beginning reusing all memory ... since there is no tracking of individual elements, I don't see any problems arising from pointing to two different blocks ( though it is a little bit inefficient ).

Is this fix likely to make it into an official release soonish? We'd love to include it in the next major version of Gaffer so we can enable batched mode for our OSL-based geometry and image processing nodes. Does anything else need to happen from our side?

The Mac CI failure appears unrelated to these changes, so I'm going to merge.

@johnhaddon Merged now, I will immediately backport to the release branch. I can cut a tagged release soon, but want to get a couple other outstanding PRs merged finalized and merged first.

Actually, I just noticed that it's already the 25th (my how time gets away from us). There's already a release scheduled for Feb 1. @johnhaddon is that adequate, or do you need a tagged release before then?

Thanks for the speedy response @lgritz! Feb 1st will be great for us...


Failed submission due to SubmissionError disabling submit until a Field changes

This seems useful for most cases, but there are some edge cases where you would want to resubmit even though the fields haven't changed.
For example when you have the signup and login forms within the same redux-form component. I manage the change between them through state which determines which handleSubmit function to call on submission.
Is there any way to work around this behaviour or is my approach of managing this through state wrong?

It seems this can be done by dispatching an redux-form/UPDATE_SYNC_ERRORS action when the form tab is changed but it seems hacky. Is there a better way?

That last solution seems to render validate inactive, so it seems that the question stands.

+1
cc @erikras

I've been looking into this a bit more this evening, it looks like when the form fails to submit with the global _error on SubmissionError any subsequent attempts to submit the form won't succeed as valid is never true.
If _error isn't set everything works as expected.

+1
@erikras

I have the exakt same problem at the moment.

It's also wrong bc:

a field can be correct and fail bc a remote server is temporarily offline.
The error field does not necessarily have to be the field with an error. For instance in a login form, we assign a password error to the username field with something like "your username or password is incorrect"

@mschipperheyn

a field can be correct and fail bc a remote server is temporarily offline or there is some kind of networking error.

To be exact, that's not what SubmittionError is for

SubmissionError
A throwable error that is used to return submit validation errors from onSubmit. The purpose being to distinguish promise rejection because of validation errors from promise rejection because of AJAX I/O problems or other server errors.

see also #1898

@jampy but case 2...

The error field does not necessarily have to be the field with an error. For instance in a login form, we assign a password error to the username field with something like "your username or password is incorrect"

...is a totally valid point. We have the exact same problem.

Yeah, I hope this gets resolved quickly. Is there a way for this to be disabled on a per form or per field basis? It's essentially a performance optimization that is now a blocker.

Any update on this @erikras ?
It seems to be that what we need is a way to disable the functionality that a resubmit requires the failing field to be dirtied.

Can you please check with redux-form 6.2.0 or newer? The problem seems to have gone away.

I'll have to double-check, but that issue appears to only refer to _error, and field-specific errors still prevent form submission. This is the real problem, as far as I am concerned.
The issue is the assumption that all field errors returned from the server are something that requires editing the field to resolve. When all the validation occurs server-side, I don't think the client should make assumptions about why a field is invalid and what is required to resolve it.
The main use case is this, where editing one field resolves errors in another field:
{ "field1": "field1 or field2 is required",
"field2": "field1 or field2 is required" }

Or perhaps a field with time-based validation, which could resolve itself without any input change:
{"timefield": "Time must not be in the future"}

@jampy 6.2.0 does not resolve it.
@r-f-j-thomas yes, where my case is a variation of your first one, where
 { "username": "username or password is wrong"}

So, when I change the password, redux-form doesn't remove the error against the username because it's waiting for it to be changed. And thereby prevents resubmission

@mschipperheyn strange - I'm using 6.2.0 and in my async handleSubmit() I have a simple throw new SubmissionError({_error: "whatever"});.
For some reason I can resubmit the form without the need to change any field.

For _error that is true, but the problem is field errors. Change it to throw new SubmissionError({myfield: "whatever"}); and the form won't submit until myfield is edited

So, is there a workaround? Of course, in stead of just removing the error, you want to keep the error (message) but prevent blocking resubmission. I guess this could be a form or field specific property

I'm also stuck in this situation.
If someone changes one field, but you have a form of 30 fields.  It will block resubmission for until EVERY field has been changed.
This is particularly painful when using a form with multiple tabs.

For me, this is becoming a nightmare and a blocker in various scenarios. When is there going to be a fix or a workaround?

It's a blocker for me as well - currently sitting on v5.
I need to try this out when I get a chance, but having a quick look at the code it appears as though persistentSubmitErrors might provide a workaround due to the line if (valid || persistentSubmitErrors) { in handleSubmit.js.
Obviously setting persistentSubmitErrors has other effects, but this may be workable for me.

@erikras could you please leave a sign of life?

Looks like this might be fixed in 6.3.1!

Because this issue saw almost no activity for almost a year, I'm closing it.

This message was created automatically by mail delivery software.
A message that you sent could not be delivered to one or more of its
recipients. This is a temporary error. The following address(es) deferred:
<EMAIL_ADDRESS>Domain biomassiv.es has exceeded the max emails per hour (124/100 (124%)) allowed.  Message will be reattempted later
------- This is a copy of the message, including all the headers. ------
Received: from o8.sgmail.github.com ([<IP_ADDRESS>]:42067)
by chi-server32.websitehostserver.net with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128)
(Exim 4.89)
(envelope-from<EMAIL_ADDRESS>id 1eMinV-002OsJ-AW
for<EMAIL_ADDRESS>Wed, 06 Dec 2017 17:08:13 -0600
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=github.com;
h=from:reply-to:to:cc:in-reply-to:references:subject:mime-version:content-type:content-transfer-encoding:list-id:list-archive:list-post:list-unsubscribe;
s=s20150108; bh=0bpsgvoPJDJq0QU8eGXEGwd4JVY=; b=LFi22XxC9vDYTk7a
9OraIUqeDQTRHTEOst/pHwSGpbERupFTmjPuAiKojIfjEiFMQYcNbgUFZ9wY5BhE
CbUS2tuu54YLe336SddxMid4l1x+GmPutgc82Qcan92sgoqOKWCXNSh8doAE3Yz+
FGjZEUTKubSGye5LlJufJbrx/uY=
Received: by filter0005p1iad2.sendgrid.net with SMTP id filter0005p1iad2-26207-5A287836-4
2017-12-06 23:07:34.121793133 +0000 UTC
Received: from github-smtp2a-ext-cp1-prd.iad.github.net (github-smtp2a-ext-cp1-prd.iad.github.net [<IP_ADDRESS>])
by ismtpd0002p1iad1.sendgrid.net (SG) with ESMTP id 1MS-i7W2QduOgxaTJHOZuw
for<EMAIL_ADDRESS>Wed, 06 Dec 2017 23:07:34.049 +0000 (UTC)
Date: Wed, 06 Dec 2017 23:07:34 +0000 (UTC)
From: Gustavo Henke<EMAIL_ADDRESS>Reply-To: erikras/redux-form<EMAIL_ADDRESS>To: erikras/redux-form<EMAIL_ADDRESS>Cc: Subscribed<EMAIL_ADDRESS>Message-ID<EMAIL_ADDRESS>In-Reply-To<EMAIL_ADDRESS>References<EMAIL_ADDRESS>Subject: Re: [erikras/redux-form] Failed submission due to SubmissionError
disabling submit until a Field changes (#1884)
Mime-Version: 1.0
Content-Type: multipart/alternative;
boundary="--==_mimepart_5a287835e8798_7f7b3fbe062bef2c40061b";
charset=UTF-8
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: gustavohenke
X-GitHub-Recipient: biomassives
X-GitHub-Reason: subscribed
List-ID: erikras/redux-form <redux-form.erikras.github.com>
List-Archive: https://github.com/erikras/redux-form
List-Post<EMAIL_ADDRESS>List-Unsubscribe<EMAIL_ADDRESS>https://github.com/notifications/unsubscribe/AELU4mD1M8sAvsJsoehdWSpJVtBZ7R2nks5s9x41gaJpZM4KJ5L2
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address<EMAIL_ADDRESS>X-SG-EID: ZlaDthyue/4HG+EgTb7JoZYs48JNb2iQtCcPV6oIs9WJgSYuUmRd2cZITZYmYAfPjAs5HbpwTWCwH5
Zx4esOS0KITvrj9worgWVOGNC1QPieITdPmyz1a7GNZxQcp83pD9ajjDjqSfNCX0ZsEn0FDR0InpG/
owkkRetAODUtMeFm/3ecktDziJtsYsy/5aFmUj8bj/fgJKvKxhYVIUgV8BObxE8ltsiwD+79hJCKEV
M=
----==_mimepart_5a287835e8798_7f7b3fbe062bef2c40061b
Content-Type: text/plain;
charset=UTF-8
Content-Transfer-Encoding: 7bit
Because this issue saw almost no activity for almost a year, I'm closing it.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/erikras/redux-form/issues/1884#issuecomment-349805230
----==_mimepart_5a287835e8798_7f7b3fbe062bef2c40061b
Content-Type: text/html;
charset=UTF-8
Content-Transfer-Encoding: 7bit
Because this issue saw almost no activity for almost a year, I'm closing it.
—You are receiving this because you are subscribed to this thread.Reply to this email directly, view it on GitHub, or mute the thread.

----==_mimepart_5a287835e8798_7f7b3fbe062bef2c40061b--

This message was created automatically by mail delivery software.
A message that you sent could not be delivered to one or more of its
recipients. This is a temporary error. The following address(es) deferred:
<EMAIL_ADDRESS>Domain biomassiv.es has exceeded the max emails per hour (123/100 (123%)) allowed.  Message will be reattempted later
------- This is a copy of the message, including all the headers. ------
Received: from github-smtp2-ext4.iad.github.net ([<IP_ADDRESS>]:33751 helo=github-smtp2a-ext-cp1-prd.iad.github.net)
by chi-server32.websitehostserver.net with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256)
(Exim 4.89)
(envelope-from<EMAIL_ADDRESS>id 1eMinU-002Ori-Vs
for<EMAIL_ADDRESS>Wed, 06 Dec 2017 17:08:13 -0600
Date: Wed, 06 Dec 2017 15:07:33 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com;
s=pf2014; t=1512601653;
bh=knb16MgzmnwHpE57c/uzVLEQ0wvtXIOq4NqMWNyMqNY=;
h=From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID:
List-Archive:List-Post:List-Unsubscribe:From;
b=k7cjZO7ERfqXDvxlfO9sf7kkAdy9IoR6MfO23RNJ/qn1eOWKvZ50iELousD+jXt++
bjkh625UI+gaYScByktz2cSZEfa/bSjvoHd6r7ADnqnvyXLxV9ErRdLXkL9qUZHZ00
bNy/eOINOa01A/IGUs1FF+qxR/4pLjK1a0y/1x7s=
From: Gustavo Henke<EMAIL_ADDRESS>Reply-To: erikras/redux-form<EMAIL_ADDRESS>To: erikras/redux-form<EMAIL_ADDRESS>Cc: Subscribed<EMAIL_ADDRESS>Message-ID<EMAIL_ADDRESS>In-Reply-To<EMAIL_ADDRESS>References<EMAIL_ADDRESS>Subject: Re: [erikras/redux-form] Failed submission due to SubmissionError
disabling submit until a Field changes (#1884)
Mime-Version: 1.0
Content-Type: multipart/alternative;
boundary="--==_mimepart_5a2878359ebeb_22663fe634ee2f2811595a";
charset=UTF-8
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: gustavohenke
X-GitHub-Recipient: biomassives
X-GitHub-Reason: subscribed
List-ID: erikras/redux-form <redux-form.erikras.github.com>
List-Archive: https://github.com/erikras/redux-form
List-Post<EMAIL_ADDRESS>List-Unsubscribe<EMAIL_ADDRESS>https://github.com/notifications/unsubscribe/AELU4mD1M8sAvsJsoehdWSpJVtBZ7R2nks5s9x41gaJpZM4KJ5L2
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address<EMAIL_ADDRESS>----==_mimepart_5a2878359ebeb_22663fe634ee2f2811595a
Content-Type: text/plain;
charset=UTF-8
Content-Transfer-Encoding: 7bit
Closed #1884.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/erikras/redux-form/issues/1884#event-1375876498
----==_mimepart_5a2878359ebeb_22663fe634ee2f2811595a
Content-Type: text/html;
charset=UTF-8
Content-Transfer-Encoding: 7bit
Closed #1884.
—You are receiving this because you are subscribed to this thread.Reply to this email directly, view it on GitHub, or mute the thread.

----==_mimepart_5a2878359ebeb_22663fe634ee2f2811595a--


It seams ios also support,please update the support platform and add the support version(such as, system version and outlook version)

i found ios > 14.1 and outlook > 4.61.1, have support this feature.
and another question: i want to confirm is ios 14.0.1 support this feature? after my test, it seams not support, right?

@hello-chenchen Thanks for your query. However, can you clarify which feature you're referring to?
Thanks.

@hello-chenchen Also, can you include the documentation page that you think should be updated?
Thanks.

@ElizabethSamuel-MSFT , right now, outlook ios latest version have support this feature, so it should be update for have support ios, not only android. and i hope there is a table for which min version they are supported this feature.

@hello-chenchen Thanks for your response. However, you talk about "this feature" but can you let us know which feature?
Thanks.

@ElizabethSamuel-MSFT ,sorry it seams i delete the most important thing when report this issue.
this feature.
https://docs.microsoft.com/en-us/office/dev/add-ins/outlook/online-meeting

@hello-chenchen Thanks for the update. We are working on supporting this feature so it may be available but not officially supported yet. I'll check with the feature crew for the status on iOS then update this thread and the documentation as applicable.
Thanks.

@hello-chenchen I checked with the team and we are in the process of rolling out the feature for iOS. Once that process is complete, we'll update the documentation accordingly with supported build info and other details as needed. Unfortunately, I don't have an ETA at this time for when that will be. I'll go ahead and close this but if you have any further questions, let us know and we can reopen it.
Also, we welcome your feedback on the feature so feel free to let us know how it's working for you.
Thanks.


[WIP]-Add support for COMMAND INFO command

-- need to remove readme's last line.
-- will work now xD

Please turn this PR into a draft while you work on it, and mark it ready for review once you are done.

@shashankdaima please turn this PR into draft. No need to raise PR unless you are ready with the changes.

Hi @shashankdaima, I was wondering if you were still working on this PR?

@JyotinderSingh
Unfortunately, I have a change of plan. feel free to contribute to this issue. I have got some work in other OSS project. Sorry, wasn't able to reply earlier.


Show "duplicates in lockfile" without --verbose

It is possible to get duplicate pacakges after a merge, so it make
sense to print a little bit more details by defaults than just
"failed to parse a lockfile".

r? @alexcrichton
(rust_highfive has picked a reviewer for you, use r? to override)

@bors: r+

:pushpin: Commit ddb9cedf32cf253b31f3d32ce15a1037a9a2412c has been approved by alexcrichton

:hourglass: Testing commit ddb9cedf32cf253b31f3d32ce15a1037a9a2412c with merge f4fd347faa29276757a2ffaed289334899ddec3d...

:sunny: Test successful - status-appveyor, status-travis
Approved by: alexcrichton
Pushing f4fd347faa29276757a2ffaed289334899ddec3d to master...


User.new.invite! skips validations

In my Devise initializer, I have config.validate_on_invite set to true. So I'd expect validations are always run when I invite a user.
So far, I've only been inviting using User.invite!. But in this instance, I want to build a User instance before inviting them, and not invite them if they're not valid. However, when I tried to use User#invite!, it saved a new User that would otherwise fail validations.
> User.invite!(email: 'hello@world.com').persisted? # name is also a required field on User, so this User would not be valid
  User Load (0.5ms)  SELECT "users".* FROM "users" WHERE "users"."email" = $1 ORDER BY "users"."id" ASC LIMIT $2  [["email"<EMAIL_ADDRESS>["LIMIT", 1]]
  User Exists? (0.3ms)  SELECT 1 AS one FROM "users" WHERE "users"."email" = $1 LIMIT $2  [["email"<EMAIL_ADDRESS>["LIMIT", 1]]
false
> User.new.tap { |u| u.invite! }.persisted? # This user is missing all required attributes, so they're definitely not valid
... # returns ActionMailer message sent as invite, hence `tap`
true

I understand that those docs say that method should be used after creation, but I would expect them to work after building the object (before persistence) too.

validate_on_invite is called when you use class method, it prevents calling instance method. If you use User.new and invite! instance method you can check if resource is valid, no need to use setting for that:
User.new.tap { |u| u.invite! if u.valid? }.persisted?

I'm not sure this issue should have been closed. I know that it's possible that way, but the better thing to do would be to have the method respect DeviseInvitable's settings, so as to make it more intuitive. I may be able to open a PR to make this change.

Class method is recommended way, if you want to do something before invitation is sent you can use block:
User.invite!(email<EMAIL_ADDRESS>{ |u| ... }.persisted?

If you want to use instance method instead, and want instance method to honor validate_on_invite setting, you can send PR, and I will check it doesn't break current behaviour, but I don't think it's worth it. I think settings are useful to change behaviour with provided controllers, if you are writting your own code, I don't think validate_on_invite setting is very useful, I think it's even more readable u.invite! if u.valid?


Add a hardware definition project for the MicroZed board

Description
Add a hardware definition project for the MicroZed board to the existng Zynq ZC702 project.
Add a text file that describes how to switch the Zynq project form the ZC702 hardware to the MicroZed hardware.
Test Steps
No functional changes.
Related Issue
None
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/bot run checks

/bot run unit-tests

/bot run checks

/bot run checks

/bot run unit-tests

/bot run unit-tests


Add param for pinVisibility

I want to be able to change pin (floating reversed droplet) visibility in XML and or dynamically during runtime.
I think when using topTickLabels and bottomTickLabels there is no need for this pin.

#164


AntiSpam Module

Hello,
Could you please describe how the antispam works.
Because I try to activate akismet and nothing happened.
Also is it possible to enable reCaptcha
Thanks in advance
Emmanuel

I would assume you simply put your Askimet API key in the box and click save


0.9.12: "-opengl" not supported anymore

Hi there,
CARLA version: 0.9.12
Platform/OS: Unbuntu 18.04
Problem you have experienced:
"./CarlaUE4.sh -opengl"
Shuts down right away with a message "Warning: OpenGL is no longer supported for desktop platforms. Vulkan will be used instead.", which is fine if you want the windowed mode but it crashes if you use it in hthe headless mode like:
"SDL_VIDEODRIVER=offscreen ./CarlaUE4.sh -opengl"
Because Vulkan dies.
What you expected to happen:
"SDL_VIDEODRIVER=offscreen ./CarlaUE4.sh -opengl" was always used to start headless / in the background without a spectator window. Is there an updated way how to do this?
Steps to reproduce:
"./CarlaUE4.sh -opengl"
and
"SDL_VIDEODRIVER=offscreen ./CarlaUE4.sh -opengl"
Thanks for your help!

Epic deprecated 'desktop' OpenGL in UnrealEngine 4.23 and disabled it in UE 4.26, this is an upstream UnrealEngine thing, unfortunately.
I tried SDL_VIDEODRIVER=offscreen CARLA_0.9.12/CarlaUE4.sh -game -opengl -featureleveles31, per the UE 4.26 documentation to force mobile rendering on desktop, but it exited immediately without meaningful error.

@bernatx could you comment on this

Hi, with the upgrade to UE 4.26 opengl has been deprecated, so only vulkan. You can use -vulkan as a flag, or nothing.

Also, to run headless, you need to unset the variable SDL_VIDEODRIVER from the environment. At least for us, other definitions of the variable were not working.


UI glitch in the slider

We found that the number 10 might not fit

Hi @soniccat, again sorry for the long delay. Wasn't able to replicate this with the latest version. Are you still having this issue?

Hi @soniccat, I'm closing this issue also since we believe this has been fixed in the latest versions. If you're still having this issue, please contact us know and we'll look over it.
Thanks!


site won't load on mobile data connection (lte, 3g, etc)...wifi works just fine

hi folks -- i'm running in to a very strange issue, but it's a grav issue, so i'm posting here to see if anyone has any tips.
my grav site loads with weird symbols ONLY when the device is on mobile data (lte or 3g, screenshot below).
it works just fine on wifi. the issue appears across devices (tested across multiple phones with multiple data connections & even a laptop tethered to mobile connection where the site works fine on wifi). it also happens across browsers so it's not cache/specific to the browser.
the site is set up in a sub-folder of my root site. that root site works fine across wifi and mobile data. but this grav site set up in the sub-folder does not!
i tried un-commenting some of the Exploits lines in the .htaccess file (1 by one, until all were disabled) but none of that worked.
any ideas what it could be? i'm assuming it's not dns, and i'm assuming it's a server-configuration issue because the site works just fine otherwise!

try this: https://blog.stackpath.com/accept-encoding-vary-important

@andrewd72 thanks for the tip...didn't work. i tried with/without the match condition (using apache), and i cleared grav cache too.
not using any cdns. i think caching is set to off anyway because of my form setup.

look at the gzip setting in the grav config. I had this when I started out, can't remember exactly.  THANK YOU!!!!!!!!!
i turned on gzip compression and it worked like a charm.

No problem, you might find the first bit you tried fixes a related w3c error.


Feature Request: Extract Text from PowerPoint Files

I would like to request the addition of a feature that allows the application to extract text from PowerPoint files (.ppt and .pptx), in addition to the existing PDF functionality.

Hi, I can help with this! I've already cloned the repo and made some improvements to accept file paths from cli arguments or through user prompts (instead of the hard coded "file_path").
For .ppt support, we have two possible approaches:

Try reading the .ppt file directly using python-pptx, and if it fails then prompt the user to convert it to .pptx
Add automatic file conversion functionality (though this would require os specific handling like ms office on windows, libre office on linux and blah blah)

I plan to implement the first approach using python-pptx since it's simpler and more portable across different operating systems. Would you like me to proceed with it?

Got it to work with ppt:

However there's one little problem with it, i used unoconv (on linux) which is depreciated and i don't wanna install unoserver (its successor)... so im trying to implement an auto converter (which tries using:

unoserver at first
then unoconv
and directly libreoffice on linux/mac
if all fails then shows the error asking to install them or manually convert the ppt)

as for windows it would require powerpoint for conversion...

Thank you! Please go ahead with this approach

Alright, I'll clean up the code and send the pr in few hrs.


ISO/IEC 18092?

Hello,
Do you have any info on how to advance this library to read ISO/IEC 18092 tags (with CLRC663) ?

I do not, isn't this a duplicate of #17 ?


Resizing main image in Docs > Components > Thumbnails

Reducing from 230 wide to 228 so that it flows correctly.

Resolved this just before you submitted the pull request. Thanks!


Problems with unit testing when the file imports another ts file that references $ to import GM_API

Hi there,
Trying to unit test some methods inside the project that builds a tampermonkey script with react (react-ts config option)
I have teh default settings
		react(), 		monkey({ 			clientAlias: "$", 			server: { 				mountGmApi: true, 			},
And it correctly builds and executes, but when trying to unit test with jester, it complains about the $ not being found:
`  ● Test suite failed to run
Cannot find module '$' from 'src/common/Storage.tsx'

Require stack:
  src/common/Storage.tsx
  src/common/utils.tsx
  src/connectors/jira/actions/basic/Connection.tsx
  src/connectors/jira/actions/behavior/IssueLinker.tsx
  src/connectors/jira/actions/basic/DataFromResponse.tsx
  src/connectors/jira/actions/basic/LabelManagement.tsx
  test/connectors/jira/JiraResponseParsers.spec.ts

  1 | import { AUTH_TOKEN_NAMES, SCRIPT_IDENTIFIER } from "./ConfigConstants";
> 2 | import { GM_getValue, GM_setValue } from "$";
    | ^

`
Any idea if it is something missing from my config or from jest config to make it possible? Any guidance on how to unit test the react-ts project in a better way?
Thanks.
PS: BTW your project is amazing, it makes tampermonkey scripting a dream and enables creating complex scripts in a structured and sensible way, so thanks!! ^.^

when vite serve, $ is vite-plugin-monkey/dist/client
https://github.com/lisonge/vite-plugin-monkey/blob/133f6cc393c3785b28a0391c927ea0bae971ea0a/packages/vite-plugin-monkey/src/client/index.ts#L1-L174
when vite build, $ is vite-plugin-monkey/src/native, and  vite-plugin-monkey/dist/client is still work but vite-plugin-monkey/src/native is better
https://github.com/lisonge/vite-plugin-monkey/blob/133f6cc393c3785b28a0391c927ea0bae971ea0a/packages/vite-plugin-monkey/src/native/index.ts#L1-L31

Any idea if it is something missing from my config or from jest config to make it possible? Any guidance on how to unit test the react-ts project in a better way?

maybe it works
import type { Config } from 'jest';
import module from 'node:module';

export default <Config>{
  moduleNameMapper: {
    '^\\$$': module
      .createRequire(import.meta.url)
      .resolve('vite-plugin-monkey/dist/client'),
  },
};

Sorry for the late response, I ended up fixing it by using vitest instead of jester, much simpler setup and it does handle the globals with a bit more grace than jester. Thanks anyway :)


Updated/fixed russian translation

I can't merge this automatically, since I already squashed and merged the first three commits. It's only the last commit (d276ef6) that has new changes.

either you can squash these commits and rebase on top of upstream master
or I can just cherry-pick d276ef6

I merged all commits again. Please base any future Pull Requests off of fontlibrary:master.


gerbv: pull fix pending upstream inclusion for -fno-common toolchains

Without the change build fails on upstream gcc-10 as:
ld: interface.o:/build/gerbv/src/callbacks.h:50: multiple definition of
  `toggle_layer'; callbacks.o:/build/gerbv/src/callbacks.h:50: first defined here
ld: interface.o:/build/gerbv/src/callbacks.h:44: multiple definition of
  `CALLBACKS_SAVE_FILE_TYPE'; callbacks.o:/build/gerbv/src/callbacks.h:44: first defined here
ld: render.o:/build/gerbv/src/callbacks.h:44: multiple definition of
  `CALLBACKS_SAVE_FILE_TYPE'; callbacks.o:/build/gerbv/src/callbacks.h:44: first defined here

Description of changes

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 173021 run on x86_64-linux 1

2 packages built:

gerbv
pcb2gcode


linq lambda expression

I'm sure this page must have linq lambda variant too.

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

ID: fe1acf84-126c-f01d-b39a-ab077819351f
Version Independent ID: 5d3bdd6d-ad0e-e306-5aef-0d5adea892b6
Content: Complex Query Operators - EF Core
Content Source: entity-framework/core/querying/complex-query-operators.md
Product: entity-framework
Technology: entity-framework-core
GitHub Login: @smitpatel
Microsoft Alias: avickers

@yulObraz We discussed this again, but we don't believe the method-call syntax are very understandable for these types of queries. For example, the first two would look like this:
var query = context.Set<PersonPhoto>()
    .Join(
        context.Set<Person>(),
        photo => photo.PersonPhotoId,
        person => person.PhotoId,
        (photo, person) => new { person, photo });

var query = context.Set<PersonPhoto>()
    .Join(
        context.Set<Person>(),
        photo => new
        {
            Id = (int?)photo.PersonPhotoId,
            Caption = photo.Caption
        },
        person => new
        {
            Id = person.PhotoId,
            Caption = "SN"
        },
        (photo, person) => new { person, photo });

Since this page is about explaining concepts, we believe this is communicated better with the current syntax. A good IDE will be able to automatically refactor between the two syntax forms, if you need that.

I prefer lambda syntax.
I had experience with EF 6 before. But I have big difficulties in EF Core joins because it was unexpected that I must use result parameter. So I received different issues with not working includes and so on. Query without result parameter sometimes goes without problems. But sometimes with failures. So the syntax must be mentioned somewhere.


Remove Bundler v1 Deprecation and Unsupported Feature Flags and Deactivate Bundler v1 CI Tests

What are you trying to accomplish?
This PR removes the feature flags associated with the deprecation and unsupported status of Bundler v1 and deactivates Bundler v1 CI tests. With these changes, our CI pipeline focuses exclusively on Bundler v2 as the primary supported version. This is part of a gradual approach to phasing out Bundler v1 without immediately removing its code, helping to simplify the test suite by prioritizing Bundler v2.
Anything you want to highlight for special attention from reviewers?
This PR deactivates Bundler v1 CI tests and removes related feature flags, but it does not remove Bundler v1 code. This helps maintain a stable test environment with Bundler v2 set as the default in CI while marking Bundler v1 as inactive.
How will you know you've accomplished your goal?

Confirm that all Bundler v1 CI tests are disabled.
Ensure that the removal of Bundler v1 deprecation and unsupported feature flags is complete.
Verify that the CI pipeline now runs exclusively with Bundler v2, with no impact on test performance or coverage.

Checklist

[x] I have run the complete test suite to ensure all tests and linters pass.
[x] I have thoroughly tested my code changes to ensure they work as expected, including adding additional tests for new functionality.
[x] I have written clear and descriptive commit messages.
[x] I have provided a detailed description of the changes in the pull request, including the problem it addresses, how it fixes the problem, and any relevant details about the implementation.
[x] I have ensured that the code is well-documented and easy to understand.

easier to review now t

Thanks for the review.


fix raw option in morph_stat

When raw option is used, it crashed because np.raw does not exist.

I'm adding the raw key in test for coverage

@asanin-epfl , why not .tolist?

@arnaudon and why .tolist ?

We are waiting for @arnaudon coverage tests on 'raw' mode.

here you are

I don't know how to fix coverage...

ok, I will fix the coverage

Codecov Report

Merging #964 (1cd1f17) into master (f699975) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##            master      #964   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           36        36
  Lines         2136      2138    +2
=========================================
+ Hits          2136      2138    +2

Thank you!

do you need a release?x

no, it's fine! I just noticed when I was trying something locally, don't bother!


Change to default navigation menu

This change allow you to use the default navigation menu for all ghost > 0.5.9

Hi, can you please undo your commit to README so that I can merge your work into the repo?

Undo this pull request, I have change a lots of things on this theme, I'm going to fork again your repo and I will pull only the change to the navigation menu. OK?

I'm going to tag my version and I'm going to revert all changes to allow you to merge.

Perfect, thanks :smile:

It's done, you can merge. Say me if it's Ok for you..


Deoplete Config

The configuration for deoplete keyword_pattern in the readme is out of date.
rather than

let g:deoplete#keyword_patterns = {}
let g:deoplete#keyword_patterns.clojure =<EMAIL_ADDRESS>
it should be:

call deoplete#custom#option('keyword_patterns', {'clojure'<EMAIL_ADDRESS>

Thanks for pointing this out, I've corrected it on develop.


syncShutdownGracefully BUG DETECTED in deinit()

So I have implemented a controller  as a framework, and try to test it in a sample app, mostly using RequestResponseHandler in nio-extra. I'm seeing BUG Detected log in syncShutdownGracefully(), and I'm not sure if it's really a bug or my mistake.
in sample app AppDelegate.swift
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // Override point for customization after application launch.
        let drone = Drone(port: 5559)
        var r = drone.droneSyncCommand(cmd: "ready?")
        print(r)  // "ok"
        drone.droneAsyncCommand(cmd: "takeoff", successHandler: { state in
            print("takeoff:", state ?? "")  // "takeoff: ok"
            sleep(2)
            drone.droneAsyncCommand(cmd: "land", successHandler: { state in
                print("land:", state ?? "")  // not called?
            }, failureHandler: nil)
        }, failureHandler: nil)
        return true
    }

in controller class:
public class Controller
    deinit {
        print("-FREE-")
        channel.close(mode: .all, promise: nil)
        try! group.syncShutdownGracefully()
    }

    public init(localAddr: String, localPort: Int) {
        self.localAddr = localAddr
        self.localPort = localPort
        group = MultiThreadedEventLoopGroup(numberOfThreads: System.coreCount)
        bootstrap = DatagramBootstrap(group: group)
            .channelOption(ChannelOptions.socket(SocketOptionLevel(SOL_SOCKET), SO_REUSEADDR), value: 1)
            .channelInitializer({ channel in
                channel.pipeline.addHandler(RequestResponseHandler<CommandRequest, CommandResponse>())
            })
        channel = try! bootstrap.bind(host: localAddr, port: localPort).wait()
    }
}

full trace log:
ok
takeoff: ok
-FREE-
Fatal error: BUG DETECTED: syncShutdownGracefully() must not be called when on an EventLoop.
Calling syncShutdownGracefully() on any EventLoop can lead to deadlocks.
Current eventLoop: SelectableEventLoop { selector = Selector { descriptor = 4 }, scheduledTasks = PriorityQueue(count: 0): [ScheduledTask(readyTime:<PHONE_NUMBER>659)] }: file .../SourcePackages/checkouts/swift-nio/Sources/NIO/EventLoop.swift, line 1032
2019-11-21 20:53:33.107642+0800 TelloSwiftController[20772:143746] Fatal error: BUG DETECTED: syncShutdownGracefully() must not be called when on an EventLoop.
Calling syncShutdownGracefully() on any EventLoop can lead to deadlocks.
Current eventLoop: SelectableEventLoop { selector = Selector { descriptor = 4 }, scheduledTasks = PriorityQueue(count: 0): [ScheduledTask(readyTime:<PHONE_NUMBER>659)] }: file .../SourcePackages/checkouts/swift-nio/Sources/NIO/EventLoop.swift, line 1032

from the trace, it seems:

the deinit() is called once, but the syncShutdownGracefully log has printed twice, with the second one has a timestamp;
it seems that the land command has executed, as I saw the drone with my eyes has landed correctly, but the log "land: ok" is never printed.
I'm not sure if I made an obvious mistake, but isn't my drone ojbect being retained by the two nested closures? So it should not be a use-after-free case? But from the log, it seems so, as the "-FREE" kicked in and the "land: ok" is never printed
mixing up the issue with syncShutdownGracefully(), is this really a bug? Or shouldn't I call it in deinit()?
do I need to call channel.close(), or syncShutdownGracefully() can cleanup everything related?

Thanks for help!

You must not call EventLoopGroup.syncShutdownGracefully from within a deinit. The reason or that is that syncShutdownGracefully will block whatever thread it is called on, and if deinit is invoked on an event loop thread then you are blocking a thread we are trying to close.
You should only call syncShutdownGracefully when your application does not need those event loops anymore. This is usually when it is moving to the background. Make sure you call this on the main thread in one of your AppDelegate or SceneDelegate functions.
For channel.close(), you should call that only when you don't need the channel anymore. That's a matter for your application architecture.
Your drone object is only being retained by one closure. Here is the code:
        drone.droneAsyncCommand(cmd: "takeoff", successHandler: { state in
            print("takeoff:", state ?? "")  // "takeoff: ok"
            sleep(2)
            drone.droneAsyncCommand(cmd: "land", successHandler: { state in
                print("land:", state ?? "")  // not called?
            }, failureHandler: nil)
        }, failureHandler: nil)

The first successHandler retains drone, as it needs to call drone.droneAsyncCommand, but the second successHandler does not call any functions on drone and so does not retain it.

Hi @Lukasa then in my case, since we usually create a drone object to play with, so we want to close the channel or shutdown the event loop only when we don't need the drone anymore, which means when the user kills the app, or crash, or into the background.
my question is, theoratically, can we not to call channel.close() or syncShutdownGracefully()? In other terms, if we don't call them, just let the app or iOS handle the drone deinit, and when app process is killed, can channel and event loop resources be released by iOS?
The reason is that, with my second droneAsyncCommand with 'land' cmd, I still want

print("land:", state ?? "")

being called, the successHandler here is an escaping closure, so even drone object get deallocated, the channel could still be alive and fulfill the future, but now the drone object is gone, so I don't have the chance to close the channel and shutdown  the event group (we could retain drone here, but let's use this special the case, though maybe a bad design).

besides, why should we only call syncShutdownGracefully() in main queue?

besides, what you mentioned

The reason or that is that syncShutdownGracefully will block whatever thread it is called on, and if deinit is invoked on an event loop thread then you are blocking a thread we are trying to close.

why main queue is fine then? shouldn't it be a dead lock if it blocks the main queue?

my question is, theoratically, can we not to call channel.close() or syncShutdownGracefully()?

No, you must call them.

In other terms, if we don't call them, just let the app or iOS handle the drone deinit, what would happen to the channel and event group resource?

They will be leaked, and you will leak the threads and any associated file descriptors. These will eventually be cleaned up when the application is terminated, but if it is only suspended then they will simply be leaked.

When app process is killed, can channel and event loop resources be released by iOS?

If the app is truly killed then yes, the OS will reap the resources. However, if your app is merely suspended that is no longer guaranteed.

but now the drone object is gone, so I don't have the chance to close the channel and shutdown the event group

Right. You are responsible for ensuring you are able to clean up these resources, so you must arrange for that callback to be able to shut down the resources.

why main queue is fine then? shouldn't it be a dead lock if it blocks the main queue?

There should be no deadlock here: so long as nothing is blocking the event loop shutdown, then the event loop shutdown will complete. If you are very worried about blocking the main queue you can start up another dispatch queue to run the shutdown, but you will then struggle to wait for that shutdown.

@Lukasa I have done some experiments and tests today. BTW, my goal is to make this Drone class in a SDK framework to use in the app.
I'm not sure if it's a bug or my mistake during shutdown the group:
class Drone {
    public func destroy() {
       self.channel.close(.all, promise: nil)
       try! self.eventGroup.syncShutdownGracefully()
}
class AppDelegate: UIResponder, UIApplicationDelegate {

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // Override point for customization after application launch.
        let tello = Drone(port: 5559)
        tello.telloAddress = "<IP_ADDRESS>"
        tello.telloAsyncCommand(cmd: "takeoff", successHandler: {state in
            print("takeoff:", state ?? "")
            sleep(2)
            tello.telloAsyncCommand(cmd: "land", successHandler: {state in
                print("land:", state ?? "")
                DispatchQueue.main.sync {
                    tello.destroy()
                }
            }, failureHandler: nil)
        }, failureHandler: nil)
        return true
    }

particually in
            tello.telloAsyncCommand(cmd: "land", successHandler: {state in
                print("land:", state ?? "")
                DispatchQueue.main.sync {
                    tello.destroy()
                }
            }, failureHandler: nil)

(I'm just testing the DispatchQueue.main.sync{} and DispatchQueue.main.async{} behaviour here)
in the DispatchQueue.main.sync {}, the tello/Drone object seems never getting released, and when I pause the app process, my sample app seems being blocked on main queue:

it seems the configuration.wait() blocks the main queue? so syncShutdownGracefully() never returned.
well if I use main.async{}, the issue is gone then. So either I shouldn't put in main.sync{}, or this is a bug? Or, I should look at other options like shutdownGracefully(callback)?


Add a contributors badge to README

Sorry for removing the template, I cannot read it 😿
This is a demo Hacktoberfest pull request

@oleg-nenashev Thanks for your contribution!


Quart 0.19.3 support

The latest version of Quart has some breaking changes. This addresses the ones I have run into so far.

Fixes #12

Thank you - I've also been working on this and have just pushed 4c59acfb5f7dc8782498424aec27f6a25fdd7cee. I normally like to merge PRs then continue after, but in this case I had made more progress.


Patch 2

added a missing #

Hi, @cookiekrieger! Could you close this pull request and make a cleaner one?


dihydrofolic acid binding

def: Interacting selectively with dihydrofolic acid, an
eterocyclic compound involved in the metabolism of
nucleotides.
is-a: GO:0005488 ! binding
Reported by: lenov
Original Ticket: "geneontology/ontology-requests/3126":https://sourceforge.net/p/geneontology/ontology-requests/3126

thanks www.movied.org


Error of index of list when num_levels equals output_level

Hello,
Thank you very much for your code, which is very clear and helpful !  I have tried your code for optical flow estimation and got good result, but the problem occured when I want to train my own model: I have set parameter 'num_levels' = 6 and 'output_level' = 6, in this case, the length of pyramid is 7( 6 features + 1 image ) but of_estimator is only 6. I would like to know why the image is added in the end of pyramid which seems not be used in the later processing ? Thank you very much for your attention.
Yours sincerely,
Jinglei SHI

Thanks for the kind report!
I think there are two ways to solve the error.
First, limiting the parameter 'ouput_level' < 'num_levels' will easily solve the error. In this case, appending original images to the end of pyramids has no mean.
Another way is building num_levels+1 (= length of the pyramid) modules (of_estimator and context_net). In this case, we can use original image added in the last of the pyramid as a feature with the largest resolution.
I will fix my code along the first idea and remove original image from the pyramid. Thanks! :-)

Hello,
Thank you very much for the fast response, could you please tell me how much time you have used to train your model (output level = 4, num level = 6)? Because I am thinking to estimate the training time for my future work. Thank you for your attention and comprehension. :-)
Yours sincerely,
Jinglei SHI

Welcome.
On the GPU (Tesla V100) in my lab and by the default training setting, forward-backward of single data batch (4 pairs of input images) takes 0.15-20 seconds, single epoch (including forward-backward and evaluation) takes about 1 minute, so the learned model ('./model_epoch/model_3007.ckpt') was trained for about 3 days. The time measurement argument is now added into code.
And,

When activating batch-normalization, it may be good to add 'isTraining' argument into '_conv_block' module. But in addition, the official implementation seems not to use batch-normalization.
Each flow at a different level has a different scale, and I think it is good to prepare context net separately in order to deal with each scale effectively (than reuse single context net).

@daigo0927  and @JingleiSHI
Thank you for this PWC_Net implemented in Tensorflow.
Kindly i would like your help on the following issues;

What are the procedure for training custom data set, (Do i need only images without optical flow ground truth  or images and optical flow ground truth ).

On testing, i get the images of opticaflow which are on the pdf, how can i get only the optical (last optical image and save it for further work).

The testing consider only two frame, is there a suggestion/means to work on more than one frame extracted from video (arranged in ascending order ) and generate its corresponding  opticalflow for all n-1 frames.

Answered here, please check it out.


onRangeChange is called twice from handleDrillDown

Do you want to request a feature or report a bug?
bug
What's the current behavior?
handleDrillDown calls onRangeChange twice when you click on day header in Month View, first with 'day'" as view argument and secondly with undefined.
It happens because onRangeChange will be called firstly from this line
if (view) this.handleViewChange(view)
Secondly from this line
this.handleNavigate(navigate.DATE, date)
Full method source code here
What's the expected behavior?
onRangeChange should be called only once with correct view argument

Hi,
I've come across this issue as well. Is there any workaround?

Hey, came across this bug in 2020. The solution I ended up choosing was to use the calendar in a controlled manner, and using the onDrillDown prop. to change the view/date manually in my component scope.
this exits the handleDrillDown method early, and avoids hitting the code below that causes the duplicate calls to onRangeChange
handleDrillDown = (date, view) => {
    const { onDrillDown } = this.props
    if (onDrillDown) {
      onDrillDown(date, view, this.drilldownView)
      return
    }
    if (view) this.handleViewChange(view)

    this.handleNavigate(navigate.DATE, date)
  }


Support entity tag migration

Summary
Add support to copy mutable entity tags between subaccounts.
Desired Behavior
Given a list of entities, capture the mutable tags in the source account and apply the same tags to entities with the same name in the target account.
Possible Solution
Use NerdGraph to capture the current tags for an entity in the source account, determine which should be copied, and then use NerdGraph to apply those tags to entities with the same name in the target account.
Additional context
This can also be used to replace the current label -> tag logic for Synthetic monitors.

This logic was added with https://github.com/newrelic-experimental/nr-account-migration/pull/15


Add a cloudwatch surfacer

This PR adds cloudwatch surfacer support for cloudprober.

This is deployed onto AWS ECS and working with the following config:
probe {
  name: "grafana_homepage"
  type: HTTP
  targets {
    host_names: "redacted"
  }
  http_probe: {
    protocol: HTTPS
  }
  interval_msec: 30000
  timeout_msec: 3000

  validator {
    name: "status_code_2xx"
    http_validator {
        success_status_codes: "200-399"
    }
  }

  latency_unit: "ms"
  latency_distribution {
    explicit_buckets: "10,20,40,80,160,320"
  }
}

probe {
  name: "grafana_homepage_https_redirect"
  type: HTTP
  targets {
    host_names: "redacted"
  }
  http_probe: {
    protocol: HTTP
  }
  interval_msec: 30000
  timeout_msec: 3000

  validator {
    name: "status_code_2xx"
    http_validator {
        success_status_codes: "200-399"
    }
  }
}

probe {
  name: "grafana_status"
  type: HTTP
  targets {
    host_names: "redacted"
  }
  http_probe: {
    protocol: HTTPS
    relative_url: "/api/health"
  }
  interval_msec: 30000
  timeout_msec: 3000

  validator {
    name: "status_code_2xx"
    http_validator {
        success_status_codes: "200-399"
    }
  }
}

probe {
  name: "grafana_metrics_dashboard"
  type: HTTP
  targets {
    host_names: "redacted"
  }
  http_probe: {
    protocol: HTTPS
    relative_url: "/d/Iwkba85Mk/grafana-metrics"
  }
  interval_msec: 30000
  timeout_msec: 3000

  validator {
    name: "status_code_2xx"
    http_validator {
        success_status_codes: "200-399"
    }
  }
}

probe {
  name: "grafana_login"
  type: HTTP
  targets {
    host_names: "redacted"
  }
  http_probe: {
    protocol: HTTPS
    relative_url: "/login"
  }
  interval_msec: 30000
  timeout_msec: 3000

  validator {
    name: "status_code_2xx"
    http_validator {
        success_status_codes: "200-399"
    }
  }
}

surfacer {
  type: CLOUDWATCH

  cloudwatch_surfacer {
    namespace: "/cloudprober/grafana"
  }
}

Using this IAM policy attached to the task role:
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Condition": {
                "StringEqualsIgnoreCase": {
                    "cloudwatch:namespace": "/cloudprober/grafana"
                }
            },
            "Action": [
                "cloudwatch:PutMetricData"
            ],
            "Resource": [
                "*"
            ],
            "Effect": "Allow",
            "Sid": "PutMetrics"
        }
    ]
}

@robpickerill Thanks a lot for this contribution. I'll try to review it soon -- I am out of office half of this week, so it may get pushed to next week.

Hey Manu

Thanks once again for this. Sorry for the delay in reviewing. I've added some comments. Please take a look.

No problems at all. I appreciate the feedback here. Let me work through the comments, and let you know when they are complete.
Thanks again.

Manu, I've been resolving the comments so I can see which comments are still outstanding - if I've missed anything please feel free to unresolve.

@robpickerill Importing this PR through #587.
Documentation changes are not pushed through the import-export method. They can be committed directly. Can you please send another PR, containing just the documentation changes?

Thanks for all your assistance here Manu, very much appreciated.

Can you please send another PR, containing just the documentation changes?

Let me wrap this up today and we can close down this PR, let me also put the items we discussed on regex's into issues for tracking, then this PR is good to close, and I'll work on datadog.
Thanks again!

closing for https://github.com/google/cloudprober/pull/587


Improved stylelint rules

Added

CHANGELOG

Changed

fixed initial semver
updated stylelint rules and dependencies
updated README.md with information about versioning and release process

@ThePeach I've added my review comments (apologies for the loooong delay!). Just a few minor things. Great work otherwise.
Thanks for documenting the release process! It reminded me: In due course we could look at automating some of that stuff - in the past I've used gulp-bump to simplify updating the version info in package.json and other files.


[Introspection] Error: [libs\sql-schema-describer\src\mysql.rs:351:34] non_unique

Command: prisma introspect
Version: 2.6.2
Binary Version: 6a8054bb549e4cc23f157b0010cb2e95cb2637fb
Report: https://prisma-errors.netlify.app/report/11189
OS: x64 win32 10.0.19042
JS Stacktrace:
Error: [libs\sql-schema-describer\src\mysql.rs:351:34] non_unique
    at IntrospectionEngine.<anonymous> (C:\temp\...\...\node_modules\@prisma\cli\build\index.js:2:1828886)
    at Generator.throw (<anonymous>)
    at rejected (C:\temp\...\...\node_modules\@prisma\cli\build\index.js:2:1825889)
    at processTicksAndRejections (internal/process/task_queues.js:97:5)

Rust Stacktrace:
   0: <unknown>
   1: <unknown>
   2: <unknown>
   3: <unknown>
   4: <unknown>
   5: <unknown>
   6: <unknown>
   7: <unknown>
   8: <unknown>
   9: <unknown>
  10: <unknown>
  11: <unknown>
  12: <unknown>
  13: <unknown>
  14: <unknown>
  15: <unknown>
  16: <unknown>
  17: <unknown>
  18: <unknown>
  19: <unknown>
  20: <unknown>
  21: <unknown>
  22: <unknown>
  23: <unknown>
  24: <unknown>
  25: <unknown>
  26: <unknown>
  27: <unknown>
  28: <unknown>
  29: <unknown>
  30: <unknown>
  31: <unknown>
  32: BaseThreadInitThunk
  33: RtlUserThreadStart

I think this is fixed.


lake update doesn't update

Publish project a.
In project b, add a dependency require a from ".../a.git"@"master"
In project b, run lake update.
Push some commits to a.
In project b, run lake update.

The last lake update does nothing (with todays Lean nightly).  I would expect lake update to pick up the latest commit from the master branch.

Do you happen to have a nice way to test his programmatically? That would really help me in narrowing down the problem.

For what it's worth, this seems to work fine with me using Lake version 3.1.1 (Lean version 4.0.0-nightly-2022-06-17), updating aesop repeatedly

Do you happen to have a nice way to test his programmatically?

For what it's worth, this seems to work fine with me

You should probably check in the manifest.json.  The bug here obviously doesn't happen if the manifest.json is missing because then Lake will just clone the latest version of the dependency.

You should probably check in the manifest.json.

Whoops, it should be there, thanks for noticing. The repo is a scrubbed mirror of an internal repo, in which update with manifest.json seemed to work fine. It's unfortunate that there's now an important file in a directory (lean_packages) that used to be ignored completely, this broke our mirroring setup.


Fix metric formating in Dashboard view + some refactoring

fixes https://github.com/airbnb/superset/issues/2592

🙌  LGTM